All classes:
- dns.exception.DNSException
- dns.exception.FormError
- dns.exception.SyntaxError
- dns.exception.UnexpectedEnd
- dns.exception.TooBig
- dns.exception.Timeout
- dns.exception.UnsupportedAlgorithm
- dns.exception.AlgorithmKeyMismatch
- dns.exception.ValidationFailure
- dns.exception.DeniedByPolicy
- dns.exception.ExceptionWrapper
- dns.enum.IntEnum
- dns._immutable_ctx._Immutable
- dns._immutable_ctx.immutable.ncls
- dns.immutable.Dict
- dns.wire.Parser
- dns.name.NameRelation
- dns.name.EmptyLabel
- dns.name.BadEscape
- dns.name.BadPointer
- dns.name.BadLabelType
- dns.name.NeedAbsoluteNameOrOrigin
- dns.name.NameTooLong
- dns.name.LabelTooLong
- dns.name.AbsoluteConcatenation
- dns.name.NoParent
- dns.name.NoIDNA2008
- dns.name.IDNAException
- dns.name.NeedSubdomainOfOrigin
- dns.name.IDNACodec
- dns.name.IDNA2003Codec
- dns.name.IDNA2008Codec
- dns.name.Name
- dns.ttl.BadTTL
- dns.tokenizer.UngetBufferFull
- dns.tokenizer.Token
- dns.tokenizer.Tokenizer
- dns.rdataclass.RdataClass
- dns.rdataclass.UnknownRdataclass
- dns.rdatatype.RdataType
- dns.rdatatype.UnknownRdatatype
- dns.rdata.NoRelativeRdataOrdering
- dns.rdata.Rdata
- dns.rdata.GenericRdata
- dns.rdata.RdatatypeExists
- dns.edns.OptionType
- dns.edns.Option
- dns.edns.GenericOption
- dns.edns.ECSOption
- dns.edns.EDECode
- dns.edns.EDEOption
- dns.edns.NSIDOption
- dns.edns.CookieOption
- dns.edns.ReportChannelOption
- dns.rcode.Rcode
- dns.rcode.UnknownRcode
- dns.tsig.BadTime
- dns.tsig.BadSignature
- dns.tsig.BadKey
- dns.tsig.BadAlgorithm
- dns.tsig.PeerError
- dns.tsig.PeerBadKey
- dns.tsig.PeerBadSignature
- dns.tsig.PeerBadTime
- dns.tsig.PeerBadTruncation
- dns.tsig.GSSTSig
- dns.tsig.GSSTSigAdapter
- dns.tsig.HMACTSig
- dns.tsig.Key
- dns.renderer.Renderer
- dns.namedict.NameDict
- dns.serial.Serial
- dns._asyncbackend.NullContext
- dns._asyncbackend.Socket
- dns._asyncbackend.DatagramSocket
- dns._asyncbackend.StreamSocket
- dns._asyncbackend.NullTransport
- dns._asyncbackend.Backend
- dns._asyncio_backend._DatagramProtocol
- dns._asyncio_backend.DatagramSocket
- dns._asyncio_backend.StreamSocket
- dns.entropy.EntropyPool
- dns.flags.Flag
- dns.flags.EDNSFlag
- dns.opcode.Opcode
- dns.opcode.UnknownOpcode
- dns.rdtypes.ANY.OPT.OPT
- dns.rdtypes.ANY.SOA.SOA
- dns.rdtypes.ANY.TSIG.TSIG
- dns.set.Set
- dns.rdataset.DifferingCovers
- dns.rdataset.IncompatibleTypes
- dns.rdataset.Rdataset
- dns.rdataset.ImmutableRdataset
- dns.rrset.RRset
- dns.message.ShortHeader
- dns.message.TrailingJunk
- dns.message.UnknownHeaderField
- dns.message.BadEDNS
- dns.message.BadTSIG
- dns.message.UnknownTSIGKey
- dns.message.Truncated
- dns.message.NotQueryResponse
- dns.message.ChainTooLong
- dns.message.AnswerForNXDOMAIN
- dns.message.NoPreviousName
- dns.message.MessageSection
- dns.message.MessageError
- dns.message.Message
- dns.message.ChainingResult
- dns.message.QueryMessage
- dns.update.UpdateSection
- dns.update.UpdateMessage
- dns.message._WireReader
- dns.message._TextReader
- dns.message.CopyMode
- dns.asyncbackend.AsyncLibraryNotFoundError
- dns._trio_backend.DatagramSocket
- dns._trio_backend.StreamSocket
- dns._trio_backend._NetworkBackend
- dns._trio_backend._HTTPTransport
- dns.node.NodeKind
- dns.node.Node
- dns.node.ImmutableNode
- dns.transaction.TransactionManager
- dns.transaction.DeleteNotExact
- dns.transaction.ReadOnly
- dns.transaction.AlreadyEnded
- dns.transaction.Transaction
- dns.rdtypes.tlsabase.TLSABase
- dns.rdtypes.ANY.SMIMEA.SMIMEA
- dns.rdtypes.util.Gateway
- dns.rdtypes.util.Bitmap
- dns.rdtypes.svcbbase.UnknownParamKey
- dns.rdtypes.svcbbase.ParamKey
- dns.rdtypes.svcbbase.Emptiness
- dns.rdtypes.svcbbase.Param
- dns.rdtypes.svcbbase.GenericParam
- dns.rdtypes.svcbbase.MandatoryParam
- dns.rdtypes.svcbbase.ALPNParam
- dns.rdtypes.svcbbase.NoDefaultALPNParam
- dns.rdtypes.svcbbase.PortParam
- dns.rdtypes.svcbbase.IPv4HintParam
- dns.rdtypes.svcbbase.IPv6HintParam
- dns.rdtypes.svcbbase.ECHParam
- dns.rdtypes.svcbbase.OHTTPParam
- dns.rdtypes.svcbbase.SVCBBase
- dns.zonetypes.DigestScheme
- dns.zonetypes.DigestHashAlgorithm
- dns.rdtypes.ANY.ZONEMD.ZONEMD
- dns.zonefile.UnknownOrigin
- dns.zonefile.CNAMEAndOtherData
- dns.zonefile.Reader
- dns.zonefile.RRsetsReaderTransaction
- dns.zonefile.RRSetsReaderManager
- dns.zone.BadZone
- dns.zone.NoSOA
- dns.zone.NoNS
- dns.zone.UnknownOrigin
- dns.zone.UnsupportedDigestScheme
- dns.zone.UnsupportedDigestHashAlgorithm
- dns.zone.NoDigest
- dns.zone.DigestVerificationFailure
- dns.zone.Zone
- dns.zone.VersionedNode
- dns.zone.ImmutableVersionedNode
- dns.zone.Version
- dns.zone.WritableVersion
- dns.zone.ImmutableVersion
- dns.zone.Transaction
- dns.xfr.TransferError
- dns.xfr.SerialWentBackwards
- dns.xfr.UseTCP
- dns.xfr.Inbound
- dns.nameserver.Nameserver
- dns.nameserver.AddressAndPortNameserver
- dns.nameserver.Do53Nameserver
- dns.nameserver.DoHNameserver
- dns.nameserver.DoTNameserver
- dns.nameserver.DoQNameserver
- dns._ddr._SVCBInfo
- dns.rdtypes.nsbase.NSBase
- dns.rdtypes.nsbase.UncompressedNS
- dns.rdtypes.ANY.PTR.PTR
- dns.win32util.DnsInfo
- dns.win32util._WMIGetter
- dns.win32util._RegistryGetter
- dns.resolver.NXDOMAIN
- dns.resolver.YXDOMAIN
- dns.resolver.LifetimeTimeout
- dns.resolver.NoAnswer
- dns.resolver.NoNameservers
- dns.resolver.NotAbsolute
- dns.resolver.NoRootSOA
- dns.resolver.NoMetaqueries
- dns.resolver.NoResolverConfiguration
- dns.resolver.Answer
- dns.resolver.Answers
- dns.resolver.EmptyHostAnswers
- dns.resolver.HostAnswers
- dns.resolver.CacheStatistics
- dns.resolver.CacheBase
- dns.resolver.Cache
- dns.resolver.LRUCacheNode
- dns.resolver.LRUCache
- dns.resolver._Resolution
- dns.resolver.BaseResolver
- dns.resolver.Resolver
- dns.asyncresolver.Resolver
- dns._trio_backend.Backend
- dns.quic._common.UnexpectedEOF
- dns.quic._common.Buffer
- dns.quic._common.BaseQuicStream
- dns.quic._common.BaseQuicConnection
- dns.quic._common.AsyncQuicConnection
- dns.quic._common.BaseQuicManager
- dns.quic._common.AsyncQuicManager
- dns.quic._asyncio.AsyncioQuicStream
- dns.quic._asyncio.AsyncioQuicConnection
- dns.quic._asyncio.AsyncioQuicManager
- dns.quic._sync.SyncQuicStream
- dns.quic._sync.SyncQuicConnection
- dns.quic._sync.SyncQuicManager
- dns.quic._trio.TrioQuicStream
- dns.quic._trio.TrioQuicConnection
- dns.quic._trio.TrioQuicManager
- dns.quic.AsyncQuicStream
- dns.quic.AsyncQuicConnection
- dns.quic.SyncQuicStream
- dns.quic.SyncQuicConnection
- dns.query._NetworkBackend
- dns.query._HTTPTransport
- dns.query.ssl
- dns.query.ssl.WantReadException
- dns.query.ssl.WantWriteException
- dns.query.ssl.SSLWantReadError
- dns.query.ssl.SSLWantWriteError
- dns.query.ssl.SSLContext
- dns.query.ssl.SSLSocket
- dns.query.UnexpectedSource
- dns.query.BadResponse
- dns.query.NoDOH
- dns.query.NoDOQ
- dns.query.HTTPVersion
- dns.query.UDPMode
- dns.query.xfr.DummyTransactionManager
- dns.query.xfr.DummyTransactionManager.writer.DummyTransaction
- dns._asyncio_backend._NetworkBackend
- dns._asyncio_backend._HTTPTransport
- dns._asyncio_backend.Backend
- dns.versioned.UseTransaction
- dns.versioned.Zone
- dns.dnssectypes.Algorithm
- dns.dnssectypes.DSDigest
- dns.dnssectypes.NSEC3Hash
- dns.rdtypes.dnskeybase.Flag
- dns.rdtypes.dnskeybase.DNSKEYBase
- dns.rdtypes.ANY.CDNSKEY.CDNSKEY
- dns.rdtypes.dsbase.DSBase
- dns.rdtypes.ANY.CDS.CDS
- dns.rdtypes.ANY.DNSKEY.DNSKEY
- dns.rdtypes.ANY.DS.DS
- dns.rdtypes.ANY.NSEC.Bitmap
- dns.rdtypes.ANY.NSEC.NSEC
- dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM
- dns.rdtypes.ANY.RRSIG.BadSigTime
- dns.rdtypes.ANY.RRSIG.RRSIG
- dns.dnssec.Policy
- dns.dnssec.SimpleDeny
- dns.dnssecalgs.base.GenericPublicKey
- dns.dnssecalgs.base.GenericPrivateKey
- dns.dnssecalgs.cryptography.CryptographyPublicKey
- dns.dnssecalgs.cryptography.CryptographyPrivateKey
- dns.dnssecalgs.dsa.PublicDSA
- dns.dnssecalgs.dsa.PrivateDSA
- dns.dnssecalgs.dsa.PublicDSANSEC3SHA1
- dns.dnssecalgs.dsa.PrivateDSANSEC3SHA1
- dns.dnssecalgs.ecdsa.PublicECDSA
- dns.dnssecalgs.ecdsa.PrivateECDSA
- dns.dnssecalgs.ecdsa.PublicECDSAP256SHA256
- dns.dnssecalgs.ecdsa.PrivateECDSAP256SHA256
- dns.dnssecalgs.ecdsa.PublicECDSAP384SHA384
- dns.dnssecalgs.ecdsa.PrivateECDSAP384SHA384
- dns.dnssecalgs.eddsa.PublicEDDSA
- dns.dnssecalgs.eddsa.PrivateEDDSA
- dns.dnssecalgs.eddsa.PublicED25519
- dns.dnssecalgs.eddsa.PrivateED25519
- dns.dnssecalgs.eddsa.PublicED448
- dns.dnssecalgs.eddsa.PrivateED448
- dns.dnssecalgs.rsa.PublicRSA
- dns.dnssecalgs.rsa.PrivateRSA
- dns.dnssecalgs.rsa.PublicRSAMD5
- dns.dnssecalgs.rsa.PrivateRSAMD5
- dns.dnssecalgs.rsa.PublicRSASHA1
- dns.dnssecalgs.rsa.PrivateRSASHA1
- dns.dnssecalgs.rsa.PublicRSASHA1NSEC3SHA1
- dns.dnssecalgs.rsa.PrivateRSASHA1NSEC3SHA1
- dns.dnssecalgs.rsa.PublicRSASHA256
- dns.dnssecalgs.rsa.PrivateRSASHA256
- dns.dnssecalgs.rsa.PublicRSASHA512
- dns.dnssecalgs.rsa.PrivateRSASHA512
- dns.rdtypes.mxbase.MXBase
- dns.rdtypes.mxbase.UncompressedMX
- dns.rdtypes.mxbase.UncompressedDowncasingMX
- dns.rdtypes.euibase.EUIBase
- dns.rdtypes.txtbase.TXTBase
- dns.rdtypes.ANY.URI.URI
- dns.rdtypes.ANY.DNAME.DNAME
- dns.rdtypes.ANY.GPOS.GPOS
- dns.rdtypes.ANY.SSHFP.SSHFP
- dns.rdtypes.ANY.AMTRELAY.Relay
- dns.rdtypes.ANY.AMTRELAY.AMTRELAY
- dns.rdtypes.ANY.HINFO.HINFO
- dns.rdtypes.ANY.NS.NS
- dns.rdtypes.ANY.CAA.CAA
- dns.rdtypes.ANY.NID.NID
- dns.rdtypes.ANY.EUI64.EUI64
- dns.rdtypes.ANY.RP.RP
- dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY
- dns.rdtypes.ANY.CNAME.CNAME
- dns.rdtypes.ANY.L64.L64
- dns.rdtypes.ANY.ISDN.ISDN
- dns.rdtypes.ANY.EUI48.EUI48
- dns.rdtypes.ANY.RT.RT
- dns.rdtypes.ANY.NINFO.NINFO
- dns.rdtypes.ANY.LP.LP
- dns.rdtypes.ANY.TXT.TXT
- dns.rdtypes.ANY.RESINFO.RESINFO
- dns.rdtypes.ANY.HIP.HIP
- dns.rdtypes.ANY.TLSA.TLSA
- dns.rdtypes.ANY.L32.L32
- dns.rdtypes.ANY.DSYNC.UnknownScheme
- dns.rdtypes.ANY.DSYNC.Scheme
- dns.rdtypes.ANY.DSYNC.DSYNC
- dns.rdtypes.ANY.CERT.CERT
- dns.rdtypes.ANY.LOC.LOC
- dns.rdtypes.ANY.MX.MX
- dns.rdtypes.ANY.AVC.AVC
- dns.rdtypes.ANY.NSEC3.Bitmap
- dns.rdtypes.ANY.NSEC3.NSEC3
- dns.rdtypes.ANY.CSYNC.Bitmap
- dns.rdtypes.ANY.CSYNC.CSYNC
- dns.rdtypes.ANY.WALLET.WALLET
- dns.rdtypes.ANY.TKEY.TKEY
- dns.rdtypes.ANY.AFSDB.AFSDB
- dns.rdtypes.ANY.DLV.DLV
- dns.rdtypes.ANY.SPF.SPF
- dns.rdtypes.ANY.X25.X25
- dns.rdtypes.IN.IPSECKEY.Gateway
- dns.rdtypes.IN.IPSECKEY.IPSECKEY
- dns.rdtypes.IN.DHCID.DHCID
- dns.rdtypes.IN.SRV.SRV
- dns.rdtypes.IN.HTTPS.HTTPS
- dns.rdtypes.IN.APL.APLItem
- dns.rdtypes.IN.APL.APL
- dns.rdtypes.IN.NSAP_PTR.NSAP_PTR
- dns.rdtypes.IN.AAAA.AAAA
- dns.rdtypes.IN.NAPTR.NAPTR
- dns.rdtypes.IN.A.A
- dns.rdtypes.IN.KX.KX
- dns.rdtypes.IN.WKS.WKS
- dns.rdtypes.IN.PX.PX
- dns.rdtypes.IN.NSAP.NSAP
- dns.rdtypes.IN.SVCB.SVCB
- dns.rdtypes.CH.A.A
All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: '...fuzz_token'
    functionSourceFile: '...fuzz_token'
    functionUses: 0
    functionsReached:
    - atheris.instrument_all
    - '...fuzz_token.main'
    - atheris.Setup
    - atheris.Fuzz
    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: 22
    functionName: '...fuzz_token.TestOneInput'
    functionSourceFile: '...fuzz_token'
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - fdp.ConsumeUnicodeNoSurrogates
    - <builtin>.iter
    - atheris.FuzzedDataProvider
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.FuzzedDataProvider
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeUnicodeNoSurrogates
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.tokenizer.Tokenizer
    functionSourceFile: <builtin>
    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: <builtin>.iter
    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: <builtin>.list
    functionSourceFile: <builtin>
    functionUses: 199
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: '...fuzz_token.main'
    functionSourceFile: '...fuzz_token'
    functionUses: 1
    functionsReached:
    - atheris.instrument_all
    - 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.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.tokenizer
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached: []
    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 0x7fc9c646efa0>
    - <ast.Constant object at 0x7fc9c646e6a0>
    - <ast.Constant object at 0x7fc9c646e2b0>
    argNames:
    - self
    - ttype
    - value
    - has_escape
    - comment
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 52
    functionName: dns.tokenizer.Token.__init__
    functionSourceFile: dns.tokenizer
    functionUses: 17
    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: 66
    functionName: dns.tokenizer.Token.is_eof
    functionSourceFile: dns.tokenizer
    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: 69
    functionName: dns.tokenizer.Token.is_eol
    functionSourceFile: dns.tokenizer
    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: 72
    functionName: dns.tokenizer.Token.is_whitespace
    functionSourceFile: dns.tokenizer
    functionUses: 15
    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: 75
    functionName: dns.tokenizer.Token.is_identifier
    functionSourceFile: dns.tokenizer
    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: 0
    functionLinenumber: 78
    functionName: dns.tokenizer.Token.is_quoted_string
    functionSourceFile: dns.tokenizer
    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: 81
    functionName: dns.tokenizer.Token.is_comment
    functionSourceFile: dns.tokenizer
    functionUses: 15
    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: 84
    functionName: dns.tokenizer.Token.is_delimiter
    functionSourceFile: dns.tokenizer
    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: 87
    functionName: dns.tokenizer.Token.is_eol_or_eof
    functionSourceFile: dns.tokenizer
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 90
    functionName: dns.tokenizer.Token.__eq__
    functionSourceFile: dns.tokenizer
    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: <builtin>.isinstance
    functionSourceFile: <builtin>
    functionUses: 463
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 95
    functionName: dns.tokenizer.Token.__ne__
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 100
    functionName: dns.tokenizer.Token.__str__
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: dns.tokenizer.Token.unescape
    functionSourceFile: dns.tokenizer
    functionUses: 9
    functionsReached:
    - c2.isdigit
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.__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: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 515
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 192
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: c2.isdigit
    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: c3.isdigit
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.int
    functionSourceFile: <builtin>
    functionUses: 299
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 183
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: dns.tokenizer.Token.unescape_to_bytes
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - c.encode
    - c3.isdigit
    - <builtin>.bytes
    - dns.tokenizer.Token.__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: c.encode
    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>.bytes
    functionSourceFile: <builtin>
    functionUses: 84
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 1
    IfCount: 7
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c57f6e80>
    - <ast.Constant object at 0x7fc9c57f67f0>
    - <ast.Constant object at 0x7fc9c57f61f0>
    argNames:
    - self
    - f
    - filename
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 231
    functionName: dns.tokenizer.Tokenizer.__init__
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - f.decode
    - io.StringIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: f.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 280
    functionName: dns.tokenizer.Tokenizer._get_char
    functionSourceFile: dns.tokenizer
    functionUses: 16
    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: 297
    functionName: dns.tokenizer.Tokenizer.where
    functionSourceFile: dns.tokenizer
    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
    - c
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 306
    functionName: dns.tokenizer.Tokenizer._unget_char
    functionSourceFile: dns.tokenizer
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 322
    functionName: dns.tokenizer.Tokenizer.skip_whitespace
    functionSourceFile: dns.tokenizer
    functionUses: 15
    functionsReached:
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer._get_char
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 26
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 37
    ICount: 7
    IfCount: 26
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6481550>
    - <ast.Constant object at 0x7fc9c6481df0>
    argNames:
    - self
    - want_leading
    - want_comment
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 342
    functionName: dns.tokenizer.Tokenizer.get
    functionSourceFile: dns.tokenizer
    functionUses: 14
    functionsReached:
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 453
    functionName: dns.tokenizer.Tokenizer.unget
    functionSourceFile: dns.tokenizer
    functionUses: 2
    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: 3
    functionLinenumber: 469
    functionName: dns.tokenizer.Tokenizer.next
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.is_eof
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__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: 482
    functionName: dns.tokenizer.Tokenizer.__iter__
    functionSourceFile: dns.tokenizer
    functionUses: 0
    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 0x7fc9c5905f70>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 487
    functionName: dns.tokenizer.Tokenizer.get_int
    functionSourceFile: dns.tokenizer
    functionUses: 4
    functionsReached:
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - token.value.isdigit
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__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: token.value.isdigit
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 502
    functionName: dns.tokenizer.Tokenizer.get_uint8
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - dns.tokenizer.Tokenizer.get_int
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - token.value.isdigit
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    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 0x7fc9c63f9e50>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 516
    functionName: dns.tokenizer.Tokenizer.get_uint16
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - dns.tokenizer.Tokenizer.get_int
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - token.value.isdigit
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    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 0x7fc9c63f9be0>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 537
    functionName: dns.tokenizer.Tokenizer.get_uint32
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - dns.tokenizer.Tokenizer.get_int
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - token.value.isdigit
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    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 0x7fc9c5990820>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 553
    functionName: dns.tokenizer.Tokenizer.get_uint48
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - dns.tokenizer.Tokenizer.get_int
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - token.value.isdigit
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    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 0x7fc9c59903a0>
    argNames:
    - self
    - max_length
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 569
    functionName: dns.tokenizer.Tokenizer.get_string
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - dns.tokenizer.Token.is_quoted_string
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 586
    functionName: dns.tokenizer.Tokenizer.get_identifier
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    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 0x7fc9c5fd32e0>
    argNames:
    - self
    - max_tokens
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 599
    functionName: dns.tokenizer.Tokenizer.get_remaining
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - <builtin>.len
    - dns.tokenizer.Tokenizer._unget_char
    - tokens.append
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Tokenizer.unget
    - dns.tokenizer.Token.__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: tokens.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59ec610>
    argNames:
    - self
    - allow_empty
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 618
    functionName: dns.tokenizer.Tokenizer.concatenate_remaining_identifiers
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.is_eol_or_eof
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Tokenizer.unget
    - dns.tokenizer.Token.__init__
    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 0x7fc9c5de9d60>
    - <ast.Constant object at 0x7fc9c5de9e50>
    - <ast.Constant object at 0x7fc9c5de9bb0>
    argNames:
    - self
    - token
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 643
    functionName: dns.tokenizer.Tokenizer.as_name
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - text.encode
    - c.isdigit
    - name.choose_relativity
    - labels.append
    - label.encode
    - dns.tokenizer.Token.is_identifier
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 18
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 26
    ICount: 5
    IfCount: 18
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7fc9c61c5280>
    - <ast.Constant object at 0x7fc9c61c5310>
    argNames:
    - text
    - origin
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 986
    functionName: dns.name.from_text
    functionSourceFile: <builtin>
    functionUses: 156
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    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: name.choose_relativity
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5ee0b50>
    - <ast.Constant object at 0x7fc9c5ee0130>
    - <ast.Constant object at 0x7fc9c5ee0a60>
    argNames:
    - self
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 661
    functionName: dns.tokenizer.Tokenizer.get_name
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - name.choose_relativity
    - labels.append
    - label.encode
    - dns.tokenizer.Token.is_identifier
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.chr
    - byte_.isdigit
    - dns.tokenizer.Token.__init__
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer.as_name
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.tokenizer.Token.is_comment
    - <builtin>.len
    - struct.pack
    - dns.tokenizer.Tokenizer._unget_char
    - labels.extend
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.tuple
    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: 3
    functionLinenumber: 677
    functionName: dns.tokenizer.Tokenizer.get_eol_as_token
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__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: 4
    functionLinenumber: 691
    functionName: dns.tokenizer.Tokenizer.get_eol
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer.get_eol_as_token
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 694
    functionName: dns.tokenizer.Tokenizer.get_ttl
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.unescape
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - dns.tokenizer.Tokenizer._unget_char
    - dns.ttl.from_text
    - <builtin>.chr
    - c3.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.skip_whitespace
    - text.isdigit
    - dns.tokenizer.Tokenizer.get
    - c.lower
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 1
    IfCount: 11
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: dns.ttl.from_text
    functionSourceFile: <builtin>
    functionUses: 29
    functionsReached:
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - text.isdigit
    - c.lower
    linkageType: pythonLinkage
    raised:
    - BadTTL
    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: dns.ttl
    functionSourceFile: dns.ttl
    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: text.isdigit
    functionSourceFile: <builtin>
    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: c.lower
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 86
    functionName: dns.ttl.make
    functionSourceFile: dns.ttl
    functionUses: 22
    functionsReached:
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - dns.ttl.from_text
    - text.isdigit
    - <builtin>.isinstance
    - c.lower
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: dns.exception
    functionSourceFile: dns.exception
    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>.set
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.exception.DNSException
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.exception.DNSException.__init__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - <builtin>.set
    - <builtin>.super
    - kwargs.keys
    - <builtin>.bool
    - <builtin>.dict
    - dns.exception.DNSException._check_kwargs
    - dns.exception.DNSException._check_params
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: dns.exception.DNSException._check_params
    functionSourceFile: dns.exception
    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:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: dns.exception.DNSException._check_kwargs
    functionSourceFile: dns.exception
    functionUses: 1
    functionsReached:
    - kwargs.keys
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.str
    functionSourceFile: <builtin>
    functionUses: 80
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 389
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: kwargs.keys
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: dns.exception.DNSException._fmt_kwargs
    functionSourceFile: dns.exception
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - <builtin>.len
    - kwargs.items
    - <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: kwargs.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.map
    functionSourceFile: <builtin>
    functionUses: 7
    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: 2
    functionLinenumber: 105
    functionName: dns.exception.DNSException.__str__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.list
    - <builtin>.len
    - kwargs.items
    - dns.exception.DNSException._fmt_kwargs
    - <builtin>.isinstance
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 139
    functionName: dns.exception.Timeout.__init__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <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
    - exception_class
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 160
    functionName: dns.exception.ExceptionWrapper.__init__
    functionSourceFile: dns.exception
    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: 163
    functionName: dns.exception.ExceptionWrapper.__enter__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    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: 166
    functionName: dns.exception.ExceptionWrapper.__exit__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    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: 4
    functionLinenumber: -1
    functionName: dns.name
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns._features._tuple_from_text
    - label.encode
    - dns._features.have
    - <builtin>.isinstance
    - dns.name.IDNA2008Codec.__init__
    - importlib.metadata.version
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - itertools.takewhile
    - _requirements.get
    - <builtin>.ord
    - <builtin>.int
    - dns.name.IDNA2003Codec.__init__
    - version.split
    - requirement.split
    - dns.name._validate_labels
    - dns._features._version_check
    - int_parts.append
    - dns.name.Name.__init__
    - <builtin>.len
    - _cache.get
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - feature
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 50
    functionName: dns._features.have
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached:
    - dns._features._version_check
    - _requirements.get
    - importlib.metadata.version
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - _cache.get
    - version.split
    - requirement.split
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 67
    functionName: dns.name.NameRelation._maximum
    functionSourceFile: dns.name
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 71
    functionName: dns.name.NameRelation._short_name
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: dns.name.IDNAException.__init__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - label
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 147
    functionName: dns.name._escapify
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.ord
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.ord
    functionSourceFile: <builtin>
    functionUses: 225
    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: 179
    functionName: dns.name.IDNACodec.__init__
    functionSourceFile: dns.name
    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
    - label
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 182
    functionName: dns.name.IDNACodec.is_idna
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - label.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: label.lower
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - label
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 185
    functionName: dns.name.IDNACodec.encode
    functionSourceFile: dns.name
    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
    - label
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 188
    functionName: dns.name.IDNACodec.decode
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name._escapify
    - dns.name.IDNACodec.is_idna
    - <builtin>.ord
    - label.lower
    - <builtin>.chr
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - IDNAException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b26b50>
    argNames:
    - self
    - strict_decode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 203
    functionName: dns.name.IDNA2003Codec.__init__
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - label
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 214
    functionName: dns.name.IDNA2003Codec.encode
    functionSourceFile: dns.name
    functionUses: 158
    functionsReached:
    - encodings.idna.ToASCII
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: encodings.idna.ToASCII
    functionSourceFile: <builtin>
    functionUses: 159
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - label
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 224
    functionName: dns.name.IDNA2003Codec.decode
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - dns.name._escapify
    - <builtin>.super
    - encodings.idna.ToUnicode
    - <builtin>.ord
    - <builtin>.chr
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - IDNAException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: encodings.idna.ToUnicode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b61e20>
    - <ast.Constant object at 0x7fc9c6b61820>
    - <ast.Constant object at 0x7fc9c6b61a00>
    - <ast.Constant object at 0x7fc9c6b61940>
    argNames:
    - self
    - uts_46
    - transitional
    - allow_pure_ascii
    - strict_decode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 239
    functionName: dns.name.IDNA2008Codec.__init__
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - label
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 274
    functionName: dns.name.IDNA2008Codec.encode
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - idna.uts46_remap
    - <builtin>.ord
    - dns.name.is_all_ascii
    - label.encode
    - idna.alabel
    linkageType: pythonLinkage
    raised:
    - IDNAException
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 979
    functionName: dns.name.is_all_ascii
    functionSourceFile: dns.name
    functionUses: 158
    functionsReached:
    - <builtin>.ord
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: label.encode
    functionSourceFile: <builtin>
    functionUses: 186
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: idna.uts46_remap
    functionSourceFile: idna
    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: idna.alabel
    functionSourceFile: idna
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - label
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 295
    functionName: dns.name.IDNA2008Codec.decode
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name._escapify
    - <builtin>.super
    - idna.uts46_remap
    - <builtin>.ord
    - idna.ulabel
    - <builtin>.chr
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - IDNAException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: idna.ulabel
    functionSourceFile: idna
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - labels
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 321
    functionName: dns.name._validate_labels
    functionSourceFile: dns.name
    functionUses: 185
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - label
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 351
    functionName: dns.name._maybe_convert_to_binary
    functionSourceFile: dns.name
    functionUses: 184
    functionsReached:
    - <builtin>.isinstance
    - label.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - labels
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 375
    functionName: dns.name.Name.__init__
    functionSourceFile: dns.name
    functionUses: 183
    functionsReached:
    - dns.name._maybe_convert_to_binary
    - <builtin>.len
    - label.encode
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 229
    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: 382
    functionName: dns.name.Name.__copy__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.len
    - label.encode
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 385
    functionName: dns.name.Name.__deepcopy__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.len
    - label.encode
    - copy.deepcopy
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: copy.deepcopy
    functionSourceFile: copy
    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: 388
    functionName: dns.name.Name.__getstate__
    functionSourceFile: dns.name
    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
    - state
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 392
    functionName: dns.name.Name.__setstate__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.len
    - dns.name._validate_labels
    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: 396
    functionName: dns.name.Name.is_absolute
    functionSourceFile: dns.name
    functionUses: 25
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 404
    functionName: dns.name.Name.is_wild
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 412
    functionName: dns.name.Name.__hash__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - label.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 1
    IfCount: 9
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 424
    functionName: dns.name.Name.fullcompare
    functionSourceFile: dns.name
    functionUses: 14
    functionsReached:
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other.is_absolute
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 500
    functionName: dns.name.Name.is_subdomain
    functionSourceFile: dns.name
    functionUses: 6
    functionsReached:
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 514
    functionName: dns.name.Name.is_superdomain
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    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: 528
    functionName: dns.name.Name.canonicalize
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - x.lower
    - <builtin>.len
    - label.encode
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.lower
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 535
    functionName: dns.name.Name.__eq__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.fullcompare
    - <builtin>.len
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 541
    functionName: dns.name.Name.__ne__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.fullcompare
    - <builtin>.len
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 547
    functionName: dns.name.Name.__lt__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.fullcompare
    - <builtin>.len
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 553
    functionName: dns.name.Name.__le__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.fullcompare
    - <builtin>.len
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 559
    functionName: dns.name.Name.__ge__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.fullcompare
    - <builtin>.len
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 565
    functionName: dns.name.Name.__gt__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.fullcompare
    - <builtin>.len
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 571
    functionName: dns.name.Name.__repr__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.to_text
    - <builtin>.map
    - <builtin>.len
    - dns.name.Name.__str__
    - dns.name.Name.is_absolute
    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: 574
    functionName: dns.name.Name.__str__
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - dns.name.Name.to_text
    - <builtin>.map
    - <builtin>.len
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a95490>
    argNames:
    - self
    - omit_final_dot
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 577
    functionName: dns.name.Name.to_text
    functionSourceFile: dns.name
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - <builtin>.map
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c595c7f0>
    - <ast.Constant object at 0x7fc9c595c6a0>
    argNames:
    - self
    - omit_final_dot
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 598
    functionName: dns.name.Name.to_unicode
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name._escapify
    - <builtin>.super
    - encodings.idna.ToUnicode
    - <builtin>.len
    - <builtin>.ord
    - dns.name.IDNA2003Codec.decode
    - <builtin>.chr
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59d3ac0>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 630
    functionName: dns.name.Name.to_digestable
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - label.encode
    - origin.is_absolute
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - compress.get
    - <builtin>.bytes
    - out.append
    - <builtin>.list
    - label.lower
    - <builtin>.bytearray
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - file.write
    - file.tell
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.name.Name.to_wire
    - <builtin>.tuple
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 8
    IfCount: 13
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59d33a0>
    - <ast.Constant object at 0x7fc9c59d3400>
    - <ast.Constant object at 0x7fc9c59d3610>
    - <ast.Constant object at 0x7fc9c59d3e20>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 651
    functionName: dns.name.Name.to_wire
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - label.encode
    - origin.is_absolute
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - compress.get
    - <builtin>.bytes
    - out.append
    - <builtin>.list
    - label.lower
    - <builtin>.bytearray
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - file.write
    - file.tell
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 77
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.append
    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: origin.is_absolute
    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: labels.extend
    functionSourceFile: <builtin>
    functionUses: 168
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: compress.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: struct.pack
    functionSourceFile: struct
    functionUses: 284
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: file.write
    functionSourceFile: <builtin>
    functionUses: 82
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: file.tell
    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: 1
    functionLinenumber: 738
    functionName: dns.name.Name.__len__
    functionSourceFile: dns.name
    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
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 746
    functionName: dns.name.Name.__getitem__
    functionSourceFile: dns.name
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 749
    functionName: dns.name.Name.__add__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.list
    - <builtin>.len
    - labels.extend
    - label.encode
    - dns.name._validate_labels
    - <builtin>.tuple
    - <builtin>.isinstance
    - dns.name.Name.concatenate
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 775
    functionName: dns.name.Name.concatenate
    functionSourceFile: dns.name
    functionUses: 7
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.list
    - <builtin>.len
    - labels.extend
    - label.encode
    - dns.name._validate_labels
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 752
    functionName: dns.name.Name.__sub__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_subdomain
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - dns.name.Name.relativize
    - label.encode
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 790
    functionName: dns.name.Name.relativize
    functionSourceFile: dns.name
    functionUses: 2
    functionsReached:
    - other.is_absolute
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_subdomain
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - label.encode
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - depth
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 755
    functionName: dns.name.Name.split
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.len
    - label.encode
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 806
    functionName: dns.name.Name.derelativize
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.list
    - <builtin>.len
    - labels.extend
    - label.encode
    - dns.name._validate_labels
    - <builtin>.tuple
    - <builtin>.isinstance
    - dns.name.Name.concatenate
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5ab3cd0>
    - <ast.Constant object at 0x7fc9c5ab3430>
    argNames:
    - self
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 822
    functionName: dns.name.Name.choose_relativity
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.derelativize
    - dns.name.Name.is_subdomain
    - dns.name.Name.fullcompare
    - <builtin>.list
    - <builtin>.len
    - dns.name.Name.relativize
    - label.encode
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.tuple
    - <builtin>.isinstance
    - dns.name.Name.concatenate
    - dns.name.Name.is_absolute
    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: 3
    functionLinenumber: 843
    functionName: dns.name.Name.parent
    functionSourceFile: dns.name
    functionUses: 5
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.len
    - label.encode
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    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 0x7fc9c63f5850>
    argNames:
    - self
    - origin
    - prefix_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 858
    functionName: dns.name.Name.predecessor
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.is_absolute
    - dns.name.Name.is_subdomain
    - dns.name._pad_to_max_label
    - <builtin>.reversed
    - new_labels.append
    - dns.name._wire_length
    - new_labels.extend
    - origin.is_absolute
    - dns.name._handle_relativity_and_call
    - label.encode
    - <builtin>.range
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.derelativize
    - dns.name.Name.fullcompare
    - dns.name._absolute_successor
    - functools.reduce
    - <builtin>.bytes
    - dns.name.Name.concatenate
    - dns.name.Name
    - <builtin>.list
    - <builtin>.bytearray
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.min
    - dns.name._absolute_predecessor
    - <builtin>.len
    - dns.name.Name.parent
    - labels.extend
    - dns.name._pad_to_max_name
    - <builtin>.tuple
    - result_name.relativize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - function
    - name
    - origin
    - prefix_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1272
    functionName: dns.name._handle_relativity_and_call
    functionSourceFile: dns.name
    functionUses: 2
    functionsReached:
    - other.is_absolute
    - dns.name.Name.is_absolute
    - dns.name.Name.is_subdomain
    - dns.name._pad_to_max_label
    - <builtin>.reversed
    - new_labels.append
    - dns.name._wire_length
    - new_labels.extend
    - origin.is_absolute
    - label.encode
    - <builtin>.range
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.derelativize
    - dns.name.Name.fullcompare
    - dns.name._absolute_successor
    - functools.reduce
    - <builtin>.bytes
    - dns.name.Name.concatenate
    - dns.name.Name
    - <builtin>.list
    - <builtin>.bytearray
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.min
    - dns.name._absolute_predecessor
    - <builtin>.len
    - dns.name.Name.parent
    - labels.extend
    - dns.name._pad_to_max_name
    - <builtin>.tuple
    - result_name.relativize
    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 0x7fc9c63f57f0>
    argNames:
    - self
    - origin
    - prefix_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 876
    functionName: dns.name.Name.successor
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - other.is_absolute
    - dns.name.Name.is_absolute
    - dns.name.Name.is_subdomain
    - dns.name._pad_to_max_label
    - <builtin>.reversed
    - new_labels.append
    - dns.name._wire_length
    - new_labels.extend
    - origin.is_absolute
    - dns.name._handle_relativity_and_call
    - label.encode
    - <builtin>.range
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.derelativize
    - dns.name.Name.fullcompare
    - dns.name._absolute_successor
    - functools.reduce
    - <builtin>.bytes
    - dns.name.Name.concatenate
    - dns.name.Name
    - <builtin>.list
    - <builtin>.bytearray
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.min
    - dns.name._absolute_predecessor
    - <builtin>.len
    - dns.name.Name.parent
    - labels.extend
    - dns.name._pad_to_max_name
    - <builtin>.tuple
    - result_name.relativize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 5
    IfCount: 17
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7fc9c6449190>
    - <ast.Constant object at 0x7fc9c6449670>
    argNames:
    - text
    - origin
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 902
    functionName: dns.name.from_unicode
    functionSourceFile: dns.name
    functionUses: 157
    functionsReached:
    - encodings.idna.ToASCII
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.list
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - labels.append
    - <builtin>.chr
    - labels.extend
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    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: labels.append
    functionSourceFile: <builtin>
    functionUses: 163
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 216
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: byte_.isdigit
    functionSourceFile: <builtin>
    functionUses: 157
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - parser
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1076
    functionName: dns.name.from_wire_parser
    functionSourceFile: dns.name
    functionUses: 8
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.len
    - labels.append
    - label.encode
    - parser.get_bytes
    - parser.seek
    - <builtin>.isinstance
    - parser.restore_furthest
    - <builtin>.tuple
    - parser.get_uint8
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.restore_furthest
    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: parser.get_uint8
    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: parser.get_bytes
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.seek
    functionSourceFile: <builtin>
    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:
    - message
    - current
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1109
    functionName: dns.name.from_wire
    functionSourceFile: dns.name
    functionUses: 6
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - contextlib.contextmanager
    - <builtin>.len
    - labels.append
    - label.encode
    - parser.get_bytes
    - parser.seek
    - dns.name._validate_labels
    - <builtin>.tuple
    - <builtin>.isinstance
    - parser.restore_furthest
    - dns.wire.Parser
    - parser.get_uint8
    - dns.name.from_wire_parser
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: dns.wire.Parser
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached:
    - contextlib.contextmanager
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - labels
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1146
    functionName: dns.name._wire_length
    functionSourceFile: dns.name
    functionUses: 6
    functionsReached:
    - functools.reduce
    linkageType: 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: dns.name._wire_length.<lambda1>
    functionSourceFile: dns.name
    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: functools.reduce
    functionSourceFile: functools
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1150
    functionName: dns.name._pad_to_max_name
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.list
    - <builtin>.len
    - <builtin>.reversed
    - new_labels.append
    - dns.name._wire_length
    - new_labels.extend
    - label.encode
    - functools.reduce
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.name._validate_labels
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_labels.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: <builtin>.reversed
    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: new_labels.extend
    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:
    - label
    - suffix_labels
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1166
    functionName: dns.name._pad_to_max_label
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - functools.reduce
    - <builtin>.min
    - dns.name._wire_length
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - name
    - origin
    - prefix_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1177
    functionName: dns.name._absolute_predecessor
    functionSourceFile: dns.name
    functionUses: 3
    functionsReached:
    - dns.name._pad_to_max_label
    - new_labels.append
    - dns.name._wire_length
    - new_labels.extend
    - label.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - functools.reduce
    - <builtin>.bytes
    - <builtin>.list
    - <builtin>.bytearray
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.min
    - dns.name.Name.parent
    - <builtin>.len
    - dns.name._pad_to_max_name
    - <builtin>.tuple
    - <builtin>.reversed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - name
    - origin
    - prefix_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1210
    functionName: dns.name._absolute_successor
    functionSourceFile: dns.name
    functionUses: 3
    functionsReached:
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.list
    - <builtin>.len
    - dns.name.Name.parent
    - new_labels.extend
    - label.encode
    - <builtin>.range
    - <builtin>.bytes
    - labels.extend
    - <builtin>.tuple
    - <builtin>.bytearray
    - dns.name._validate_labels
    - <builtin>.isinstance
    - dns.name.Name.concatenate
    - dns.name.Name
    - dns.name.Name.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.name.Name
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.range
    functionSourceFile: <builtin>
    functionUses: 156
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_name.relativize
    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: dns.wire
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e91610>
    argNames:
    - self
    - wire
    - current
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 14
    functionName: dns.wire.Parser.__init__
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.wire.Parser.seek
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - where
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 69
    functionName: dns.wire.Parser.seek
    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: 29
    functionName: dns.wire.Parser.remaining
    functionSourceFile: dns.wire
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.wire.Parser.get_bytes
    functionSourceFile: dns.wire
    functionUses: 7
    functionsReached:
    - <builtin>.max
    - dns.wire.Parser.remaining
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 45
    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 0x7fc9c6362e20>
    argNames:
    - self
    - length_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 41
    functionName: dns.wire.Parser.get_counted_bytes
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wire.Parser.get_bytes
    - int.from_bytes
    - dns.wire.Parser.remaining
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 2
    functionLinenumber: 45
    functionName: dns.wire.Parser.get_remaining
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wire.Parser.get_bytes
    - dns.wire.Parser.remaining
    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: 48
    functionName: dns.wire.Parser.get_uint8
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wire.Parser.get_bytes
    - struct.unpack
    - dns.wire.Parser.remaining
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 44
    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: 51
    functionName: dns.wire.Parser.get_uint16
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wire.Parser.get_bytes
    - struct.unpack
    - dns.wire.Parser.remaining
    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: 54
    functionName: dns.wire.Parser.get_uint32
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wire.Parser.get_bytes
    - struct.unpack
    - dns.wire.Parser.remaining
    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: 57
    functionName: dns.wire.Parser.get_uint48
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wire.Parser.get_bytes
    - int.from_bytes
    - dns.wire.Parser.remaining
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - format
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 60
    functionName: dns.wire.Parser.get_struct
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - struct.unpack
    - <builtin>.max
    - struct.calcsize
    - dns.wire.Parser.get_bytes
    - dns.wire.Parser.remaining
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    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 0x7fc9c5f901f0>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 63
    functionName: dns.wire.Parser.get_name
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.name.Name.__init__
    - name.relativize
    - dns.name._maybe_convert_to_binary
    - <builtin>.len
    - labels.append
    - label.encode
    - parser.get_bytes
    - parser.seek
    - dns.name._validate_labels
    - <builtin>.isinstance
    - parser.restore_furthest
    - <builtin>.tuple
    - parser.get_uint8
    - dns.name.from_wire_parser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.relativize
    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: contextlib.contextmanager
    functionSourceFile: ''
    functionUses: 71
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 77
    functionName: dns.wire.Parser.restrict_to
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.wire.Parser.remaining
    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: 94
    functionName: dns.wire.Parser.restore_furthest
    functionSourceFile: dns.wire
    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: dns._features
    functionSourceFile: dns._features
    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:
    - version
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 9
    functionName: dns._features._tuple_from_text
    functionSourceFile: dns._features
    functionUses: 10
    functionsReached:
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - version.split
    - <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: version.split
    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: dns._features._tuple_from_text.<lambda1>
    functionSourceFile: dns._features
    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.takewhile
    functionSourceFile: itertools
    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: int_parts.append
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - requirement
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 23
    functionName: dns._features._version_check
    functionSourceFile: dns._features
    functionUses: 9
    functionsReached:
    - importlib.metadata.version
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - version.split
    - requirement.split
    - <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: requirement.split
    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: importlib.metadata.version
    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: _cache.get
    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: _requirements.get
    functionSourceFile: <builtin>
    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:
    - feature
    - enabled
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: dns._features.force
    functionSourceFile: dns._features
    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: dns.enum
    functionSourceFile: dns.enum
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 26
    functionName: dns.enum.IntEnum._missing_
    functionSourceFile: dns.enum
    functionUses: 0
    functionsReached:
    - dns.enum.IntEnum._prefix
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._check_value
    - dns.enum.IntEnum._maximum
    - int.__new__
    - <builtin>.isinstance
    - dns.enum.IntEnum._short_name
    - dns.enum.IntEnum._extra_to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 34
    functionName: dns.enum.IntEnum._check_value
    functionSourceFile: dns.enum
    functionUses: 4
    functionsReached:
    - enum.IntEnum.__name__.lower
    - <builtin>.isinstance
    - dns.enum.IntEnum._short_name
    - dns.enum.IntEnum._maximum
    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: int.__new__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - value
    - current_text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 108
    functionName: dns.enum.IntEnum._extra_to_text
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 100
    functionName: dns.enum.IntEnum._prefix
    functionSourceFile: ''
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 92
    functionName: dns.enum.IntEnum._maximum
    functionSourceFile: ''
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: dns.enum.IntEnum._short_name
    functionSourceFile: dns.enum
    functionUses: 5
    functionsReached:
    - enum.IntEnum.__name__.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 43
    functionName: dns.enum.IntEnum.from_text
    functionSourceFile: dns.enum
    functionUses: 1
    functionsReached:
    - text.upper
    - dns.enum.IntEnum._prefix
    - enum.IntEnum.__name__.lower
    - <builtin>.len
    - dns.enum.IntEnum._check_value
    - dns.enum.IntEnum._maximum
    - enum.IntEnum.__init__
    - <builtin>.int
    - text.startswith
    - dns.enum.IntEnum._extra_from_text
    - <builtin>.isinstance
    - dns.enum.IntEnum._short_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.upper
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 104
    functionName: dns.enum.IntEnum._extra_from_text
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.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: enum.IntEnum.__init__
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 60
    functionName: dns.enum.IntEnum.to_text
    functionSourceFile: dns.enum
    functionUses: 0
    functionsReached:
    - dns.enum.IntEnum._prefix
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._check_value
    - dns.enum.IntEnum._maximum
    - enum.IntEnum.__init__
    - <builtin>.isinstance
    - dns.enum.IntEnum._short_name
    - dns.enum.IntEnum._extra_to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 72
    functionName: dns.enum.IntEnum.make
    functionSourceFile: dns.enum
    functionUses: 0
    functionsReached:
    - text.upper
    - dns.enum.IntEnum._prefix
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._check_value
    - <builtin>.len
    - dns.enum.IntEnum.from_text
    - <builtin>.int
    - dns.enum.IntEnum._maximum
    - enum.IntEnum.__init__
    - text.startswith
    - dns.enum.IntEnum._extra_from_text
    - <builtin>.isinstance
    - dns.enum.IntEnum._short_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: enum.IntEnum.__name__.lower
    functionSourceFile: enum
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: dns.enum.IntEnum._unknown_exception_class
    functionSourceFile: dns.enum
    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: dns.immutable
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c57e1640>
    - <ast.Name object at 0x7fc9c57e1700>
    argNames:
    - self
    - dictionary
    - no_copy
    - map_factory
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 11
    functionName: dns.immutable.Dict.__init__
    functionSourceFile: dns.immutable
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 30
    functionName: dns.immutable.Dict.__getitem__
    functionSourceFile: dns.immutable
    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: 1
    functionLinenumber: 33
    functionName: dns.immutable.Dict.__hash__
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - <builtin>.hash
    - object.__setattr__
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: <builtin>.hash
    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: object.__setattr__
    functionSourceFile: <builtin>
    functionUses: 25
    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: 42
    functionName: dns.immutable.Dict.__len__
    functionSourceFile: dns.immutable
    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: 45
    functionName: dns.immutable.Dict.__iter__
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - o
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.immutable.constify
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached:
    - dns.immutable.constify
    - o.items
    - <builtin>.dict
    - <builtin>.bytes
    - <builtin>.hash
    - dns.immutable.Dict.__init__
    - <builtin>.isinstance
    - <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: o.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: dns._immutable_ctx
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - contextvars.ContextVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: contextvars.ContextVar
    functionSourceFile: contextvars
    functionUses: 1
    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
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: dns._immutable_ctx._Immutable.__setattr__
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - _in__init__.get
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _in__init__.get
    functionSourceFile: <builtin>
    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:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: dns._immutable_ctx._Immutable.__delattr__
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - _in__init__.get
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - f
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: dns._immutable_ctx._immutable_init
    functionSourceFile: dns._immutable_ctx
    functionUses: 2
    functionsReached:
    - inspect.signature
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 36
    functionName: dns._immutable_ctx._immutable_init.nf
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - _in__init__.reset
    - <builtin>.super
    - dns._immutable_ctx.immutable.ncls.__setstate__
    - dns._immutable_ctx.immutable.ncls.__init__
    - _in__init__.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _in__init__.set
    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
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 69
    functionName: dns._immutable_ctx.immutable.ncls.__setstate__
    functionSourceFile: dns._immutable_ctx
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: dns._immutable_ctx.immutable.ncls.__init__
    functionSourceFile: dns._immutable_ctx
    functionUses: 1
    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: _in__init__.reset
    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: inspect.signature
    functionSourceFile: inspect
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: dns._immutable_ctx.immutable
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - inspect.signature
    - dns._immutable_ctx._immutable_init
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hasattr
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: dns._immutable_ctx.immutable.ncls
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - inspect.signature
    - dns._immutable_ctx._immutable_init
    - <builtin>.hasattr
    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: dns
    functionSourceFile: dns
    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: dns.version
    functionSourceFile: dns.version
    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: dns.renderer
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - contextlib.contextmanager
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - output
    - length_length
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: dns.renderer.prefixed_length
    functionSourceFile: dns.renderer
    functionUses: 6
    functionsReached:
    - output.write
    - output.seek
    - length.to_bytes
    - output.tell
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.write
    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: output.tell
    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: output.seek
    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: length.to_bytes
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6449a00>
    - <ast.Constant object at 0x7fc9c64494c0>
    - <ast.Constant object at 0x7fc9c6449490>
    - <ast.Constant object at 0x7fc9c6b44c70>
    argNames:
    - self
    - id
    - flags
    - max_size
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: dns.renderer.Renderer.__init__
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - io.BytesIO
    - random.randint
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: random.randint
    functionSourceFile: random
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - where
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: dns.renderer.Renderer._rollback
    functionSourceFile: dns.renderer
    functionUses: 9
    functionsReached:
    - keys_to_delete.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: keys_to_delete.append
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 137
    functionName: dns.renderer.Renderer._set_section
    functionSourceFile: dns.renderer
    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: dns.renderer.Renderer
    functionSourceFile: dns.renderer
    functionUses: 1
    functionsReached:
    - contextlib.contextmanager
    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: 153
    functionName: dns.renderer.Renderer._track_size
    functionSourceFile: dns.renderer
    functionUses: 8
    functionsReached:
    - dns.renderer.Renderer._rollback
    - keys_to_delete.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - where
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 161
    functionName: dns.renderer.Renderer._temporarily_seek_to
    functionSourceFile: dns.renderer
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5ab3c10>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 169
    functionName: dns.renderer.Renderer.add_question
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.renderer.Renderer._set_section
    - keys_to_delete.append
    - struct.pack
    - dns.renderer.Renderer._rollback
    - qname.to_wire
    - dns.renderer.Renderer._track_size
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: qname.to_wire
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - rrset
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 178
    functionName: dns.renderer.Renderer.add_rrset
    functionSourceFile: dns.renderer
    functionUses: 2
    functionsReached:
    - rrset.to_wire
    - dns.renderer.Renderer._set_section
    - keys_to_delete.append
    - dns.renderer.Renderer._rollback
    - dns.renderer.Renderer._track_size
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rrset.to_wire
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - section
    - name
    - rdataset
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 190
    functionName: dns.renderer.Renderer.add_rdataset
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.renderer.Renderer._set_section
    - keys_to_delete.append
    - dns.renderer.Renderer._rollback
    - dns.renderer.Renderer._track_size
    - rdataset.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rdataset.to_wire
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d85f70>
    - <ast.Constant object at 0x7fc9c5d85c70>
    - <ast.Constant object at 0x7fc9c5d85c10>
    argNames:
    - self
    - opt
    - pad
    - opt_size
    - tsig_size
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 203
    functionName: dns.renderer.Renderer.add_opt
    functionSourceFile: dns.renderer
    functionUses: 1
    functionsReached:
    - rrset.to_wire
    - text.encode
    - c.isdigit
    - r.add
    - dns.edns.GenericOption
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - dns.renderer.Renderer._set_section
    - <builtin>.super
    - keys_to_delete.append
    - dns.renderer.Renderer._rollback
    - dns.rdtypes.ANY.OPT.OPT
    - <builtin>.chr
    - byte_.isdigit
    - dns.message.Message._make_opt
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - options.append
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.renderer.Renderer.add_rrset
    - dns.rrset.RRset.__init__
    - dns.renderer.Renderer._track_size
    - typing.cast
    - <builtin>.tuple
    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: dns.edns.GenericOption
    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: options.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: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6980160>
    - <ast.Name object at 0x7fc9c69804c0>
    - <ast.Constant object at 0x7fc9c6980400>
    argNames:
    - flags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 785
    functionName: dns.message.Message._make_opt
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached:
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5707400>
    argNames:
    - self
    - edns
    - ednsflags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 228
    functionName: dns.renderer.Renderer.add_edns
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.renderer.Renderer.add_opt
    - rrset.to_wire
    - text.encode
    - c.isdigit
    - r.add
    - dns.edns.GenericOption
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - dns.renderer.Renderer._set_section
    - <builtin>.super
    - keys_to_delete.append
    - dns.rdtypes.ANY.OPT.OPT
    - <builtin>.chr
    - dns.renderer.Renderer._rollback
    - byte_.isdigit
    - dns.message.Message._make_opt
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - r.update_ttl
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - options.append
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.renderer.Renderer.add_rrset
    - dns.rrset.RRset.__init__
    - dns.renderer.Renderer._track_size
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 9
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c57071c0>
    argNames:
    - self
    - keyname
    - secret
    - fudge
    - id
    - tsig_error
    - other_data
    - request_mac
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 239
    functionName: dns.renderer.Renderer.add_tsig
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - output.seek
    - dns.renderer.Renderer._write_tsig
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - dns.tsig.GSSTSig.update
    - dns.tsig._digest
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.sign
    - dns.tsig.GSSTSig.__init__
    - dns.renderer.prefixed_length
    - hmac.new
    - output.write
    - dns.name._maybe_convert_to_binary
    - dns.rdtypes.ANY.TSIG.TSIG
    - dns.renderer.Renderer._set_section
    - <builtin>.super
    - keys_to_delete.append
    - dns.tsig.Key
    - <builtin>.chr
    - dns.renderer.Renderer._rollback
    - dns.tsig.HMACTSig.sign
    - keyname.to_wire
    - byte_.isdigit
    - time.time
    - rdata.replace
    - dns.tsig.HMACTSig.update
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - output.tell
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - length.to_bytes
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - key.name.to_digestable
    - tsig.to_wire
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.renderer.Renderer._temporarily_seek_to
    - key.algorithm.to_digestable
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.tsig.sign
    - dns.message.Message._make_tsig
    - dns.rrset.RRset.__init__
    - dns.renderer.Renderer._track_size
    - typing.cast
    - <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: dns.tsig.Key
    functionSourceFile: <builtin>
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 8
    argDefaultValues: []
    argNames:
    - keyname
    - algorithm
    - time_signed
    - fudge
    - mac
    - original_id
    - error
    - other
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 659
    functionName: dns.message.Message._make_tsig
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached:
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - dns.rdtypes.ANY.TSIG.TSIG
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - r.update_ttl
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - typing.cast
    - <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: time.time
    functionSourceFile: time
    functionUses: 123
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a893a0>
    - <ast.Constant object at 0x7fc9c5a89190>
    - <ast.Constant object at 0x7fc9c5a89a90>
    - <ast.Constant object at 0x7fc9c5a89be0>
    argNames:
    - wire
    - key
    - rdata
    - time
    - request_mac
    - ctx
    - multi
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 263
    functionName: dns.tsig.sign
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached:
    - hmac.new
    - key.algorithm.to_digestable
    - <builtin>.len
    - struct.pack
    - dns.tsig.HMACTSig.__init__
    - dns.tsig._maybe_start_digest
    - key.name.to_digestable
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - dns.tsig.GSSTSig.sign
    - dns.tsig._digest
    - rdata.replace
    - dns.tsig.GSSTSig.__init__
    - dns.tsig.HMACTSig.update
    - dns.tsig.get_context
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tsig
    - keyname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 299
    functionName: dns.renderer.Renderer._write_tsig
    functionSourceFile: dns.renderer
    functionUses: 2
    functionsReached:
    - dns.renderer.prefixed_length
    - output.write
    - dns.renderer.Renderer._temporarily_seek_to
    - output.tell
    - dns.renderer.Renderer._set_section
    - keys_to_delete.append
    - struct.pack
    - length.to_bytes
    - dns.renderer.Renderer._rollback
    - keyname.to_wire
    - tsig.to_wire
    - dns.renderer.Renderer._track_size
    - output.seek
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 10
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c59d3a00>
    argNames:
    - self
    - ctx
    - keyname
    - secret
    - fudge
    - id
    - tsig_error
    - other_data
    - request_mac
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 264
    functionName: dns.renderer.Renderer.add_multi_tsig
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - output.seek
    - dns.renderer.Renderer._write_tsig
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - dns.tsig.GSSTSig.update
    - dns.tsig._digest
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.sign
    - dns.tsig.GSSTSig.__init__
    - dns.renderer.prefixed_length
    - hmac.new
    - output.write
    - dns.name._maybe_convert_to_binary
    - dns.rdtypes.ANY.TSIG.TSIG
    - dns.renderer.Renderer._set_section
    - <builtin>.super
    - keys_to_delete.append
    - dns.tsig.Key
    - <builtin>.chr
    - dns.renderer.Renderer._rollback
    - dns.tsig.HMACTSig.sign
    - keyname.to_wire
    - byte_.isdigit
    - time.time
    - rdata.replace
    - dns.tsig.HMACTSig.update
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - output.tell
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - length.to_bytes
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - key.name.to_digestable
    - tsig.to_wire
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.renderer.Renderer._temporarily_seek_to
    - key.algorithm.to_digestable
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.tsig.sign
    - dns.message.Message._make_tsig
    - dns.rrset.RRset.__init__
    - dns.renderer.Renderer._track_size
    - typing.cast
    - <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: keyname.to_wire
    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: tsig.to_wire
    functionSourceFile: <builtin>
    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: 1
    functionLinenumber: 317
    functionName: dns.renderer.Renderer.write_header
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - struct.pack
    - dns.renderer.Renderer._temporarily_seek_to
    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: 338
    functionName: dns.renderer.Renderer.get_wire
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 343
    functionName: dns.renderer.Renderer.reserve
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 352
    functionName: dns.renderer.Renderer.release_reserved
    functionSourceFile: dns.renderer
    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: dns.edns
    functionSourceFile: dns.edns
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: dns.edns.OptionType._maximum
    functionSourceFile: dns.edns
    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
    - otype
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: dns.edns.Option.__init__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - OptionType.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: OptionType.make
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5ef87f0>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 78
    functionName: dns.edns.Option.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    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: 86
    functionName: dns.edns.Option.to_text
    functionSourceFile: dns.edns
    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: 3
    functionLinenumber: 89
    functionName: dns.edns.Option.to_generic
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_wire
    - dns.edns.ECSOption.to_wire
    - <builtin>.super
    - file.write
    - dns.edns.CookieOption.to_wire
    - <builtin>.len
    - struct.pack
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.GenericOption.to_wire
    - value.encode
    - <builtin>.bytes
    - dns.edns.GenericOption.__init__
    - dns.edns.ReportChannelOption.to_wire
    - dns.rdata.Rdata._as_bytes
    - <builtin>.isinstance
    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 0x7fc9c5ed0370>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 301
    functionName: dns.edns.ECSOption.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c6469280>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 492
    functionName: dns.edns.ReportChannelOption.to_wire
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5686dc0>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 462
    functionName: dns.edns.CookieOption.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    functionsReached:
    - file.write
    - <builtin>.len
    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 0x7fc9c6338df0>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 397
    functionName: dns.edns.EDEOption.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c59d5100>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 430
    functionName: dns.edns.NSIDOption.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    functionsReached:
    - file.write
    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 0x7fc9c61fc640>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 173
    functionName: dns.edns.GenericOption.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    functionsReached:
    - file.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - otype
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 169
    functionName: dns.edns.GenericOption.__init__
    functionSourceFile: dns.edns
    functionUses: 5
    functionsReached:
    - <builtin>.super
    - <builtin>.len
    - value.encode
    - <builtin>.bytes
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 99
    functionName: dns.edns.Option.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 111
    functionName: dns.edns.Option._cmp
    functionSourceFile: dns.edns
    functionUses: 6
    functionsReached:
    - dns.edns.Option.to_wire
    - dns.edns.ECSOption.to_wire
    - file.write
    - dns.edns.CookieOption.to_wire
    - <builtin>.len
    - struct.pack
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.GenericOption.to_wire
    - other.to_wire
    - dns.edns.ReportChannelOption.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other.to_wire
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 124
    functionName: dns.edns.Option.__eq__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_wire
    - dns.edns.ECSOption.to_wire
    - file.write
    - dns.edns.CookieOption.to_wire
    - <builtin>.len
    - struct.pack
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.GenericOption.to_wire
    - other.to_wire
    - dns.edns.Option._cmp
    - dns.edns.ReportChannelOption.to_wire
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 131
    functionName: dns.edns.Option.__ne__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_wire
    - dns.edns.ECSOption.to_wire
    - file.write
    - dns.edns.CookieOption.to_wire
    - <builtin>.len
    - struct.pack
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.GenericOption.to_wire
    - other.to_wire
    - dns.edns.Option._cmp
    - dns.edns.ReportChannelOption.to_wire
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 138
    functionName: dns.edns.Option.__lt__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_wire
    - dns.edns.ECSOption.to_wire
    - file.write
    - dns.edns.CookieOption.to_wire
    - <builtin>.len
    - struct.pack
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.GenericOption.to_wire
    - other.to_wire
    - dns.edns.Option._cmp
    - dns.edns.ReportChannelOption.to_wire
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 143
    functionName: dns.edns.Option.__le__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_wire
    - dns.edns.ECSOption.to_wire
    - file.write
    - dns.edns.CookieOption.to_wire
    - <builtin>.len
    - struct.pack
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.GenericOption.to_wire
    - other.to_wire
    - dns.edns.Option._cmp
    - dns.edns.ReportChannelOption.to_wire
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 148
    functionName: dns.edns.Option.__ge__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_wire
    - dns.edns.ECSOption.to_wire
    - file.write
    - dns.edns.CookieOption.to_wire
    - <builtin>.len
    - struct.pack
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.GenericOption.to_wire
    - other.to_wire
    - dns.edns.Option._cmp
    - dns.edns.ReportChannelOption.to_wire
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 153
    functionName: dns.edns.Option.__gt__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_wire
    - dns.edns.ECSOption.to_wire
    - file.write
    - dns.edns.CookieOption.to_wire
    - <builtin>.len
    - struct.pack
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.GenericOption.to_wire
    - other.to_wire
    - dns.edns.Option._cmp
    - dns.edns.ReportChannelOption.to_wire
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 158
    functionName: dns.edns.Option.__str__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_text
    - dns.edns.NSIDOption.to_text
    - <builtin>.all
    - <builtin>.len
    - dns.edns.ReportChannelOption.to_text
    - word.title
    - dns.edns.GenericOption.to_text
    - binascii.hexlify
    - dns.edns.CookieOption.to_text
    - dns.edns.EDEOption.to_text
    - desc.split
    - dns.edns.ECSOption.to_text
    - EDECode.to_text
    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: 471
    functionName: dns.edns.CookieOption.to_text
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - binascii.hexlify
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 384
    functionName: dns.edns.EDEOption.to_text
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - word.title
    - EDECode.to_text
    - desc.split
    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: 437
    functionName: dns.edns.NSIDOption.to_text
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - binascii.hexlify
    - <builtin>.all
    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: 495
    functionName: dns.edns.ReportChannelOption.to_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: 243
    functionName: dns.edns.ECSOption.to_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: 180
    functionName: dns.edns.GenericOption.to_text
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5990160>
    - <ast.Constant object at 0x7fc9c59900d0>
    - <ast.Constant object at 0x7fc9c5990ee0>
    argNames:
    - cls
    - value
    - encode
    - max_length
    - empty_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 481
    functionName: dns.rdata.Rdata._as_bytes
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached:
    - value.encode
    - <builtin>.isinstance
    - <builtin>.bytes
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 183
    functionName: dns.edns.GenericOption.to_generic
    functionSourceFile: dns.edns
    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:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 187
    functionName: dns.edns.GenericOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 3
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - <builtin>.len
    - value.encode
    - <builtin>.bytes
    - dns.edns.GenericOption.__init__
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_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: parser.get_remaining
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b47400>
    - <ast.Constant object at 0x7fc9c5b47520>
    argNames:
    - self
    - address
    - srclen
    - scopelen
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 196
    functionName: dns.edns.ECSOption.__init__
    functionSourceFile: dns.edns
    functionUses: 2
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdata.Rdata._as_int
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - btext.startswith
    - <builtin>.super
    - btext.endswith
    - dns.rdata.Rdata._as_ipv4_address
    - _leading_zero.match
    - binascii.hexlify
    - math.ceil
    - dns.rdata.Rdata._as_ipv6_address
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.canonicalize
    - part.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.canonicalize
    - dns.inet.inet_pton
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 75
    functionName: dns.inet.af_for_address
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 567
    functionName: dns.rdata.Rdata._as_ipv6_address
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - <builtin>.range
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    - m.group
    - btext.startswith
    - btext.endswith
    - _leading_zero.match
    - binascii.hexlify
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.canonicalize
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5de9760>
    - <ast.Constant object at 0x7fc9c5de9220>
    argNames:
    - cls
    - value
    - low
    - high
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 546
    functionName: dns.rdata.Rdata._as_int
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 556
    functionName: dns.rdata.Rdata._as_ipv4_address
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached:
    - part.isdigit
    - text.encode
    - btext.split
    - <builtin>.len
    - <builtin>.ord
    - struct.pack
    - <builtin>.int
    - dns.ipv4.canonicalize
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    - dns.ipv4.inet_ntoa
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - family
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 33
    functionName: dns.inet.inet_pton
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.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: math.ceil
    functionSourceFile: math
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 247
    functionName: dns.edns.ECSOption.from_text
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - ecs_text.count
    - _colon_colon_start.match
    - dns.edns.ECSOption.__init__
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - text.split
    - dns.rdata.Rdata._as_int
    - ecs_text.split
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - btext.startswith
    - <builtin>.super
    - btext.endswith
    - dns.rdata.Rdata._as_ipv4_address
    - _leading_zero.match
    - binascii.hexlify
    - math.ceil
    - dns.rdata.Rdata._as_ipv6_address
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.canonicalize
    - part.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.canonicalize
    - dns.inet.inet_pton
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.split
    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: ecs_text.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: ecs_text.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 312
    functionName: dns.edns.ECSOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - dns.edns.ECSOption.__init__
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdata.Rdata._as_int
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - <builtin>.super
    - btext.endswith
    - dns.rdata.Rdata._as_ipv4_address
    - _leading_zero.match
    - binascii.hexlify
    - math.ceil
    - parser.get_struct
    - dns.rdata.Rdata._as_ipv6_address
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.canonicalize
    - part.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.canonicalize
    - parser.get_bytes
    - dns.ipv6.inet_ntoa
    - dns.inet.inet_pton
    - dns.ipv4.inet_ntoa
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.get_struct
    functionSourceFile: <builtin>
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - address
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 26
    functionName: dns.ipv4.inet_ntoa
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 2
    IfCount: 11
    argCount: 1
    argDefaultValues: []
    argNames:
    - address
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 30
    functionName: dns.ipv6.inet_ntoa
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached:
    - <builtin>.len
    - _leading_zero.match
    - chunks.append
    - binascii.hexlify
    - <builtin>.range
    - m.group
    - dns.ipv4.inet_ntoa
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 360
    functionName: dns.edns.EDECode._maximum
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a327f0>
    argNames:
    - self
    - code
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 369
    functionName: dns.edns.EDEOption.__init__
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - EDECode.make
    - <builtin>.isinstance
    - <builtin>.super
    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: EDECode.make
    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: EDECode.to_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: word.title
    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: desc.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 409
    functionName: dns.edns.EDEOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.edns.EDEOption.__init__
    - <builtin>.super
    - EDECode.make
    - parser.get_uint16
    - text.decode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.get_uint16
    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: text.decode
    functionSourceFile: <builtin>
    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
    - nsid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 426
    functionName: dns.edns.NSIDOption.__init__
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.all
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: binascii.hexlify
    functionSourceFile: binascii
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 446
    functionName: dns.edns.NSIDOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - parser.get_remaining
    - dns.edns.NSIDOption.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client
    - server
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 453
    functionName: dns.edns.CookieOption.__init__
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 480
    functionName: dns.edns.CookieOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - <builtin>.len
    - parser.get_bytes
    - dns.edns.CookieOption.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - agent_domain
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 488
    functionName: dns.edns.ReportChannelOption.__init__
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 499
    functionName: dns.edns.ReportChannelOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - parser.get_name
    - dns.edns.ReportChannelOption.__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: parser.get_name
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - otype
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 514
    functionName: dns.edns.get_option_class
    functionSourceFile: dns.edns
    functionUses: 3
    functionsReached:
    - _type_to_class.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: _type_to_class.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 527
    functionName: dns.edns.option_from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 2
    functionsReached:
    - parser.get_remaining
    - dns.edns.get_option_class
    - <builtin>.super
    - <builtin>.len
    - dns.edns.GenericOption.from_wire_parser
    - value.encode
    - <builtin>.bytes
    - dns.edns.GenericOption.__init__
    - _type_to_class.get
    - dns.rdata.Rdata._as_bytes
    - OptionType.make
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - otype
    - wire
    - current
    - olen
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 544
    functionName: dns.edns.option_from_wire
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - OptionType.make
    - dns.edns.option_from_wire_parser
    - parser.get_remaining
    - dns.edns.get_option_class
    - <builtin>.super
    - contextlib.contextmanager
    - <builtin>.len
    - value.encode
    - <builtin>.bytes
    - parser.restrict_to
    - dns.edns.GenericOption.__init__
    - _type_to_class.get
    - dns.rdata.Rdata._as_bytes
    - dns.wire.Parser
    - dns.edns.GenericOption.from_wire_parser
    - <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: parser.restrict_to
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - implementation
    - otype
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 565
    functionName: dns.edns.register_type
    functionSourceFile: dns.edns
    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: dns.ipv6
    functionSourceFile: dns.ipv6
    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: 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: _leading_zero.match
    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: m.group
    functionSourceFile: <builtin>
    functionUses: 89
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chunks.append
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 3
    IfCount: 17
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5ed0250>
    argNames:
    - text
    - ignore_scope
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 104
    functionName: dns.ipv6.inet_aton
    functionSourceFile: dns.ipv6
    functionUses: 85
    functionsReached:
    - btext.startswith
    - _colon_colon_start.match
    - part.isdigit
    - _v4_ending.match
    - _colon_colon_end.match
    - btext.endswith
    - text.encode
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - <builtin>.ord
    - struct.pack
    - <builtin>.int
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - canonical.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: btext.split
    functionSourceFile: <builtin>
    functionUses: 93
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: btext.endswith
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: btext.startswith
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _v4_ending.match
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: dns.ipv4.inet_aton
    functionSourceFile: <builtin>
    functionUses: 92
    functionsReached:
    - part.isdigit
    - text.encode
    - btext.split
    - <builtin>.len
    - <builtin>.ord
    - struct.pack
    - <builtin>.int
    - <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: _colon_colon_start.match
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _colon_colon_end.match
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: canonical.append
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: binascii.unhexlify
    functionSourceFile: binascii
    functionUses: 115
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - address
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 198
    functionName: dns.ipv6.is_mapped
    functionSourceFile: dns.ipv6
    functionUses: 6
    functionsReached:
    - address.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: address.startswith
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 209
    functionName: dns.ipv6.canonicalize
    functionSourceFile: dns.ipv6
    functionUses: 8
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - <builtin>.range
    - dns.ipv4.inet_aton
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - _leading_zero.match
    - binascii.hexlify
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - canonical.append
    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: dns.ipv4
    functionSourceFile: dns.ipv4
    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: part.isdigit
    functionSourceFile: <builtin>
    functionUses: 93
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 67
    functionName: dns.ipv4.canonicalize
    functionSourceFile: dns.ipv4
    functionUses: 8
    functionsReached:
    - part.isdigit
    - text.encode
    - btext.split
    - <builtin>.len
    - <builtin>.ord
    - struct.pack
    - <builtin>.int
    - dns.ipv4.inet_aton
    - dns.ipv4.inet_ntoa
    - <builtin>.isinstance
    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: dns.inet
    functionSourceFile: dns.inet
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - family
    - address
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 54
    functionName: dns.inet.inet_ntop
    functionSourceFile: dns.inet
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - _leading_zero.match
    - chunks.append
    - binascii.hexlify
    - dns.ipv6.inet_ntoa
    - <builtin>.range
    - m.group
    - dns.ipv4.inet_ntoa
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 97
    functionName: dns.inet.is_multicast
    functionSourceFile: dns.inet
    functionUses: 9
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 119
    functionName: dns.inet.is_address
    functionSourceFile: dns.inet
    functionUses: 24
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e39700>
    argNames:
    - high_tuple
    - af
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 138
    functionName: dns.inet.low_level_address_tuple
    functionSourceFile: dns.inet
    functionUses: 25
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - address.find
    - socket.getaddrinfo
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - scope.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    - socket.if_nametoindex
    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: 0
    functionLinenumber: -1
    functionName: address.find
    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: scope.isdigit
    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: socket.if_nametoindex
    functionSourceFile: socket
    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: socket.getaddrinfo
    functionSourceFile: socket
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - af
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 174
    functionName: dns.inet.any_for_af
    functionSourceFile: dns.inet
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 183
    functionName: dns.inet.canonicalize
    functionSourceFile: dns.inet
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - _leading_zero.match
    - binascii.hexlify
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.canonicalize
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.canonicalize
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - canonical.append
    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: dns.rdata
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7fc9c6481190>
    - <ast.Constant object at 0x7fc9c64814c0>
    argNames:
    - data
    - chunksize
    - separator
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdata._wordbreak
    functionSourceFile: dns.rdata
    functionUses: 23
    functionsReached:
    - data.decode
    - <builtin>.len
    - <builtin>.range
    - separator.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.decode
    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: separator.join
    functionSourceFile: <builtin>
    functionUses: 24
    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 0x7fc9c5f209a0>
    - <ast.Constant object at 0x7fc9c5f20e50>
    argNames:
    - data
    - chunksize
    - separator
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 75
    functionName: dns.rdata._hexify
    functionSourceFile: dns.rdata
    functionUses: 13
    functionsReached:
    - <builtin>.len
    - binascii.hexlify
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - data.decode
    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 0x7fc9c5f20190>
    - <ast.Constant object at 0x7fc9c5f20370>
    argNames:
    - data
    - chunksize
    - separator
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 83
    functionName: dns.rdata._base64ify
    functionSourceFile: dns.rdata
    functionUses: 8
    functionsReached:
    - <builtin>.len
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - base64.b64encode
    - data.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: base64.b64encode
    functionSourceFile: base64
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - qstring
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: dns.rdata._escapify
    functionSourceFile: dns.rdata
    functionUses: 8
    functionsReached:
    - <builtin>.bytearray
    - <builtin>.chr
    - <builtin>.isinstance
    - qstring.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: qstring.encode
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 115
    functionName: dns.rdata._truncate_bitmap
    functionSourceFile: dns.rdata
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 136
    functionName: dns.rdata.Rdata.__init__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - dns.rdatatype.RdataType.make
    - dns.rdata.Rdata._as_rdataclass
    - dns.rdataclass.RdataClass.make
    - dns.rdata.Rdata._as_rdatatype
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 473
    functionName: dns.rdata.Rdata._as_rdataclass
    functionSourceFile: dns.rdata
    functionUses: 1
    functionsReached:
    - dns.rdataclass.RdataClass.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 477
    functionName: dns.rdata.Rdata._as_rdatatype
    functionSourceFile: dns.rdata
    functionUses: 1
    functionsReached:
    - dns.rdatatype.RdataType.make
    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: 152
    functionName: dns.rdata.Rdata._get_all_slots
    functionSourceFile: dns.rdata
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - itertools.chain.from_iterable
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 2
    functionLinenumber: 157
    functionName: dns.rdata.Rdata.__getstate__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - dns.rdata.Rdata._get_all_slots
    - itertools.chain.from_iterable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - state
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 171
    functionName: dns.rdata.Rdata.__setstate__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - state.items
    - <builtin>.hasattr
    - object.__setattr__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: state.items
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 179
    functionName: dns.rdata.Rdata.covers
    functionSourceFile: dns.rdata
    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: 193
    functionName: dns.rdata.Rdata.extended_rdatatype
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - dns.rdata.Rdata.covers
    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 0x7fc9c57b3190>
    - <ast.Constant object at 0x7fc9c57b3640>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 203
    functionName: dns.rdata.Rdata.to_text
    functionSourceFile: dns.rdata
    functionUses: 0
    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 0x7fc9c57b3b50>
    - <ast.Constant object at 0x7fc9c57b3400>
    - <ast.Constant object at 0x7fc9c57b3df0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 216
    functionName: dns.rdata.Rdata._to_wire
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c57b3d30>
    - <ast.Constant object at 0x7fc9c57b3730>
    - <ast.Constant object at 0x7fc9c57b3610>
    - <ast.Constant object at 0x7fc9c57b3700>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 225
    functionName: dns.rdata.Rdata.to_wire
    functionSourceFile: dns.rdata
    functionUses: 10
    functionsReached:
    - file.write
    - io.BytesIO
    - dns.rdata.GenericRdata._to_wire
    - f.getvalue
    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 0x7fc9c5894b20>
    - <ast.Constant object at 0x7fc9c5894070>
    - <ast.Constant object at 0x7fc9c5894850>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 654
    functionName: dns.rdata.GenericRdata._to_wire
    functionSourceFile: dns.rdata
    functionUses: 11
    functionsReached:
    - file.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: f.getvalue
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5dcdd00>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 249
    functionName: dns.rdata.Rdata.to_generic
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.rdata.GenericRdata.__init__
    - file.write
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 623
    functionName: dns.rdata.GenericRdata.__init__
    functionSourceFile: dns.rdata
    functionUses: 62
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c57f6e50>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 258
    functionName: dns.rdata.Rdata.to_digestable
    functionSourceFile: dns.rdata
    functionUses: 8
    functionsReached:
    - file.write
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    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: 2
    functionLinenumber: 268
    functionName: dns.rdata.Rdata.__repr__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - dns.rdata.Rdata.covers
    - dns.rdataclass.to_text
    - RdataType.to_text
    - RdataClass.to_text
    - dns.rdatatype.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 184
    functionName: dns.rdatatype.to_text
    functionSourceFile: <builtin>
    functionUses: 70
    functionsReached:
    - RdataType.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: dns.rdataclass.to_text
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached:
    - RdataClass.to_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: 4
    functionLinenumber: 285
    functionName: dns.rdata.Rdata.__str__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - dns.rdata.GenericRdata.to_text
    - <builtin>.len
    - dns.rdata._wordbreak
    - dns.rdata._hexify
    - binascii.hexlify
    - <builtin>.range
    - separator.join
    - data.decode
    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 0x7fc9c59f1760>
    - <ast.Constant object at 0x7fc9c59f1fd0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 632
    functionName: dns.rdata.GenericRdata.to_text
    functionSourceFile: dns.rdata
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - binascii.hexlify
    - dns.rdata._hexify
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 288
    functionName: dns.rdata.Rdata._cmp
    functionSourceFile: dns.rdata
    functionUses: 4
    functionsReached:
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other.to_digestable
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 338
    functionName: dns.rdata.Rdata.__eq__
    functionSourceFile: dns.rdata
    functionUses: 1
    functionsReached:
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 359
    functionName: dns.rdata.Rdata.__ne__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    - <builtin>.isinstance
    - dns.rdata.Rdata.__eq__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 366
    functionName: dns.rdata.Rdata.__lt__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    - <builtin>.isinstance
    - dns.rdata.Rdata._cmp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 375
    functionName: dns.rdata.Rdata.__le__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    - <builtin>.isinstance
    - dns.rdata.Rdata._cmp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 384
    functionName: dns.rdata.Rdata.__ge__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    - <builtin>.isinstance
    - dns.rdata.Rdata._cmp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 393
    functionName: dns.rdata.Rdata.__gt__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - f.getvalue
    - io.BytesIO
    - <builtin>.isinstance
    - dns.rdata.Rdata._cmp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 402
    functionName: dns.rdata.Rdata.__hash__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - <builtin>.hash
    - f.getvalue
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68ee160>
    - <ast.Constant object at 0x7fc9c68ee670>
    - <ast.Constant object at 0x7fc9c68ee550>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 406
    functionName: dns.rdata.Rdata.from_text
    functionSourceFile: dns.rdata
    functionUses: 0
    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 0x7fc9c68ee5b0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 418
    functionName: dns.rdata.Rdata.from_wire_parser
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 427
    functionName: dns.rdata.Rdata.replace
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - inspect.signature
    - kwargs.get
    - <builtin>.getattr
    - object.__setattr__
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdataclass.RdataClass.make
    functionSourceFile: <builtin>
    functionUses: 76
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdatatype.RdataType.make
    functionSourceFile: <builtin>
    functionUses: 93
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.encode
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 503
    functionName: dns.rdata.Rdata._as_name
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 514
    functionName: dns.rdata.Rdata._as_uint8
    functionSourceFile: dns.rdata
    functionUses: 6
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 522
    functionName: dns.rdata.Rdata._as_uint16
    functionSourceFile: dns.rdata
    functionUses: 6
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 530
    functionName: dns.rdata.Rdata._as_uint32
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 538
    functionName: dns.rdata.Rdata._as_uint48
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 578
    functionName: dns.rdata.Rdata._as_bool
    functionSourceFile: dns.rdata
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 585
    functionName: dns.rdata.Rdata._as_ttl
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - c.isdigit
    - <builtin>.len
    - dns.rdata.Rdata._as_int
    - <builtin>.int
    - dns.ttl.from_text
    - text.isdigit
    - <builtin>.isinstance
    - c.lower
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - value
    - as_value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 594
    functionName: dns.rdata.Rdata._as_tuple
    functionSourceFile: dns.rdata
    functionUses: 9
    functionsReached:
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 607
    functionName: dns.rdata.Rdata._processing_order
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - random.shuffle
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: random.shuffle
    functionSourceFile: random
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59f1880>
    - <ast.Constant object at 0x7fc9c59f1af0>
    - <ast.Constant object at 0x7fc9c59f1e80>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 641
    functionName: dns.rdata.GenericRdata.from_text
    functionSourceFile: dns.rdata
    functionUses: 22
    functionsReached:
    - <builtin>.super
    - dns.rdata.GenericRdata.__init__
    - <builtin>.len
    - binascii.unhexlify
    - token.is_identifier
    - tok.get
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.get
    functionSourceFile: <builtin>
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.is_identifier
    functionSourceFile: <builtin>
    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: tok.get_int
    functionSourceFile: <builtin>
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.concatenate_remaining_identifiers
    functionSourceFile: <builtin>
    functionUses: 34
    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 0x7fc9c58940a0>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 657
    functionName: dns.rdata.GenericRdata.to_generic
    functionSourceFile: dns.rdata
    functionUses: 0
    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 0x7fc9c5894e50>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 661
    functionName: dns.rdata.GenericRdata.from_wire_parser
    functionSourceFile: dns.rdata
    functionUses: 59
    functionsReached:
    - dns.rdata.GenericRdata.__init__
    - parser.get_remaining
    - <builtin>.super
    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 0x7fc9c5d71d30>
    argNames:
    - rdclass
    - rdtype
    - use_generic
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 672
    functionName: dns.rdata.get_rdata_class
    functionSourceFile: dns.rdata
    functionUses: 61
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - dns.rdataclass.to_text
    - RdataType.to_text
    - RdataClass.to_text
    - dns.rdatatype.to_text
    - rdtype_text.replace
    - _rdata_classes.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: _rdata_classes.get
    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: rdtype_text.replace
    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: importlib.import_module
    functionSourceFile: importlib
    functionUses: 62
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bc2ca0>
    argNames:
    - disable_dynamic_load
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 700
    functionName: dns.rdata.load_all_types
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - dns.rdata.get_rdata_class
    - importlib.import_module
    - dns.rdataclass.to_text
    - RdataType.to_text
    - RdataClass.to_text
    - dns.rdatatype.to_text
    - rdtype_text.replace
    - _rdata_classes.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 3
    IfCount: 7
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59e3040>
    - <ast.Constant object at 0x7fc9c59e3a90>
    - <ast.Constant object at 0x7fc9c59e37f0>
    - <ast.Constant object at 0x7fc9c59e3d30>
    argNames:
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 724
    functionName: dns.rdata.from_text
    functionSourceFile: dns.rdata
    functionUses: 21
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - dns.rdataclass.to_text
    - contextlib.contextmanager
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - dns.exception.ExceptionWrapper
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - <builtin>.super
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.RdataClass.make
    - dns.rdata.from_wire
    - dns.wire.Parser
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - object.__setattr__
    - <builtin>.len
    - RdataType.to_text
    - binascii.unhexlify
    - tok.get_int
    - dns.tokenizer.Tokenizer
    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: dns.exception.ExceptionWrapper
    functionSourceFile: <builtin>
    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: tok.unget
    functionSourceFile: <builtin>
    functionUses: 23
    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 0x7fc9c5dd7550>
    argNames:
    - rdclass
    - rdtype
    - wire
    - current
    - rdlen
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 854
    functionName: dns.rdata.from_wire
    functionSourceFile: dns.rdata
    functionUses: 26
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - contextlib.contextmanager
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - dns.exception.ExceptionWrapper
    - parser.restrict_to
    - dns.rdatatype.RdataType.make
    - <builtin>.super
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.RdataClass.make
    - dns.wire.Parser
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rdata.to_wire
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.get_eol_as_token
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c57c8580>
    argNames:
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 817
    functionName: dns.rdata.from_wire_parser
    functionSourceFile: dns.rdata
    functionUses: 58
    functionsReached:
    - <builtin>.getattr
    - dns.rdata.get_rdata_class
    - importlib.import_module
    - parser.get_remaining
    - <builtin>.super
    - dns.rdataclass.to_text
    - dns.rdata.GenericRdata.__init__
    - RdataType.to_text
    - RdataClass.to_text
    - dns.rdatatype.to_text
    - dns.rdataclass.RdataClass.make
    - dns.exception.ExceptionWrapper
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - dns.rdatatype.RdataType.make
    - _rdata_classes.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c65378e0>
    - <ast.Attribute object at 0x7fc9c65376a0>
    argNames:
    - implementation
    - rdtype
    - rdtype_text
    - is_singleton
    - rdclass
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 903
    functionName: dns.rdata.register_type
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - <builtin>.issubclass
    - dns.rdata.get_rdata_class
    - importlib.import_module
    - <builtin>.getattr
    - dns.rdatatype.is_metatype
    - dns.rdataclass.to_text
    - RdataType.to_text
    - RdataClass.to_text
    - dns.rdatatype.to_text
    - dns.rdatatype.register_type
    - _singletons.add
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - rdtype_text.replace
    - _rdata_classes.get
    linkageType: pythonLinkage
    raised:
    - RdatatypeExists
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdtype
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 198
    functionName: dns.rdatatype.is_metatype
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.issubclass
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bc2040>
    argNames:
    - rdtype
    - rdtype_text
    - is_singleton
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 232
    functionName: dns.rdatatype.register_type
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - _singletons.add
    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: dns.rdataclass
    functionSourceFile: dns.rdataclass
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 38
    functionName: dns.rdataclass.RdataClass._maximum
    functionSourceFile: dns.rdataclass
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: dns.rdataclass.RdataClass._short_name
    functionSourceFile: dns.rdataclass
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 46
    functionName: dns.rdataclass.RdataClass._prefix
    functionSourceFile: dns.rdataclass
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: dns.rdataclass.RdataClass._unknown_exception_class
    functionSourceFile: dns.rdataclass
    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:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 61
    functionName: dns.rdataclass.from_text
    functionSourceFile: dns.rdataclass
    functionUses: 9
    functionsReached:
    - RdataClass.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: RdataClass.from_text
    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: RdataClass.to_text
    functionSourceFile: <builtin>
    functionUses: 68
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdclass
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 93
    functionName: dns.rdataclass.is_metaclass
    functionSourceFile: dns.rdataclass
    functionUses: 9
    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: dns.rdatatype
    functionSourceFile: dns.rdatatype
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 115
    functionName: dns.rdatatype.RdataType._maximum
    functionSourceFile: dns.rdatatype
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: dns.rdatatype.RdataType._short_name
    functionSourceFile: dns.rdatatype
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 123
    functionName: dns.rdatatype.RdataType._prefix
    functionSourceFile: dns.rdatatype
    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:
    - cls
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 127
    functionName: dns.rdatatype.RdataType._extra_from_text
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached:
    - _registered_by_text.get
    - text.replace
    - text.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: text.find
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.replace
    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: _registered_by_text.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - value
    - current_text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 136
    functionName: dns.rdatatype.RdataType._extra_to_text
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached:
    - current_text.find
    - _registered_by_value.get
    - current_text.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _registered_by_value.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: current_text.find
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: current_text.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 144
    functionName: dns.rdatatype.RdataType._unknown_exception_class
    functionSourceFile: dns.rdatatype
    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:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 166
    functionName: dns.rdatatype.from_text
    functionSourceFile: dns.rdatatype
    functionUses: 12
    functionsReached:
    - RdataType.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: RdataType.from_text
    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: RdataType.to_text
    functionSourceFile: <builtin>
    functionUses: 71
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdtype
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 212
    functionName: dns.rdatatype.is_singleton
    functionSourceFile: dns.rdatatype
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _singletons.add
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: -1
    functionName: dns.tsig
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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
    - gssapi_context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 108
    functionName: dns.tsig.GSSTSig.__init__
    functionSourceFile: dns.tsig
    functionUses: 42
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 113
    functionName: dns.tsig.GSSTSig.update
    functionSourceFile: dns.tsig
    functionUses: 41
    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: 116
    functionName: dns.tsig.GSSTSig.sign
    functionSourceFile: dns.tsig
    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
    - expected
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 120
    functionName: dns.tsig.GSSTSig.verify
    functionSourceFile: dns.tsig
    functionUses: 35
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - keyring
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 130
    functionName: dns.tsig.GSSTSigAdapter.__init__
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - message
    - keyname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 133
    functionName: dns.tsig.GSSTSigAdapter.__call__
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - message.find_rrset
    - gssapi_context.step
    - dns.tsig.GSSTSigAdapter.parse_tkey_and_step
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - key
    - message
    - keyname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 144
    functionName: dns.tsig.GSSTSigAdapter.parse_tkey_and_step
    functionSourceFile: dns.tsig
    functionUses: 1
    functionsReached:
    - message.find_rrset
    - gssapi_context.step
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.find_rrset
    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: gssapi_context.step
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 179
    functionName: dns.tsig.HMACTSig.__init__
    functionSourceFile: dns.tsig
    functionUses: 42
    functionsReached:
    - hmac.new
    - <builtin>.isinstance
    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: 0
    functionLinenumber: -1
    functionName: hmac.new
    functionSourceFile: hmac
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 196
    functionName: dns.tsig.HMACTSig.update
    functionSourceFile: dns.tsig
    functionUses: 41
    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: 199
    functionName: dns.tsig.HMACTSig.sign
    functionSourceFile: dns.tsig
    functionUses: 40
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expected
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 206
    functionName: dns.tsig.HMACTSig.verify
    functionSourceFile: dns.tsig
    functionUses: 35
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - hmac.compare_digest
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hmac.compare_digest
    functionSourceFile: hmac
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 11
    IfCount: 6
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a4b5b0>
    - <ast.Constant object at 0x7fc9c6da49d0>
    - <ast.Constant object at 0x7fc9c5b35eb0>
    - <ast.Constant object at 0x7fc9c5b35fd0>
    argNames:
    - wire
    - key
    - rdata
    - time
    - request_mac
    - ctx
    - multi
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 213
    functionName: dns.tsig._digest
    functionSourceFile: dns.tsig
    functionUses: 39
    functionsReached:
    - hmac.new
    - key.algorithm.to_digestable
    - <builtin>.len
    - struct.pack
    - dns.tsig.HMACTSig.__init__
    - key.name.to_digestable
    - dns.tsig.GSSTSig.update
    - dns.tsig.GSSTSig.__init__
    - dns.tsig.HMACTSig.update
    - dns.tsig.get_context
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 317
    functionName: dns.tsig.get_context
    functionSourceFile: dns.tsig
    functionUses: 41
    functionsReached:
    - dns.tsig.HMACTSig.__init__
    - hmac.new
    - dns.tsig.GSSTSig.__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: key.name.to_digestable
    functionSourceFile: <builtin>
    functionUses: 40
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.algorithm.to_digestable
    functionSourceFile: <builtin>
    functionUses: 40
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - key
    - mac
    - multi
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 249
    functionName: dns.tsig._maybe_start_digest
    functionSourceFile: dns.tsig
    functionUses: 39
    functionsReached:
    - hmac.new
    - <builtin>.len
    - struct.pack
    - dns.tsig.HMACTSig.__init__
    - dns.tsig.GSSTSig.update
    - dns.tsig.GSSTSig.__init__
    - dns.tsig.HMACTSig.update
    - dns.tsig.get_context
    - <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: rdata.replace
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 2
    IfCount: 9
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d29310>
    - <ast.Constant object at 0x7fc9c5d29d60>
    argNames:
    - wire
    - key
    - owner
    - rdata
    - now
    - request_mac
    - tsig_start
    - ctx
    - multi
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 279
    functionName: dns.tsig.validate
    functionSourceFile: dns.tsig
    functionUses: 34
    functionsReached:
    - hmac.compare_digest
    - <builtin>.abs
    - dns.tsig.HMACTSig.__init__
    - dns.tsig.GSSTSig.update
    - dns.tsig._digest
    - dns.tsig.GSSTSig.__init__
    - <builtin>.isinstance
    - hmac.new
    - dns.tsig.HMACTSig.verify
    - dns.tsig.HMACTSig.sign
    - dns.tsig.HMACTSig.update
    - dns.tsig.get_context
    - dns.tsig.GSSTSig.verify
    - dns.tsig._maybe_start_digest
    - key.name.to_digestable
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised:
    - PeerError
    returnType: N/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: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7fc9c5990670>
    argNames:
    - self
    - name
    - secret
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 331
    functionName: dns.tsig.Key.__init__
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - secret.encode
    - labels.append
    - base64.decodebytes
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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: secret.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base64.decodebytes
    functionSourceFile: base64
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 347
    functionName: dns.tsig.Key.__eq__
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    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: 355
    functionName: dns.tsig.Key.__repr__
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - base64.b64encode
    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: dns.rcode
    functionSourceFile: dns.rcode
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 71
    functionName: dns.rcode.Rcode._maximum
    functionSourceFile: dns.rcode
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 75
    functionName: dns.rcode.Rcode._unknown_exception_class
    functionSourceFile: dns.rcode
    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:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 83
    functionName: dns.rcode.from_text
    functionSourceFile: dns.rcode
    functionUses: 5
    functionsReached:
    - Rcode.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Rcode.from_text
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - flags
    - ednsflags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: dns.rcode.from_flags
    functionSourceFile: dns.rcode
    functionUses: 5
    functionsReached:
    - Rcode.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Rcode.make
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: dns.rcode.to_flags
    functionSourceFile: dns.rcode
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6481cd0>
    argNames:
    - value
    - tsig
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 129
    functionName: dns.rcode.to_text
    functionSourceFile: dns.rcode
    functionUses: 12
    functionsReached:
    - Rcode.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Rcode.to_text
    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: dns.namedict
    functionSourceFile: dns.namedict
    functionUses: 0
    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: 45
    functionName: dns.namedict.NameDict.__init__
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.dict
    - collections.abc.MutableMapping.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: collections.abc.MutableMapping.update
    functionSourceFile: collections
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: dns.namedict.NameDict.__update_max_depth
    functionSourceFile: dns.namedict
    functionUses: 2
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: dns.namedict.NameDict.__getitem__
    functionSourceFile: dns.namedict
    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
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.namedict.NameDict.__setitem__
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.namedict.NameDict.__update_max_depth
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 70
    functionName: dns.namedict.NameDict.__delitem__
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.namedict.NameDict.__update_max_depth
    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: 79
    functionName: dns.namedict.NameDict.__iter__
    functionSourceFile: dns.namedict
    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: 82
    functionName: dns.namedict.NameDict.__len__
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 85
    functionName: dns.namedict.NameDict.has_key
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 88
    functionName: dns.namedict.NameDict.get_deepest_match
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    - dns.name.Name
    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: dns.serial
    functionSourceFile: dns.serial
    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 0x7fc9c5990190>
    argNames:
    - self
    - value
    - bits
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 7
    functionName: dns.serial.Serial.__init__
    functionSourceFile: dns.serial
    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: 0
    functionLinenumber: 11
    functionName: dns.serial.Serial.__repr__
    functionSourceFile: dns.serial
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 14
    functionName: dns.serial.Serial.__eq__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - dns.serial.Serial.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: dns.serial.Serial.__ne__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - dns.serial.Serial.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: dns.serial.Serial.__lt__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - dns.serial.Serial.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: dns.serial.Serial.__le__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 45
    functionName: dns.serial.Serial.__gt__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - dns.serial.Serial.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 59
    functionName: dns.serial.Serial.__ge__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: dns.serial.Serial.__add__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - <builtin>.abs
    - dns.serial.Serial.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 76
    functionName: dns.serial.Serial.__iadd__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.abs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: dns.serial.Serial.__sub__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - <builtin>.abs
    - dns.serial.Serial.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 105
    functionName: dns.serial.Serial.__isub__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.abs
    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: dns.tsigkeyring
    functionSourceFile: dns.tsigkeyring
    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:
    - textring
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 27
    functionName: dns.tsigkeyring.from_text
    functionSourceFile: dns.tsigkeyring
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - dns.tsig.Key
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - textring.items
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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: textring.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - keyring
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 45
    functionName: dns.tsigkeyring.to_text
    functionSourceFile: dns.tsigkeyring
    functionUses: 0
    functionsReached:
    - dns.tsigkeyring.to_text.b64encode
    - <builtin>.str
    - key.algorithm.to_text
    - base64.encodebytes
    - <builtin>.isinstance
    - keyring.items
    - name.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - secret
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: dns.tsigkeyring.to_text.b64encode
    functionSourceFile: dns.tsigkeyring
    functionUses: 1
    functionsReached:
    - base64.encodebytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.encodebytes
    functionSourceFile: base64
    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: keyring.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: name.to_text
    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: key.algorithm.to_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns._asyncio_backend
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns._features._version_check
    - _requirements.get
    - importlib.metadata.version
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - _cache.get
    - version.split
    - dns._features.have
    - requirement.split
    - <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: 1
    functionLinenumber: 17
    functionName: dns._asyncio_backend._get_running_loop
    functionSourceFile: dns._asyncio_backend
    functionUses: 2
    functionsReached:
    - asyncio.get_running_loop
    - asyncio.get_event_loop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.get_running_loop
    functionSourceFile: asyncio
    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: asyncio.get_event_loop
    functionSourceFile: asyncio
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 25
    functionName: dns._asyncio_backend._DatagramProtocol.__init__
    functionSourceFile: dns._asyncio_backend
    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
    - transport
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: dns._asyncio_backend._DatagramProtocol.connection_made
    functionSourceFile: dns._asyncio_backend
    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
    - data
    - addr
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 32
    functionName: dns._asyncio_backend._DatagramProtocol.datagram_received
    functionSourceFile: dns._asyncio_backend
    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
    - exc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: dns._asyncio_backend._DatagramProtocol.error_received
    functionSourceFile: dns._asyncio_backend
    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
    - exc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 40
    functionName: dns._asyncio_backend._DatagramProtocol.connection_lost
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - EOFError
    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: 51
    functionName: dns._asyncio_backend._DatagramProtocol.close
    functionSourceFile: dns._asyncio_backend
    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:
    - awaitable
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: dns._asyncio_backend._maybe_wait_for
    functionSourceFile: dns._asyncio_backend
    functionUses: 5
    functionsReached:
    - asyncio.wait_for
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.wait_for
    functionSourceFile: asyncio
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - family
    - transport
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: dns._asyncio_backend.DatagramSocket.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - what
    - destination
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: dns._asyncio_backend.DatagramSocket.sendto
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: dns._asyncio_backend.DatagramSocket.recvfrom
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.get_running_loop
    - asyncio.wait_for
    - done.result
    - dns._asyncio_backend._maybe_wait_for
    - asyncio.get_event_loop
    - dns._asyncio_backend._get_running_loop
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.result
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: dns._asyncio_backend.DatagramSocket.close
    functionSourceFile: dns._asyncio_backend
    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: 91
    functionName: dns._asyncio_backend.DatagramSocket.getpeername
    functionSourceFile: dns._asyncio_backend
    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: 94
    functionName: dns._asyncio_backend.DatagramSocket.getsockname
    functionSourceFile: dns._asyncio_backend
    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
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 97
    functionName: dns._asyncio_backend.DatagramSocket.getpeercert
    functionSourceFile: dns._asyncio_backend
    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
    - af
    - reader
    - writer
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: dns._asyncio_backend.StreamSocket.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - what
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 107
    functionName: dns._asyncio_backend.StreamSocket.sendall
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.wait_for
    - dns._asyncio_backend._maybe_wait_for
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 111
    functionName: dns._asyncio_backend.StreamSocket.recv
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.wait_for
    - dns._asyncio_backend._maybe_wait_for
    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: 114
    functionName: dns._asyncio_backend.StreamSocket.close
    functionSourceFile: dns._asyncio_backend
    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: 117
    functionName: dns._asyncio_backend.StreamSocket.getpeername
    functionSourceFile: dns._asyncio_backend
    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: 120
    functionName: dns._asyncio_backend.StreamSocket.getsockname
    functionSourceFile: dns._asyncio_backend
    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
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 123
    functionName: dns._asyncio_backend.StreamSocket.getpeercert
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - resolver
    - local_port
    - bootstrap_address
    - family
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 139
    functionName: dns._asyncio_backend._NetworkBackend.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68ef610>
    - <ast.Constant object at 0x7fc9c68efd60>
    - <ast.Constant object at 0x7fc9c68ef580>
    argNames:
    - self
    - host
    - port
    - timeout
    - local_address
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 150
    functionName: dns._asyncio_backend._NetworkBackend.connect_tcp
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - addresses.append
    - dns.query._remaining
    - btext.startswith
    - btext.endswith
    - anyio.connect_tcp
    - time.time
    - dns.query._expiration_for_this_attempt
    - <builtin>.ord
    - <builtin>.int
    - anyio.fail_after
    - dns.inet.is_address
    - part.isdigit
    - <builtin>.min
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - dns.query._compute_times
    - struct.pack
    - answers.addresses
    - httpcore._backends.anyio.AnyIOStream
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - timeout
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 226
    functionName: dns.query._compute_times
    functionSourceFile: dns.query
    functionUses: 30
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: addresses.append
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - expiration
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: dns.query._remaining
    functionSourceFile: dns.query
    functionUses: 17
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: answers.addresses
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - timeout
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.query._expiration_for_this_attempt
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - <builtin>.min
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: anyio.fail_after
    functionSourceFile: anyio
    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: anyio.connect_tcp
    functionSourceFile: anyio
    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: httpcore._backends.anyio.AnyIOStream
    functionSourceFile: httpcore
    functionUses: 1
    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 0x7fc9c5fd3310>
    - <ast.Constant object at 0x7fc9c5fd36a0>
    argNames:
    - self
    - path
    - timeout
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 183
    functionName: dns._asyncio_backend._NetworkBackend.connect_unix_socket
    functionSourceFile: dns._asyncio_backend
    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
    - seconds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 188
    functionName: dns._asyncio_backend._NetworkBackend.sleep
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - anyio.sleep
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: anyio.sleep
    functionSourceFile: anyio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - args
    - local_port
    - bootstrap_address
    - resolver
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 192
    functionName: dns._asyncio_backend._HTTPTransport.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncio_backend._NetworkBackend.__init__
    - dns.asyncresolver.Resolver
    - <builtin>.super
    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: dns.asyncresolver.Resolver
    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: 216
    functionName: dns._asyncio_backend.Backend.name
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59ecdc0>
    - <ast.Constant object at 0x7fc9c59ec790>
    - <ast.Constant object at 0x7fc9c59ecfd0>
    - <ast.Constant object at 0x7fc9c59ec6d0>
    - <ast.Constant object at 0x7fc9c59ec760>
    - <ast.Constant object at 0x7fc9c59ecf40>
    argNames:
    - self
    - af
    - socktype
    - proto
    - source
    - destination
    - timeout
    - ssl_context
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 219
    functionName: dns._asyncio_backend.Backend.make_socket
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.get_running_loop
    - <builtin>.super
    - loop.create_datagram_endpoint
    - dns._asyncio_backend.StreamSocket.__init__
    - dns._asyncio_backend._maybe_wait_for
    - asyncio.wait_for
    - dns._asyncio_backend.DatagramSocket.__init__
    - asyncio.get_event_loop
    - asyncio.open_connection
    - dns.inet.any_for_af
    - dns._asyncio_backend._get_running_loop
    linkageType: pythonLinkage
    raised:
    - ValueError
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: loop.create_datagram_endpoint
    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: asyncio.open_connection
    functionSourceFile: asyncio
    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
    - interval
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 266
    functionName: dns._asyncio_backend.Backend.sleep
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.sleep
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.sleep
    functionSourceFile: asyncio
    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: 269
    functionName: dns._asyncio_backend.Backend.datagram_connection_required
    functionSourceFile: dns._asyncio_backend
    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: 272
    functionName: dns._asyncio_backend.Backend.get_transport_class
    functionSourceFile: dns._asyncio_backend
    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
    - awaitable
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 275
    functionName: dns._asyncio_backend.Backend.wait_for
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.wait_for
    - dns._asyncio_backend._maybe_wait_for
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.query
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns._features._version_check
    - _requirements.get
    - importlib.metadata.version
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - _cache.get
    - version.split
    - dns._features.have
    - requirement.split
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - resolver
    - local_port
    - bootstrap_address
    - family
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 75
    functionName: dns.query._NetworkBackend.__init__
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61ad9d0>
    - <ast.Constant object at 0x7fc9c61ad940>
    - <ast.Constant object at 0x7fc9c61ad1c0>
    argNames:
    - self
    - host
    - port
    - timeout
    - local_address
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 82
    functionName: dns.query._NetworkBackend.connect_tcp
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - fd.pending
    - m.group
    - <builtin>.isinstance
    - addresses.append
    - dns.query._remaining
    - socket.if_nametoindex
    - btext.startswith
    - s.connect_ex
    - btext.endswith
    - dns.query._wait_for
    - address.find
    - ssl_context.wrap_socket
    - dns.query._connect
    - time.time
    - socket.getaddrinfo
    - dns.query._make_socket
    - s.setblocking
    - dns.query._expiration_for_this_attempt
    - <builtin>.ord
    - <builtin>.int
    - sel.register
    - s.getsockopt
    - selectors.DefaultSelector
    - sel.select
    - dns.inet.is_address
    - part.isdigit
    - <builtin>.min
    - s.close
    - _colon_colon_end.match
    - scope.isdigit
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - dns.query._compute_times
    - struct.pack
    - s.bind
    - answers.addresses
    - dns.query._wait_for_writable
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a32760>
    - <ast.Constant object at 0x7fc9c5a32ac0>
    argNames:
    - af
    - type
    - source
    - ssl_context
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 342
    functionName: dns.query._make_socket
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - s.bind
    - s.close
    - ssl_context.wrap_socket
    - s.setblocking
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - s
    - address
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1141
    functionName: dns.query._connect
    functionSourceFile: dns.query
    functionUses: 8
    functionsReached:
    - s.connect_ex
    - dns.query._wait_for
    - time.time
    - sel.register
    - s.getsockopt
    - selectors.DefaultSelector
    - dns.query._wait_for_writable
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    linkageType: pythonLinkage
    raised:
    - OSError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b47040>
    - <ast.Constant object at 0x7fc9c5b47f70>
    argNames:
    - self
    - path
    - timeout
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 123
    functionName: dns.query._NetworkBackend.connect_unix_socket
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - args
    - local_port
    - bootstrap_address
    - resolver
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 151
    functionName: dns.query._HTTPTransport.__init__
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.resolver.Resolver
    - dns.query._NetworkBackend.__init__
    - <builtin>.super
    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: dns.resolver.Resolver
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - host
    - port
    - timeout
    - local_address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 162
    functionName: dns.query._HTTPTransport.connect_tcp
    functionSourceFile: dns.query
    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: 191
    functionName: dns.query.ssl.SSLSocket.pending
    functionSourceFile: dns.query
    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:
    - cls
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 195
    functionName: dns.query.ssl.create_default_context
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 1
    IfCount: 7
    argCount: 5
    argDefaultValues: []
    argNames:
    - fd
    - readable
    - writable
    - _
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 234
    functionName: dns.query._wait_for
    functionSourceFile: dns.query
    functionUses: 22
    functionsReached:
    - sel.register
    - selectors.DefaultSelector
    - time.time
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fd.pending
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: selectors.DefaultSelector
    functionSourceFile: selectors
    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: sel.register
    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: sel.select
    functionSourceFile: <builtin>
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - s
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 262
    functionName: dns.query._wait_for_readable
    functionSourceFile: dns.query
    functionUses: 16
    functionsReached:
    - dns.query._wait_for
    - sel.register
    - selectors.DefaultSelector
    - time.time
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - s
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 266
    functionName: dns.query._wait_for_writable
    functionSourceFile: dns.query
    functionUses: 18
    functionsReached:
    - dns.query._wait_for
    - sel.register
    - selectors.DefaultSelector
    - time.time
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - af
    - a1
    - a2
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 270
    functionName: dns.query._addresses_equal
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns.inet.inet_pton
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - af
    - from_address
    - destination
    - ignore_unexpected
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 282
    functionName: dns.query._matches_destination
    functionSourceFile: dns.query
    functionUses: 8
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - dns.inet.is_multicast
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns.inet.inet_pton
    - dns.query._addresses_equal
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - UnexpectedSource
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d47460>
    argNames:
    - where
    - port
    - source
    - source_port
    - where_must_be_address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 298
    functionName: dns.query._destination_and_source
    functionSourceFile: dns.query
    functionUses: 10
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - dns.inet.any_for_af
    - btext.startswith
    - btext.endswith
    - address.find
    - socket.getaddrinfo
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - scope.isdigit
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    - socket.if_nametoindex
    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: s.setblocking
    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: s.bind
    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: ssl_context.wrap_socket
    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: s.close
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - resolver
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 362
    functionName: dns.query._maybe_get_resolver
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.resolver.Resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 2
    IfCount: 17
    argCount: 16
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6338e50>
    - <ast.Constant object at 0x7fc9c63388b0>
    - <ast.Constant object at 0x7fc9c6338730>
    - <ast.Constant object at 0x7fc9c6338160>
    - <ast.Constant object at 0x7fc9c6338310>
    - <ast.Constant object at 0x7fc9c6338250>
    - <ast.Constant object at 0x7fc9c6338d90>
    - <ast.Constant object at 0x7fc9c6338970>
    - <ast.Constant object at 0x7fc9c6338eb0>
    - <ast.Constant object at 0x7fc9c6338ca0>
    - <ast.Constant object at 0x7fc9c6338670>
    - <ast.Constant object at 0x7fc9c6338cd0>
    - <ast.Attribute object at 0x7fc9c6338bb0>
    - <ast.Attribute object at 0x7fc9c6338c70>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - session
    - path
    - post
    - bootstrap_address
    - verify
    - resolver
    - family
    - http_version
    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: 11
    functionLinenumber: 392
    functionName: dns.query.https
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - response.elapsed.total_seconds
    - socket.if_nametoindex
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - headers.update
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.list
    - <builtin>.callable
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - dns.query._check_status
    - struct.unpack
    - key.algorithm.to_digestable
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - resolver.resolve_name
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - dns.resolver.Resolver
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.query._remaining
    - dns.tsig.GSSTSig.__init__
    - m.group
    - wire.decode
    - btext.startswith
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.query._destination_and_source
    - answers.addresses
    - session.get
    - the_manager.connect
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - contextlib.nullcontext
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.query._find_header
    - httpx.Client
    - dns.inet.any_for_af
    - stream.send_h3
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - session.post
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - dns.inet.is_address
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - scope.isdigit
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - dns.quic.SyncQuicManager
    - hmac.compare_digest
    - contextlib.contextmanager
    - stream.headers
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.query._http3
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - base64.urlsafe_b64encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - socket.getaddrinfo
    - <builtin>.open
    - random.choice
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - dns.query._maybe_get_resolver
    - dns.query._NetworkBackend.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - dns.query._HTTPTransport.__init__
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlparse
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resolver.resolve_name
    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: random.choice
    functionSourceFile: random
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c595c070>
    - <ast.Constant object at 0x7fc9c595c2e0>
    - <ast.Constant object at 0x7fc9c595c520>
    - <ast.Constant object at 0x7fc9c595cc70>
    - <ast.Constant object at 0x7fc9c595ceb0>
    - <ast.Constant object at 0x7fc9c595cf10>
    - <ast.Constant object at 0x7fc9c595c3d0>
    - <ast.Constant object at 0x7fc9c595ca60>
    - <ast.Constant object at 0x7fc9c595cd00>
    argNames:
    - q
    - where
    - url
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - verify
    - post
    - connection
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 625
    functionName: dns.query._http3
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - dns.wire.Parser
    - dns.name.Name.__init__
    - dns.query._check_status
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.query._remaining
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - wire.decode
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - the_manager.connect
    - text.encode
    - contextlib.nullcontext
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.query._find_header
    - stream.send_h3
    - dns.entropy.EntropyPool._stir
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - dns.quic.SyncQuicManager
    - hmac.compare_digest
    - contextlib.contextmanager
    - stream.headers
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised:
    - NoDOH
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: q.to_wire
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: contextlib.nullcontext
    functionSourceFile: contextlib
    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: httpx.Client
    functionSourceFile: httpx
    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: headers.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: session.post
    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: base64.urlsafe_b64encode
    functionSourceFile: base64
    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: wire.decode
    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: session.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b22e20>
    - <ast.Constant object at 0x7fc9c5b222b0>
    - <ast.Constant object at 0x7fc9c5b22be0>
    - <ast.Constant object at 0x7fc9c5b22250>
    - <ast.Constant object at 0x7fc9c5b22400>
    - <ast.Constant object at 0x7fc9c5b221f0>
    - <ast.Constant object at 0x7fc9c5b22040>
    - <ast.Constant object at 0x7fc9c5b22c70>
    - <ast.Constant object at 0x7fc9c5b22070>
    - <ast.Constant object at 0x7fc9c5b22c10>
    - <ast.Constant object at 0x7fc9c5b22100>
    argNames:
    - wire
    - keyring
    - request_mac
    - xfr
    - origin
    - tsig_ctx
    - multi
    - question_only
    - one_rr_per_rrset
    - ignore_trailing
    - raise_on_truncation
    - continue_on_error
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1303
    functionName: dns.message.from_wire
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - dns.wire.Parser
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - text.encode
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised:
    - Truncated
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response.elapsed.total_seconds
    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: q.is_response
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - headers
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 599
    functionName: dns.query._find_header
    functionSourceFile: dns.query
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - headers
    - peer
    - wire
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 608
    functionName: dns.query._check_status
    functionSourceFile: dns.query
    functionUses: 6
    functionsReached:
    - dns.query._find_header
    - wire.decode
    - <builtin>.len
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - ValueError
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.quic.SyncQuicManager
    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: the_manager.connect
    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: the_connection.make_stream
    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: stream.send_h3
    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: stream.receive
    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: stream.headers
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - sock
    - max_size
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 686
    functionName: dns.query._udp_recv
    functionSourceFile: dns.query
    functionUses: 7
    functionsReached:
    - dns.query._wait_for_readable
    - dns.query._wait_for
    - sel.register
    - selectors.DefaultSelector
    - time.time
    - fd.pending
    - sock.recvfrom
    - sel.select
    - <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: sock.recvfrom
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - sock
    - data
    - destination
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 698
    functionName: dns.query._udp_send
    functionSourceFile: dns.query
    functionUses: 7
    functionsReached:
    - sock.sendto
    - dns.query._wait_for
    - sock.send
    - time.time
    - sel.register
    - selectors.DefaultSelector
    - dns.query._wait_for_writable
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sock.sendto
    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: sock.send
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    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 0x7fc9c68f8d30>
    argNames:
    - sock
    - what
    - destination
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 713
    functionName: dns.query.send_udp
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - dns.query._udp_send
    - what.to_wire
    - sock.sendto
    - dns.query._wait_for
    - sock.send
    - sel.register
    - dns.query._wait_for_writable
    - selectors.DefaultSelector
    - time.time
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: what.to_wire
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5c91d00>
    - <ast.Constant object at 0x7fc9c5d73ac0>
    - <ast.Constant object at 0x7fc9c5d734c0>
    - <ast.Constant object at 0x7fc9c5d73250>
    - <ast.Constant object at 0x7fc9c5d73340>
    - <ast.Constant object at 0x7fc9c5d73eb0>
    - <ast.Constant object at 0x7fc9c5d73f40>
    - <ast.Constant object at 0x7fc9c5d73a90>
    - <ast.Constant object at 0x7fc9c5d73fd0>
    - <ast.Constant object at 0x7fc9c5d736d0>
    argNames:
    - sock
    - destination
    - expiration
    - ignore_unexpected
    - one_rr_per_rrset
    - keyring
    - request_mac
    - ignore_trailing
    - raise_on_truncation
    - ignore_errors
    - query
    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: 10
    functionLinenumber: 742
    functionName: dns.query.receive_udp
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._matches_destination
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.inet.is_multicast
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - sel.register
    - e.message
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - labels.extend
    - dns.query._addresses_equal
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - btext.startswith
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sock.recvfrom
    - sel.select
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.query._udp_recv
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - query.is_response
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.inet.inet_pton
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.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: e.message
    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: query.is_response
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63d1a90>
    - <ast.Constant object at 0x7fc9c63d1f40>
    - <ast.Constant object at 0x7fc9c63d1b80>
    - <ast.Constant object at 0x7fc9c63d1af0>
    - <ast.Constant object at 0x7fc9c63d1370>
    - <ast.Constant object at 0x7fc9c63d1b20>
    - <ast.Constant object at 0x7fc9c63d1df0>
    - <ast.Constant object at 0x7fc9c63d1d90>
    - <ast.Constant object at 0x7fc9c63d19d0>
    - <ast.Constant object at 0x7fc9c63d1ac0>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - ignore_unexpected
    - one_rr_per_rrset
    - ignore_trailing
    - raise_on_truncation
    - sock
    - ignore_errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 848
    functionName: dns.query.udp
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - socket.if_nametoindex
    - dns.query._matches_destination
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.inet.is_multicast
    - dns.tsig.Key
    - ssl_context.wrap_socket
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - sel.register
    - e.message
    - dns.wire.Parser
    - dns.query.receive_udp
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - dns.query._addresses_equal
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - btext.startswith
    - dns.query._udp_send
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sock.recvfrom
    - sel.select
    - s.close
    - _colon_colon_end.match
    - s.bind
    - binascii.unhexlify
    - struct.pack
    - sock.send
    - dns.query._destination_and_source
    - dns.query._udp_recv
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - contextlib.nullcontext
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.inet.any_for_af
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - s.setblocking
    - dns.flags.Flag
    - what.to_wire
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - scope.isdigit
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - query.is_response
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.query.send_udp
    - dns.tsig.HMACTSig.sign
    - socket.getaddrinfo
    - dns.query._make_socket
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.inet.inet_pton
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61171f0>
    - <ast.Constant object at 0x7fc9c6117f40>
    - <ast.Constant object at 0x7fc9c6117520>
    - <ast.Constant object at 0x7fc9c6117c10>
    - <ast.Constant object at 0x7fc9c61177f0>
    - <ast.Constant object at 0x7fc9c61172e0>
    - <ast.Constant object at 0x7fc9c61170a0>
    - <ast.Constant object at 0x7fc9c6117040>
    - <ast.Constant object at 0x7fc9c61176a0>
    - <ast.Constant object at 0x7fc9c6117100>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - ignore_unexpected
    - one_rr_per_rrset
    - ignore_trailing
    - udp_sock
    - tcp_sock
    - ignore_errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 939
    functionName: dns.query.udp_with_fallback
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._net_write
    - socket.if_nametoindex
    - dns.query._matches_destination
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.inet.is_multicast
    - dns.tsig.Key
    - ssl_context.wrap_socket
    - dns.query._connect
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - sel.register
    - e.message
    - dns.wire.Parser
    - dns.query.receive_udp
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - dns.query._addresses_equal
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.query.udp
    - dns.rdatatype.to_text
    - <builtin>.abs
    - dns.tsig.HMACTSig.__init__
    - labels.append
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - m.group
    - dns.tsig.GSSTSig.__init__
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - btext.startswith
    - dns.query._udp_send
    - s.connect_ex
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.query._net_read
    - dns.query.send_tcp
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sock.recvfrom
    - sel.select
    - sock.recv
    - s.close
    - _colon_colon_end.match
    - s.bind
    - binascii.unhexlify
    - sock.send
    - struct.pack
    - dns.query._destination_and_source
    - dns.query._udp_recv
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.query.tcp
    - contextlib.nullcontext
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.query.receive_tcp
    - dns.inet.any_for_af
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - s.setblocking
    - dns.flags.Flag
    - what.to_wire
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - scope.isdigit
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - query.is_response
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.query.send_udp
    - dns.tsig.HMACTSig.sign
    - socket.getaddrinfo
    - dns.query._make_socket
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - s.getsockopt
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.inet.inet_pton
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f021f0>
    - <ast.Constant object at 0x7fc9c5f02970>
    - <ast.Constant object at 0x7fc9c5f02a90>
    - <ast.Constant object at 0x7fc9c5f02ee0>
    - <ast.Constant object at 0x7fc9c5f02f70>
    - <ast.Constant object at 0x7fc9c5f02a00>
    - <ast.Constant object at 0x7fc9c5f029a0>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - sock
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 1152
    functionName: dns.query.tcp
    functionSourceFile: dns.query
    functionUses: 4
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._net_write
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - ssl_context.wrap_socket
    - dns.query._connect
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - sel.register
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - btext.startswith
    - s.connect_ex
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.query._net_read
    - dns.query.send_tcp
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sel.select
    - sock.recv
    - s.close
    - _colon_colon_end.match
    - s.bind
    - binascii.unhexlify
    - sock.send
    - struct.pack
    - dns.query._destination_and_source
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - contextlib.nullcontext
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.query.receive_tcp
    - dns.inet.any_for_af
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - s.setblocking
    - dns.flags.Flag
    - what.to_wire
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - scope.isdigit
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - socket.getaddrinfo
    - dns.query._make_socket
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - s.getsockopt
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - canonical.append
    - dns.message._WireReader._get_section
    - socket.if_nametoindex
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - sock
    - count
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1027
    functionName: dns.query._net_read
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.query._wait_for
    - time.time
    - sel.register
    - selectors.DefaultSelector
    - dns.query._wait_for_writable
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    - sock.recv
    linkageType: pythonLinkage
    raised:
    - EOFError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sock.recv
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - sock
    - data
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1048
    functionName: dns.query._net_write
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.query._wait_for
    - sock.send
    - time.time
    - sel.register
    - selectors.DefaultSelector
    - dns.query._wait_for_writable
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    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 0x7fc9c5a8cc70>
    argNames:
    - sock
    - what
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1064
    functionName: dns.query.send_tcp
    functionSourceFile: dns.query
    functionUses: 5
    functionsReached:
    - dns.query._net_write
    - dns.query._wait_for_readable
    - what.to_wire
    - <builtin>.len
    - dns.query._wait_for
    - sock.send
    - time.time
    - sel.register
    - selectors.DefaultSelector
    - dns.query._wait_for_writable
    - fd.pending
    - <builtin>.isinstance
    - sel.select
    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 0x7fc9c59e8c70>
    - <ast.Constant object at 0x7fc9c59e80d0>
    - <ast.Constant object at 0x7fc9c59e8250>
    - <ast.Constant object at 0x7fc9c59e8eb0>
    - <ast.Constant object at 0x7fc9c59e8520>
    argNames:
    - sock
    - expiration
    - one_rr_per_rrset
    - keyring
    - request_mac
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1094
    functionName: dns.query.receive_tcp
    functionSourceFile: dns.query
    functionUses: 5
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - sel.register
    - dns.wire.Parser
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - dns.tsig.HMACTSig.__init__
    - labels.append
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.__init__
    - dns.rdatatype.RdataType.make
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.query._net_read
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sel.select
    - sock.recv
    - struct.pack
    - text.encode
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - dns.name._validate_labels
    - _rdata_classes.get
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.connect_ex
    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: s.getsockopt
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - s
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1221
    functionName: dns.query._tls_handshake
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.query._wait_for_readable
    - dns.query._wait_for
    - time.time
    - sel.register
    - selectors.DefaultSelector
    - dns.query._wait_for_writable
    - s.do_handshake
    - fd.pending
    - sel.select
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.do_handshake
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - server_hostname
    - verify
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1232
    functionName: dns.query._make_dot_ssl_context
    functionSourceFile: dns.query
    functionUses: 4
    functionsReached:
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - os.path.isdir
    - os.path.isfile
    - ssl.create_default_context
    - ssl_context.set_alpn_protocols
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - verify
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 7
    functionName: dns._tls_util.convert_verify_to_cafile_and_capath
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached:
    - os.path.isfile
    - os.path.isdir
    - <builtin>.isinstance
    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: ssl.create_default_context
    functionSourceFile: ssl
    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: ssl_context.set_alpn_protocols
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59a5bb0>
    - <ast.Constant object at 0x7fc9c59a5130>
    - <ast.Constant object at 0x7fc9c59a5460>
    - <ast.Constant object at 0x7fc9c59a5d30>
    - <ast.Constant object at 0x7fc9c59a5f10>
    - <ast.Constant object at 0x7fc9c59a50a0>
    - <ast.Constant object at 0x7fc9c59a5160>
    - <ast.Constant object at 0x7fc9c59a52b0>
    - <ast.Constant object at 0x7fc9c59a5cd0>
    - <ast.Constant object at 0x7fc9c59a5550>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - sock
    - ssl_context
    - server_hostname
    - verify
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 1246
    functionName: dns.query.tls
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._net_write
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - ssl_context.wrap_socket
    - dns.query._connect
    - ssl_context.set_alpn_protocols
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - sel.register
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - os.path.isfile
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - btext.startswith
    - s.connect_ex
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.query._net_read
    - dns.query.send_tcp
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.query._tls_handshake
    - selectors.DefaultSelector
    - r.read
    - sel.select
    - sock.recv
    - s.close
    - _colon_colon_end.match
    - s.bind
    - binascii.unhexlify
    - sock.send
    - struct.pack
    - dns.query._destination_and_source
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.query.tcp
    - contextlib.nullcontext
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.query.receive_tcp
    - dns.inet.any_for_af
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - s.do_handshake
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - s.setblocking
    - dns.flags.Flag
    - what.to_wire
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.path.isdir
    - os.getpid
    - scope.isdigit
    - dns.query._make_dot_ssl_context
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - ssl.create_default_context
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - socket.getaddrinfo
    - dns.query._make_socket
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - s.getsockopt
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - canonical.append
    - dns.message._WireReader._get_section
    - socket.if_nametoindex
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e35dc0>
    - <ast.Constant object at 0x7fc9c5e35820>
    - <ast.Constant object at 0x7fc9c5e35790>
    - <ast.Constant object at 0x7fc9c5e350a0>
    - <ast.Constant object at 0x7fc9c5e35af0>
    - <ast.Constant object at 0x7fc9c5e359d0>
    - <ast.Constant object at 0x7fc9c5e35b80>
    - <ast.Constant object at 0x7fc9c5e35a90>
    - <ast.Constant object at 0x7fc9c5e35940>
    - <ast.Constant object at 0x7fc9c5e35700>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - connection
    - verify
    - hostname
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1353
    functionName: dns.query.quic
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - dns.wire.Parser
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.query._remaining
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.__init__
    - dns.rdatatype.RdataType.make
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - the_manager.connect
    - text.encode
    - contextlib.nullcontext
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - dns.quic.SyncQuicManager
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - stream.send
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised:
    - NoDOQ
    returnType: N/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.send
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 6
    argDefaultValues: []
    argNames:
    - txn_manager
    - s
    - query
    - serial
    - timeout
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1463
    functionName: dns.query._inbound_xfr
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.query._net_write
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - inbound.process_message
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - sel.register
    - dns.wire.Parser
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - query.to_wire
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - dns.tsig.HMACTSig.__init__
    - labels.append
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.__init__
    - dns.rdatatype.RdataType.make
    - dns.query._udp_send
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.query._net_read
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sock.recvfrom
    - sel.select
    - sock.recv
    - struct.pack
    - sock.send
    - dns.query._udp_recv
    - text.encode
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - txn_manager.from_wire_origin
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - dns.name._validate_labels
    - _rdata_classes.get
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns.xfr.Inbound
    - <builtin>.str
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: txn_manager.from_wire_origin
    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: query.to_wire
    functionSourceFile: <builtin>
    functionUses: 5
    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: dns.xfr.Inbound
    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: inbound.process_message
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 15
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c58afd30>
    - <ast.Attribute object at 0x7fc9c6362eb0>
    - <ast.Constant object at 0x7fc9c6362df0>
    - <ast.Constant object at 0x7fc9c6362730>
    - <ast.Constant object at 0x7fc9c6362370>
    - <ast.Constant object at 0x7fc9c63625b0>
    - <ast.Constant object at 0x7fc9c6362ac0>
    - <ast.Constant object at 0x7fc9c63624f0>
    - <ast.Constant object at 0x7fc9c6362a60>
    - <ast.Constant object at 0x7fc9c6362760>
    - <ast.Constant object at 0x7fc9c6362820>
    - <ast.Constant object at 0x7fc9c6362f40>
    - <ast.Attribute object at 0x7fc9c63627f0>
    argNames:
    - where
    - zone
    - rdtype
    - rdclass
    - timeout
    - port
    - keyring
    - keyname
    - relativize
    - lifetime
    - source
    - source_port
    - serial
    - use_udp
    - keyalgorithm
    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: 9
    functionLinenumber: 1515
    functionName: dns.query.xfr
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.query._net_write
    - socket.if_nametoindex
    - tok.get_eol_as_token
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - ssl_context.wrap_socket
    - dns.query._connect
    - inbound.process_message
    - token.is_identifier
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - dns.query._wait_for_readable
    - <builtin>.list
    - dns.query._inbound_xfr
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - <builtin>.callable
    - sel.register
    - dns.message.Message.want_dnssec
    - dns.wire.Parser
    - q.find_rrset
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - query.to_wire
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - _v4_ending.match
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - labels.append
    - <builtin>.abs
    - label.encode
    - <builtin>.range
    - dns.tsig.HMACTSig.__init__
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - m.group
    - dns.tsig.GSSTSig.__init__
    - btext.startswith
    - dns.query._udp_send
    - s.connect_ex
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.message.Message._make_opt
    - dns.query._net_read
    - dns.message.Message.find_rrset
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sock.recvfrom
    - sel.select
    - sock.recv
    - dns.query.xfr.DummyTransactionManager.__init__
    - s.close
    - _colon_colon_end.match
    - s.bind
    - binascii.unhexlify
    - struct.pack
    - sock.send
    - dns.message.Message.section_number
    - dns.query._destination_and_source
    - tok.get_int
    - dns.query._udp_recv
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdata.GenericRdata.from_text
    - dns.message.from_wire
    - rdata.to_wire
    - parser.restrict_to
    - dns.tsig._digest
    - tok.get
    - tok.concatenate_remaining_identifiers
    - <builtin>.enumerate
    - dns.inet.any_for_af
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - q.use_tsig
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - s.setblocking
    - dns.flags.Flag
    - dns.message.make_query
    - dns.message._WireReader.__init__
    - txn_manager.from_wire_origin
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.rdata.from_wire
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - scope.isdigit
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns.xfr.Inbound
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - dns.tsig.HMACTSig.verify
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - dns.tsig.HMACTSig.sign
    - dns.rrset.RRset
    - socket.getaddrinfo
    - dns.query._make_socket
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - s.getsockopt
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - object.__setattr__
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - dns.tokenizer.Tokenizer
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1585
    functionName: dns.query.xfr.DummyTransactionManager.__init__
    functionSourceFile: dns.query
    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: 1588
    functionName: dns.query.xfr.DummyTransactionManager.origin_information
    functionSourceFile: dns.query
    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: 1591
    functionName: dns.query.xfr.DummyTransactionManager.get_class
    functionSourceFile: dns.query
    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: 1594
    functionName: dns.query.xfr.DummyTransactionManager.reader
    functionSourceFile: dns.query
    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 0x7fc9c5e23b20>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1597
    functionName: dns.query.xfr.DummyTransactionManager.writer
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1599
    functionName: dns.query.xfr.DummyTransactionManager.writer.DummyTransaction.nop
    functionSourceFile: dns.query
    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: 1602
    functionName: dns.query.xfr.DummyTransactionManager.writer.DummyTransaction.__getattr__
    functionSourceFile: dns.query
    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
    functionSourceFile: typing
    functionUses: 101
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 4
    IfCount: 7
    argCount: 13
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5dd7730>
    - <ast.Constant object at 0x7fc9c5dd7be0>
    - <ast.Constant object at 0x7fc9c5dd71f0>
    - <ast.Constant object at 0x7fc9c5dd7ca0>
    - <ast.Constant object at 0x7fc9c5dd7b80>
    - <ast.Constant object at 0x7fc9c5dd7fa0>
    - <ast.Constant object at 0x7fc9c5dd70a0>
    - <ast.Constant object at 0x7fc9c5dd7400>
    - <ast.Constant object at 0x7fc9c5dd72b0>
    - <ast.Attribute object at 0x7fc9c5dd7af0>
    - <ast.Constant object at 0x7fc9c5dd7c70>
    argNames:
    - qname
    - rdtype
    - rdclass
    - use_edns
    - want_dnssec
    - ednsflags
    - payload
    - request_payload
    - options
    - idna_codec
    - id
    - flags
    - pad
    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: 6
    functionLinenumber: 1746
    functionName: dns.message.make_query
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached:
    - os.urandom
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.message.Message.use_edns
    - dns.message.Message.__init__
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - <builtin>.enumerate
    - dns.rdatatype.RdataType.make
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - dns.entropy.random_16
    - dns.entropy.EntropyPool._stir
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - <builtin>.chr
    - system_random.randrange
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - <builtin>.bytes
    - time.time
    - dns.rrset.RRset
    - <builtin>.open
    - dns.message.Message._make_opt
    - dns.flags.Flag
    - dns.entropy.EntropyPool.random_8
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - dns.message.Message.find_rrset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - r.read
    - <builtin>.bytearray
    - dns.message.Message.want_dnssec
    - dns.name._validate_labels
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.Name.__init__
    - os.getpid
    - <builtin>.len
    - struct.pack
    - dns.message.Message.section_number
    - labels.extend
    - dns.rrset.RRset.__init__
    - typing.cast
    - <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: q.find_rrset
    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: rrset.add
    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: 0
    functionLinenumber: -1
    functionName: q.use_tsig
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5be22b0>
    - <ast.Constant object at 0x7fc9c5be2e20>
    - <ast.Constant object at 0x7fc9c5be2ee0>
    - <ast.Constant object at 0x7fc9c5be2f10>
    - <ast.Constant object at 0x7fc9c5be2940>
    - <ast.Constant object at 0x7fc9c5be2bb0>
    - <ast.Attribute object at 0x7fc9c5be2400>
    argNames:
    - where
    - txn_manager
    - query
    - port
    - timeout
    - lifetime
    - source
    - source_port
    - udp_mode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1632
    functionName: dns.query.inbound_xfr
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.query._net_write
    - socket.if_nametoindex
    - tok.get_eol_as_token
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.xfr.make_query
    - dns.tsig.Key
    - ssl_context.wrap_socket
    - dns.query._connect
    - txn_manager.reader
    - inbound.process_message
    - token.is_identifier
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - dns.query._wait_for_readable
    - <builtin>.list
    - dns.query._inbound_xfr
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - <builtin>.callable
    - sel.register
    - dns.message.Message.want_dnssec
    - dns.wire.Parser
    - txn.get
    - q.find_rrset
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - query.to_wire
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - _v4_ending.match
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - labels.append
    - <builtin>.abs
    - label.encode
    - <builtin>.range
    - dns.tsig.HMACTSig.__init__
    - dns.message._message_factory_from_opcode
    - txn_manager.origin_information
    - dns.message.Message.__init__
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - m.group
    - dns.tsig.GSSTSig.__init__
    - btext.startswith
    - dns.query._udp_send
    - s.connect_ex
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.message.Message._make_opt
    - dns.query._net_read
    - dns.message.Message.find_rrset
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sock.recvfrom
    - sel.select
    - sock.recv
    - query.find_rrset
    - s.close
    - _colon_colon_end.match
    - s.bind
    - binascii.unhexlify
    - struct.pack
    - sock.send
    - dns.message.Message.section_number
    - dns.query._destination_and_source
    - tok.get_int
    - dns.query._udp_recv
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdata.GenericRdata.from_text
    - dns.message.from_wire
    - rdata.to_wire
    - parser.restrict_to
    - dns.tsig._digest
    - tok.get
    - tok.concatenate_remaining_identifiers
    - <builtin>.enumerate
    - dns.inet.any_for_af
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - q.use_tsig
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - s.setblocking
    - dns.flags.Flag
    - dns.message.make_query
    - dns.message._WireReader.__init__
    - txn_manager.from_wire_origin
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.rdata.from_wire
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - scope.isdigit
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - txn_manager.get_class
    - fd.pending
    - <builtin>.isinstance
    - dns.xfr.Inbound
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - dns.tsig.HMACTSig.verify
    - <builtin>.super
    - dns.xfr.extract_serial_from_query
    - dns.rdtypes.ANY.OPT.OPT
    - dns.tsig.HMACTSig.sign
    - dns.rrset.RRset
    - socket.getaddrinfo
    - dns.query._make_socket
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - s.getsockopt
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - object.__setattr__
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - dns.tokenizer.Tokenizer
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 3
    IfCount: 8
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c639ceb0>
    - <ast.Constant object at 0x7fc9c639cd90>
    - <ast.Constant object at 0x7fc9c639cdf0>
    - <ast.Constant object at 0x7fc9c639c580>
    - <ast.Constant object at 0x7fc9c639c9a0>
    - <ast.Constant object at 0x7fc9c639c820>
    - <ast.Constant object at 0x7fc9c639cc40>
    - <ast.Constant object at 0x7fc9c639cfa0>
    - <ast.Attribute object at 0x7fc9c639cd60>
    argNames:
    - txn_manager
    - serial
    - use_edns
    - ednsflags
    - payload
    - request_payload
    - options
    - keyring
    - keyname
    - keyalgorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 261
    functionName: dns.xfr.make_query
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - c.isdigit
    - r.add
    - dns.message.Message.use_edns
    - tok.get_eol_as_token
    - dns.entropy.random_16
    - txn_manager.reader
    - token.is_identifier
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.message.Message.want_dnssec
    - dns.wire.Parser
    - txn.get
    - q.find_rrset
    - dns.name.Name.__init__
    - <builtin>.len
    - labels.extend
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - labels.append
    - label.encode
    - txn_manager.origin_information
    - dns.message.Message.__init__
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - tok.get_int
    - text.encode
    - dns.rdata.GenericRdata.from_text
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - tok.concatenate_remaining_identifiers
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - q.use_tsig
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.flags.Flag
    - dns.message.make_query
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.rdata.from_wire
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - txn_manager.get_class
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - object.__setattr__
    - RdataType.to_text
    - dns.rrset.RRset.__init__
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - query
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 336
    functionName: dns.xfr.extract_serial_from_query
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - query.find_rrset
    - <builtin>.isinstance
    - typing.cast
    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: dns.transaction
    functionSourceFile: dns.transaction
    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: 19
    functionName: dns.transaction.TransactionManager.reader
    functionSourceFile: dns.transaction
    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.Constant object at 0x7fc9c5ab3eb0>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 23
    functionName: dns.transaction.TransactionManager.writer
    functionSourceFile: dns.transaction
    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: 33
    functionName: dns.transaction.TransactionManager.origin_information
    functionSourceFile: dns.transaction
    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: 60
    functionName: dns.transaction.TransactionManager.get_class
    functionSourceFile: dns.transaction
    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: 1
    functionLinenumber: 64
    functionName: dns.transaction.TransactionManager.from_wire_origin
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.TransactionManager.origin_information
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdataset
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 85
    functionName: dns.transaction._ensure_immutable_rdataset
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - dns.rdataset.ImmutableRdataset
    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: dns.rdataset.ImmutableRdataset
    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:
    - node
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: dns.transaction._ensure_immutable_node
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - node.is_immutable
    - dns.node.ImmutableNode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.is_immutable
    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: dns.node.ImmutableNode
    functionSourceFile: <builtin>
    functionUses: 2
    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 0x7fc9c5860970>
    - <ast.Constant object at 0x7fc9c58608e0>
    argNames:
    - self
    - manager
    - replacement
    - read_only
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 108
    functionName: dns.transaction.Transaction.__init__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5f5e9d0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 129
    functionName: dns.transaction.Transaction.get
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._get_rdataset
    - dns.transaction._ensure_immutable_rdataset
    - dns.transaction.Transaction._check_ended
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - dns.rdataset.ImmutableRdataset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    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: 528
    functionName: dns.transaction.Transaction._check_ended
    functionSourceFile: ''
    functionUses: 15
    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
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 574
    functionName: dns.transaction.Transaction._get_rdataset
    functionSourceFile: ''
    functionUses: 8
    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: 2
    functionLinenumber: 148
    functionName: dns.transaction.Transaction.get_node
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._get_node
    - dns.transaction._ensure_immutable_node
    - node.is_immutable
    - dns.node.ImmutableNode
    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: 637
    functionName: dns.transaction.Transaction._get_node
    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: 0
    functionLinenumber: 155
    functionName: dns.transaction.Transaction._check_read_only
    functionSourceFile: dns.transaction
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 159
    functionName: dns.transaction.Transaction.add
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - dns.transaction.Transaction._rdataset_from_args
    - text.encode
    - c.isdigit
    - existing.union
    - collections.deque
    - labels.append
    - dns.rdataset.from_rdata_list
    - label.encode
    - dns.ttl.from_text
    - dns.rdataset.from_rdata
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - dns.transaction.Transaction._origin_information
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - typing.cast.covers
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - args.popleft
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.transaction.Transaction._checked_put_rdataset
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._check_read_only
    - <builtin>.chr
    - byte_.isdigit
    - dns.rdatatype.is_singleton
    - dns.transaction.Transaction._put_rdataset
    - trds.update
    - encodings.idna.ToASCII
    - arg.to_rdataset
    - <builtin>.list
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - text.isdigit
    - rrset.to_rdataset
    - c.lower
    - dns.name._validate_labels
    - dns.transaction.Transaction._add
    - dns.name.Name.__init__
    - dns.rdataset.Rdataset
    - <builtin>.len
    - struct.pack
    - dns.rdataset.Rdataset.add
    - labels.extend
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 3
    IfCount: 10
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - replace
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 419
    functionName: dns.transaction.Transaction._add
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - dns.transaction.Transaction._rdataset_from_args
    - text.encode
    - c.isdigit
    - existing.union
    - collections.deque
    - labels.append
    - dns.rdataset.from_rdata_list
    - label.encode
    - dns.ttl.from_text
    - dns.rdataset.from_rdata
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - dns.transaction.Transaction._origin_information
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - typing.cast.covers
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - args.popleft
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.transaction.Transaction._checked_put_rdataset
    - <builtin>.chr
    - byte_.isdigit
    - dns.rdatatype.is_singleton
    - dns.transaction.Transaction._put_rdataset
    - trds.update
    - encodings.idna.ToASCII
    - arg.to_rdataset
    - <builtin>.list
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - text.isdigit
    - rrset.to_rdataset
    - c.lower
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdataset.Rdataset
    - <builtin>.len
    - struct.pack
    - dns.rdataset.Rdataset.add
    - labels.extend
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 174
    functionName: dns.transaction.Transaction.replace
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - dns.transaction.Transaction._rdataset_from_args
    - text.encode
    - c.isdigit
    - existing.union
    - collections.deque
    - labels.append
    - dns.rdataset.from_rdata_list
    - label.encode
    - dns.ttl.from_text
    - dns.rdataset.from_rdata
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - dns.transaction.Transaction._origin_information
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - typing.cast.covers
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - args.popleft
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.transaction.Transaction._checked_put_rdataset
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._check_read_only
    - <builtin>.chr
    - byte_.isdigit
    - dns.rdatatype.is_singleton
    - dns.transaction.Transaction._put_rdataset
    - trds.update
    - encodings.idna.ToASCII
    - arg.to_rdataset
    - <builtin>.list
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - text.isdigit
    - rrset.to_rdataset
    - c.lower
    - dns.name._validate_labels
    - dns.transaction.Transaction._add
    - dns.name.Name.__init__
    - dns.rdataset.Rdataset
    - <builtin>.len
    - struct.pack
    - dns.rdataset.Rdataset.add
    - labels.extend
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 195
    functionName: dns.transaction.Transaction.delete
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - dns.transaction.Transaction._rdataset_from_args
    - text.encode
    - c.isdigit
    - collections.deque
    - labels.append
    - dns.rdataset.from_rdata_list
    - label.encode
    - dns.ttl.from_text
    - dns.rdataset.from_rdata
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - typing.cast.covers
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - args.popleft
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.transaction.Transaction._checked_put_rdataset
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._check_read_only
    - dns.transaction.Transaction._delete
    - byte_.isdigit
    - <builtin>.chr
    - dns.rdatatype.is_singleton
    - dns.transaction.Transaction._delete_name
    - dns.transaction.Transaction._put_rdataset
    - encodings.idna.ToASCII
    - arg.to_rdataset
    - <builtin>.list
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - <builtin>.ord
    - existing.difference
    - <builtin>.int
    - dns.transaction.Transaction._name_exists
    - dns.name.is_all_ascii
    - text.isdigit
    - existing.intersection
    - dns.transaction.Transaction._delete_rdataset
    - c.lower
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.rdataset.Rdataset.add
    - dns.transaction.Transaction._checked_delete_rdataset
    - labels.extend
    - dns.transaction.Transaction._checked_delete_name
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 6
    IfCount: 16
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - exact
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 464
    functionName: dns.transaction.Transaction._delete
    functionSourceFile: dns.transaction
    functionUses: 2
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - dns.transaction.Transaction._rdataset_from_args
    - text.encode
    - c.isdigit
    - collections.deque
    - labels.append
    - dns.rdataset.from_rdata_list
    - label.encode
    - dns.ttl.from_text
    - dns.rdataset.from_rdata
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - typing.cast.covers
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - args.popleft
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.transaction.Transaction._checked_put_rdataset
    - <builtin>.chr
    - byte_.isdigit
    - dns.rdatatype.is_singleton
    - dns.transaction.Transaction._delete_name
    - dns.transaction.Transaction._put_rdataset
    - encodings.idna.ToASCII
    - arg.to_rdataset
    - <builtin>.list
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - <builtin>.ord
    - existing.difference
    - <builtin>.int
    - dns.transaction.Transaction._name_exists
    - dns.name.is_all_ascii
    - text.isdigit
    - existing.intersection
    - dns.transaction.Transaction._delete_rdataset
    - c.lower
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.rdataset.Rdataset.add
    - dns.transaction.Transaction._checked_delete_rdataset
    - labels.extend
    - dns.transaction.Transaction._checked_delete_name
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TypeError
    - DeleteNotExact
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 217
    functionName: dns.transaction.Transaction.delete_exact
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - dns.transaction.Transaction._rdataset_from_args
    - text.encode
    - c.isdigit
    - collections.deque
    - labels.append
    - dns.rdataset.from_rdata_list
    - label.encode
    - dns.ttl.from_text
    - dns.rdataset.from_rdata
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - typing.cast.covers
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - args.popleft
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.transaction.Transaction._checked_put_rdataset
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._check_read_only
    - dns.transaction.Transaction._delete
    - byte_.isdigit
    - <builtin>.chr
    - dns.rdatatype.is_singleton
    - dns.transaction.Transaction._delete_name
    - dns.transaction.Transaction._put_rdataset
    - encodings.idna.ToASCII
    - arg.to_rdataset
    - <builtin>.list
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - <builtin>.ord
    - existing.difference
    - <builtin>.int
    - dns.transaction.Transaction._name_exists
    - dns.name.is_all_ascii
    - text.isdigit
    - existing.intersection
    - dns.transaction.Transaction._delete_rdataset
    - c.lower
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.rdataset.Rdataset.add
    - dns.transaction.Transaction._checked_delete_rdataset
    - labels.extend
    - dns.transaction.Transaction._checked_delete_name
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 240
    functionName: dns.transaction.Transaction.name_exists
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._check_ended
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.transaction.Transaction._name_exists
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    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: 598
    functionName: dns.transaction.Transaction._name_exists
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5dd7910>
    - <ast.Constant object at 0x7fc9c5dd7d30>
    - <ast.Attribute object at 0x7fc9c5dd73d0>
    argNames:
    - self
    - value
    - relative
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 247
    functionName: dns.transaction.Transaction.update_serial
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - dns.transaction.Transaction._rdataset_from_args
    - text.encode
    - c.isdigit
    - existing.union
    - collections.deque
    - labels.append
    - dns.rdataset.from_rdata_list
    - label.encode
    - dns.ttl.from_text
    - dns.rdataset.from_rdata
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.transaction.Transaction._origin_information
    - typing.cast.covers
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - args.popleft
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.transaction.Transaction._checked_put_rdataset
    - dns.transaction.Transaction._check_ended
    - <builtin>.chr
    - dns.transaction.Transaction._check_read_only
    - byte_.isdigit
    - dns.rdatatype.is_singleton
    - dns.transaction.Transaction._put_rdataset
    - dns.transaction.Transaction.replace
    - encodings.idna.ToASCII
    - trds.update
    - arg.to_rdataset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.transaction.Transaction._raise_if_not_empty
    - <builtin>.int
    - dns.name.is_all_ascii
    - text.isdigit
    - c.lower
    - rrset.to_rdataset
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.transaction.Transaction._add
    - dns.rdataset.Rdataset
    - <builtin>.len
    - struct.pack
    - dns.rdataset.Rdataset.add
    - labels.extend
    - typing.cast
    - <builtin>.tuple
    - dns.serial.Serial
    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: dns.serial.Serial
    functionSourceFile: <builtin>
    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:
    - ttl
    - rdatas
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 501
    functionName: dns.rdataset.from_rdata
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - c.isdigit
    - dns.rdataset.from_rdata_list
    - dns.ttl.from_text
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.rdatatype.is_singleton
    - <builtin>.int
    - text.isdigit
    - c.lower
    - <builtin>.len
    - dns.rdataset.Rdataset.add
    - 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: 1
    functionLinenumber: 283
    functionName: dns.transaction.Transaction.__iter__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._iterate_rdatasets
    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: 629
    functionName: dns.transaction.Transaction._iterate_rdatasets
    functionSourceFile: ''
    functionUses: 2
    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: 287
    functionName: dns.transaction.Transaction.changed
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._changed
    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: 605
    functionName: dns.transaction.Transaction._changed
    functionSourceFile: ''
    functionUses: 1
    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: 298
    functionName: dns.transaction.Transaction.commit
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._end
    - dns.transaction.Transaction._end_transaction
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 532
    functionName: dns.transaction.Transaction._end
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._end_transaction
    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: 311
    functionName: dns.transaction.Transaction.rollback
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._end
    - dns.transaction.Transaction._end_transaction
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - check
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 323
    functionName: dns.transaction.Transaction.check_put_rdataset
    functionSourceFile: dns.transaction
    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
    - check
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 335
    functionName: dns.transaction.Transaction.check_delete_rdataset
    functionSourceFile: dns.transaction
    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
    - check
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 348
    functionName: dns.transaction.Transaction.check_delete_name
    functionSourceFile: dns.transaction
    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: 360
    functionName: dns.transaction.Transaction.iterate_rdatasets
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._iterate_rdatasets
    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: 372
    functionName: dns.transaction.Transaction.iterate_names
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._iterate_names
    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: 633
    functionName: dns.transaction.Transaction._iterate_names
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - method
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 385
    functionName: dns.transaction.Transaction._raise_if_not_empty
    functionSourceFile: dns.transaction
    functionUses: 7
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - deleting
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 389
    functionName: dns.transaction.Transaction._rdataset_from_args
    functionSourceFile: dns.transaction
    functionUses: 7
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - c.isdigit
    - dns.rdataset.from_rdata_list
    - dns.ttl.from_text
    - dns.rdataset.from_rdata
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - args.popleft
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.rdatatype.is_singleton
    - arg.to_rdataset
    - <builtin>.int
    - text.isdigit
    - c.lower
    - <builtin>.len
    - dns.rdataset.Rdataset.add
    - typing.cast
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args.popleft
    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: arg.to_rdataset
    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: collections.deque
    functionSourceFile: collections
    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: rrset.to_rdataset
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 649
    functionName: dns.transaction.Transaction._origin_information
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdataset.Rdataset
    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: trds.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: existing.union
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 539
    functionName: dns.transaction.Transaction._checked_put_rdataset
    functionSourceFile: dns.transaction
    functionUses: 7
    functionsReached:
    - dns.transaction.Transaction._put_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 544
    functionName: dns.transaction.Transaction._checked_delete_rdataset
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.transaction.Transaction._delete_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: existing.intersection
    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: existing.difference
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 549
    functionName: dns.transaction.Transaction._checked_delete_name
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.transaction.Transaction._delete_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 609
    functionName: dns.transaction.Transaction._end_transaction
    functionSourceFile: ''
    functionUses: 4
    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
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 580
    functionName: dns.transaction.Transaction._put_rdataset
    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: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 591
    functionName: dns.transaction.Transaction._delete_rdataset
    functionSourceFile: ''
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 584
    functionName: dns.transaction.Transaction._delete_name
    functionSourceFile: ''
    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: 558
    functionName: dns.transaction.Transaction.__enter__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 561
    functionName: dns.transaction.Transaction.__exit__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._end
    - dns.transaction.Transaction.commit
    - dns.transaction.Transaction._end_transaction
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction.rollback
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 620
    functionName: dns.transaction.Transaction._set_origin
    functionSourceFile: dns.transaction
    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: dns.rrset
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5e35c40>
    - <ast.Constant object at 0x7fc9c5e35970>
    argNames:
    - self
    - name
    - rdclass
    - rdtype
    - covers
    - deleting
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: dns.rrset.RRset.__init__
    functionSourceFile: dns.rrset
    functionUses: 60
    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: 56
    functionName: dns.rrset.RRset._clone
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.super
    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: 2
    functionLinenumber: 62
    functionName: dns.rrset.RRset.__repr__
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - dns.rdataclass.to_text
    - RdataType.to_text
    - RdataClass.to_text
    - dns.rdatatype.to_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: 2
    functionLinenumber: 85
    functionName: dns.rrset.RRset.__str__
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - dns.rrset.RRset.to_text
    - <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 0x7fc9c5d850a0>
    - <ast.Constant object at 0x7fc9c5d85730>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 132
    functionName: dns.rrset.RRset.to_text
    functionSourceFile: dns.rrset
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 88
    functionName: dns.rrset.RRset.__eq__
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <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
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 96
    functionName: dns.rrset.RRset.match
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.rrset.RRset.full_match
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5cb0550>
    argNames:
    - self
    - name
    - rdclass
    - rdtype
    - covers
    - deleting
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 113
    functionName: dns.rrset.RRset.full_match
    functionSourceFile: dns.rrset
    functionUses: 1
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5b44760>
    - <ast.Constant object at 0x7fc9c5b44a60>
    argNames:
    - self
    - file
    - compress
    - origin
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 158
    functionName: dns.rrset.RRset.to_wire
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 179
    functionName: dns.rrset.RRset.to_rdataset
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - c.isdigit
    - dns.rdataset.from_rdata_list
    - dns.ttl.from_text
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.rdatatype.is_singleton
    - <builtin>.list
    - <builtin>.int
    - text.isdigit
    - c.lower
    - <builtin>.len
    - dns.rdataset.Rdataset.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - ttl
    - rdatas
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 482
    functionName: dns.rdataset.from_rdata_list
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - c.isdigit
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - <builtin>.int
    - dns.rdataset.Rdataset.add
    - dns.ttl.from_text
    - text.isdigit
    - dns.rdatatype.is_singleton
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.isinstance
    - dns.rdataset.ImmutableRdataset.add
    - c.lower
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f02bb0>
    - <ast.Constant object at 0x7fc9c5f02e50>
    - <ast.Constant object at 0x7fc9c5f02c40>
    - <ast.Constant object at 0x7fc9c5b26a00>
    argNames:
    - name
    - ttl
    - rdclass
    - rdtype
    - text_rdatas
    - idna_codec
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 187
    functionName: dns.rrset.from_text_list
    functionSourceFile: dns.rrset
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - r.add
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - labels.append
    - dns.exception.ExceptionWrapper
    - dns.rdatatype.to_text
    - label.encode
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - r.update_ttl
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - dns.name.is_all_ascii
    - RdataClass.to_text
    - dns.rdata.from_wire
    - dns.wire.Parser
    - dns.name._validate_labels
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - dns.name.Name.__init__
    - object.__setattr__
    - <builtin>.len
    - RdataType.to_text
    - binascii.unhexlify
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - tok.get_int
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.update_ttl
    functionSourceFile: <builtin>
    functionUses: 60
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.add
    functionSourceFile: <builtin>
    functionUses: 60
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - name
    - ttl
    - rdclass
    - rdtype
    - text_rdatas
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 230
    functionName: dns.rrset.from_text
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - r.add
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - labels.append
    - dns.exception.ExceptionWrapper
    - dns.rdatatype.to_text
    - label.encode
    - rdata.to_wire
    - parser.restrict_to
    - dns.name.from_unicode
    - tok.get
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.rrset.from_text_list
    - <builtin>.chr
    - byte_.isdigit
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - r.update_ttl
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - dns.name.is_all_ascii
    - RdataClass.to_text
    - dns.rdata.from_wire
    - dns.wire.Parser
    - dns.name._validate_labels
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - dns.name.Name.__init__
    - object.__setattr__
    - <builtin>.len
    - RdataType.to_text
    - binascii.unhexlify
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - typing.cast
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    - tok.get_int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f8f10>
    argNames:
    - name
    - ttl
    - rdatas
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 248
    functionName: dns.rrset.from_rdata_list
    functionSourceFile: dns.rrset
    functionUses: 57
    functionsReached:
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - r.update_ttl
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - name
    - ttl
    - rdatas
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 280
    functionName: dns.rrset.from_rdata
    functionSourceFile: dns.rrset
    functionUses: 56
    functionsReached:
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - r.update_ttl
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - typing.cast
    - <builtin>.tuple
    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: dns.rdataset
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c61ad760>
    - <ast.Constant object at 0x7fc9c61ade50>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 53
    functionName: dns.rdataset.Rdataset.__init__
    functionSourceFile: dns.rdataset
    functionUses: 17
    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: 77
    functionName: dns.rdataset.Rdataset._clone
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ttl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 85
    functionName: dns.rdataset.Rdataset.update_ttl
    functionSourceFile: dns.rdataset
    functionUses: 21
    functionsReached:
    - c.isdigit
    - <builtin>.len
    - dns.ttl.make
    - <builtin>.int
    - dns.ttl.from_text
    - text.isdigit
    - <builtin>.isinstance
    - c.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6405e50>
    argNames:
    - self
    - rd
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 101
    functionName: dns.rdataset.Rdataset.add
    functionSourceFile: dns.rdataset
    functionUses: 17
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - typing.cast.covers
    - <builtin>.super
    - c.isdigit
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - <builtin>.int
    - dns.ttl.from_text
    - text.isdigit
    - dns.rdatatype.is_singleton
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.isinstance
    - c.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ttl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 371
    functionName: dns.rdataset.ImmutableRdataset.update_ttl
    functionSourceFile: ''
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.covers
    functionSourceFile: typing
    functionUses: 18
    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: 405
    functionName: dns.rdataset.ImmutableRdataset.clear
    functionSourceFile: ''
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 140
    functionName: dns.rdataset.Rdataset.union_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - c.isdigit
    - <builtin>.len
    - dns.ttl.make
    - dns.rdataset.ImmutableRdataset.update_ttl
    - <builtin>.int
    - dns.ttl.from_text
    - text.isdigit
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.isinstance
    - c.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 144
    functionName: dns.rdataset.Rdataset.intersection_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - c.isdigit
    - <builtin>.len
    - dns.ttl.make
    - dns.rdataset.ImmutableRdataset.update_ttl
    - <builtin>.int
    - dns.ttl.from_text
    - text.isdigit
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.isinstance
    - c.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 148
    functionName: dns.rdataset.Rdataset.update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - c.isdigit
    - <builtin>.len
    - dns.ttl.make
    - dns.rdataset.ImmutableRdataset.update_ttl
    - <builtin>.int
    - dns.ttl.from_text
    - text.isdigit
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.isinstance
    - c.lower
    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: 158
    functionName: dns.rdataset.Rdataset._rdata_repr
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - <builtin>.str
    - dns.rdataset.Rdataset._rdata_repr.maybe_truncate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 159
    functionName: dns.rdataset.Rdataset._rdata_repr.maybe_truncate
    functionSourceFile: dns.rdataset
    functionUses: 2
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 166
    functionName: dns.rdataset.Rdataset.__repr__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - dns.rdataclass.to_text
    - RdataType.to_text
    - RdataClass.to_text
    - dns.rdatatype.to_text
    - <builtin>.len
    - dns.rdataset.Rdataset._rdata_repr
    - dns.rdataset.Rdataset._rdata_repr.maybe_truncate
    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: 182
    functionName: dns.rdataset.Rdataset.__str__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.Rdataset.to_text
    - <builtin>.str
    - io.StringIO
    - dns.rdataclass.to_text
    - s.getvalue
    - RdataType.to_text
    - <builtin>.len
    - dns.rdatatype.to_text
    - RdataClass.to_text
    - name.choose_relativity
    - s.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c58f5130>
    - <ast.Constant object at 0x7fc9c58f5be0>
    - <ast.Constant object at 0x7fc9c58f5730>
    - <ast.Constant object at 0x7fc9c58f5b20>
    - <ast.Constant object at 0x7fc9c58f5430>
    argNames:
    - self
    - name
    - origin
    - relativize
    - override_rdclass
    - want_comments
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 199
    functionName: dns.rdataset.Rdataset.to_text
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - dns.rdataset.Rdataset.to_text
    - <builtin>.str
    - io.StringIO
    - dns.rdataclass.to_text
    - s.getvalue
    - RdataType.to_text
    - <builtin>.len
    - dns.rdatatype.to_text
    - RdataClass.to_text
    - name.choose_relativity
    - s.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 185
    functionName: dns.rdataset.Rdataset.__eq__
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 196
    functionName: dns.rdataset.Rdataset.__ne__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.__eq__
    - <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: s.write
    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: s.getvalue
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a32ac0>
    - <ast.Constant object at 0x7fc9c5a325b0>
    - <ast.Constant object at 0x7fc9c5a32490>
    - <ast.Constant object at 0x7fc9c5a32910>
    argNames:
    - self
    - name
    - file
    - compress
    - origin
    - override_rdclass
    - want_shuffle
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 273
    functionName: dns.rdataset.Rdataset.to_wire
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.renderer.prefixed_length
    - output.write
    - output.tell
    - file.write
    - <builtin>.list
    - <builtin>.len
    - struct.pack
    - length.to_bytes
    - dns.rdataset.Rdataset.to_wire
    - name.to_wire
    - output.seek
    - random.shuffle
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.to_wire
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 329
    functionName: dns.rdataset.Rdataset.match
    functionSourceFile: dns.rdataset
    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: 1
    functionLinenumber: 342
    functionName: dns.rdataset.Rdataset.processing_order
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rdataset
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 363
    functionName: dns.rdataset.ImmutableRdataset.__init__
    functionSourceFile: dns.rdataset
    functionUses: 6
    functionsReached:
    - dns.immutable.Dict
    - <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: dns.immutable.Dict
    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 0x7fc9c63f9130>
    argNames:
    - self
    - rd
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 374
    functionName: dns.rdataset.ImmutableRdataset.add
    functionSourceFile: dns.rdataset
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 377
    functionName: dns.rdataset.ImmutableRdataset.union_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 380
    functionName: dns.rdataset.ImmutableRdataset.intersection_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 383
    functionName: dns.rdataset.ImmutableRdataset.update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 386
    functionName: dns.rdataset.ImmutableRdataset.__delitem__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 393
    functionName: dns.rdataset.ImmutableRdataset.__ior__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 396
    functionName: dns.rdataset.ImmutableRdataset.__iand__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 399
    functionName: dns.rdataset.ImmutableRdataset.__iadd__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 402
    functionName: dns.rdataset.ImmutableRdataset.__isub__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    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: 408
    functionName: dns.rdataset.ImmutableRdataset.__copy__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - dns.rdataset.ImmutableRdataset.__init__
    - <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: 2
    functionLinenumber: 411
    functionName: dns.rdataset.ImmutableRdataset.copy
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - dns.rdataset.ImmutableRdataset.__init__
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 414
    functionName: dns.rdataset.ImmutableRdataset.union
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - dns.rdataset.ImmutableRdataset.__init__
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 417
    functionName: dns.rdataset.ImmutableRdataset.intersection
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - dns.rdataset.ImmutableRdataset.__init__
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 420
    functionName: dns.rdataset.ImmutableRdataset.difference
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - dns.rdataset.ImmutableRdataset.__init__
    - <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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 423
    functionName: dns.rdataset.ImmutableRdataset.symmetric_difference
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - dns.rdataset.ImmutableRdataset.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c58a3610>
    - <ast.Constant object at 0x7fc9c58a3190>
    - <ast.Constant object at 0x7fc9c58a3ac0>
    - <ast.Constant object at 0x7fc9c58a3910>
    argNames:
    - rdclass
    - rdtype
    - ttl
    - text_rdatas
    - idna_codec
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 427
    functionName: dns.rdataset.from_text_list
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - <builtin>.getattr
    - importlib.import_module
    - dns.rdataclass.to_text
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - dns.exception.ExceptionWrapper
    - dns.ttl.from_text
    - rdata.to_wire
    - parser.restrict_to
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - tok.get
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.rdatatype.is_singleton
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - text.isdigit
    - dns.rdata.from_wire
    - dns.wire.Parser
    - c.lower
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - object.__setattr__
    - <builtin>.len
    - RdataType.to_text
    - binascii.unhexlify
    - dns.rdataset.Rdataset.add
    - tok.get_int
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - rdclass
    - rdtype
    - ttl
    - text_rdatas
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 467
    functionName: dns.rdataset.from_text
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - <builtin>.getattr
    - importlib.import_module
    - dns.rdataclass.to_text
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdataset.from_text_list
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - dns.exception.ExceptionWrapper
    - dns.ttl.from_text
    - rdata.to_wire
    - parser.restrict_to
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - tok.get
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.rdatatype.is_singleton
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - text.isdigit
    - dns.rdata.from_wire
    - dns.wire.Parser
    - c.lower
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - object.__setattr__
    - <builtin>.len
    - RdataType.to_text
    - binascii.unhexlify
    - dns.rdataset.Rdataset.add
    - typing.cast
    - dns.tokenizer.Tokenizer
    - tok.get_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: dns.set
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c639c6d0>
    argNames:
    - self
    - items
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: dns.set.Set.__init__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.add
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 49
    functionName: dns.set.Set.add
    functionSourceFile: ''
    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: 46
    functionName: dns.set.Set.__repr__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.repr
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 55
    functionName: dns.set.Set.remove
    functionSourceFile: dns.set
    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
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 63
    functionName: dns.set.Set.discard
    functionSourceFile: dns.set
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 68
    functionName: dns.set.Set.pop
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached: []
    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: 1
    functionLinenumber: 73
    functionName: dns.set.Set._clone
    functionSourceFile: dns.set
    functionUses: 13
    functionsReached:
    - obj.items.update
    - cls.__new__
    - <builtin>.hasattr
    - <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: cls.__new__
    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: obj.items.update
    functionSourceFile: <builtin>
    functionUses: 14
    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: 95
    functionName: dns.set.Set.__copy__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - obj.items.update
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 100
    functionName: dns.set.Set.copy
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - obj.items.update
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 105
    functionName: dns.set.Set.union_update
    functionSourceFile: dns.set
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    - dns.set.Set.add
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 117
    functionName: dns.set.Set.intersection_update
    functionSourceFile: dns.set
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 132
    functionName: dns.set.Set.difference_update
    functionSourceFile: dns.set
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - dns.set.Set.discard
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 145
    functionName: dns.set.Set.symmetric_difference_update
    functionSourceFile: dns.set
    functionUses: 1
    functionsReached:
    - obj.items.update
    - dns.set.Set.discard
    - dns.set.Set.add
    - dns.set.Set.difference_update
    - obj.intersection_update
    - dns.set.Set._clone
    - <builtin>.dict
    - dns.set.Set.union_update
    - cls.__new__
    - dns.set.Set.intersection
    - <builtin>.isinstance
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 167
    functionName: dns.set.Set.intersection
    functionSourceFile: dns.set
    functionUses: 3
    functionsReached:
    - obj.items.update
    - obj.intersection_update
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 157
    functionName: dns.set.Set.union
    functionSourceFile: dns.set
    functionUses: 2
    functionsReached:
    - obj.items.update
    - obj.union_update
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - <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: obj.union_update
    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: obj.intersection_update
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 178
    functionName: dns.set.Set.difference
    functionSourceFile: dns.set
    functionUses: 1
    functionsReached:
    - obj.items.update
    - obj.difference_update
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - <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: obj.difference_update
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 189
    functionName: dns.set.Set.symmetric_difference
    functionSourceFile: dns.set
    functionUses: 1
    functionsReached:
    - obj.items.update
    - dns.set.Set._clone
    - <builtin>.dict
    - obj.symmetric_difference_update
    - cls.__new__
    - <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: obj.symmetric_difference_update
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 201
    functionName: dns.set.Set.__or__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - obj.items.update
    - obj.union_update
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - dns.set.Set.union
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 204
    functionName: dns.set.Set.__and__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - obj.items.update
    - obj.intersection_update
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - dns.set.Set.intersection
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 207
    functionName: dns.set.Set.__add__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - obj.items.update
    - obj.union_update
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - dns.set.Set.union
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 210
    functionName: dns.set.Set.__sub__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - obj.items.update
    - obj.difference_update
    - dns.set.Set.difference
    - dns.set.Set._clone
    - <builtin>.dict
    - cls.__new__
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 213
    functionName: dns.set.Set.__xor__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - obj.items.update
    - dns.set.Set.symmetric_difference
    - dns.set.Set._clone
    - <builtin>.dict
    - obj.symmetric_difference_update
    - cls.__new__
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 216
    functionName: dns.set.Set.__ior__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.union_update
    - <builtin>.isinstance
    - dns.set.Set.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 220
    functionName: dns.set.Set.__iand__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - dns.set.Set.intersection_update
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 224
    functionName: dns.set.Set.__iadd__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.union_update
    - <builtin>.isinstance
    - dns.set.Set.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 228
    functionName: dns.set.Set.__isub__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.difference_update
    - <builtin>.isinstance
    - dns.set.Set.discard
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 232
    functionName: dns.set.Set.__ixor__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - obj.items.update
    - dns.set.Set.discard
    - dns.set.Set.add
    - dns.set.Set.difference_update
    - obj.intersection_update
    - dns.set.Set._clone
    - <builtin>.dict
    - dns.set.Set.union_update
    - cls.__new__
    - dns.set.Set.intersection
    - <builtin>.isinstance
    - dns.set.Set.symmetric_difference_update
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 236
    functionName: dns.set.Set.update
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.add
    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: 247
    functionName: dns.set.Set.clear
    functionSourceFile: dns.set
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 251
    functionName: dns.set.Set.__eq__
    functionSourceFile: dns.set
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 254
    functionName: dns.set.Set.__ne__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.__eq__
    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: 257
    functionName: dns.set.Set.__len__
    functionSourceFile: dns.set
    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: 260
    functionName: dns.set.Set.__iter__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 263
    functionName: dns.set.Set.__getitem__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.isinstance
    - itertools.islice
    - <builtin>.next
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.islice
    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: <builtin>.next
    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
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 269
    functionName: dns.set.Set.__delitem__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 276
    functionName: dns.set.Set.issubset
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 289
    functionName: dns.set.Set.issuperset
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 302
    functionName: dns.set.Set.isdisjoint
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: dns.node
    functionSourceFile: dns.node
    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:
    - rdtypes
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: dns.node._matches_type_or_its_signature
    functionSourceFile: dns.node
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 57
    functionName: dns.node.NodeKind.classify
    functionSourceFile: dns.node
    functionUses: 8
    functionsReached:
    - dns.node._matches_type_or_its_signature
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - rdataset
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 68
    functionName: dns.node.NodeKind.classify_rdataset
    functionSourceFile: dns.node
    functionUses: 6
    functionsReached:
    - dns.node._matches_type_or_its_signature
    - dns.node.NodeKind.classify
    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: 90
    functionName: dns.node.Node.__init__
    functionSourceFile: dns.node
    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
    - name
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 94
    functionName: dns.node.Node.to_text
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - io.StringIO
    - s.getvalue
    - rds.to_text
    - <builtin>.len
    - s.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: rds.to_text
    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: 114
    functionName: dns.node.Node.__repr__
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - <builtin>.id
    - <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>.id
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 117
    functionName: dns.node.Node.__eq__
    functionSourceFile: dns.node
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 129
    functionName: dns.node.Node.__ne__
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - dns.node.Node.__eq__
    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: 132
    functionName: dns.node.Node.__len__
    functionSourceFile: dns.node
    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: 135
    functionName: dns.node.Node.__iter__
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rdataset
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 138
    functionName: dns.node.Node._append_rdataset
    functionSourceFile: dns.node
    functionUses: 4
    functionsReached:
    - dns.node.NodeKind.classify_rdataset
    - <builtin>.len
    - dns.node._matches_type_or_its_signature
    - dns.node.NodeKind.classify
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5d478e0>
    - <ast.Constant object at 0x7fc9c5d47400>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 166
    functionName: dns.node.Node.find_rdataset
    functionSourceFile: dns.node
    functionUses: 3
    functionsReached:
    - dns.node._matches_type_or_its_signature
    - dns.rdataset.Rdataset
    - <builtin>.len
    - dns.node.Node._append_rdataset
    - dns.node.NodeKind.classify
    - dns.node.NodeKind.classify_rdataset
    - rds.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: rds.match
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5b34df0>
    - <ast.Constant object at 0x7fc9c5b34760>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 207
    functionName: dns.node.Node.get_rdataset
    functionSourceFile: dns.node
    functionUses: 2
    functionsReached:
    - dns.node._matches_type_or_its_signature
    - dns.rdataset.Rdataset
    - <builtin>.len
    - dns.node.Node._append_rdataset
    - dns.node.NodeKind.classify
    - dns.node.NodeKind.classify_rdataset
    - rds.match
    - dns.node.Node.find_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5b34d60>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 244
    functionName: dns.node.Node.delete_rdataset
    functionSourceFile: dns.node
    functionUses: 1
    functionsReached:
    - dns.node._matches_type_or_its_signature
    - dns.rdataset.Rdataset
    - <builtin>.len
    - dns.node.Node.get_rdataset
    - dns.node.Node._append_rdataset
    - dns.node.NodeKind.classify
    - dns.node.NodeKind.classify_rdataset
    - rds.match
    - dns.node.Node.find_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 266
    functionName: dns.node.Node.replace_rdataset
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - dns.rdataset.Rdataset
    - <builtin>.len
    - dns.node.Node.get_rdataset
    - dns.node.NodeKind.classify_rdataset
    - dns.node.Node._append_rdataset
    - dns.node.NodeKind.classify
    - dns.node.Node.delete_rdataset
    - dns.node.Node.find_rdataset
    - dns.node._matches_type_or_its_signature
    - rds.match
    - <builtin>.isinstance
    - replacement.to_rdataset
    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: replacement.to_rdataset
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 292
    functionName: dns.node.Node.classify
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - dns.node._matches_type_or_its_signature
    - dns.node.NodeKind.classify
    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: 313
    functionName: dns.node.Node.is_immutable
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 319
    functionName: dns.node.ImmutableNode.__init__
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5749b20>
    - <ast.Constant object at 0x7fc9c5749e80>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 325
    functionName: dns.node.ImmutableNode.find_rdataset
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5749880>
    - <ast.Constant object at 0x7fc9c5749850>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 336
    functionName: dns.node.ImmutableNode.get_rdataset
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c6469970>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 347
    functionName: dns.node.ImmutableNode.delete_rdataset
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 355
    functionName: dns.node.ImmutableNode.replace_rdataset
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    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: 358
    functionName: dns.node.ImmutableNode.is_immutable
    functionSourceFile: dns.node
    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: dns.xfr
    functionSourceFile: dns.xfr
    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
    - rcode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: dns.xfr.TransferError.__init__
    functionSourceFile: dns.xfr
    functionUses: 0
    functionsReached:
    - Rcode.to_text
    - dns.rcode.to_text
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c648c280>
    - <ast.Constant object at 0x7fc9c648c6a0>
    - <ast.Constant object at 0x7fc9c648c220>
    argNames:
    - self
    - txn_manager
    - rdtype
    - serial
    - is_udp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 61
    functionName: dns.xfr.Inbound.__init__
    functionSourceFile: dns.xfr
    functionUses: 0
    functionsReached:
    - txn_manager.origin_information
    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: txn_manager.origin_information
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 24
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 35
    ICount: 7
    IfCount: 24
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 101
    functionName: dns.xfr.Inbound.process_message
    functionSourceFile: dns.xfr
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - rdataset.copy
    - message.rcode
    - typing.cast
    - dns.serial.Serial
    linkageType: pythonLinkage
    raised:
    - TransferError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.rcode
    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: rdataset.copy
    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: 252
    functionName: dns.xfr.Inbound.__enter__
    functionSourceFile: dns.xfr
    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: 0
    functionLinenumber: 255
    functionName: dns.xfr.Inbound.__exit__
    functionSourceFile: dns.xfr
    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: txn_manager.reader
    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: txn.get
    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: txn_manager.get_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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: query.find_rrset
    functionSourceFile: <builtin>
    functionUses: 3
    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: dns.rdtypes
    functionSourceFile: dns.rdtypes
    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: dns.zone
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - name
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: dns.zone._validate_name
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - name.relativize
    - name.is_subdomain
    - name.derelativize
    - name.is_absolute
    linkageType: pythonLinkage
    raised:
    - KeyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.is_absolute
    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: name.is_subdomain
    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: name.derelativize
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c63fde80>
    - <ast.Constant object at 0x7fc9c63fda30>
    argNames:
    - self
    - origin
    - rdclass
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 139
    functionName: dns.zone.Zone.__init__
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - origin.is_absolute
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 169
    functionName: dns.zone.Zone.__eq__
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 186
    functionName: dns.zone.Zone.__ne__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.zone.Zone.__eq__
    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: 5
    functionLinenumber: 194
    functionName: dns.zone.Zone._validate_name
    functionSourceFile: dns.zone
    functionUses: 18
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - KeyError
    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: 6
    functionLinenumber: 203
    functionName: dns.zone.Zone.__getitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 207
    functionName: dns.zone.Zone.__setitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 211
    functionName: dns.zone.Zone.__delitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    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: 215
    functionName: dns.zone.Zone.__iter__
    functionSourceFile: dns.zone
    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: 218
    functionName: dns.zone.Zone.keys
    functionSourceFile: dns.zone
    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: 221
    functionName: dns.zone.Zone.values
    functionSourceFile: dns.zone
    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: 224
    functionName: dns.zone.Zone.items
    functionSourceFile: dns.zone
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 227
    functionName: dns.zone.Zone.get
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 231
    functionName: dns.zone.Zone.__contains__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59f1580>
    argNames:
    - self
    - name
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 235
    functionName: dns.zone.Zone.find_node
    functionSourceFile: dns.zone
    functionUses: 9
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    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 0x7fc9c5d58ee0>
    argNames:
    - self
    - name
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 263
    functionName: dns.zone.Zone.get_node
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    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: 6
    functionLinenumber: 289
    functionName: dns.zone.Zone.delete_node
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c59ece50>
    - <ast.Constant object at 0x7fc9c59ec340>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 304
    functionName: dns.zone.Zone.find_rdataset
    functionSourceFile: dns.zone
    functionUses: 5
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - node.find_rdataset
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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: node.find_rdataset
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c57f6310>
    - <ast.Constant object at 0x7fc9c57f63a0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 351
    functionName: dns.zone.Zone.get_rdataset
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - dns.zone.Zone.find_rdataset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - node.find_rdataset
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c57f6580>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 399
    functionName: dns.zone.Zone.delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.delete_node
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.zone.Zone.get_node
    - <builtin>.len
    - struct.pack
    - node.delete_rdataset
    - labels.extend
    - <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: node.delete_rdataset
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - replacement
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 437
    functionName: dns.zone.Zone.replace_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - node.replace_rdataset
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    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: node.replace_rdataset
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5ed08b0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 463
    functionName: dns.zone.Zone.find_rrset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - dns.rrset.RRset
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - rrset.update
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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: dns.rrset.RRset
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rrset.update
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c59cddc0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 515
    functionName: dns.zone.Zone.get_rrset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.zone.Zone.find_rrset
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - dns.rrset.RRset
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - rrset.update
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c6537a90>
    - <ast.Attribute object at 0x7fc9c6537b80>
    argNames:
    - self
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 561
    functionName: dns.zone.Zone.iterate_rdatasets
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone.items
    - dns.rdatatype.RdataType.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c59e36d0>
    - <ast.Attribute object at 0x7fc9c59e3280>
    argNames:
    - self
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 593
    functionName: dns.zone.Zone.iterate_rdatas
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone.items
    - dns.rdatatype.RdataType.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 10
    IfCount: 6
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5686f40>
    - <ast.Constant object at 0x7fc9c56866a0>
    - <ast.Constant object at 0x7fc9c5686dc0>
    - <ast.Constant object at 0x7fc9c5686a00>
    - <ast.Constant object at 0x7fc9c5686a60>
    argNames:
    - self
    - f
    - sorted
    - relativize
    - nl
    - want_comments
    - want_origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 626
    functionName: dns.zone.Zone.to_file
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - l.encode
    - dns.zone.Zone.keys
    - nl.encode
    - <builtin>.list
    - contextlib.nullcontext
    - names.sort
    - os.linesep.encode
    - f.write
    - <builtin>.isinstance
    - <builtin>.open
    - nl.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: <builtin>.open
    functionSourceFile: <builtin>
    functionUses: 75
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.linesep.encode
    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: nl.encode
    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: nl.decode
    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: l.encode
    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: f.write
    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: names.sort
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a4b130>
    - <ast.Constant object at 0x7fc9c5a4bf40>
    - <ast.Constant object at 0x7fc9c5a4b820>
    - <ast.Constant object at 0x7fc9c5a4be20>
    - <ast.Constant object at 0x7fc9c5a4b610>
    argNames:
    - self
    - sorted
    - relativize
    - nl
    - want_comments
    - want_origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 715
    functionName: dns.zone.Zone.to_text
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - l.encode
    - dns.zone.Zone.keys
    - io.StringIO
    - nl.encode
    - <builtin>.list
    - contextlib.nullcontext
    - dns.zone.Zone.to_file
    - temp_buffer.close
    - temp_buffer.getvalue
    - names.sort
    - os.linesep.encode
    - f.write
    - <builtin>.isinstance
    - <builtin>.open
    - nl.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: temp_buffer.getvalue
    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: temp_buffer.close
    functionSourceFile: <builtin>
    functionUses: 1
    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: 8
    functionLinenumber: 754
    functionName: dns.zone.Zone.check_origin
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - dns.zone.Zone.find_rdataset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - node.find_rdataset
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.zone.Zone.get_rdataset
    - <builtin>.tuple
    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 0x7fc9c5f20220>
    argNames:
    - self
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 773
    functionName: dns.zone.Zone.get_soa
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - dns.zone.Zone.find_rdataset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - txn.get
    - node.find_rdataset
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.zone.Zone.get_rdataset
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c6481640>
    argNames:
    - self
    - hash_algorithm
    - scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 801
    functionName: dns.zone.Zone._compute_digest
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - <builtin>.sorted
    - hasher.digest
    - name.to_digestable
    - <builtin>.len
    - struct.pack
    - _digest_hashers.get
    - dns.zone.Zone.items
    - hasher.update
    - rdata.to_digestable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _digest_hashers.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: name.to_digestable
    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: dns.zone.Zone._compute_digest.<lambda1>
    functionSourceFile: dns.zone
    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: rdata.to_digestable
    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: hasher.update
    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: hasher.digest
    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:
    - <ast.Attribute object at 0x7fc9c5b35370>
    argNames:
    - self
    - hash_algorithm
    - scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 835
    functionName: dns.zone.Zone.compute_digest
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.zone.Zone.items
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - hasher.update
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - rdata.to_digestable
    - hasher.digest
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - _digest_hashers.get
    - dns.zone.Zone._compute_digest
    - encodings.idna.ToASCII
    - dns.zone.Zone.find_rdataset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.find_node
    - dns.zone.Zone.get_soa
    - dns.name._validate_labels
    - txn.get
    - <builtin>.sorted
    - node.find_rdataset
    - dns.name.Name.__init__
    - name.to_digestable
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.zone.Zone.get_rdataset
    - dns.rdtypes.ANY.ZONEMD.ZONEMD
    - typing.cast
    - <builtin>.tuple
    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: dns.rdtypes.ANY.ZONEMD.ZONEMD
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b35910>
    argNames:
    - self
    - zonemd
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 846
    functionName: dns.zone.Zone.verify_digest
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone._validate_name
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.zone.Zone.items
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - hasher.update
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - rdata.to_digestable
    - hasher.digest
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - _digest_hashers.get
    - dns.zone.Zone._compute_digest
    - encodings.idna.ToASCII
    - dns.zone.Zone.find_rdataset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - <builtin>.sorted
    - node.find_rdataset
    - dns.name.Name.__init__
    - name.to_digestable
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.zone.Zone.get_rdataset
    - <builtin>.tuple
    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: 869
    functionName: dns.zone.Zone.reader
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - zone.map_factory
    - dns.zone.Version.__init__
    - dns.zone.Transaction.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68eefd0>
    - <ast.Constant object at 0x7fc9c68ee8b0>
    argNames:
    - self
    - zone
    - id
    - nodes
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 972
    functionName: dns.zone.Version.__init__
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - zone.map_factory
    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 0x7fc9c6538f70>
    - <ast.Constant object at 0x7fc9c65381c0>
    argNames:
    - self
    - zone
    - replacement
    - version
    - make_immutable
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1100
    functionName: dns.zone.Transaction.__init__
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6ef2e50>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 872
    functionName: dns.zone.Zone.writer
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - <builtin>.super
    - dns.zone.Transaction._setup_version
    - dns.zone.WritableVersion.__init__
    - dns.zone.Transaction.__init__
    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: 2
    functionLinenumber: 1110
    functionName: dns.zone.Transaction._setup_version
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - <builtin>.set
    - dns.zone.WritableVersion.__init__
    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: 877
    functionName: dns.zone.Zone.origin_information
    functionSourceFile: dns.zone
    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: 887
    functionName: dns.zone.Zone.get_class
    functionSourceFile: dns.zone
    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
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 892
    functionName: dns.zone.Zone._end_read
    functionSourceFile: dns.zone
    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
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 895
    functionName: dns.zone.Zone._end_write
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - txn
    - version
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 898
    functionName: dns.zone.Zone._commit_version
    functionSourceFile: dns.zone
    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: 903
    functionName: dns.zone.Zone._get_next_version_id
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 919
    functionName: dns.zone.VersionedNode.__init__
    functionSourceFile: dns.zone
    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
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 927
    functionName: dns.zone.ImmutableVersionedNode.__init__
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5ee0220>
    - <ast.Constant object at 0x7fc9c5ee03a0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 934
    functionName: dns.zone.ImmutableVersionedNode.find_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5905610>
    - <ast.Constant object at 0x7fc9c5905490>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 945
    functionName: dns.zone.ImmutableVersionedNode.get_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c69800a0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 956
    functionName: dns.zone.ImmutableVersionedNode.delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 964
    functionName: dns.zone.ImmutableVersionedNode.replace_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    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: 967
    functionName: dns.zone.ImmutableVersionedNode.is_immutable
    functionSourceFile: dns.zone
    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: zone.map_factory
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 987
    functionName: dns.zone.Version._validate_name
    functionSourceFile: dns.zone
    functionUses: 12
    functionsReached:
    - dns.zone.Version._validate_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 990
    functionName: dns.zone.Version.get_node
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - dns.zone.Version._validate_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 994
    functionName: dns.zone.Version.get_rdataset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Version.get_node
    - node.get_rdataset
    - dns.zone.Version._validate_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.get_rdataset
    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: 1005
    functionName: dns.zone.Version.keys
    functionSourceFile: dns.zone
    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: 1008
    functionName: dns.zone.Version.items
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6415cd0>
    argNames:
    - self
    - zone
    - replacement
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1013
    functionName: dns.zone.WritableVersion.__init__
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - <builtin>.set
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1029
    functionName: dns.zone.WritableVersion._maybe_cow
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - new_node.rdatasets.extend
    - <builtin>.hasattr
    - dns.zone.Version._validate_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_node.rdatasets.extend
    functionSourceFile: <builtin>
    functionUses: 5
    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: 1051
    functionName: dns.zone.WritableVersion.delete_node
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Version._validate_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1057
    functionName: dns.zone.WritableVersion.put_rdataset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.WritableVersion._maybe_cow
    - node.replace_rdataset
    - dns.zone.Version._validate_name
    - new_node.rdatasets.extend
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1063
    functionName: dns.zone.WritableVersion.delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.WritableVersion._maybe_cow
    - <builtin>.len
    - node.delete_rdataset
    - dns.zone.Version._validate_name
    - new_node.rdatasets.extend
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - version
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1077
    functionName: dns.zone.ImmutableVersion.__init__
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    - version.nodes.get
    - dns.zone.ImmutableVersionedNode.__init__
    - dns.immutable.Dict
    - <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: version.nodes.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1107
    functionName: dns.zone.Transaction.zone
    functionSourceFile: dns.zone
    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
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1117
    functionName: dns.zone.Transaction._get_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version.get_node
    - node.get_rdataset
    - dns.zone.Version._validate_name
    - dns.zone.Version.get_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1121
    functionName: dns.zone.Transaction._put_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.WritableVersion._maybe_cow
    - node.replace_rdataset
    - dns.zone.Version._validate_name
    - dns.zone.WritableVersion.put_rdataset
    - new_node.rdatasets.extend
    - <builtin>.hasattr
    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: 3
    functionLinenumber: 1126
    functionName: dns.zone.Transaction._delete_name
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version._validate_name
    - dns.zone.WritableVersion.delete_node
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1131
    functionName: dns.zone.Transaction._delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.WritableVersion._maybe_cow
    - <builtin>.len
    - dns.zone.WritableVersion.delete_rdataset
    - node.delete_rdataset
    - dns.zone.Version._validate_name
    - new_node.rdatasets.extend
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1136
    functionName: dns.zone.Transaction._name_exists
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version.get_node
    - dns.zone.Version._validate_name
    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: 1140
    functionName: dns.zone.Transaction._changed
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1147
    functionName: dns.zone.Transaction._end_transaction
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.ImmutableVersion.__init__
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    - version.nodes.get
    - <builtin>.len
    - dns.zone.ImmutableVersionedNode.__init__
    - dns.immutable.Dict
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1168
    functionName: dns.zone.Transaction._set_origin
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1173
    functionName: dns.zone.Transaction._iterate_rdatasets
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version.items
    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: 1179
    functionName: dns.zone.Transaction._iterate_names
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version.keys
    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: 3
    functionLinenumber: 1183
    functionName: dns.zone.Transaction._get_node
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version.get_node
    - dns.zone.Version._validate_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1187
    functionName: dns.zone.Transaction._origin_information
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b410a0>
    - <ast.Attribute object at 0x7fc9c6b41b20>
    - <ast.Constant object at 0x7fc9c6b414c0>
    - <ast.Name object at 0x7fc9c6b41430>
    - <ast.Constant object at 0x7fc9c6b415e0>
    - <ast.Constant object at 0x7fc9c6b6b190>
    - <ast.Constant object at 0x7fc9c6b6b670>
    - <ast.Constant object at 0x7fc9c6b6b430>
    - <ast.Constant object at 0x7fc9c6b6b0a0>
    argNames:
    - text
    - origin
    - rdclass
    - relativize
    - zone_factory
    - filename
    - allow_include
    - check_origin
    - idna_codec
    - allow_directives
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1201
    functionName: dns.zone._from_text
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - origin.is_absolute
    - reader.read
    - dns.name.from_unicode
    - zone.check_origin
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - zone.writer
    - <builtin>.chr
    - byte_.isdigit
    - dns.zone.Zone.__init__
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.zonefile.Reader
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zone.writer
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.zonefile.Reader
    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: reader.read
    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: zone.check_origin
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    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 0x7fc9c5d98b80>
    - <ast.Attribute object at 0x7fc9c5d98280>
    - <ast.Constant object at 0x7fc9c5d983a0>
    - <ast.Name object at 0x7fc9c5d989a0>
    - <ast.Constant object at 0x7fc9c5d98cd0>
    - <ast.Constant object at 0x7fc9c5d98130>
    - <ast.Constant object at 0x7fc9c5d98ee0>
    - <ast.Constant object at 0x7fc9c5d984f0>
    - <ast.Constant object at 0x7fc9c5d98070>
    argNames:
    - text
    - origin
    - rdclass
    - relativize
    - zone_factory
    - filename
    - allow_include
    - check_origin
    - idna_codec
    - allow_directives
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1243
    functionName: dns.zone.from_text
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - origin.is_absolute
    - reader.read
    - dns.name.from_unicode
    - zone.check_origin
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - zone.writer
    - <builtin>.chr
    - byte_.isdigit
    - dns.zone.Zone.__init__
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.zonefile.Reader
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.zone._from_text
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d4bee0>
    - <ast.Attribute object at 0x7fc9c5d4b640>
    - <ast.Constant object at 0x7fc9c5d4b730>
    - <ast.Name object at 0x7fc9c5d4bf40>
    - <ast.Constant object at 0x7fc9c5d4b550>
    - <ast.Constant object at 0x7fc9c5d4b2e0>
    - <ast.Constant object at 0x7fc9c5d4b700>
    - <ast.Constant object at 0x7fc9c5d4b670>
    - <ast.Constant object at 0x7fc9c5d4bbe0>
    argNames:
    - f
    - origin
    - rdclass
    - relativize
    - zone_factory
    - filename
    - allow_include
    - check_origin
    - idna_codec
    - allow_directives
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1317
    functionName: dns.zone.from_file
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - labels.append
    - label.encode
    - origin.is_absolute
    - reader.read
    - dns.name.from_unicode
    - zone.check_origin
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - zone.writer
    - <builtin>.chr
    - byte_.isdigit
    - dns.zone.Zone.__init__
    - <builtin>.open
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.zonefile.Reader
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.zone._from_text
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7fc9c5d4bf10>
    - <ast.Constant object at 0x7fc9c5d4be80>
    - <ast.Constant object at 0x7fc9c5d4bac0>
    argNames:
    - xfr
    - zone_factory
    - relativize
    - check_origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1400
    functionName: dns.zone.from_xfr
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - znode.find_rdataset
    - labels.append
    - label.encode
    - origin.is_absolute
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - z.nodes.get
    - byte_.isdigit
    - dns.zone.Zone.__init__
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - zrds.update_ttl
    - dns.name.is_all_ascii
    - z.node_factory
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - z.check_origin
    - zrds.add
    - <builtin>.tuple
    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: z.nodes.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: z.node_factory
    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: znode.find_rdataset
    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: zrds.update_ttl
    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: zrds.add
    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: z.check_origin
    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: dns.rdtypes.ANY.ZONEMD
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - serial
    - scheme
    - hash_algorithm
    - digest
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 20
    functionName: dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 2
    functionsReached:
    - dns.zonetypes.DigestHashAlgorithm.make
    - dns.zonetypes.DigestScheme.make
    - dns.zonetypes._digest_hashers.get
    - <builtin>.super
    - <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: dns.zonetypes.DigestScheme.make
    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: dns.zonetypes.DigestHashAlgorithm.make
    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: dns.zonetypes._digest_hashers.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: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5fd3700>
    - <ast.Constant object at 0x7fc9c5fd3250>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 36
    functionName: dns.rdtypes.ANY.ZONEMD.ZONEMD.to_text
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 0
    functionsReached:
    - kw.copy
    - <builtin>.len
    - dns.rdata._wordbreak
    - dns.rdata._hexify
    - binascii.hexlify
    - <builtin>.range
    - separator.join
    - kw.pop
    - data.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: kw.copy
    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: kw.pop
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68effa0>
    - <ast.Constant object at 0x7fc9c68ef310>
    - <ast.Constant object at 0x7fc9c68ef940>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 45
    functionName: dns.rdtypes.ANY.ZONEMD.ZONEMD.from_text
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - dns.zonetypes.DigestScheme.make
    - dns.zonetypes._digest_hashers.get
    - dns.zonetypes.DigestHashAlgorithm.make
    - dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__
    - <builtin>.super
    - <builtin>.len
    - tok.get_uint32
    - binascii.unhexlify
    - tok.concatenate_remaining_identifiers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.get_uint32
    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: tok.get_uint8
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c58f3eb0>
    - <ast.Constant object at 0x7fc9c58f3880>
    - <ast.Constant object at 0x7fc9c58f3850>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: dns.rdtypes.ANY.ZONEMD.ZONEMD._to_wire
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c5894130>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 61
    functionName: dns.rdtypes.ANY.ZONEMD.ZONEMD.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__
    - parser.get_remaining
    - dns.zonetypes.DigestScheme.make
    - dns.zonetypes.DigestHashAlgorithm.make
    - dns.zonetypes._digest_hashers.get
    - <builtin>.super
    - <builtin>.len
    - parser.get_struct
    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: dns.zonetypes
    functionSourceFile: dns.zonetypes
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 19
    functionName: dns.zonetypes.DigestScheme._maximum
    functionSourceFile: dns.zonetypes
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 30
    functionName: dns.zonetypes.DigestHashAlgorithm._maximum
    functionSourceFile: dns.zonetypes
    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: dns.grange
    functionSourceFile: dns.grange
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 1
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: dns.grange.from_text
    functionSourceFile: dns.grange
    functionUses: 3
    functionsReached:
    - c.isdigit
    - <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: dns.rdtypes.ANY.SOA
    functionSourceFile: dns.rdtypes.ANY.SOA
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 10
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - mname
    - rname
    - serial
    - refresh
    - retry
    - expire
    - minimum
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.SOA.SOA.__init__
    functionSourceFile: dns.rdtypes.ANY.SOA
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c64bfaf0>
    - <ast.Constant object at 0x7fc9c64bf610>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 46
    functionName: dns.rdtypes.ANY.SOA.SOA.to_text
    functionSourceFile: dns.rdtypes.ANY.SOA
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63fd1f0>
    - <ast.Constant object at 0x7fc9c63fdee0>
    - <ast.Constant object at 0x7fc9c63fd550>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 52
    functionName: dns.rdtypes.ANY.SOA.SOA.from_text
    functionSourceFile: dns.rdtypes.ANY.SOA
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - tok.get_uint32
    - dns.rdtypes.ANY.SOA.SOA.__init__
    - tok.get_ttl
    - tok.get_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.get_name
    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: tok.get_ttl
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63fd6d0>
    - <ast.Constant object at 0x7fc9c63fd7f0>
    - <ast.Constant object at 0x7fc9c63fd790>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: dns.rdtypes.ANY.SOA.SOA._to_wire
    functionSourceFile: dns.rdtypes.ANY.SOA
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c68efb50>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 75
    functionName: dns.rdtypes.ANY.SOA.SOA.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.SOA
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.SOA.SOA.__init__
    - parser.get_name
    - parser.get_struct
    - <builtin>.super
    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: dns.zonefile
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - txn
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 46
    functionName: dns.zonefile._check_cname_and_other_data
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - dns.node._matches_type_or_its_signature
    - node.classify
    - txn.get_node
    - dns.node.NodeKind.classify
    - dns.node.NodeKind.classify_rdataset
    linkageType: pythonLinkage
    raised:
    - CNAMEAndOtherData
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: txn.get_node
    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: node.classify
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 81
    functionName: dns.zonefile._upper_dollarize
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - s.upper
    - s.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: s.upper
    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: s.startswith
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c595c460>
    - <ast.Constant object at 0x7fc9c595c190>
    - <ast.Constant object at 0x7fc9c595c370>
    - <ast.Constant object at 0x7fc9c595ca90>
    - <ast.Constant object at 0x7fc9c68f8130>
    - <ast.Constant object at 0x7fc9c68f8580>
    - <ast.Constant object at 0x7fc9c68f8190>
    argNames:
    - self
    - tok
    - rdclass
    - txn
    - allow_include
    - allow_directives
    - force_name
    - force_ttl
    - force_rdclass
    - force_rdtype
    - default_ttl
    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: 91
    functionName: dns.zonefile.Reader.__init__
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - <builtin>.set
    - s.upper
    - dns.zonefile._upper_dollarize
    - txn.manager.origin_information
    - s.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: txn.manager.origin_information
    functionSourceFile: <builtin>
    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: 1
    functionLinenumber: 141
    functionName: dns.zonefile.Reader._eat_line
    functionSourceFile: dns.zonefile
    functionUses: 4
    functionsReached:
    - token.is_eol_or_eof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.is_eol_or_eof
    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: 1
    functionLinenumber: 147
    functionName: dns.zonefile.Reader._get_identifier
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached:
    - token.is_identifier
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 7
    IfCount: 17
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 153
    functionName: dns.zonefile.Reader._rr_line
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - name.relativize
    - dns.rdataclass.to_text
    - c.isdigit
    - contextlib.contextmanager
    - token.is_whitespace
    - dns.rdata.from_text
    - dns.zonefile.Reader._eat_line
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - dns.rdatatype.to_text
    - dns.ttl.from_text
    - dns.exception.ExceptionWrapper
    - RdataType.from_text
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - <builtin>.super
    - name.is_subdomain
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - dns.rdatatype.from_text
    - parser.get_remaining
    - RdataClass.from_text
    - dns.rdata.GenericRdata.__init__
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - text.isdigit
    - token.is_eol_or_eof
    - dns.rdata.from_wire
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - c.lower
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - object.__setattr__
    - sys.exc_info
    - <builtin>.len
    - RdataType.to_text
    - binascii.unhexlify
    - dns.zonefile.Reader._get_identifier
    - typing.cast
    - dns.tokenizer.Tokenizer
    - tok.get_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: token.is_whitespace
    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: sys.exc_info
    functionSourceFile: sys
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - side
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 277
    functionName: dns.zonefile.Reader._parse_modify
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached:
    - <builtin>.int
    - g1.groups
    - is_generate2.match
    - g3.groups
    - is_generate3.match
    - is_generate1.match
    - re.compile
    - g2.groups
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: is_generate1.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: g1.groups
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: is_generate2.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: g2.groups
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: is_generate3.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: g3.groups
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 3
    IfCount: 12
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 322
    functionName: dns.zonefile.Reader._generate_line
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - c.isdigit
    - dns.ttl.from_text
    - RdataType.from_text
    - dns.zonefile.Reader._generate_line._format_index
    - tok.get_eol_as_token
    - is_generate2.match
    - token.is_identifier
    - re.compile
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - c.lower
    - dns.name.Name.__init__
    - <builtin>.len
    - labels.extend
    - <builtin>.getattr
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - labels.append
    - g1.groups
    - label.encode
    - <builtin>.range
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - rhs.replace
    - dns.zonefile.Reader._parse_modify
    - byte_.isdigit
    - dns.rdata.GenericRdata.from_wire_parser
    - g2.groups
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - nibbles.upper
    - binascii.unhexlify
    - struct.pack
    - tok.get_int
    - name.relativize
    - dns.grange.from_text
    - text.encode
    - dns.rdata.GenericRdata.from_text
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - tok.concatenate_remaining_identifiers
    - dns.zonefile.Reader._generate_line._calculate_index
    - name.is_subdomain
    - <builtin>.chr
    - <builtin>.format
    - rdtype_text.replace
    - dns.rdatatype.from_text
    - text.isdigit
    - is_generate1.match
    - dns.rdata.from_wire
    - _rdata_classes.get
    - dns.name._validate_labels
    - sys.exc_info
    - is_generate3.match
    - <builtin>.tuple
    - importlib.import_module
    - contextlib.contextmanager
    - dns.zonefile.Reader._eat_line
    - dns.exception.ExceptionWrapper
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - g3.groups
    - parser.get_remaining
    - RdataClass.from_text
    - token.is_eol_or_eof
    - dns.rdata.get_rdata_class
    - lhs.replace
    - object.__setattr__
    - RdataType.to_text
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - counter
    - offset_sign
    - offset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 393
    functionName: dns.zonefile.Reader._generate_line._calculate_index
    functionSourceFile: dns.zonefile
    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:
    - index
    - base
    - width
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 399
    functionName: dns.zonefile.Reader._generate_line._format_index
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached:
    - nibbles.upper
    - dns.zonefile.Reader._generate_line._format_index
    - <builtin>.format
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.format
    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: nibbles.upper
    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: lhs.replace
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rhs.replace
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 11
    IfCount: 16
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 462
    functionName: dns.zonefile.Reader.read
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - c.isdigit
    - dns.ttl.from_text
    - RdataType.from_text
    - dns.zonefile.Reader._generate_line._format_index
    - tok.get_eol_as_token
    - is_generate2.match
    - token.is_identifier
    - re.compile
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - c.lower
    - dns.name.Name.__init__
    - <builtin>.len
    - token.is_comment
    - labels.extend
    - <builtin>.getattr
    - dns.rdataclass.to_text
    - token.is_whitespace
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - labels.append
    - g1.groups
    - label.encode
    - <builtin>.range
    - token.is_eol
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - rhs.replace
    - token.value.upper
    - dns.zonefile.Reader._parse_modify
    - byte_.isdigit
    - dns.rdata.GenericRdata.from_wire_parser
    - g2.groups
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - token.is_eof
    - nibbles.upper
    - dns.exception.SyntaxError
    - binascii.unhexlify
    - struct.pack
    - dns.zonefile.Reader._generate_line
    - tok.get_int
    - name.relativize
    - dns.grange.from_text
    - text.encode
    - dns.rdata.GenericRdata.from_text
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - dns.zonefile.Reader._rr_line
    - tok.concatenate_remaining_identifiers
    - dns.zonefile.Reader._generate_line._calculate_index
    - <builtin>.chr
    - name.is_subdomain
    - <builtin>.format
    - rdtype_text.replace
    - dns.rdatatype.from_text
    - text.isdigit
    - is_generate1.match
    - dns.rdata.from_wire
    - dns.name._validate_labels
    - _rdata_classes.get
    - sys.exc_info
    - dns.zonefile.Reader._get_identifier
    - is_generate3.match
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - contextlib.contextmanager
    - dns.zonefile.Reader._eat_line
    - dns.exception.ExceptionWrapper
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - g3.groups
    - <builtin>.open
    - parser.get_remaining
    - RdataClass.from_text
    - token.is_eol_or_eof
    - dns.rdata.get_rdata_class
    - lhs.replace
    - object.__setattr__
    - RdataType.to_text
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.is_eof
    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: token.is_eol
    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: token.is_comment
    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: token.value.upper
    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: dns.exception.SyntaxError
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - manager
    - replacement
    - read_only
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 562
    functionName: dns.zonefile.RRsetsReaderTransaction.__init__
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 567
    functionName: dns.zonefile.RRsetsReaderTransaction._get_rdataset
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 570
    functionName: dns.zonefile.RRsetsReaderTransaction._get_node
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.node.Node
    - rdatasets.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: rdatasets.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: dns.node.Node
    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
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 581
    functionName: dns.zonefile.RRsetsReaderTransaction._put_rdataset
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 584
    functionName: dns.zonefile.RRsetsReaderTransaction._delete_name
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - remove.append
    - <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: remove.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: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 594
    functionName: dns.zonefile.RRsetsReaderTransaction._delete_rdataset
    functionSourceFile: dns.zonefile
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 600
    functionName: dns.zonefile.RRsetsReaderTransaction._name_exists
    functionSourceFile: dns.zonefile
    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: 606
    functionName: dns.zonefile.RRsetsReaderTransaction._changed
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 609
    functionName: dns.zonefile.RRsetsReaderTransaction._end_transaction
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - dns.zonefile.RRsetsReaderTransaction._changed
    - rrsets.append
    - <builtin>.len
    - rrset.update
    - dns.rrset.RRset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rrsets.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: 2
    argDefaultValues: []
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 620
    functionName: dns.zonefile.RRsetsReaderTransaction._set_origin
    functionSourceFile: dns.zonefile
    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: 623
    functionName: dns.zonefile.RRsetsReaderTransaction._iterate_rdatasets
    functionSourceFile: dns.zonefile
    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: 626
    functionName: dns.zonefile.RRsetsReaderTransaction._iterate_names
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5d47820>
    - <ast.Constant object at 0x7fc9c5d47d90>
    - <ast.Attribute object at 0x7fc9c5d479a0>
    argNames:
    - self
    - origin
    - relativize
    - rdclass
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 631
    functionName: dns.zonefile.RRSetsReaderManager.__init__
    functionSourceFile: dns.zonefile
    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: 642
    functionName: dns.zonefile.RRSetsReaderManager.reader
    functionSourceFile: dns.zonefile
    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 0x7fc9c619e3d0>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 645
    functionName: dns.zonefile.RRSetsReaderManager.writer
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - dns.zonefile.RRsetsReaderTransaction.__init__
    - <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: 0
    functionLinenumber: 649
    functionName: dns.zonefile.RRSetsReaderManager.get_class
    functionSourceFile: dns.zonefile
    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: 652
    functionName: dns.zonefile.RRSetsReaderManager.origin_information
    functionSourceFile: dns.zonefile
    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
    - rrsets
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 659
    functionName: dns.zonefile.RRSetsReaderManager.set_rrsets
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f5e2e0>
    - <ast.Constant object at 0x7fc9c5f5e280>
    - <ast.Attribute object at 0x7fc9c5f5ef10>
    - <ast.Attribute object at 0x7fc9c5e19dc0>
    - <ast.Constant object at 0x7fc9c5e192e0>
    - <ast.Constant object at 0x7fc9c5e193d0>
    - <ast.Constant object at 0x7fc9c5e19df0>
    - <ast.Attribute object at 0x7fc9c5e19940>
    - <ast.Constant object at 0x7fc9c5e198b0>
    argNames:
    - text
    - name
    - ttl
    - rdclass
    - default_rdclass
    - rdtype
    - default_ttl
    - idna_codec
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 663
    functionName: dns.zonefile.read_rrsets
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - dns.zonefile.Reader.read
    - c.isdigit
    - dns.ttl.from_text
    - RdataType.from_text
    - dns.zonefile.RRsetsReaderTransaction.__init__
    - dns.zonefile.Reader._generate_line._format_index
    - tok.get_eol_as_token
    - is_generate2.match
    - token.is_identifier
    - re.compile
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.zonefile.RRSetsReaderManager.__init__
    - dns.zonefile.RRSetsReaderManager.writer
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - c.lower
    - dns.name.Name.__init__
    - <builtin>.len
    - token.is_comment
    - labels.extend
    - <builtin>.getattr
    - dns.rdataclass.to_text
    - token.is_whitespace
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - labels.append
    - g1.groups
    - label.encode
    - <builtin>.range
    - token.is_eol
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - rhs.replace
    - token.value.upper
    - dns.zonefile.Reader._parse_modify
    - byte_.isdigit
    - dns.rdata.GenericRdata.from_wire_parser
    - txn.manager.origin_information
    - g2.groups
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - token.is_eof
    - nibbles.upper
    - dns.exception.SyntaxError
    - binascii.unhexlify
    - struct.pack
    - dns.zonefile.Reader._generate_line
    - tok.get_int
    - name.relativize
    - dns.grange.from_text
    - text.encode
    - dns.rdata.GenericRdata.from_text
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - dns.zonefile.Reader._rr_line
    - tok.concatenate_remaining_identifiers
    - dns.zonefile.Reader._generate_line._calculate_index
    - <builtin>.chr
    - name.is_subdomain
    - <builtin>.format
    - rdtype_text.replace
    - dns.rdatatype.from_text
    - dns.zonefile.Reader.__init__
    - text.isdigit
    - is_generate1.match
    - dns.rdata.from_wire
    - dns.zonefile._upper_dollarize
    - _rdata_classes.get
    - dns.name._validate_labels
    - sys.exc_info
    - dns.zonefile.Reader._get_identifier
    - is_generate3.match
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - contextlib.contextmanager
    - dns.zonefile.Reader._eat_line
    - dns.exception.ExceptionWrapper
    - <builtin>.isinstance
    - s.startswith
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - g3.groups
    - <builtin>.open
    - parser.get_remaining
    - RdataClass.from_text
    - <builtin>.set
    - s.upper
    - token.is_eol_or_eof
    - dns.rdata.get_rdata_class
    - lhs.replace
    - object.__setattr__
    - RdataType.to_text
    - dns.tokenizer.Tokenizer
    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: dns.message
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: dns.message.Truncated.__init__
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 85
    functionName: dns.message.Truncated.message
    functionSourceFile: dns.message
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 118
    functionName: dns.message.MessageSection._maximum
    functionSourceFile: dns.message
    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
    - exception
    - offset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 123
    functionName: dns.message.MessageError.__init__
    functionSourceFile: dns.message
    functionUses: 35
    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 0x7fc9c63fdca0>
    argNames:
    - self
    - id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 148
    functionName: dns.message.Message.__init__
    functionSourceFile: dns.message
    functionUses: 48
    functionsReached:
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - os.urandom
    - dns.entropy.random_16
    - <builtin>.str
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.bytes
    - dns.entropy.EntropyPool.random_16
    - r.read
    - time.time
    - <builtin>.bytearray
    - <builtin>.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 119
    functionName: dns.entropy.random_16
    functionSourceFile: <builtin>
    functionUses: 49
    functionsReached:
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.bytes
    - dns.entropy.EntropyPool.random_16
    - r.read
    - time.time
    - <builtin>.bytearray
    - <builtin>.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 175
    functionName: dns.message.Message.question
    functionSourceFile: dns.message
    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
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 184
    functionName: dns.message.Message.answer
    functionSourceFile: dns.message
    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
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 193
    functionName: dns.message.Message.authority
    functionSourceFile: dns.message
    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
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 202
    functionName: dns.message.Message.additional
    functionSourceFile: dns.message
    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: 205
    functionName: dns.message.Message.__repr__
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.repr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 208
    functionName: dns.message.Message.__str__
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.message.Message.rcode
    - dns.rcode.from_flags
    - text_flags.append
    - Opcode.to_text
    - enum_class.__members__.items
    - Rcode.to_text
    - rrset.to_text
    - dns.flags._to_text
    - Rcode.make
    - dns.message.Message.section_from_number
    - dns.message.Message.to_text
    - dns.message.Message.opcode
    - <builtin>.int
    - dns.rcode.to_text
    - dns.opcode.from_flags
    - s.write
    - s.getvalue
    - io.StringIO
    - dns.flags.edns_to_text
    - dns.opcode.to_text
    - dns.flags.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5fd3280>
    - <ast.Constant object at 0x7fc9c5fd3eb0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 211
    functionName: dns.message.Message.to_text
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - dns.message.Message.rcode
    - dns.rcode.from_flags
    - text_flags.append
    - Opcode.to_text
    - enum_class.__members__.items
    - Rcode.to_text
    - rrset.to_text
    - dns.flags._to_text
    - Rcode.make
    - dns.message.Message.section_from_number
    - dns.message.Message.opcode
    - <builtin>.int
    - dns.rcode.to_text
    - dns.opcode.from_flags
    - s.write
    - s.getvalue
    - io.StringIO
    - dns.flags.edns_to_text
    - dns.opcode.to_text
    - dns.flags.to_text
    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: 911
    functionName: dns.message.Message.opcode
    functionSourceFile: dns.message
    functionUses: 2
    functionsReached:
    - dns.opcode.from_flags
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: dns.opcode.to_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - Opcode.to_text
    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: 893
    functionName: dns.message.Message.rcode
    functionSourceFile: dns.message
    functionUses: 4
    functionsReached:
    - Rcode.make
    - dns.rcode.from_flags
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - flags
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: dns.flags.to_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - text_flags.append
    - enum_class.__members__.items
    - dns.flags._to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - flags
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 97
    functionName: dns.flags.edns_to_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - text_flags.append
    - enum_class.__members__.items
    - dns.flags._to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - number
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 329
    functionName: dns.message.Message.section_from_number
    functionSourceFile: ''
    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: rrset.to_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 249
    functionName: dns.message.Message.__eq__
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 272
    functionName: dns.message.Message.__ne__
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.enumerate
    - dns.message.Message.__eq__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 275
    functionName: dns.message.Message.is_response
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.opcode.is_update
    - dns.opcode.from_flags
    - <builtin>.len
    - other.rcode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - flags
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: dns.opcode.from_flags
    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: other.rcode
    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:
    - flags
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: dns.opcode.is_update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - dns.opcode.from_flags
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 313
    functionName: dns.message.Message.section_number
    functionSourceFile: dns.message
    functionUses: 18
    functionsReached:
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 2
    IfCount: 10
    argCount: 10
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5ed0dc0>
    - <ast.Constant object at 0x7fc9c5ed06a0>
    - <ast.Constant object at 0x7fc9c5ed0970>
    - <ast.Constant object at 0x7fc9c5ed0190>
    - <ast.Constant object at 0x7fc9c5ed0d90>
    argNames:
    - self
    - section
    - name
    - rdclass
    - rdtype
    - covers
    - deleting
    - create
    - force_unique
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 344
    functionName: dns.message.Message.find_rrset
    functionSourceFile: dns.message
    functionUses: 16
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.enumerate
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - dns.rrset.RRset
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.message.Message.section_number
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 10
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c59e38b0>
    - <ast.Constant object at 0x7fc9c59e3ee0>
    - <ast.Constant object at 0x7fc9c59e35e0>
    - <ast.Constant object at 0x7fc9c59e3e50>
    - <ast.Constant object at 0x7fc9c59e3ac0>
    argNames:
    - self
    - section
    - name
    - rdclass
    - rdtype
    - covers
    - deleting
    - create
    - force_unique
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 429
    functionName: dns.message.Message.get_rrset
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.enumerate
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - dns.rrset.RRset
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - dns.message.Message.find_rrset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.message.Message.section_number
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 496
    functionName: dns.message.Message.section_count
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.message.Message.section_from_number
    - <builtin>.max
    - <builtin>.len
    - dns.message.Message.section_number
    - <builtin>.sum
    - <builtin>.isinstance
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 4
    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: 1
    functionLinenumber: 524
    functionName: dns.message.Message._compute_opt_reserve
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - typing.cast
    - typing.cast.options.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.options.to_wire
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    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: 1
    functionLinenumber: 544
    functionName: dns.message.Message._compute_tsig_reserve
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - io.BytesIO
    - <builtin>.len
    - f.getvalue
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 14
    IfCount: 11
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f207f0>
    - <ast.Constant object at 0x7fc9c5f20070>
    - <ast.Constant object at 0x7fc9c5f20be0>
    - <ast.Constant object at 0x7fc9c5f20400>
    - <ast.Constant object at 0x7fc9c5f202e0>
    - <ast.Constant object at 0x7fc9c5f20af0>
    argNames:
    - self
    - origin
    - max_size
    - multi
    - tsig_ctx
    - prepend_length
    - prefer_truncation
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 557
    functionName: dns.message.Message.to_wire
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - r.write_header
    - contextlib.contextmanager
    - r.get_wire
    - dns.renderer.Renderer
    - dns.tsig.HMACTSig.__init__
    - r.add_rrset
    - f.getvalue
    - dns.tsig.GSSTSig.update
    - dns.tsig._digest
    - dns.tsig.GSSTSig.sign
    - dns.tsig.GSSTSig.__init__
    - <builtin>.isinstance
    - hmac.new
    - dns.message.Message._compute_opt_reserve
    - dns.tsig.HMACTSig.sign
    - time.time
    - rdata.replace
    - dns.tsig.HMACTSig.update
    - dns.tsig.get_context
    - typing.cast.options.to_wire
    - dns.message.Message._compute_tsig_reserve
    - r.add_opt
    - <builtin>.int
    - dns.tsig._maybe_start_digest
    - r.add_question
    - key.name.to_digestable
    - key.algorithm.to_digestable
    - <builtin>.len
    - struct.pack
    - dns.tsig.sign
    - io.BytesIO
    - typing.cast
    - r.release_reserved
    - r.reserve
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.reserve
    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: r.add_question
    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: r.add_rrset
    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: r.release_reserved
    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: r.add_opt
    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: r.write_header
    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: r.get_wire
    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: dns.rdtypes.ANY.TSIG.TSIG
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5990b80>
    - <ast.Constant object at 0x7fc9c5990d30>
    - <ast.Constant object at 0x7fc9c5990bb0>
    - <ast.Constant object at 0x7fc9c5990be0>
    - <ast.Constant object at 0x7fc9c5990a60>
    - <ast.Attribute object at 0x7fc9c6b72d90>
    argNames:
    - self
    - keyring
    - keyname
    - fudge
    - original_id
    - tsig_error
    - other_data
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 675
    functionName: dns.message.Message.use_tsig
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - dns.rdtypes.ANY.TSIG.TSIG
    - <builtin>.super
    - dns.tsig.Key
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - <builtin>.iter
    - <builtin>.tuple
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.message.Message._make_tsig
    - dns.rrset.RRset.__init__
    - typing.cast
    - <builtin>.next
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.callable
    functionSourceFile: <builtin>
    functionUses: 35
    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: 750
    functionName: dns.message.Message.keyname
    functionSourceFile: dns.message
    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: 757
    functionName: dns.message.Message.keyalgorithm
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - 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: 1
    functionLinenumber: 765
    functionName: dns.message.Message.mac
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - 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: 1
    functionLinenumber: 773
    functionName: dns.message.Message.tsig_error
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - typing.cast
    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: 781
    functionName: dns.message.Message.had_tsig
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    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: dns.rdtypes.ANY.OPT.OPT
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5ee0220>
    - <ast.Constant object at 0x7fc9c5ee0730>
    - <ast.Name object at 0x7fc9c5ee0970>
    - <ast.Constant object at 0x7fc9c5ee03a0>
    - <ast.Constant object at 0x7fc9c5ee05e0>
    - <ast.Constant object at 0x7fc9c5ee0850>
    argNames:
    - self
    - edns
    - ednsflags
    - payload
    - request_payload
    - options
    - pad
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 789
    functionName: dns.message.Message.use_edns
    functionSourceFile: dns.message
    functionUses: 13
    functionsReached:
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - <builtin>.chr
    - byte_.isdigit
    - dns.message.Message._make_opt
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 843
    functionName: dns.message.Message.edns
    functionSourceFile: dns.message
    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
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 857
    functionName: dns.message.Message.ednsflags
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - <builtin>.chr
    - byte_.isdigit
    - dns.message.Message._make_opt
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - typing.cast
    - <builtin>.tuple
    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: 864
    functionName: dns.message.Message.payload
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - 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: 1
    functionLinenumber: 872
    functionName: dns.message.Message.options
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - typing.cast
    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 0x7fc9c5e9de50>
    argNames:
    - self
    - wanted
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 879
    functionName: dns.message.Message.want_dnssec
    functionSourceFile: dns.message
    functionUses: 13
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rcode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 900
    functionName: dns.message.Message.set_rcode
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.rcode.to_flags
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - opcode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 918
    functionName: dns.message.Message.set_opcode
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.opcode.to_flags
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 75
    functionName: dns.opcode.to_flags
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - otype
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 926
    functionName: dns.message.Message.get_options
    functionSourceFile: dns.message
    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: 1
    functionLinenumber: 930
    functionName: dns.message.Message.extended_errors
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.message.Message.get_options
    - 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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 934
    functionName: dns.message.Message._get_one_rr_per_rrset
    functionSourceFile: dns.message
    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
    - section
    - name
    - rdclass
    - rdtype
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 940
    functionName: dns.message.Message._parse_rr_header
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - section
    - count
    - position
    - name
    - rdclass
    - rdtype
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 945
    functionName: dns.message.Message._parse_special_rr_header
    functionSourceFile: dns.message
    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
    - canonical_name
    - answer
    - minimum_ttl
    - cnames
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 982
    functionName: dns.message.ChainingResult.__init__
    functionSourceFile: dns.message
    functionUses: 2
    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: 6
    functionLinenumber: 996
    functionName: dns.message.QueryMessage.resolve_chaining
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - dns.message.Message.rcode
    - text.encode
    - c.isdigit
    - dns.rcode.from_flags
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - <builtin>.enumerate
    - auname.parent
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - cnames.append
    - byte_.isdigit
    - Rcode.make
    - dns.rrset.RRset
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - dns.message.Message.find_rrset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.message.ChainingResult.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.min
    - <builtin>.len
    - struct.pack
    - dns.message.Message.section_number
    - labels.extend
    - typing.cast
    - <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: cnames.append
    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: auname.parent
    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: 7
    functionLinenumber: 1072
    functionName: dns.message.QueryMessage.canonical_name
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.message.Message.rcode
    - text.encode
    - c.isdigit
    - dns.rcode.from_flags
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - <builtin>.enumerate
    - auname.parent
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - cnames.append
    - byte_.isdigit
    - Rcode.make
    - dns.rrset.RRset
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - dns.message.Message.find_rrset
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.message.ChainingResult.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.min
    - <builtin>.len
    - struct.pack
    - dns.message.QueryMessage.resolve_chaining
    - dns.message.Message.section_number
    - labels.extend
    - typing.cast
    - <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: 1089
    functionName: dns.message._maybe_import_update
    functionSourceFile: dns.message
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - opcode
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1098
    functionName: dns.message._message_factory_from_opcode
    functionSourceFile: dns.message
    functionUses: 38
    functionsReached:
    - dns.message._maybe_import_update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5792100>
    - <ast.Constant object at 0x7fc9c5792070>
    - <ast.Constant object at 0x7fc9c5792970>
    - <ast.Constant object at 0x7fc9c57920a0>
    - <ast.Constant object at 0x7fc9c5792340>
    - <ast.Constant object at 0x7fc9c5792250>
    argNames:
    - self
    - wire
    - initialize_message
    - question_only
    - one_rr_per_rrset
    - ignore_trailing
    - keyring
    - multi
    - continue_on_error
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1125
    functionName: dns.message._WireReader.__init__
    functionSourceFile: dns.message
    functionUses: 32
    functionsReached:
    - contextlib.contextmanager
    - dns.wire.Parser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section_number
    - qcount
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1147
    functionName: dns.message._WireReader._get_question
    functionSourceFile: dns.message
    functionUses: 33
    functionsReached:
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - e
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1163
    functionName: dns.message._WireReader._add_error
    functionSourceFile: dns.message
    functionUses: 34
    functionsReached:
    - dns.message.MessageError.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 4
    IfCount: 16
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section_number
    - count
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1166
    functionName: dns.message._WireReader._get_section
    functionSourceFile: dns.message
    functionUses: 33
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - rd.covers
    - hmac.compare_digest
    - dns.rdataclass.to_text
    - text.encode
    - c.isdigit
    - dns.rdatatype.to_text
    - r.add
    - <builtin>.abs
    - labels.append
    - dns.exception.ExceptionWrapper
    - label.encode
    - <builtin>.range
    - dns.tsig.HMACTSig.__init__
    - dns.tsig.GSSTSig.update
    - dns.tsig._digest
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - absolute_name.relativize
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - hmac.new
    - <builtin>.super
    - dns.tsig.Key
    - dns.tsig.validate
    - <builtin>.chr
    - dns.tsig.HMACTSig.sign
    - byte_.isdigit
    - time.time
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - <builtin>.ord
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.message.MessageError.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - <builtin>.callable
    - dns.rdata.GenericRdata.__init__
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.from_text
    - <builtin>.list
    - r.update_ttl
    - dns.tsig._maybe_start_digest
    - key.name.to_digestable
    - dns.rrset.from_rdata_list
    - dns.name.is_all_ascii
    - _rdata_classes.get
    - dns.name._validate_labels
    - dns.rdata.get_rdata_class
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - RdataType.to_text
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - UnknownTSIGKey
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: absolute_name.relativize
    functionSourceFile: <builtin>
    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: rd.covers
    functionSourceFile: <builtin>
    functionUses: 44
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 8
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1267
    functionName: dns.message._WireReader.read
    functionSourceFile: dns.message
    functionUses: 32
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - text.encode
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.flags.Flag
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - message
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1378
    functionName: dns.message.from_wire.initialize_message
    functionSourceFile: ''
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a95910>
    - <ast.Constant object at 0x7fc9c5a95a90>
    - <ast.Constant object at 0x7fc9c5a95220>
    - <ast.Constant object at 0x7fc9c5a959a0>
    argNames:
    - self
    - text
    - idna_codec
    - one_rr_per_rrset
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1428
    functionName: dns.message._TextReader.__init__
    functionSourceFile: dns.message
    functionUses: 2
    functionsReached:
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 4
    IfCount: 11
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - _
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1452
    functionName: dns.message._TextReader._header_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - dns.opcode.from_text
    - dns.rcode.from_text
    - dns.flags.edns_from_text
    - text.split
    - dns.flags._from_text
    - dns.flags.from_text
    - Rcode.from_text
    - token.is_identifier
    - t.upper
    - dns.opcode.to_flags
    - Opcode.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 67
    functionName: dns.flags.from_text
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - dns.flags._from_text
    - text.split
    - t.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 87
    functionName: dns.flags.edns_from_text
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - dns.flags._from_text
    - text.split
    - t.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: dns.opcode.from_text
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - Opcode.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section_number
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1493
    functionName: dns.message._TextReader._question_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - RdataClass.from_text
    - token.is_whitespace
    - RdataType.from_text
    - token.is_identifier
    - dns.rdataclass.from_text
    - dns.rdatatype.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 3
    IfCount: 9
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section_number
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1529
    functionName: dns.message._TextReader._rr_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - rd.covers
    - dns.rdataclass.to_text
    - contextlib.contextmanager
    - token.is_whitespace
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - dns.exception.ExceptionWrapper
    - RdataType.from_text
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - <builtin>.super
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - rdtype_text.replace
    - dns.rdatatype.from_text
    - parser.get_remaining
    - RdataClass.from_text
    - dns.rdata.GenericRdata.__init__
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - token.is_eol_or_eof
    - dns.rdata.from_wire
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - object.__setattr__
    - <builtin>.len
    - RdataType.to_text
    - binascii.unhexlify
    - tok.get_int
    - dns.tokenizer.Tokenizer
    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: 6
    functionLinenumber: 1605
    functionName: dns.message._TextReader._make_message
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - message.use_edns
    - os.urandom
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - <builtin>.str
    - dns.entropy.random_16
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.bytes
    - dns.entropy.EntropyPool.random_16
    - time.time
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - message.set_rcode
    - r.read
    - <builtin>.bytearray
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.use_edns
    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: message.set_rcode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 4
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1617
    functionName: dns.message._TextReader.read
    functionSourceFile: dns.message
    functionUses: 2
    functionsReached:
    - rd.covers
    - RdataType.from_text
    - tok.get_eol_as_token
    - dns.entropy.random_16
    - dns.flags.from_text
    - token.is_identifier
    - t.upper
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - <builtin>.len
    - dns.message._TextReader._rr_line
    - token.is_comment
    - <builtin>.getattr
    - os.urandom
    - dns.flags.edns_from_text
    - dns.rdataclass.to_text
    - token.is_whitespace
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rdatatype.RdataType.make
    - token.value.upper
    - message._get_one_rr_per_rrset
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - Opcode.from_text
    - dns.message._TextReader._header_line
    - dns.rdata.GenericRdata.__init__
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.read
    - dns.rcode.from_text
    - binascii.unhexlify
    - tok.get_int
    - message.use_edns
    - dns.rdata.GenericRdata.from_text
    - dns.message._TextReader._question_line
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - tok.concatenate_remaining_identifiers
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.rdatatype.from_text
    - message._section_enum.from_text
    - dns.opcode.to_flags
    - <builtin>.bytearray
    - dns.rdata.from_wire
    - _rdata_classes.get
    - dns.opcode.from_text
    - os.getpid
    - importlib.import_module
    - contextlib.contextmanager
    - text.split
    - dns.exception.ExceptionWrapper
    - <builtin>.isinstance
    - <builtin>.str
    - <builtin>.super
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - RdataClass.from_text
    - message.set_rcode
    - dns.flags._from_text
    - token.is_eol_or_eof
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - object.__setattr__
    - RdataType.to_text
    - Rcode.from_text
    - dns.message._TextReader._make_message
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message._section_enum.from_text
    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: message._get_one_rr_per_rrset
    functionSourceFile: <builtin>
    functionUses: 3
    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 0x7fc9c5a89940>
    - <ast.Constant object at 0x7fc9c5a89130>
    - <ast.Constant object at 0x7fc9c5a89730>
    - <ast.Constant object at 0x7fc9c5a892e0>
    - <ast.Constant object at 0x7fc9c5a89b80>
    argNames:
    - text
    - idna_codec
    - one_rr_per_rrset
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1663
    functionName: dns.message.from_text
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - rd.covers
    - RdataType.from_text
    - tok.get_eol_as_token
    - dns.entropy.random_16
    - dns.flags.from_text
    - token.is_identifier
    - t.upper
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - <builtin>.len
    - dns.message._TextReader._rr_line
    - token.is_comment
    - <builtin>.getattr
    - os.urandom
    - dns.flags.edns_from_text
    - dns.rdataclass.to_text
    - token.is_whitespace
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rdatatype.RdataType.make
    - token.value.upper
    - message._get_one_rr_per_rrset
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - Opcode.from_text
    - dns.message._TextReader._header_line
    - dns.rdata.GenericRdata.__init__
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.read
    - dns.rcode.from_text
    - binascii.unhexlify
    - tok.get_int
    - message.use_edns
    - dns.rdata.GenericRdata.from_text
    - dns.message._TextReader._question_line
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - tok.concatenate_remaining_identifiers
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.rdatatype.from_text
    - message._section_enum.from_text
    - dns.opcode.to_flags
    - <builtin>.bytearray
    - dns.rdata.from_wire
    - _rdata_classes.get
    - dns.opcode.from_text
    - os.getpid
    - dns.message._TextReader.__init__
    - importlib.import_module
    - contextlib.contextmanager
    - text.split
    - dns.exception.ExceptionWrapper
    - <builtin>.isinstance
    - <builtin>.str
    - dns.message._TextReader.read
    - <builtin>.super
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - RdataClass.from_text
    - message.set_rcode
    - dns.flags._from_text
    - token.is_eol_or_eof
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - object.__setattr__
    - RdataType.to_text
    - Rcode.from_text
    - dns.message._TextReader._make_message
    - dns.tokenizer.Tokenizer
    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 0x7fc9c57c8100>
    - <ast.Constant object at 0x7fc9c57c8430>
    argNames:
    - f
    - idna_codec
    - one_rr_per_rrset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1711
    functionName: dns.message.from_file
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - rd.covers
    - RdataType.from_text
    - tok.get_eol_as_token
    - dns.entropy.random_16
    - dns.flags.from_text
    - token.is_identifier
    - t.upper
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - <builtin>.len
    - dns.message._TextReader._rr_line
    - token.is_comment
    - <builtin>.getattr
    - os.urandom
    - dns.flags.edns_from_text
    - dns.rdataclass.to_text
    - token.is_whitespace
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rdatatype.RdataType.make
    - token.value.upper
    - message._get_one_rr_per_rrset
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - Opcode.from_text
    - dns.message._TextReader._header_line
    - dns.rdata.GenericRdata.__init__
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.read
    - dns.rcode.from_text
    - binascii.unhexlify
    - tok.get_int
    - message.use_edns
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_text
    - dns.message._TextReader._question_line
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - tok.concatenate_remaining_identifiers
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.rdatatype.from_text
    - message._section_enum.from_text
    - dns.message.from_text
    - dns.opcode.to_flags
    - <builtin>.bytearray
    - dns.rdata.from_wire
    - _rdata_classes.get
    - dns.opcode.from_text
    - os.getpid
    - dns.message._TextReader.__init__
    - importlib.import_module
    - contextlib.contextmanager
    - text.split
    - dns.exception.ExceptionWrapper
    - <builtin>.isinstance
    - <builtin>.str
    - dns.message._TextReader.read
    - <builtin>.super
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - RdataClass.from_text
    - message.set_rcode
    - dns.flags._from_text
    - token.is_eol_or_eof
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - object.__setattr__
    - RdataType.to_text
    - Rcode.from_text
    - dns.message._TextReader._make_message
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 4
    IfCount: 9
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b44550>
    - <ast.Constant object at 0x7fc9c5b441f0>
    - <ast.Constant object at 0x7fc9c5b44400>
    - <ast.Constant object at 0x7fc9c5b44a60>
    - <ast.Constant object at 0x7fc9c5b44760>
    - <ast.Constant object at 0x7fc9c5b44be0>
    argNames:
    - query
    - recursion_available
    - our_payload
    - fudge
    - tsig_error
    - pad
    - copy_mode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1855
    functionName: dns.message.make_response
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - response.use_edns
    - os.urandom
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - <builtin>.str
    - response.use_tsig
    - dns.entropy.random_16
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.bytes
    - dns.entropy.EntropyPool.random_16
    - time.time
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - query.opcode
    - <builtin>.list
    - r.read
    - <builtin>.bytearray
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - response.set_opcode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: query.opcode
    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: response.set_opcode
    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: response.use_edns
    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: response.use_tsig
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: dns.entropy
    functionSourceFile: dns.entropy
    functionUses: 0
    functionsReached:
    - random.SystemRandom
    - os.getpid
    - dns.entropy.EntropyPool._stir
    - hashlib.sha1
    - threading.Lock
    - dns.entropy.EntropyPool.__init__
    - <builtin>.bytearray
    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 0x7fc9c63b2b80>
    argNames:
    - self
    - seed
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.entropy.EntropyPool.__init__
    functionSourceFile: dns.entropy
    functionUses: 1
    functionsReached:
    - os.getpid
    - dns.entropy.EntropyPool._stir
    - hashlib.sha1
    - threading.Lock
    - <builtin>.bytearray
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Lock
    functionSourceFile: threading
    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: hashlib.sha1
    functionSourceFile: hashlib
    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
    - entropy
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 48
    functionName: dns.entropy.EntropyPool._stir
    functionSourceFile: ''
    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: os.getpid
    functionSourceFile: os
    functionUses: 58
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - entropy
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: dns.entropy.EntropyPool.stir
    functionSourceFile: dns.entropy
    functionUses: 0
    functionsReached:
    - dns.entropy.EntropyPool._stir
    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: 60
    functionName: dns.entropy.EntropyPool._maybe_seed
    functionSourceFile: dns.entropy
    functionUses: 55
    functionsReached:
    - os.getpid
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool._stir
    - r.read
    - time.time
    - <builtin>.bytearray
    - <builtin>.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.urandom
    functionSourceFile: os
    functionUses: 56
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.read
    functionSourceFile: <builtin>
    functionUses: 56
    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: 76
    functionName: dns.entropy.EntropyPool.random_8
    functionSourceFile: dns.entropy
    functionUses: 54
    functionsReached:
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool._stir
    - <builtin>.bytes
    - r.read
    - time.time
    - <builtin>.bytearray
    - <builtin>.open
    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: 88
    functionName: dns.entropy.EntropyPool.random_16
    functionSourceFile: dns.entropy
    functionUses: 53
    functionsReached:
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool._stir
    - <builtin>.bytes
    - r.read
    - time.time
    - <builtin>.bytearray
    - <builtin>.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 91
    functionName: dns.entropy.EntropyPool.random_32
    functionSourceFile: dns.entropy
    functionUses: 2
    functionsReached:
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool._stir
    - <builtin>.bytes
    - dns.entropy.EntropyPool.random_16
    - r.read
    - time.time
    - <builtin>.bytearray
    - <builtin>.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - first
    - last
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 94
    functionName: dns.entropy.EntropyPool.random_between
    functionSourceFile: dns.entropy
    functionUses: 1
    functionsReached:
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    - <builtin>.str
    - os.getpid
    - os.urandom
    - dns.entropy.EntropyPool._stir
    - dns.entropy.EntropyPool.random_32
    - <builtin>.bytes
    - dns.entropy.EntropyPool.random_16
    - r.read
    - time.time
    - <builtin>.bytearray
    - <builtin>.open
    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: random.SystemRandom
    functionSourceFile: random
    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: system_random.randrange
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - first
    - last
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 126
    functionName: dns.entropy.between
    functionSourceFile: dns.entropy
    functionUses: 0
    functionsReached:
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - os.urandom
    - dns.entropy.EntropyPool.random_between
    - <builtin>.str
    - dns.entropy.EntropyPool._stir
    - dns.entropy.EntropyPool.random_32
    - system_random.randrange
    - <builtin>.bytes
    - dns.entropy.EntropyPool.random_16
    - r.read
    - time.time
    - <builtin>.bytearray
    - <builtin>.open
    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: dns.flags
    functionSourceFile: dns.flags
    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:
    - text
    - enum_class
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: dns.flags._from_text
    functionSourceFile: dns.flags
    functionUses: 6
    functionsReached:
    - text.split
    - t.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.upper
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - flags
    - enum_class
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 59
    functionName: dns.flags._to_text
    functionSourceFile: dns.flags
    functionUses: 4
    functionsReached:
    - enum_class.__members__.items
    - text_flags.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: enum_class.__members__.items
    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: text_flags.append
    functionSourceFile: <builtin>
    functionUses: 5
    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: dns.rdtypes.ANY
    functionSourceFile: dns.rdtypes.ANY
    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: dns.opcode
    functionSourceFile: dns.opcode
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 39
    functionName: dns.opcode.Opcode._maximum
    functionSourceFile: dns.opcode
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 43
    functionName: dns.opcode.Opcode._unknown_exception_class
    functionSourceFile: dns.opcode
    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: Opcode.from_text
    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: Opcode.to_text
    functionSourceFile: <builtin>
    functionUses: 3
    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: dns.update
    functionSourceFile: dns.update
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: dns.update.UpdateSection._maximum
    functionSourceFile: dns.update
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68eef70>
    - <ast.Attribute object at 0x7fc9c68eec40>
    - <ast.Constant object at 0x7fc9c68ee3a0>
    - <ast.Constant object at 0x7fc9c68eea30>
    - <ast.Attribute object at 0x7fc9c68ee430>
    - <ast.Constant object at 0x7fc9c68ee070>
    argNames:
    - self
    - zone
    - rdclass
    - keyring
    - keyname
    - keyalgorithm
    - id
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 52
    functionName: dns.update.UpdateMessage.__init__
    functionSourceFile: dns.update
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.opcode.to_flags
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 101
    functionName: dns.update.UpdateMessage.zone
    functionSourceFile: dns.update
    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
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 110
    functionName: dns.update.UpdateMessage.prerequisite
    functionSourceFile: dns.update
    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
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: dns.update.UpdateMessage.update
    functionSourceFile: dns.update
    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 0x7fc9c5905610>
    - <ast.Constant object at 0x7fc9c5905850>
    argNames:
    - self
    - name
    - ttl
    - rd
    - deleting
    - section
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: dns.update.UpdateMessage._add_rr
    functionSourceFile: dns.update
    functionUses: 5
    functionsReached:
    - rrset.add
    - rd.covers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - replace
    - section
    - name
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 133
    functionName: dns.update.UpdateMessage._add
    functionSourceFile: dns.update
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - dns.update.UpdateMessage._add_rr
    - importlib.import_module
    - rd.covers
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - labels.append
    - dns.exception.ExceptionWrapper
    - label.encode
    - rdata.to_wire
    - parser.restrict_to
    - dns.name.from_unicode
    - <builtin>.isinstance
    - tok.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - rdtype_text.replace
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - args.pop
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.name.is_all_ascii
    - dns.update.UpdateMessage.delete
    - dns.rdata.from_wire
    - dns.wire.Parser
    - dns.name._validate_labels
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - largs.pop
    - dns.name.Name.__init__
    - object.__setattr__
    - <builtin>.len
    - binascii.unhexlify
    - RdataType.to_text
    - struct.pack
    - labels.extend
    - tok.get_int
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 6
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 188
    functionName: dns.update.UpdateMessage.delete
    functionSourceFile: dns.update
    functionUses: 4
    functionsReached:
    - <builtin>.getattr
    - dns.update.UpdateMessage._add_rr
    - importlib.import_module
    - rd.covers
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - labels.append
    - dns.exception.ExceptionWrapper
    - label.encode
    - rdata.to_wire
    - parser.restrict_to
    - dns.name.from_unicode
    - <builtin>.isinstance
    - tok.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - rdtype_text.replace
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.name.is_all_ascii
    - dns.rdata.from_wire
    - dns.wire.Parser
    - dns.name._validate_labels
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - largs.pop
    - dns.name.Name.__init__
    - object.__setattr__
    - <builtin>.len
    - binascii.unhexlify
    - RdataType.to_text
    - struct.pack
    - labels.extend
    - tok.get_int
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args.pop
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 173
    functionName: dns.update.UpdateMessage.add
    functionSourceFile: dns.update
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - dns.update.UpdateMessage._add_rr
    - importlib.import_module
    - rd.covers
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - labels.append
    - dns.exception.ExceptionWrapper
    - label.encode
    - rdata.to_wire
    - parser.restrict_to
    - dns.name.from_unicode
    - <builtin>.isinstance
    - tok.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - rdtype_text.replace
    - dns.update.UpdateMessage._add
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - args.pop
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.name.is_all_ascii
    - dns.update.UpdateMessage.delete
    - dns.rdata.from_wire
    - dns.wire.Parser
    - dns.name._validate_labels
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - largs.pop
    - dns.name.Name.__init__
    - object.__setattr__
    - <builtin>.len
    - binascii.unhexlify
    - RdataType.to_text
    - struct.pack
    - labels.extend
    - tok.get_int
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: largs.pop
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 248
    functionName: dns.update.UpdateMessage.replace
    functionSourceFile: dns.update
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - dns.update.UpdateMessage._add_rr
    - importlib.import_module
    - rd.covers
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - labels.append
    - dns.exception.ExceptionWrapper
    - label.encode
    - rdata.to_wire
    - parser.restrict_to
    - dns.name.from_unicode
    - <builtin>.isinstance
    - tok.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - rdtype_text.replace
    - dns.update.UpdateMessage._add
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - args.pop
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.name.is_all_ascii
    - dns.update.UpdateMessage.delete
    - dns.rdata.from_wire
    - dns.wire.Parser
    - dns.name._validate_labels
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - largs.pop
    - dns.name.Name.__init__
    - object.__setattr__
    - <builtin>.len
    - binascii.unhexlify
    - RdataType.to_text
    - struct.pack
    - labels.extend
    - tok.get_int
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 266
    functionName: dns.update.UpdateMessage.present
    functionSourceFile: dns.update
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - dns.update.UpdateMessage._add_rr
    - importlib.import_module
    - rd.covers
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - dns.rdataclass.to_text
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_text
    - tok.unget
    - labels.append
    - dns.exception.ExceptionWrapper
    - label.encode
    - rdata.to_wire
    - parser.restrict_to
    - dns.name.from_unicode
    - tok.get
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - tok.concatenate_remaining_identifiers
    - tok.get_eol_as_token
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - token.is_identifier
    - dns.rdata.GenericRdata.from_wire_parser
    - largs.insert
    - rrset.add
    - rdtype_text.replace
    - dns.update.UpdateMessage._add
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - args.pop
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.name.is_all_ascii
    - dns.update.UpdateMessage.delete
    - dns.rdata.from_wire
    - dns.wire.Parser
    - _rdata_classes.get
    - dns.name._validate_labels
    - dns.rdata.get_rdata_class
    - dns.name.Name.__init__
    - largs.pop
    - object.__setattr__
    - <builtin>.len
    - binascii.unhexlify
    - RdataType.to_text
    - struct.pack
    - labels.extend
    - tok.get_int
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: largs.insert
    functionSourceFile: <builtin>
    functionUses: 1
    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 0x7fc9c64813d0>
    argNames:
    - self
    - name
    - rdtype
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 319
    functionName: dns.update.UpdateMessage.absent
    functionSourceFile: dns.update
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 353
    functionName: dns.update.UpdateMessage._get_one_rr_per_rrset
    functionSourceFile: dns.update
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - section
    - name
    - rdclass
    - rdtype
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 357
    functionName: dns.update.UpdateMessage._parse_rr_header
    functionSourceFile: dns.update
    functionUses: 0
    functionsReached:
    - dns.rdataclass.is_metaclass
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.TSIG
    functionSourceFile: dns.rdtypes.ANY.TSIG
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 10
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - algorithm
    - time_signed
    - fudge
    - mac
    - original_id
    - error
    - other
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: dns.rdtypes.ANY.TSIG.TSIG.__init__
    functionSourceFile: dns.rdtypes.ANY.TSIG
    functionUses: 2
    functionsReached:
    - dns.rcode.Rcode.make
    - <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: dns.rcode.Rcode.make
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    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 0x7fc9c59e39a0>
    - <ast.Constant object at 0x7fc9c59e3460>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 83
    functionName: dns.rdtypes.ANY.TSIG.TSIG.to_text
    functionSourceFile: dns.rdtypes.ANY.TSIG
    functionUses: 0
    functionsReached:
    - dns.rdata._base64ify
    - Rcode.to_text
    - <builtin>.len
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - dns.rcode.to_text
    - base64.b64encode
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5adbc70>
    - <ast.Constant object at 0x7fc9c5adb8e0>
    - <ast.Constant object at 0x7fc9c5adbb50>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 96
    functionName: dns.rdtypes.ANY.TSIG.TSIG.from_text
    functionSourceFile: dns.rdtypes.ANY.TSIG
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.rcode.Rcode.make
    - base64.b64decode
    - <builtin>.len
    - tok.get_uint16
    - Rcode.from_text
    - tok.get_uint48
    - dns.rdtypes.ANY.TSIG.TSIG.__init__
    - tok.get_name
    - tok.get_string
    - dns.rcode.from_text
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.get_uint48
    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: tok.get_uint16
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.get_string
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.b64decode
    functionSourceFile: base64
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f1bdf0>
    - <ast.Constant object at 0x7fc9c5f1bc40>
    - <ast.Constant object at 0x7fc9c5f1b790>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 127
    functionName: dns.rdtypes.ANY.TSIG.TSIG._to_wire
    functionSourceFile: dns.rdtypes.ANY.TSIG
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    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 0x7fc9c6481d60>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 143
    functionName: dns.rdtypes.ANY.TSIG.TSIG.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.TSIG
    functionUses: 0
    functionsReached:
    - parser.get_name
    - <builtin>.super
    - dns.rcode.Rcode.make
    - parser.get_uint48
    - parser.get_uint16
    - parser.get_counted_bytes
    - dns.rdtypes.ANY.TSIG.TSIG.__init__
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.get_uint48
    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: parser.get_counted_bytes
    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: dns.rdtypes.ANY.OPT
    functionSourceFile: dns.rdtypes.ANY.OPT
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: dns.rdtypes.ANY.OPT.OPT.__init__
    functionSourceFile: dns.rdtypes.ANY.OPT
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - option
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns.rdtypes.ANY.OPT.OPT.__init__.as_option
    functionSourceFile: dns.rdtypes.ANY.OPT
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6481cd0>
    - <ast.Constant object at 0x7fc9c6481550>
    - <ast.Constant object at 0x7fc9c6481700>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: dns.rdtypes.ANY.OPT.OPT._to_wire
    functionSourceFile: dns.rdtypes.ANY.OPT
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    - opt.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: opt.to_wire
    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:
    - <ast.Constant object at 0x7fc9c6481760>
    - <ast.Constant object at 0x7fc9c6481af0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 61
    functionName: dns.rdtypes.ANY.OPT.OPT.to_text
    functionSourceFile: dns.rdtypes.ANY.OPT
    functionUses: 0
    functionsReached:
    - opt.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: opt.to_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    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 0x7fc9c5a4bb20>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 65
    functionName: dns.rdtypes.ANY.OPT.OPT.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.OPT
    functionUses: 0
    functionsReached:
    - parser.remaining
    - dns.edns.option_from_wire_parser
    - options.append
    - dns.edns.get_option_class
    - parser.get_remaining
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT.__init__
    - <builtin>.len
    - dns.edns.GenericOption.from_wire_parser
    - value.encode
    - <builtin>.bytes
    - parser.restrict_to
    - dns.edns.GenericOption.__init__
    - _type_to_class.get
    - dns.rdata.Rdata._as_bytes
    - parser.get_struct
    - OptionType.make
    - <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: parser.remaining
    functionSourceFile: <builtin>
    functionUses: 15
    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: 75
    functionName: dns.rdtypes.ANY.OPT.OPT.payload
    functionSourceFile: dns.rdtypes.ANY.OPT
    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: dns.rdtypes.ANY.SMIMEA
    functionSourceFile: dns.rdtypes.ANY.SMIMEA
    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: dns.rdtypes.tlsabase
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - usage
    - selector
    - mtype
    - cert
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.tlsabase.TLSABase.__init__
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5686f40>
    - <ast.Constant object at 0x7fc9c5686730>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 41
    functionName: dns.rdtypes.tlsabase.TLSABase.to_text
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - kw.copy
    - <builtin>.len
    - dns.rdata._wordbreak
    - dns.rdata._hexify
    - binascii.hexlify
    - <builtin>.range
    - separator.join
    - kw.pop
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59e30d0>
    - <ast.Constant object at 0x7fc9c59e34f0>
    - <ast.Constant object at 0x7fc9c59e3b20>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 50
    functionName: dns.rdtypes.tlsabase.TLSABase.from_text
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - <builtin>.super
    - binascii.unhexlify
    - dns.rdtypes.tlsabase.TLSABase.__init__
    - tok.concatenate_remaining_identifiers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59e3550>
    - <ast.Constant object at 0x7fc9c59e36d0>
    - <ast.Constant object at 0x7fc9c59e3dc0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdtypes.tlsabase.TLSABase._to_wire
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c646eb80>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 66
    functionName: dns.rdtypes.tlsabase.TLSABase.from_wire_parser
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - parser.get_struct
    - dns.rdtypes.tlsabase.TLSABase.__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: dns.rdtypes.svcbbase
    functionSourceFile: dns.rdtypes.svcbbase
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: dns.rdtypes.svcbbase.ParamKey._maximum
    functionSourceFile: dns.rdtypes.svcbbase
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 46
    functionName: dns.rdtypes.svcbbase.ParamKey._short_name
    functionSourceFile: dns.rdtypes.svcbbase
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: dns.rdtypes.svcbbase.ParamKey._prefix
    functionSourceFile: dns.rdtypes.svcbbase
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: dns.rdtypes.svcbbase.ParamKey._unknown_exception_class
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: dns.rdtypes.svcbbase._validate_key
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 5
    functionsReached:
    - key.decode
    - key.lower
    - <builtin>.len
    - key.replace
    - ParamKey.make
    - <builtin>.isinstance
    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: key.decode
    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: key.lower
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.replace
    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: ParamKey.make
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: dns.rdtypes.svcbbase.key_to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - ParamKey.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ParamKey.to_text
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - qstring
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: dns.rdtypes.svcbbase._escapify
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 1
    functionsReached:
    - <builtin>.chr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 101
    functionName: dns.rdtypes.svcbbase._unescape
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 4
    functionsReached:
    - c2.isdigit
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - c.encode
    - c3.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: dns.rdtypes.svcbbase._split
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - <builtin>.ord
    - items.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: items.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 163
    functionName: dns.rdtypes.svcbbase.Param.emptiness
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 171
    functionName: dns.rdtypes.svcbbase.GenericParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - value.encode
    - <builtin>.bytes
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 175
    functionName: dns.rdtypes.svcbbase.GenericParam.emptiness
    functionSourceFile: dns.rdtypes.svcbbase
    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:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 179
    functionName: dns.rdtypes.svcbbase.GenericParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.rdtypes.svcbbase.GenericParam.__init__
    - c.isdigit
    - <builtin>.len
    - <builtin>.int
    - c.encode
    - value.encode
    - c3.isdigit
    - <builtin>.bytes
    - dns.rdtypes.svcbbase._unescape
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bytes
    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: 185
    functionName: dns.rdtypes.svcbbase.GenericParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    - <builtin>.bytearray
    - <builtin>.isinstance
    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 0x7fc9c5be2490>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 189
    functionName: dns.rdtypes.svcbbase.GenericParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - dns.rdtypes.svcbbase.GenericParam.__init__
    - <builtin>.len
    - value.encode
    - parser.get_bytes
    - <builtin>.bytes
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bytes
    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 0x7fc9c6381ca0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 196
    functionName: dns.rdtypes.svcbbase.GenericParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - keys
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 202
    functionName: dns.rdtypes.svcbbase.MandatoryParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - key.decode
    - <builtin>.sorted
    - key.lower
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.len
    - key.replace
    - ParamKey.make
    - <builtin>.tuple
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 215
    functionName: dns.rdtypes.svcbbase.MandatoryParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - key.decode
    - <builtin>.sorted
    - key.lower
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.len
    - key.replace
    - k.encode
    - ParamKey.make
    - value.split
    - <builtin>.tuple
    - dns.rdtypes.svcbbase.MandatoryParam.__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: k.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.split
    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: 2
    functionLinenumber: 219
    functionName: dns.rdtypes.svcbbase.MandatoryParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - ParamKey.to_text
    - dns.rdtypes.svcbbase.key_to_text
    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 0x7fc9c5e66670>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 223
    functionName: dns.rdtypes.svcbbase.MandatoryParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - <builtin>.sorted
    - key.decode
    - key.lower
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.len
    - keys.append
    - parser.get_uint16
    - key.replace
    - ParamKey.make
    - <builtin>.tuple
    - dns.rdtypes.svcbbase.MandatoryParam.__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: keys.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: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59a53a0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 234
    functionName: dns.rdtypes.svcbbase.MandatoryParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ids
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 241
    functionName: dns.rdtypes.svcbbase.ALPNParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - dns.rdata.Rdata._as_tuple
    - <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: 2
    functionLinenumber: -1
    functionName: dns.rdtypes.svcbbase.ALPNParam.__init__.<lambda1>
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - value.encode
    - <builtin>.bytes
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 247
    functionName: dns.rdtypes.svcbbase.ALPNParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.rdtypes.svcbbase._split
    - dns.rdtypes.svcbbase.ALPNParam.__init__
    - c.isdigit
    - dns.rdata.Rdata._as_tuple
    - <builtin>.len
    - <builtin>.ord
    - items.append
    - <builtin>.int
    - c.encode
    - c3.isdigit
    - dns.rdtypes.svcbbase._unescape
    - <builtin>.tuple
    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: 250
    functionName: dns.rdtypes.svcbbase.ALPNParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - qstring.encode
    - dns.rdtypes.svcbbase._escapify
    - value.encode
    - dns.rdata._escapify
    - <builtin>.chr
    - <builtin>.bytearray
    - <builtin>.isinstance
    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 0x7fc9c5bbbe20>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 255
    functionName: dns.rdtypes.svcbbase.ALPNParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - dns.rdtypes.svcbbase.ALPNParam.__init__
    - dns.rdata.Rdata._as_tuple
    - parser.get_counted_bytes
    - <builtin>.tuple
    - ids.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: ids.append
    functionSourceFile: <builtin>
    functionUses: 1
    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 0x7fc9c59e8a60>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 262
    functionName: dns.rdtypes.svcbbase.ALPNParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 275
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.emptiness
    functionSourceFile: dns.rdtypes.svcbbase
    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:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 279
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 285
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    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 0x7fc9c5a95bb0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 289
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    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 0x7fc9c5a95b80>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 294
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    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
    - port
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 300
    functionName: dns.rdtypes.svcbbase.PortParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_uint16
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 304
    functionName: dns.rdtypes.svcbbase.PortParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.int
    - dns.rdtypes.svcbbase.PortParam.__init__
    - dns.rdata.Rdata._as_uint16
    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: 308
    functionName: dns.rdtypes.svcbbase.PortParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    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 0x7fc9c5a954c0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 312
    functionName: dns.rdtypes.svcbbase.PortParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - parser.get_uint16
    - dns.rdtypes.svcbbase.PortParam.__init__
    - dns.rdata.Rdata._as_uint16
    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 0x7fc9c64f3ac0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 316
    functionName: dns.rdtypes.svcbbase.PortParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - addresses
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 322
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - dns.rdata.Rdata._as_tuple
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 328
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - value.split
    - dns.rdata.Rdata._as_tuple
    - <builtin>.tuple
    - dns.rdtypes.svcbbase.IPv4HintParam.__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: 332
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b220d0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 336
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - dns.rdtypes.svcbbase.IPv4HintParam.__init__
    - <builtin>.len
    - dns.rdata.Rdata._as_tuple
    - parser.get_bytes
    - <builtin>.tuple
    - dns.ipv4.inet_ntoa
    - addresses.append
    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 0x7fc9c5860400>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 343
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - part.isdigit
    - file.write
    - text.encode
    - btext.split
    - <builtin>.len
    - struct.pack
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - addresses
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 350
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - dns.rdata.Rdata._as_tuple
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 356
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - value.split
    - dns.rdtypes.svcbbase.IPv6HintParam.__init__
    - <builtin>.tuple
    - dns.rdata.Rdata._as_tuple
    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: 360
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6405df0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 364
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - dns.rdata.Rdata._as_tuple
    - <builtin>.len
    - _leading_zero.match
    - chunks.append
    - binascii.hexlify
    - dns.ipv6.inet_ntoa
    - parser.get_bytes
    - <builtin>.range
    - addresses.append
    - m.group
    - dns.rdtypes.svcbbase.IPv6HintParam.__init__
    - <builtin>.tuple
    - dns.ipv4.inet_ntoa
    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 0x7fc9c6405340>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 371
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - file.write
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ech
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 378
    functionName: dns.rdtypes.svcbbase.ECHParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - value.encode
    - <builtin>.bytes
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 382
    functionName: dns.rdtypes.svcbbase.ECHParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - base64.b64decode
    - <builtin>.len
    - dns.rdtypes.svcbbase.ECHParam.__init__
    - value.encode
    - <builtin>.bytes
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 388
    functionName: dns.rdtypes.svcbbase.ECHParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - base64.b64encode
    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 0x7fc9c59d5df0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 393
    functionName: dns.rdtypes.svcbbase.ECHParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - <builtin>.len
    - dns.rdtypes.svcbbase.ECHParam.__init__
    - value.encode
    - parser.get_bytes
    - <builtin>.bytes
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bytes
    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 0x7fc9c59d5310>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 397
    functionName: dns.rdtypes.svcbbase.ECHParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 408
    functionName: dns.rdtypes.svcbbase.OHTTPParam.emptiness
    functionSourceFile: dns.rdtypes.svcbbase
    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:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 412
    functionName: dns.rdtypes.svcbbase.OHTTPParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 418
    functionName: dns.rdtypes.svcbbase.OHTTPParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    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 0x7fc9c5d4b370>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 422
    functionName: dns.rdtypes.svcbbase.OHTTPParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    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 0x7fc9c5d4b2b0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 427
    functionName: dns.rdtypes.svcbbase.OHTTPParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - params
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 443
    functionName: dns.rdtypes.svcbbase._validate_and_define
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 1
    functionsReached:
    - key.decode
    - key.lower
    - c.isdigit
    - dns.rdtypes.svcbbase._validate_key
    - contextlib.contextmanager
    - key.replace
    - cls.emptiness
    - <builtin>.isinstance
    - c2.isdigit
    - cls.from_wire_parser
    - <builtin>.int
    - dns.wire.Parser
    - _class_for_key.get
    - <builtin>.len
    - c.encode
    - c3.isdigit
    - dns.rdtypes.svcbbase._unescape
    - ParamKey.make
    - cls.from_value
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _class_for_key.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: cls.emptiness
    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: cls.from_value
    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: cls.from_wire_parser
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - priority
    - target
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 469
    functionName: dns.rdtypes.svcbbase.SVCBBase.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - params.get
    - ParamKey.make
    - dns.immutable.Dict
    - <builtin>.isinstance
    - params.items
    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: params.items
    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: params.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c58a3dc0>
    - <ast.Constant object at 0x7fc9c58a31c0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 492
    functionName: dns.rdtypes.svcbbase.SVCBBase.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - value.to_text
    - params.append
    - <builtin>.len
    - ParamKey.to_text
    - dns.rdtypes.svcbbase.key_to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.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: value.to_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 3
    IfCount: 8
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63afc70>
    - <ast.Constant object at 0x7fc9c5792160>
    - <ast.Constant object at 0x7fc9c5792790>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 509
    functionName: dns.rdtypes.svcbbase.SVCBBase.from_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - key.decode
    - dns.rdtypes.svcbbase.SVCBBase.__init__
    - key.lower
    - c.isdigit
    - dns.rdtypes.svcbbase._validate_key
    - contextlib.contextmanager
    - tok.unget
    - key.replace
    - cls.emptiness
    - tok.get
    - <builtin>.isinstance
    - c2.isdigit
    - <builtin>.super
    - params.get
    - token.value.find
    - dns.rdtypes.svcbbase._validate_and_define
    - cls.from_wire_parser
    - tok.get_uint16
    - <builtin>.int
    - token.is_eol_or_eof
    - dns.immutable.Dict
    - params.items
    - tok.get_name
    - dns.wire.Parser
    - _class_for_key.get
    - <builtin>.len
    - c.encode
    - c3.isdigit
    - dns.rdtypes.svcbbase._unescape
    - ParamKey.make
    - cls.from_value
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.value.find
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bde850>
    - <ast.Constant object at 0x7fc9c5bdeca0>
    - <ast.Constant object at 0x7fc9c5bde820>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 550
    functionName: dns.rdtypes.svcbbase.SVCBBase._to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.renderer.prefixed_length
    - <builtin>.sorted
    - output.write
    - value.to_wire
    - output.tell
    - file.write
    - struct.pack
    - length.to_bytes
    - output.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: value.to_wire
    functionSourceFile: <builtin>
    functionUses: 1
    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 0x7fc9c62e0040>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 562
    functionName: dns.rdtypes.svcbbase.SVCBBase.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - dns.rdtypes.svcbbase.SVCBBase.__init__
    - parser.get_name
    - <builtin>.super
    - _class_for_key.get
    - parser.get_uint16
    - params.get
    - pcls.from_wire_parser
    - parser.restrict_to
    - dns.immutable.Dict
    - ParamKey.make
    - params.items
    - <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: pcls.from_wire_parser
    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: 582
    functionName: dns.rdtypes.svcbbase.SVCBBase._processing_priority
    functionSourceFile: dns.rdtypes.svcbbase
    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:
    - cls
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 586
    functionName: dns.rdtypes.svcbbase.SVCBBase._processing_order
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - dns.rdtypes.util.priority_processing_order
    - <builtin>.list
    - ordered.extend
    - <builtin>.len
    - by_priority.keys
    - collections.defaultdict
    - random.shuffle
    - rdata._processing_priority
    - dns.rdtypes.util._priority_table
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - iterable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 218
    functionName: dns.rdtypes.util.priority_processing_order
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.len
    - ordered.extend
    - by_priority.keys
    - collections.defaultdict
    - random.shuffle
    - rdata._processing_priority
    - dns.rdtypes.util._priority_table
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.util
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c57f6610>
    argNames:
    - self
    - type
    - gateway
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 38
    functionName: dns.rdtypes.util.Gateway.__init__
    functionSourceFile: dns.rdtypes.util
    functionUses: 2
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - dns.rdtypes.util.Gateway._check
    - <builtin>.ord
    - <builtin>.int
    - dns.rdata.Rdata._as_uint8
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    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: 2
    functionLinenumber: 47
    functionName: dns.rdtypes.util.Gateway._check
    functionSourceFile: dns.rdtypes.util
    functionUses: 3
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - gateway_type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: dns.rdtypes.util.Gateway._invalid_type
    functionSourceFile: dns.rdtypes.util
    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 0x7fc9c5f20280>
    - <ast.Constant object at 0x7fc9c5f20820>
    argNames:
    - self
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: dns.rdtypes.util.Gateway.to_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5c910a0>
    - <ast.Constant object at 0x7fc9c5c91bb0>
    - <ast.Constant object at 0x7fc9c5c91160>
    argNames:
    - cls
    - gateway_type
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 78
    functionName: dns.rdtypes.util.Gateway.from_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdtypes.util.Gateway.__init__
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - dns.rdtypes.util.Gateway._check
    - tok.get_string
    - <builtin>.ord
    - <builtin>.int
    - tok.get_name
    - dns.rdata.Rdata._as_uint8
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59cd7c0>
    - <ast.Constant object at 0x7fc9c59cdbe0>
    - <ast.Constant object at 0x7fc9c59cd8e0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 92
    functionName: dns.rdtypes.util.Gateway.to_wire
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - file.write
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c62e06d0>
    argNames:
    - cls
    - gateway_type
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 110
    functionName: dns.rdtypes.util.Gateway.from_wire_parser
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdtypes.util.Gateway.__init__
    - <builtin>.range
    - dns.ipv4.inet_aton
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - dns.rdtypes.util.Gateway._check
    - _leading_zero.match
    - binascii.hexlify
    - <builtin>.ord
    - <builtin>.int
    - dns.rdata.Rdata._as_uint8
    - part.isdigit
    - parser.get_name
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.inet_ntoa
    - parser.get_bytes
    - dns.ipv4.inet_ntoa
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bde550>
    argNames:
    - self
    - windows
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 129
    functionName: dns.rdtypes.util.Bitmap.__init__
    functionSourceFile: dns.rdtypes.util
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 147
    functionName: dns.rdtypes.util.Bitmap.to_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - RdataType.to_text
    - dns.rdatatype.to_text
    - bits.append
    - <builtin>.range
    - dns.rdatatype.RdataType.make
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.append
    functionSourceFile: <builtin>
    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:
    - cls
    - tok
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 160
    functionName: dns.rdtypes.util.Bitmap.from_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - tok.get_remaining
    - token.unescape
    - <builtin>.len
    - dns.rdtypes.util.Bitmap.from_rdtypes
    - dns.rdtypes.util.Bitmap.__init__
    - <builtin>.bytes
    - rdtypes.append
    - windows.append
    - RdataType.from_text
    - <builtin>.bytearray
    - <builtin>.isinstance
    - dns.rdatatype.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.get_remaining
    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: token.unescape
    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: rdtypes.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - rdtypes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 170
    functionName: dns.rdtypes.util.Bitmap.from_rdtypes
    functionSourceFile: dns.rdtypes.util
    functionUses: 1
    functionsReached:
    - <builtin>.sorted
    - <builtin>.len
    - dns.rdtypes.util.Bitmap.__init__
    - <builtin>.bytes
    - windows.append
    - <builtin>.bytearray
    - <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: windows.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 196
    functionName: dns.rdtypes.util.Bitmap.to_wire
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 202
    functionName: dns.rdtypes.util.Bitmap.from_wire_parser
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - parser.remaining
    - <builtin>.len
    - dns.rdtypes.util.Bitmap.__init__
    - windows.append
    - parser.get_counted_bytes
    - <builtin>.isinstance
    - parser.get_uint8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - items
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 211
    functionName: dns.rdtypes.util._priority_table
    functionSourceFile: dns.rdtypes.util
    functionUses: 8
    functionsReached:
    - collections.defaultdict
    - rdata._processing_priority
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: rdata._processing_priority
    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: by_priority.keys
    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: ordered.extend
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - iterable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 234
    functionName: dns.rdtypes.util.weighted_processing_order
    functionSourceFile: dns.rdtypes.util
    functionUses: 2
    functionsReached:
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.len
    - <builtin>.sum
    - ordered.append
    - by_priority.keys
    - rdata._processing_weight
    - random.uniform
    - collections.defaultdict
    - <builtin>.enumerate
    - rdata._processing_priority
    - dns.rdtypes.util._priority_table
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rdata._processing_weight
    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: random.uniform
    functionSourceFile: random
    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: ordered.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - formatted
    - num_chunks
    - chunk_size
    - separator
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 258
    functionName: dns.rdtypes.util.parse_formatted_hex
    functionSourceFile: dns.rdtypes.util
    functionUses: 8
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    - <builtin>.int
    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: dns._tls_util
    functionSourceFile: dns._tls_util
    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: os.path.isfile
    functionSourceFile: os
    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: os.path.isdir
    functionSourceFile: os
    functionUses: 7
    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: dns.resolver
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: dns.resolver.NXDOMAIN.__init__
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a32eb0>
    argNames:
    - self
    - qnames
    - responses
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: dns.resolver.NXDOMAIN._check_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.dict
    linkageType: pythonLinkage
    raised:
    - AttributeError
    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: 79
    functionName: dns.resolver.NXDOMAIN.__str__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.map
    - <builtin>.super
    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: 1
    functionLinenumber: 91
    functionName: dns.resolver.NXDOMAIN.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - response.canonical_name
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response.canonical_name
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - e_nx
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 107
    functionName: dns.resolver.NXDOMAIN.__add__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.NXDOMAIN.__init__
    - e_nx.kwargs.get
    - <builtin>.super
    - <builtin>.list
    - <builtin>.dict
    - qnames0.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: e_nx.kwargs.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: qnames0.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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: dns.resolver.NXDOMAIN.qnames
    functionSourceFile: dns.resolver
    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: 126
    functionName: dns.resolver.NXDOMAIN.responses
    functionSourceFile: dns.resolver
    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
    - qname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 134
    functionName: dns.resolver.NXDOMAIN.response
    functionSourceFile: dns.resolver
    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:
    - errors
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 155
    functionName: dns.resolver._errors_to_text
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached:
    - texts.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: texts.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: dns.resolver.LifetimeTimeout.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 175
    functionName: dns.resolver.LifetimeTimeout._fmt_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - texts.append
    - dns.resolver._errors_to_text
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 196
    functionName: dns.resolver.NoAnswer.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 199
    functionName: dns.resolver.NoAnswer._fmt_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    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: 0
    functionLinenumber: 202
    functionName: dns.resolver.NoAnswer.response
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 221
    functionName: dns.resolver.NoNameservers.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 224
    functionName: dns.resolver.NoNameservers._fmt_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - texts.append
    - dns.resolver._errors_to_text
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e23c70>
    - <ast.Constant object at 0x7fc9c5e23a60>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    - response
    - nameserver
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 263
    functionName: dns.resolver.Answer.__init__
    functionSourceFile: dns.resolver
    functionUses: 8
    functionsReached:
    - response.resolve_chaining
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response.resolve_chaining
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 285
    functionName: dns.resolver.Answer.__getattr__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - AttributeError
    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: 300
    functionName: dns.resolver.Answer.__len__
    functionSourceFile: dns.resolver
    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: 303
    functionName: dns.resolver.Answer.__iter__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 306
    functionName: dns.resolver.Answer.__getitem__
    functionSourceFile: dns.resolver
    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
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 311
    functionName: dns.resolver.Answer.__delitem__
    functionSourceFile: dns.resolver
    functionUses: 0
    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 0x7fc9c639cf10>
    - <ast.Constant object at 0x7fc9c639c490>
    - <ast.Constant object at 0x7fc9c639cac0>
    argNames:
    - cls
    - v6
    - v4
    - add_empty
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 331
    functionName: dns.resolver.HostAnswers.make
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c59c9280>
    argNames:
    - self
    - family
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 346
    functionName: dns.resolver.HostAnswers.addresses_and_families
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.resolver.HostAnswers.addresses_and_families
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c6338640>
    argNames:
    - self
    - family
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 365
    functionName: dns.resolver.HostAnswers.addresses
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.HostAnswers.addresses_and_families
    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: 369
    functionName: dns.resolver.HostAnswers.canonical_name
    functionSourceFile: dns.resolver
    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 0x7fc9c68e9160>
    - <ast.Constant object at 0x7fc9c63f9280>
    argNames:
    - self
    - hits
    - misses
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 379
    functionName: dns.resolver.CacheStatistics.__init__
    functionSourceFile: dns.resolver
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 383
    functionName: dns.resolver.CacheStatistics.reset
    functionSourceFile: dns.resolver
    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: 387
    functionName: dns.resolver.CacheStatistics.clone
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.resolver.CacheStatistics.__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: 392
    functionName: dns.resolver.CacheBase.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - threading.Lock
    - dns.resolver.CacheStatistics.__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: 1
    functionLinenumber: 396
    functionName: dns.resolver.CacheBase.reset_statistics
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.CacheStatistics.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: 401
    functionName: dns.resolver.CacheBase.hits
    functionSourceFile: dns.resolver
    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: 406
    functionName: dns.resolver.CacheBase.misses
    functionSourceFile: dns.resolver
    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: 2
    functionLinenumber: 411
    functionName: dns.resolver.CacheBase.get_statistics_snapshot
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.CacheStatistics.clone
    - dns.resolver.CacheStatistics.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5ab39a0>
    argNames:
    - self
    - cleaning_interval
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 428
    functionName: dns.resolver.Cache.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - time.time
    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: 438
    functionName: dns.resolver.Cache._maybe_clean
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached:
    - keys_to_delete.append
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 452
    functionName: dns.resolver.Cache.get
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - keys_to_delete.append
    - dns.resolver.Cache._maybe_clean
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 472
    functionName: dns.resolver.Cache.put
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - keys_to_delete.append
    - dns.resolver.Cache._maybe_clean
    - time.time
    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 0x7fc9c6362bb0>
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 485
    functionName: dns.resolver.Cache.flush
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 507
    functionName: dns.resolver.LRUCacheNode.__init__
    functionSourceFile: dns.resolver
    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
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 514
    functionName: dns.resolver.LRUCacheNode.link_after
    functionSourceFile: dns.resolver
    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: 520
    functionName: dns.resolver.LRUCacheNode.unlink
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61c5ee0>
    argNames:
    - self
    - max_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 535
    functionName: dns.resolver.LRUCache.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.LRUCache.set_max_size
    - dns.resolver.LRUCacheNode.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - max_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 547
    functionName: dns.resolver.LRUCache.set_max_size
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 552
    functionName: dns.resolver.LRUCache.get
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - node.link_after
    - node.unlink
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.unlink
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.link_after
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 580
    functionName: dns.resolver.LRUCache.get_hits_for_key
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 589
    functionName: dns.resolver.LRUCache.put
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - gnode.unlink
    - dns.resolver.LRUCacheNode.__init__
    - <builtin>.len
    - dns.resolver.LRUCacheNode.link_after
    - dns.resolver.LRUCacheNode.unlink
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gnode.unlink
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    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 0x7fc9c58f5700>
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 611
    functionName: dns.resolver.LRUCache.flush
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - gnode.unlink
    - node.unlink
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 8
    argDefaultValues: []
    argNames:
    - self
    - resolver
    - qname
    - rdtype
    - rdclass
    - tcp
    - raise_on_no_answer
    - search
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 648
    functionName: dns.resolver._Resolution.__init__
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - dns.rdatatype.is_metatype
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - qnames_to_try.append
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - qnames_to_try.insert
    - qname.concatenate
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - qname.is_absolute
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.rdataclass.is_metaclass
    - labels.extend
    - dns.resolver.BaseResolver._get_qnames_to_try
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - qname
    - search
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1087
    functionName: dns.resolver.BaseResolver._get_qnames_to_try
    functionSourceFile: dns.resolver
    functionUses: 8
    functionsReached:
    - qnames_to_try.insert
    - qname.concatenate
    - qname.is_absolute
    - <builtin>.len
    - qnames_to_try.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 4
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 685
    functionName: dns.resolver._Resolution.next_request
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.entropy.random_16
    - request.use_edns
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.message.Message.want_dnssec
    - part.isdigit
    - dns.name.Name.__init__
    - btext.split
    - <builtin>.len
    - labels.extend
    - dns.nameserver.DoHNameserver
    - _v4_ending.match
    - os.urandom
    - labels.append
    - enriched_nameservers.append
    - <builtin>.range
    - label.encode
    - dns.name.from_unicode
    - dns.message.Message.__init__
    - dns.name.IDNA2003Codec.encode
    - m.group
    - dns.rdatatype.RdataType.make
    - answer.response.rcode
    - dns.rrset.from_rdata
    - btext.startswith
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - nameserver_ports.get
    - r.read
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - urllib.parse.urlparse
    - random.shuffle
    - dns.flags.Flag
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.message.make_query
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.inet.is_address
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - request.use_tsig
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rrset.RRset.__init__
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - NXDOMAIN
    - NoAnswer
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: answer.response.rcode
    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: request.use_tsig
    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: request.use_edns
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - nameservers
    - nameserver_ports
    - default_port
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1186
    functionName: dns.resolver.BaseResolver._enrich_nameservers
    functionSourceFile: dns.resolver
    functionUses: 9
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - enriched_nameservers.append
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - btext.startswith
    - btext.endswith
    - dns.nameserver.Do53Nameserver
    - urllib.parse.urlparse
    - <builtin>.ord
    - <builtin>.int
    - nameserver_ports.get
    - dns.inet.is_address
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns.nameserver.DoHNameserver
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 760
    functionName: dns.resolver._Resolution.next_nameserver
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - <builtin>.len
    - <builtin>.min
    linkageType: pythonLinkage
    raised:
    - NoNameservers
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 12
    IfCount: 11
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - ex
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 781
    functionName: dns.resolver._Resolution.query_result
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - <builtin>.str
    - Rcode.to_text
    - response.resolve_chaining
    - time.time
    - dns.resolver.Answer.__init__
    - dns.rcode.to_text
    - response.rcode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - NoAnswer
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response.rcode
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5cb0f40>
    - <ast.Constant object at 0x7fc9c5cb0160>
    argNames:
    - self
    - filename
    - configure
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 934
    functionName: dns.resolver.BaseResolver.__init__
    functionSourceFile: dns.resolver
    functionUses: 13
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    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: 5
    functionLinenumber: 955
    functionName: dns.resolver.BaseResolver.reset
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - dns.name.Name
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    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: 3
    functionLinenumber: 1052
    functionName: dns.resolver.BaseResolver.read_registry
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.super
    - dns.win32util.get_dns_info
    - dns.win32util.DnsInfo.__init__
    - dns.win32util._WMIGetter.__init__
    - getter.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 4
    IfCount: 12
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - f
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 981
    functionName: dns.resolver.BaseResolver.read_resolv_conf
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - opt.split
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - nameservers.append
    - <builtin>.ord
    - <builtin>.int
    - l.split
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - NoResolverConfiguration
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.gethostname
    functionSourceFile: socket
    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: l.split
    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: nameservers.append
    functionSourceFile: <builtin>
    functionUses: 22
    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 0x7fc9c6481a60>
    - <ast.Constant object at 0x7fc9c64814f0>
    - <ast.Attribute object at 0x7fc9c6481ca0>
    - <ast.Constant object at 0x7fc9c6481d00>
    argNames:
    - self
    - edns
    - ednsflags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1144
    functionName: dns.resolver.BaseResolver.use_edns
    functionSourceFile: ''
    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: opt.split
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 239
    functionName: dns.win32util.get_dns_info
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached:
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.super
    - dns.win32util.DnsInfo.__init__
    - dns.win32util._WMIGetter.__init__
    - getter.get
    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 0x7fc9c5acfe80>
    - <ast.Constant object at 0x7fc9c5acf370>
    argNames:
    - self
    - start
    - lifetime
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1063
    functionName: dns.resolver.BaseResolver._compute_timeout
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - <builtin>.min
    - time.time
    linkageType: pythonLinkage
    raised:
    - LifetimeTimeout
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: qname.is_absolute
    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: qnames_to_try.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: qname.concatenate
    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: qnames_to_try.insert
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5fdfc70>
    - <ast.Attribute object at 0x7fc9c5fdfdc0>
    argNames:
    - self
    - keyring
    - keyname
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1128
    functionName: dns.resolver.BaseResolver.use_tsig
    functionSourceFile: dns.resolver
    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
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1177
    functionName: dns.resolver.BaseResolver.set_flags
    functionSourceFile: dns.resolver
    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: nameserver_ports.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: dns.nameserver.Do53Nameserver
    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: dns.nameserver.DoHNameserver
    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: enriched_nameservers.append
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - nameservers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1228
    functionName: dns.resolver.BaseResolver.nameservers
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - enriched_nameservers.append
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - btext.startswith
    - btext.endswith
    - dns.nameserver.Do53Nameserver
    - urllib.parse.urlparse
    - dns.resolver.BaseResolver._enrich_nameservers
    - <builtin>.ord
    - <builtin>.int
    - nameserver_ports.get
    - dns.inet.is_address
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns.nameserver.DoHNameserver
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 10
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c59904f0>
    - <ast.Attribute object at 0x7fc9c5990970>
    - <ast.Constant object at 0x7fc9c5990a00>
    - <ast.Constant object at 0x7fc9c5990fa0>
    - <ast.Constant object at 0x7fc9c5990460>
    - <ast.Constant object at 0x7fc9c5990250>
    - <ast.Constant object at 0x7fc9c5990a60>
    - <ast.Constant object at 0x7fc9c59909a0>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1246
    functionName: dns.resolver.Resolver.resolve
    functionSourceFile: dns.resolver
    functionUses: 6
    functionsReached:
    - dns.rdatatype.is_metatype
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.entropy.random_16
    - time.sleep
    - qname.concatenate
    - request.use_edns
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.message.Message.want_dnssec
    - part.isdigit
    - dns.name.Name.__init__
    - <builtin>.min
    - btext.split
    - <builtin>.len
    - dns.rdataclass.is_metaclass
    - labels.extend
    - dns.nameserver.DoHNameserver
    - _v4_ending.match
    - os.urandom
    - labels.append
    - enriched_nameservers.append
    - <builtin>.range
    - label.encode
    - response.rcode
    - dns.message.Message.__init__
    - m.group
    - dns.rdatatype.RdataType.make
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - answer.response.rcode
    - dns.resolver.BaseResolver._compute_timeout
    - btext.startswith
    - dns.rrset.from_rdata
    - response.resolve_chaining
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - qname.is_absolute
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - nameserver_ports.get
    - r.read
    - dns.resolver._Resolution.next_nameserver
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - dns.resolver.BaseResolver._get_qnames_to_try
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - qnames_to_try.append
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - Rcode.to_text
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - system_random.randrange
    - dns.resolver.Answer.__init__
    - <builtin>.bytes
    - time.time
    - dns.resolver._Resolution.query_result
    - urllib.parse.urlparse
    - random.shuffle
    - dns.flags.Flag
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.message.make_query
    - dns.rrset.from_rdata_list
    - dns.rcode.to_text
    - <builtin>.bytearray
    - dns.inet.is_address
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - <builtin>.isinstance
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - qnames_to_try.insert
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - nameserver.query
    - request.use_tsig
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.resolver._Resolution.__init__
    - dns.resolver._Resolution.next_request
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rrset.RRset.__init__
    - canonical.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: time.sleep
    functionSourceFile: time
    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: nameserver.query
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5ee0d30>
    - <ast.Attribute object at 0x7fc9c5ee0cd0>
    - <ast.Constant object at 0x7fc9c5ee0100>
    - <ast.Constant object at 0x7fc9c5ee0fa0>
    - <ast.Constant object at 0x7fc9c5ee0640>
    - <ast.Constant object at 0x7fc9c5ee0400>
    - <ast.Constant object at 0x7fc9c5ee08b0>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1348
    functionName: dns.resolver.Resolver.query
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.rdatatype.is_metatype
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.entropy.random_16
    - time.sleep
    - qname.concatenate
    - request.use_edns
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.message.Message.want_dnssec
    - part.isdigit
    - dns.name.Name.__init__
    - <builtin>.min
    - btext.split
    - <builtin>.len
    - dns.rdataclass.is_metaclass
    - labels.extend
    - dns.nameserver.DoHNameserver
    - _v4_ending.match
    - os.urandom
    - labels.append
    - enriched_nameservers.append
    - <builtin>.range
    - label.encode
    - response.rcode
    - dns.message.Message.__init__
    - m.group
    - dns.rdatatype.RdataType.make
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - answer.response.rcode
    - dns.resolver.BaseResolver._compute_timeout
    - btext.startswith
    - dns.rrset.from_rdata
    - response.resolve_chaining
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - qname.is_absolute
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - nameserver_ports.get
    - r.read
    - dns.resolver._Resolution.next_nameserver
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - dns.resolver.BaseResolver._get_qnames_to_try
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - qnames_to_try.append
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - Rcode.to_text
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - system_random.randrange
    - dns.resolver.Answer.__init__
    - <builtin>.bytes
    - time.time
    - dns.resolver._Resolution.query_result
    - urllib.parse.urlparse
    - random.shuffle
    - dns.flags.Flag
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.message.make_query
    - dns.rrset.from_rdata_list
    - dns.rcode.to_text
    - <builtin>.bytearray
    - dns.resolver.Resolver.resolve
    - dns.inet.is_address
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - warnings.warn
    - <builtin>.isinstance
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - qnames_to_try.insert
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - nameserver.query
    - request.use_tsig
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.resolver._Resolution.__init__
    - dns.resolver._Resolution.next_request
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rrset.RRset.__init__
    - canonical.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: warnings.warn
    functionSourceFile: warnings
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - ipaddr
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1383
    functionName: dns.resolver.Resolver.resolve_address
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.rdatatype.is_metatype
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.entropy.random_16
    - time.sleep
    - qname.concatenate
    - request.use_edns
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.message.Message.want_dnssec
    - part.isdigit
    - dns.name.Name.__init__
    - <builtin>.min
    - btext.split
    - <builtin>.len
    - modified_kwargs.update
    - dns.rdataclass.is_metaclass
    - labels.extend
    - dns.nameserver.DoHNameserver
    - _v4_ending.match
    - os.urandom
    - labels.append
    - enriched_nameservers.append
    - <builtin>.range
    - label.encode
    - response.rcode
    - dns.name.from_unicode
    - dns.message.Message.__init__
    - dns.name.IDNA2003Codec.encode
    - m.group
    - dns.rdatatype.RdataType.make
    - answer.response.rcode
    - dns.resolver.BaseResolver._compute_timeout
    - btext.startswith
    - dns.rrset.from_rdata
    - response.resolve_chaining
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - qname.is_absolute
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - nameserver_ports.get
    - r.read
    - dns.resolver._Resolution.next_nameserver
    - _colon_colon_end.match
    - dns.reversename.from_address
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - dns.resolver.BaseResolver._get_qnames_to_try
    - _colon_colon_start.match
    - address.startswith
    - dns.ipv6.inet_aton
    - text.encode
    - qnames_to_try.append
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - Rcode.to_text
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - dns.resolver.Answer.__init__
    - time.time
    - dns.resolver._Resolution.query_result
    - urllib.parse.urlparse
    - random.shuffle
    - dns.flags.Flag
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.message.make_query
    - dns.rrset.from_rdata_list
    - dns.rcode.to_text
    - dns.ipv6.is_mapped
    - <builtin>.bytearray
    - dns.resolver.Resolver.resolve
    - dns.inet.is_address
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - <builtin>.reversed
    - <builtin>.isinstance
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - qnames_to_try.insert
    - <builtin>.super
    - binascii.hexlify
    - dns.rdtypes.ANY.OPT.OPT
    - nameserver.query
    - request.use_tsig
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.resolver._Resolution.__init__
    - dns.resolver._Resolution.next_request
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rrset.RRset.__init__
    - canonical.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: modified_kwargs.update
    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:
    - <ast.Name object at 0x7fc9c63d1550>
    - <ast.Name object at 0x7fc9c5a8c760>
    argNames:
    - text
    - v4_origin
    - v6_origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 31
    functionName: dns.reversename.from_address
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached:
    - _colon_colon_start.match
    - address.startswith
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - m.group
    - btext.startswith
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - btext.endswith
    - binascii.hexlify
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.ipv6.is_mapped
    - dns.name._validate_labels
    - part.isdigit
    - dns.name.Name.__init__
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - labels.extend
    - canonical.append
    - <builtin>.tuple
    - <builtin>.reversed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c68ee790>
    argNames:
    - self
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1407
    functionName: dns.resolver.Resolver.resolve_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.rdatatype.is_metatype
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - modified_kwargs.pop
    - dns.entropy.random_16
    - time.sleep
    - qname.concatenate
    - request.use_edns
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.message.Message.want_dnssec
    - part.isdigit
    - dns.name.Name.__init__
    - <builtin>.min
    - btext.split
    - <builtin>.len
    - modified_kwargs.update
    - dns.rdataclass.is_metaclass
    - labels.extend
    - dns.nameserver.DoHNameserver
    - _v4_ending.match
    - os.urandom
    - labels.append
    - enriched_nameservers.append
    - <builtin>.range
    - label.encode
    - response.rcode
    - dns.name.from_unicode
    - dns.message.Message.__init__
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - answer.response.rcode
    - m.group
    - dns.resolver.BaseResolver._compute_timeout
    - btext.startswith
    - dns.rrset.from_rdata
    - response.resolve_chaining
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - qname.is_absolute
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - nameserver_ports.get
    - r.read
    - dns.resolver._Resolution.next_nameserver
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - dns.resolver.BaseResolver._get_qnames_to_try
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - qnames_to_try.append
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - Rcode.to_text
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - system_random.randrange
    - dns.resolver.Answer.__init__
    - <builtin>.bytes
    - time.time
    - dns.resolver._Resolution.query_result
    - urllib.parse.urlparse
    - random.shuffle
    - dns.flags.Flag
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.message.make_query
    - dns.rrset.from_rdata_list
    - dns.rcode.to_text
    - <builtin>.bytearray
    - dns.resolver.Resolver.resolve
    - dns.inet.is_address
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - <builtin>.isinstance
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - qnames_to_try.insert
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - nameserver.query
    - request.use_tsig
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.resolver.HostAnswers.make
    - dns.resolver._Resolution.__init__
    - dns.resolver._Resolution.next_request
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rrset.RRset.__init__
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    - NoAnswer
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: modified_kwargs.pop
    functionSourceFile: <builtin>
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1474
    functionName: dns.resolver.Resolver.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.rdatatype.is_metatype
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.entropy.random_16
    - time.sleep
    - qname.concatenate
    - request.use_edns
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.message.Message.want_dnssec
    - part.isdigit
    - dns.name.Name.__init__
    - <builtin>.min
    - btext.split
    - <builtin>.len
    - dns.rdataclass.is_metaclass
    - labels.extend
    - dns.nameserver.DoHNameserver
    - _v4_ending.match
    - os.urandom
    - labels.append
    - enriched_nameservers.append
    - <builtin>.range
    - label.encode
    - response.rcode
    - dns.message.Message.__init__
    - m.group
    - dns.rdatatype.RdataType.make
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - answer.response.rcode
    - dns.resolver.BaseResolver._compute_timeout
    - btext.startswith
    - dns.rrset.from_rdata
    - response.resolve_chaining
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - qname.is_absolute
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - nameserver_ports.get
    - r.read
    - dns.resolver._Resolution.next_nameserver
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - dns.resolver.BaseResolver._get_qnames_to_try
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - qnames_to_try.append
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - Rcode.to_text
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - system_random.randrange
    - dns.resolver.Answer.__init__
    - <builtin>.bytes
    - time.time
    - dns.resolver._Resolution.query_result
    - urllib.parse.urlparse
    - random.shuffle
    - dns.flags.Flag
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.message.make_query
    - dns.rrset.from_rdata_list
    - dns.rcode.to_text
    - <builtin>.bytearray
    - dns.resolver.Resolver.resolve
    - dns.inet.is_address
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - <builtin>.isinstance
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - qnames_to_try.insert
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - nameserver.query
    - request.use_tsig
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.resolver._Resolution.__init__
    - dns.resolver._Resolution.next_request
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rrset.RRset.__init__
    - canonical.append
    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 0x7fc9c6b6b520>
    argNames:
    - self
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1497
    functionName: dns.resolver.Resolver.try_ddr
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.rdatatype.is_metatype
    - c.isdigit
    - r.add
    - rr.params.get
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.entropy.random_16
    - time.sleep
    - qname.concatenate
    - request.use_edns
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.message.Message.want_dnssec
    - part.isdigit
    - dns.name.Name.__init__
    - <builtin>.min
    - btext.split
    - <builtin>.len
    - dns.rdataclass.is_metaclass
    - labels.extend
    - dns.nameserver.DoHNameserver
    - _v4_ending.match
    - os.urandom
    - dns.nameserver.DoQNameserver
    - labels.append
    - enriched_nameservers.append
    - <builtin>.range
    - label.encode
    - dns.nameserver.DoTNameserver
    - response.rcode
    - dns.name.from_unicode
    - dns.message.Message.__init__
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.query._remaining
    - answer.response.rcode
    - dns.resolver.BaseResolver._compute_timeout
    - m.group
    - btext.startswith
    - dns.rrset.from_rdata
    - response.resolve_chaining
    - path.startswith
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - qname.is_absolute
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - nameserver_ports.get
    - r.read
    - dns.resolver._Resolution.next_nameserver
    - _colon_colon_end.match
    - info.ddr_tls_check_sync
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - dns.resolver.BaseResolver._get_qnames_to_try
    - infos.append
    - _colon_colon_start.match
    - answer.rrset.processing_order
    - rr.target.to_text
    - dns.ipv6.inet_aton
    - text.encode
    - qnames_to_try.append
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - Rcode.to_text
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - system_random.randrange
    - dns.resolver.Answer.__init__
    - <builtin>.bytes
    - time.time
    - dns.resolver._Resolution.query_result
    - urllib.parse.urlparse
    - random.shuffle
    - dns.flags.Flag
    - dns._ddr._get_nameservers_sync
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.message.make_query
    - nameservers.append
    - dns.rrset.from_rdata_list
    - dns.rcode.to_text
    - <builtin>.bytearray
    - dns.resolver.Resolver.resolve
    - dns.inet.is_address
    - dns.name._validate_labels
    - os.getpid
    - dns._ddr._SVCBInfo.__init__
    - dns._ddr._extract_nameservers_from_svcb
    - typing.cast
    - <builtin>.tuple
    - <builtin>.isinstance
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - qnames_to_try.insert
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - param.value.endswith
    - nameserver.query
    - request.use_tsig
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - <builtin>.set
    - dns.resolver._Resolution.__init__
    - nameservers.extend
    - dns.resolver._Resolution.next_request
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rrset.RRset.__init__
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - answer
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 129
    functionName: dns._ddr._get_nameservers_sync
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - answer.rrset.processing_order
    - _v4_ending.match
    - rr.target.to_text
    - dns.ipv6.inet_aton
    - dns.nameserver.DoQNameserver
    - text.encode
    - rr.params.get
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.nameserver.DoTNameserver
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - path.startswith
    - param.value.endswith
    - urllib.parse.urlparse
    - <builtin>.set
    - <builtin>.ord
    - nameservers.append
    - nameservers.extend
    - <builtin>.int
    - dns.inet.is_address
    - part.isdigit
    - _colon_colon_end.match
    - info.ddr_tls_check_sync
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns._ddr._SVCBInfo.__init__
    - dns._ddr._extract_nameservers_from_svcb
    - dns.nameserver.DoHNameserver
    - infos.append
    - canonical.append
    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: 8
    functionLinenumber: 1533
    functionName: dns.resolver.get_default_resolver
    functionSourceFile: dns.resolver
    functionUses: 11
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    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: 7
    functionLinenumber: 1541
    functionName: dns.resolver.reset_default_resolver
    functionSourceFile: dns.resolver
    functionUses: 12
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5bc2190>
    - <ast.Attribute object at 0x7fc9c5bc2430>
    - <ast.Constant object at 0x7fc9c5bc2be0>
    - <ast.Constant object at 0x7fc9c5bc2ac0>
    - <ast.Constant object at 0x7fc9c5bc26d0>
    - <ast.Constant object at 0x7fc9c5bc21c0>
    - <ast.Constant object at 0x7fc9c5bc29d0>
    - <ast.Constant object at 0x7fc9c5bc2970>
    argNames:
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1552
    functionName: dns.resolver.resolve
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c64bfc10>
    - <ast.Attribute object at 0x7fc9c64bf3a0>
    - <ast.Constant object at 0x7fc9c64bf490>
    - <ast.Constant object at 0x7fc9c64bf910>
    - <ast.Constant object at 0x7fc9c64bf700>
    - <ast.Constant object at 0x7fc9c64bf8e0>
    - <ast.Constant object at 0x7fc9c64bf5e0>
    argNames:
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1585
    functionName: dns.resolver.query
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - warnings.warn
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    - dns.resolver.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - ipaddr
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1618
    functionName: dns.resolver.resolve_address
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c68ef3a0>
    argNames:
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1628
    functionName: dns.resolver.resolve_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1640
    functionName: dns.resolver.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63fdaf0>
    argNames:
    - lifetime
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1650
    functionName: dns.resolver.try_ddr
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 1
    IfCount: 11
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c63fd4f0>
    - <ast.Constant object at 0x7fc9c63fd850>
    - <ast.Constant object at 0x7fc9c63fd880>
    - <ast.Constant object at 0x7fc9c63fdc70>
    argNames:
    - name
    - rdclass
    - tcp
    - resolver
    - lifetime
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1660
    functionName: dns.resolver.zone_for_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - e.responses
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - time.time
    - e.response
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - name.is_absolute
    - <builtin>.int
    - dns.win32util.get_dns_info
    - nameservers.append
    - dns.name.is_all_ascii
    - l.split
    - name.parent
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - resolver.resolve
    - <builtin>.tuple
    - getter.get
    - rrs.name.fullcompare
    linkageType: pythonLinkage
    raised:
    - NotAbsolute
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resolver.resolve
    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: e.responses
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: e.response
    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: rrs.name.fullcompare
    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: name.parent
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5894c10>
    - <ast.Attribute object at 0x7fc9c5894940>
    - <ast.Constant object at 0x7fc9c5894e50>
    argNames:
    - where
    - port
    - family
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1745
    functionName: dns.resolver.make_resolver_at
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - m.group
    - opt.split
    - btext.startswith
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - btext.endswith
    - dns.resolver.BaseResolver.read_resolv_conf
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.win32util.get_dns_info
    - nameservers.append
    - dns.name.from_text
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.inet.is_address
    - dns.name._validate_labels
    - part.isdigit
    - dns.name.Name.__init__
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - resolver.resolve_name
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 13
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c6415eb0>
    - <ast.Attribute object at 0x7fc9c6415a00>
    - <ast.Constant object at 0x7fc9c6415730>
    - <ast.Constant object at 0x7fc9c6415820>
    - <ast.Constant object at 0x7fc9c6415e80>
    - <ast.Constant object at 0x7fc9c64157f0>
    - <ast.Constant object at 0x7fc9c6415160>
    - <ast.Constant object at 0x7fc9c64154f0>
    - <ast.Constant object at 0x7fc9c6415ee0>
    - <ast.Attribute object at 0x7fc9c6415910>
    - <ast.Constant object at 0x7fc9c6415df0>
    argNames:
    - where
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    - port
    - family
    - resolver
    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: 10
    functionLinenumber: 1781
    functionName: dns.resolver.resolve_at
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.rdatatype.is_metatype
    - c.isdigit
    - dns.win32util.DnsInfo.__init__
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - dns.resolver.make_resolver_at
    - time.sleep
    - dns.entropy.random_16
    - qname.concatenate
    - request.use_edns
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.list
    - dns.name.from_text
    - dns.message.Message.want_dnssec
    - dns.resolver.BaseResolver.__init__
    - part.isdigit
    - dns.name.Name.__init__
    - <builtin>.min
    - btext.split
    - <builtin>.len
    - dns.resolver.BaseResolver.read_registry
    - dns.rdataclass.is_metaclass
    - labels.extend
    - resolver.resolve_name
    - socket.gethostname
    - dns.nameserver.DoHNameserver
    - _v4_ending.match
    - os.urandom
    - labels.append
    - enriched_nameservers.append
    - <builtin>.range
    - label.encode
    - response.rcode
    - dns.name.from_unicode
    - dns.message.Message.__init__
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.get_default_resolver
    - dns.rdatatype.RdataType.make
    - answer.response.rcode
    - dns.resolver.BaseResolver._compute_timeout
    - m.group
    - btext.startswith
    - dns.rrset.from_rdata
    - response.resolve_chaining
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message._make_opt
    - dns.message.Message.find_rrset
    - qname.is_absolute
    - <builtin>.ord
    - dns.win32util.get_dns_info
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - l.split
    - r.update_ttl
    - dns.name.is_all_ascii
    - nameserver_ports.get
    - r.read
    - dns.resolver._Resolution.next_nameserver
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - dns.resolver.BaseResolver._get_qnames_to_try
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - contextlib.nullcontext
    - qnames_to_try.append
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - Rcode.to_text
    - dns.resolver.BaseResolver.read_resolv_conf
    - dns.nameserver.Do53Nameserver
    - <builtin>.chr
    - system_random.randrange
    - dns.resolver.Answer.__init__
    - <builtin>.bytes
    - time.time
    - dns.resolver._Resolution.query_result
    - urllib.parse.urlparse
    - random.shuffle
    - dns.flags.Flag
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.message.make_query
    - nameservers.append
    - dns.rrset.from_rdata_list
    - dns.rcode.to_text
    - dns.win32util._WMIGetter.__init__
    - <builtin>.bytearray
    - dns.resolver.Resolver.resolve
    - dns.inet.is_address
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - getter.get
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - qnames_to_try.insert
    - <builtin>.super
    - dns.rdtypes.ANY.OPT.OPT
    - nameserver.query
    - request.use_tsig
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.resolver._Resolution.__init__
    - dns.resolver._Resolution.next_request
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rrset.RRset.__init__
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 2
    IfCount: 10
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c58f39a0>
    - <ast.Constant object at 0x7fc9c58f3f40>
    - <ast.Attribute object at 0x7fc9c58f39d0>
    - <ast.Constant object at 0x7fc9c58f3910>
    - <ast.Constant object at 0x7fc9c58f3f70>
    - <ast.Constant object at 0x7fc9c58f3e50>
    argNames:
    - host
    - service
    - family
    - socktype
    - proto
    - flags
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1841
    functionName: dns.resolver._getaddrinfo
    functionSourceFile: dns.resolver
    functionUses: 5
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - answers.canonical_name
    - text.encode
    - socket.getservbyname
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - socket.if_nametoindex
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - address.find
    - tuples.append
    - socket.getaddrinfo
    - answers.addresses_and_families
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - scope.isdigit
    - dns.inet.af_for_address
    - btext.split
    - _resolver.resolve_name
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.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: _resolver.resolve_name
    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: answers.addresses_and_families
    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: answers.canonical_name
    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: socket.getservbyname
    functionSourceFile: socket
    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: tuples.append
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e91e80>
    argNames:
    - sockaddr
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1927
    functionName: dns.resolver._getnameinfo
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached:
    - _colon_colon_start.match
    - address.startswith
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - answers.canonical_name
    - text.encode
    - c.isdigit
    - <builtin>.reversed
    - _resolver.resolve
    - labels.append
    - socket.getservbyname
    - dns.ipv4.inet_aton
    - <builtin>.range
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - m.group
    - socket.if_nametoindex
    - btext.startswith
    - socket.getservbyport
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - btext.endswith
    - address.find
    - binascii.hexlify
    - dns.resolver._getaddrinfo
    - <builtin>.chr
    - typing.cast.target.to_text
    - byte_.isdigit
    - tuples.append
    - socket.getaddrinfo
    - answers.addresses_and_families
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.ipv6.is_mapped
    - dns.name._validate_labels
    - part.isdigit
    - dns.name.Name.__init__
    - _colon_colon_end.match
    - dns.reversename.from_address
    - dns.inet.af_for_address
    - btext.split
    - _resolver.resolve_name
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - scope.isdigit
    - binascii.unhexlify
    - struct.pack
    - labels.extend
    - typing.cast
    - <builtin>.tuple
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - OSError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _resolver.resolve
    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: typing.cast.target.to_text
    functionSourceFile: typing
    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: socket.getservbyport
    functionSourceFile: socket
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e9d640>
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1970
    functionName: dns.resolver._getfqdn
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - address.startswith
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - answers.canonical_name
    - text.encode
    - c.isdigit
    - <builtin>.reversed
    - _resolver.resolve
    - labels.append
    - socket.getservbyname
    - dns.ipv4.inet_aton
    - <builtin>.range
    - label.encode
    - dns.name.from_unicode
    - m.group
    - <builtin>.isinstance
    - addresses.append
    - dns.name.IDNA2003Codec.encode
    - socket.if_nametoindex
    - btext.startswith
    - socket.getservbyport
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - dns.resolver._getnameinfo
    - btext.endswith
    - address.find
    - dns.resolver._gethostbyaddr
    - binascii.hexlify
    - dns.resolver._getaddrinfo
    - <builtin>.chr
    - typing.cast.target.to_text
    - byte_.isdigit
    - tuples.append
    - socket.getaddrinfo
    - answers.addresses_and_families
    - encodings.idna.ToASCII
    - <builtin>.list
    - <builtin>.ord
    - dns.name.from_text
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.ipv6.is_mapped
    - dns.name._validate_labels
    - part.isdigit
    - dns.name.Name.__init__
    - _colon_colon_end.match
    - dns.reversename.from_address
    - dns.inet.af_for_address
    - btext.split
    - _resolver.resolve_name
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - scope.isdigit
    - binascii.unhexlify
    - struct.pack
    - labels.extend
    - dns.inet.inet_pton
    - socket.gethostname
    - typing.cast
    - <builtin>.tuple
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - ip
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1999
    functionName: dns.resolver._gethostbyaddr
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - address.startswith
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - answers.canonical_name
    - text.encode
    - c.isdigit
    - <builtin>.reversed
    - _resolver.resolve
    - labels.append
    - label.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - socket.getservbyname
    - dns.name.from_unicode
    - m.group
    - <builtin>.isinstance
    - addresses.append
    - socket.if_nametoindex
    - dns.name.IDNA2003Codec.encode
    - btext.startswith
    - socket.getservbyport
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - dns.resolver._getnameinfo
    - btext.endswith
    - address.find
    - binascii.hexlify
    - dns.resolver._getaddrinfo
    - <builtin>.chr
    - typing.cast.target.to_text
    - byte_.isdigit
    - tuples.append
    - socket.getaddrinfo
    - answers.addresses_and_families
    - encodings.idna.ToASCII
    - <builtin>.list
    - <builtin>.ord
    - dns.name.from_text
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.ipv6.is_mapped
    - dns.name._validate_labels
    - part.isdigit
    - dns.name.Name.__init__
    - _colon_colon_end.match
    - dns.reversename.from_address
    - btext.split
    - dns.inet.af_for_address
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - _resolver.resolve_name
    - dns.inet.low_level_address_tuple
    - scope.isdigit
    - labels.extend
    - dns.inet.inet_pton
    - typing.cast
    - <builtin>.tuple
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1982
    functionName: dns.resolver._gethostbyname
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - answers.canonical_name
    - text.encode
    - socket.getservbyname
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - addresses.append
    - socket.if_nametoindex
    - btext.startswith
    - btext.endswith
    - address.find
    - dns.resolver._getaddrinfo
    - tuples.append
    - socket.getaddrinfo
    - answers.addresses_and_families
    - dns.resolver._gethostbyname_ex
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - scope.isdigit
    - dns.inet.af_for_address
    - btext.split
    - _resolver.resolve_name
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1986
    functionName: dns.resolver._gethostbyname_ex
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - answers.canonical_name
    - text.encode
    - socket.getservbyname
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - addresses.append
    - socket.if_nametoindex
    - btext.startswith
    - btext.endswith
    - address.find
    - dns.resolver._getaddrinfo
    - tuples.append
    - socket.getaddrinfo
    - answers.addresses_and_families
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - scope.isdigit
    - dns.inet.af_for_address
    - btext.split
    - _resolver.resolve_name
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5be2c70>
    argNames:
    - resolver
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 2032
    functionName: dns.resolver.override_system_resolver
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - dns.win32util.get_dns_info
    - nameservers.append
    - <builtin>.int
    - l.split
    - <builtin>.ord
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - socket.gethostname
    - <builtin>.tuple
    - getter.get
    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: 2058
    functionName: dns.resolver.restore_system_resolver
    functionSourceFile: dns.resolver
    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: 5
    functionLinenumber: -1
    functionName: dns.reversename
    functionSourceFile: dns.reversename
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7fc9c57943d0>
    - <ast.Name object at 0x7fc9c5794310>
    argNames:
    - name
    - v4_origin
    - v6_origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 69
    functionName: dns.reversename.to_address
    functionSourceFile: dns.reversename
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - name.relativize
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - parts.append
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - _leading_zero.match
    - binascii.hexlify
    - name.is_subdomain
    - <builtin>.list
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - canonical.append
    - <builtin>.reversed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parts.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.win32util
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - dns._features._version_check
    - _requirements.get
    - importlib.metadata.version
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - _cache.get
    - version.split
    - dns._features.have
    - requirement.split
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - domain
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 30
    functionName: dns.win32util._config_domain
    functionSourceFile: dns.win32util
    functionUses: 4
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - domain.startswith
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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: domain.startswith
    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: 39
    functionName: dns.win32util.DnsInfo.__init__
    functionSourceFile: dns.win32util
    functionUses: 18
    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: 48
    functionName: dns.win32util._WMIGetter.__init__
    functionSourceFile: dns.win32util
    functionUses: 16
    functionsReached:
    - dns.win32util.DnsInfo.__init__
    - <builtin>.super
    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: 6
    functionLinenumber: 52
    functionName: dns.win32util._WMIGetter.run
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - pythoncom.CoInitialize
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - domain.startswith
    - dns.name._maybe_convert_to_binary
    - pythoncom.CoUninitialize
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.win32util._config_domain
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - wmi.WMI
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - system.Win32_NetworkAdapterConfiguration
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <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: pythoncom.CoInitialize
    functionSourceFile: pythoncom
    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: wmi.WMI
    functionSourceFile: wmi
    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: system.Win32_NetworkAdapterConfiguration
    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: pythoncom.CoUninitialize
    functionSourceFile: pythoncom
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 70
    functionName: dns.win32util._WMIGetter.get
    functionSourceFile: dns.win32util
    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: 83
    functionName: dns.win32util._RegistryGetter.__init__
    functionSourceFile: dns.win32util
    functionUses: 16
    functionsReached:
    - dns.win32util.DnsInfo.__init__
    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: 1
    functionLinenumber: 86
    functionName: dns.win32util._RegistryGetter._split
    functionSourceFile: dns.win32util
    functionUses: 4
    functionsReached:
    - text.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - nameservers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 94
    functionName: dns.win32util._RegistryGetter._config_nameservers
    functionSourceFile: dns.win32util
    functionUses: 2
    functionsReached:
    - dns.win32util._RegistryGetter._split
    - text.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - search
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 99
    functionName: dns.win32util._RegistryGetter._config_search
    functionSourceFile: dns.win32util
    functionUses: 2
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - domain.startswith
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - dns.win32util._config_domain
    - dns.win32util._RegistryGetter._split
    - dns.name.from_text
    - <builtin>.list
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    - text.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 3
    IfCount: 7
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - always_try_domain
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 105
    functionName: dns.win32util._RegistryGetter._config_fromkey
    functionSourceFile: dns.win32util
    functionUses: 1
    functionsReached:
    - text.encode
    - c.isdigit
    - dns.win32util._RegistryGetter._config_search
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - domain.startswith
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - dns.win32util._RegistryGetter._config_nameservers
    - encodings.idna.ToASCII
    - dns.win32util._config_domain
    - dns.win32util._RegistryGetter._split
    - dns.name.from_text
    - <builtin>.list
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - winreg.QueryValueEx
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    - text.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: winreg.QueryValueEx
    functionSourceFile: winreg
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - lm
    - guid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 144
    functionName: dns.win32util._RegistryGetter._is_nic_enabled
    functionSourceFile: dns.win32util
    functionUses: 1
    functionsReached:
    - device_key.Close
    - winreg.QueryValueEx
    - connection_key.Close
    - winreg.OpenKey
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: winreg.OpenKey
    functionSourceFile: winreg
    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: device_key.Close
    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: connection_key.Close
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 7
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 196
    functionName: dns.win32util._RegistryGetter.get
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - dns.win32util._RegistryGetter._config_fromkey
    - text.encode
    - c.isdigit
    - interfaces.Close
    - dns.win32util._RegistryGetter._config_search
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - domain.startswith
    - device_key.Close
    - dns.name._maybe_convert_to_binary
    - dns.win32util._RegistryGetter._is_nic_enabled
    - tcp_params.Close
    - <builtin>.chr
    - byte_.isdigit
    - dns.win32util._RegistryGetter._config_nameservers
    - lm.Close
    - encodings.idna.ToASCII
    - winreg.ConnectRegistry
    - winreg.EnumKey
    - dns.win32util._config_domain
    - dns.win32util._RegistryGetter._split
    - dns.name.from_text
    - <builtin>.list
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - connection_key.Close
    - winreg.QueryValueEx
    - dns.name._validate_labels
    - key.Close
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - winreg.OpenKey
    - <builtin>.tuple
    - text.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: winreg.ConnectRegistry
    functionSourceFile: winreg
    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: tcp_params.Close
    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: winreg.EnumKey
    functionSourceFile: winreg
    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: key.Close
    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: interfaces.Close
    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: lm.Close
    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: getter.get
    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: 5
    functionLinenumber: -1
    functionName: dns._ddr
    functionSourceFile: dns._ddr
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - bootstrap_address
    - port
    - hostname
    - nameservers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 27
    functionName: dns._ddr._SVCBInfo.__init__
    functionSourceFile: dns._ddr
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cert
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: dns._ddr._SVCBInfo.ddr_check_certificate
    functionSourceFile: dns._ddr
    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: 40
    functionName: dns._ddr._SVCBInfo.make_tls_context
    functionSourceFile: dns._ddr
    functionUses: 2
    functionsReached:
    - ssl.create_default_context
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 46
    functionName: dns._ddr._SVCBInfo.ddr_tls_check_sync
    functionSourceFile: dns._ddr
    functionUses: 0
    functionsReached:
    - dns._ddr._SVCBInfo.ddr_check_certificate
    - dns._ddr._SVCBInfo.make_tls_context
    - ts.getpeercert
    - ssl.create_default_context
    - ts.settimeout
    - ts.do_handshake
    - ctx.wrap_socket
    - time.time
    - dns.query._remaining
    - socket.create_connection
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.create_connection
    functionSourceFile: socket
    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: ctx.wrap_socket
    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: ts.settimeout
    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: ts.do_handshake
    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: ts.getpeercert
    functionSourceFile: <builtin>
    functionUses: 2
    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 0x7fc9c5e39970>
    argNames:
    - self
    - lifetime
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 58
    functionName: dns._ddr._SVCBInfo.ddr_tls_check_async
    functionSourceFile: dns._ddr
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _backends.get
    - asyncio.get_running_loop
    - _v4_ending.match
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - text.encode
    - sniffio.current_async_library
    - dns.asyncbackend.get_backend
    - ts.getpeercert
    - ssl.create_default_context
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - dns.query._remaining
    - dns._trio_backend.Backend
    - btext.startswith
    - btext.endswith
    - backend.make_socket
    - dns.asyncbackend.sniff
    - time.time
    - dns._ddr._SVCBInfo.ddr_check_certificate
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns._ddr._SVCBInfo.make_tls_context
    - <builtin>.int
    - dns._asyncio_backend.Backend
    - part.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 82
    functionName: dns.asyncbackend.get_default_backend
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached:
    - asyncio.get_running_loop
    - _backends.get
    - dns.asyncbackend.set_default_backend
    - sniffio.current_async_library
    - dns.asyncbackend.get_backend
    - dns.asyncbackend.sniff
    - dns._asyncio_backend.Backend
    - dns._trio_backend.Backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: backend.make_socket
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 5
    IfCount: 12
    argCount: 1
    argDefaultValues: []
    argNames:
    - answer
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 77
    functionName: dns._ddr._extract_nameservers_from_svcb
    functionSourceFile: dns._ddr
    functionUses: 4
    functionsReached:
    - _colon_colon_start.match
    - answer.rrset.processing_order
    - _v4_ending.match
    - rr.target.to_text
    - dns.ipv6.inet_aton
    - dns.nameserver.DoQNameserver
    - text.encode
    - rr.params.get
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.nameserver.DoTNameserver
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - path.startswith
    - param.value.endswith
    - urllib.parse.urlparse
    - <builtin>.set
    - <builtin>.ord
    - nameservers.append
    - <builtin>.int
    - dns.inet.is_address
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns._ddr._SVCBInfo.__init__
    - dns.nameserver.DoHNameserver
    - infos.append
    - canonical.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: answer.rrset.processing_order
    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: rr.params.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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rr.target.to_text
    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: param.value.endswith
    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: path.startswith
    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: dns.nameserver.DoTNameserver
    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: dns.nameserver.DoQNameserver
    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: infos.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: info.ddr_tls_check_sync
    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: nameservers.extend
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - answer
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 143
    functionName: dns._ddr._get_nameservers_async
    functionSourceFile: dns._ddr
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - answer.rrset.processing_order
    - _v4_ending.match
    - rr.target.to_text
    - dns.ipv6.inet_aton
    - dns.nameserver.DoQNameserver
    - text.encode
    - rr.params.get
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.nameserver.DoTNameserver
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - path.startswith
    - info.ddr_tls_check_async
    - param.value.endswith
    - urllib.parse.urlparse
    - <builtin>.set
    - <builtin>.ord
    - nameservers.append
    - nameservers.extend
    - <builtin>.int
    - dns.inet.is_address
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns._ddr._SVCBInfo.__init__
    - dns._ddr._extract_nameservers_from_svcb
    - dns.nameserver.DoHNameserver
    - infos.append
    - canonical.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: info.ddr_tls_check_async
    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: dns.nameserver
    functionSourceFile: dns.nameserver
    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: 12
    functionName: dns.nameserver.Nameserver.__init__
    functionSourceFile: dns.nameserver
    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: 15
    functionName: dns.nameserver.Nameserver.__str__
    functionSourceFile: dns.nameserver
    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: 18
    functionName: dns.nameserver.Nameserver.kind
    functionSourceFile: dns.nameserver
    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: 21
    functionName: dns.nameserver.Nameserver.is_always_max_size
    functionSourceFile: dns.nameserver
    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: 24
    functionName: dns.nameserver.Nameserver.answer_nameserver
    functionSourceFile: dns.nameserver
    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: 27
    functionName: dns.nameserver.Nameserver.answer_port
    functionSourceFile: dns.nameserver
    functionUses: 0
    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 0x7fc9c5a8c610>
    - <ast.Constant object at 0x7fc9c5a8cac0>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 30
    functionName: dns.nameserver.Nameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a8cee0>
    - <ast.Constant object at 0x7fc9c5a8c0a0>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - backend
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: dns.nameserver.Nameserver.async_query
    functionSourceFile: dns.nameserver
    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
    - address
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 57
    functionName: dns.nameserver.AddressAndPortNameserver.__init__
    functionSourceFile: dns.nameserver
    functionUses: 0
    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: 0
    functionLinenumber: 62
    functionName: dns.nameserver.AddressAndPortNameserver.kind
    functionSourceFile: dns.nameserver
    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: 65
    functionName: dns.nameserver.AddressAndPortNameserver.is_always_max_size
    functionSourceFile: dns.nameserver
    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: 68
    functionName: dns.nameserver.AddressAndPortNameserver.__str__
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.nameserver.AddressAndPortNameserver.kind
    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: 72
    functionName: dns.nameserver.AddressAndPortNameserver.answer_nameserver
    functionSourceFile: dns.nameserver
    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: 75
    functionName: dns.nameserver.AddressAndPortNameserver.answer_port
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b31160>
    argNames:
    - self
    - address
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: dns.nameserver.Do53Nameserver.__init__
    functionSourceFile: dns.nameserver
    functionUses: 0
    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: 0
    functionLinenumber: 83
    functionName: dns.nameserver.Do53Nameserver.kind
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c57942b0>
    - <ast.Constant object at 0x7fc9c5794e80>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 86
    functionName: dns.nameserver.Do53Nameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._net_write
    - socket.if_nametoindex
    - dns.query._matches_destination
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.inet.is_multicast
    - dns.tsig.Key
    - ssl_context.wrap_socket
    - dns.query._connect
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - sel.register
    - e.message
    - dns.wire.Parser
    - dns.query.receive_udp
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - dns.query._addresses_equal
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.query.udp
    - dns.rdatatype.to_text
    - <builtin>.abs
    - dns.tsig.HMACTSig.__init__
    - labels.append
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - m.group
    - dns.tsig.GSSTSig.__init__
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - btext.startswith
    - dns.query._udp_send
    - s.connect_ex
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.query._net_read
    - dns.query.send_tcp
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - selectors.DefaultSelector
    - r.read
    - sock.recvfrom
    - sel.select
    - sock.recv
    - s.close
    - _colon_colon_end.match
    - s.bind
    - binascii.unhexlify
    - sock.send
    - struct.pack
    - dns.query._destination_and_source
    - dns.query._udp_recv
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.query.tcp
    - contextlib.nullcontext
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.query.receive_tcp
    - dns.inet.any_for_af
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - s.setblocking
    - dns.flags.Flag
    - what.to_wire
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - scope.isdigit
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - query.is_response
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.query.send_udp
    - dns.tsig.HMACTSig.sign
    - socket.getaddrinfo
    - dns.query._make_socket
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - s.getsockopt
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.inet.inet_pton
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e232e0>
    - <ast.Constant object at 0x7fc9c5e23c40>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - backend
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 123
    functionName: dns.nameserver.Do53Nameserver.async_query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._matches_destination
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.inet.is_multicast
    - dns.asyncquery.udp
    - dns.tsig.Key
    - backend.make_socket
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - dns.asyncquery.receive_tcp
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - e.message
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - dns.asyncquery._read_exactly
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.query._addresses_equal
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.asyncquery.send_udp
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns._trio_backend.Backend
    - dns.name.IDNA2003Codec.encode
    - dns._asyncbackend.NullContext.__init__
    - btext.startswith
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.asyncquery._source_tuple
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - sock.recvfrom
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.asyncquery._timeout
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - sock.sendall
    - dns.asyncquery.receive_udp
    - backend.datagram_connection_required
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.asyncquery.tcp
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - what.to_wire
    - sock.getpeername
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - dns.asyncquery.send_tcp
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - importlib.import_module
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - typing.cast.recv
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - query.is_response
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.inet.inet_pton
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6405f10>
    - <ast.Constant object at 0x7fc9c6405c10>
    - <ast.Constant object at 0x7fc9c64059a0>
    - <ast.Constant object at 0x7fc9c64058e0>
    - <ast.Constant object at 0x7fc9c64051f0>
    - <ast.Constant object at 0x7fc9c6405d00>
    - <ast.Constant object at 0x7fc9c6405820>
    - <ast.Constant object at 0x7fc9c6405910>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - sock
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 383
    functionName: dns.asyncquery.tcp
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - rd.covers
    - c.isdigit
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - backend.make_socket
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - dns.asyncquery.receive_tcp
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.asyncquery._read_exactly
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns._trio_backend.Backend
    - dns.name.IDNA2003Codec.encode
    - dns._asyncbackend.NullContext.__init__
    - btext.startswith
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.asyncquery._source_tuple
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.asyncquery._timeout
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - sock.sendall
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - what.to_wire
    - sock.getpeername
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - dns.asyncquery.send_tcp
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - importlib.import_module
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - typing.cast.recv
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c62e0580>
    - <ast.Constant object at 0x7fc9c62e02e0>
    - <ast.Constant object at 0x7fc9c62e0460>
    - <ast.Constant object at 0x7fc9c62e05e0>
    - <ast.Constant object at 0x7fc9c62e08b0>
    - <ast.Constant object at 0x7fc9c62e0250>
    - <ast.Constant object at 0x7fc9c62e0df0>
    - <ast.Constant object at 0x7fc9c62e0bb0>
    - <ast.Constant object at 0x7fc9c62e0160>
    - <ast.Constant object at 0x7fc9c62e0790>
    - <ast.Constant object at 0x7fc9c62e00d0>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - ignore_unexpected
    - one_rr_per_rrset
    - ignore_trailing
    - raise_on_truncation
    - sock
    - backend
    - ignore_errors
    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: 11
    functionLinenumber: 180
    functionName: dns.asyncquery.udp
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - rd.covers
    - c.isdigit
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._matches_destination
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.inet.is_multicast
    - dns.tsig.Key
    - backend.make_socket
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - e.message
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.query._addresses_equal
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.asyncquery.send_udp
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns._trio_backend.Backend
    - dns.name.IDNA2003Codec.encode
    - dns._asyncbackend.NullContext.__init__
    - btext.startswith
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.asyncquery._source_tuple
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - sock.recvfrom
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.asyncquery._timeout
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.asyncquery.receive_udp
    - backend.datagram_connection_required
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - what.to_wire
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - importlib.import_module
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - query.is_response
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.inet.inet_pton
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    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 0x7fc9c595c7c0>
    - <ast.Constant object at 0x7fc9c595cbe0>
    - <ast.Constant object at 0x7fc9c595c9d0>
    - <ast.Attribute object at 0x7fc9c595c340>
    argNames:
    - self
    - url
    - bootstrap_address
    - verify
    - want_get
    - http_version
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 165
    functionName: dns.nameserver.DoHNameserver.__init__
    functionSourceFile: dns.nameserver
    functionUses: 0
    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: 0
    functionLinenumber: 180
    functionName: dns.nameserver.DoHNameserver.kind
    functionSourceFile: dns.nameserver
    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: 183
    functionName: dns.nameserver.DoHNameserver.is_always_max_size
    functionSourceFile: dns.nameserver
    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: 186
    functionName: dns.nameserver.DoHNameserver.__str__
    functionSourceFile: dns.nameserver
    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: 189
    functionName: dns.nameserver.DoHNameserver.answer_nameserver
    functionSourceFile: dns.nameserver
    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: 192
    functionName: dns.nameserver.DoHNameserver.answer_port
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse
    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 0x7fc9c68f89d0>
    - <ast.Constant object at 0x7fc9c68f83a0>
    - <ast.Constant object at 0x7fc9c68f8340>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 198
    functionName: dns.nameserver.DoHNameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - response.elapsed.total_seconds
    - socket.if_nametoindex
    - absolute_name.relativize
    - dns.query.https
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - headers.update
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.list
    - <builtin>.callable
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - dns.query._check_status
    - struct.unpack
    - key.algorithm.to_digestable
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - resolver.resolve_name
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - dns.resolver.Resolver
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.query._remaining
    - dns.tsig.GSSTSig.__init__
    - m.group
    - wire.decode
    - btext.startswith
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.query._destination_and_source
    - answers.addresses
    - session.get
    - the_manager.connect
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - contextlib.nullcontext
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.query._find_header
    - httpx.Client
    - dns.inet.any_for_af
    - stream.send_h3
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - session.post
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - dns.inet.is_address
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - scope.isdigit
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - dns.quic.SyncQuicManager
    - hmac.compare_digest
    - contextlib.contextmanager
    - stream.headers
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.query._http3
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - base64.urlsafe_b64encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - socket.getaddrinfo
    - <builtin>.open
    - random.choice
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - dns.query._maybe_get_resolver
    - dns.query._NetworkBackend.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - dns.query._HTTPTransport.__init__
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d73640>
    - <ast.Constant object at 0x7fc9c5d73c10>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - backend
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 222
    functionName: dns.nameserver.DoHNameserver.async_query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - dns.quic.factories_for_backend
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - httpx.AsyncClient
    - response.elapsed.total_seconds
    - absolute_name.relativize
    - dns.name.IDNA2003Codec.encode
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.asyncbackend.sniff
    - headers.update
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.list
    - <builtin>.callable
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - the_client.post
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - dns.query._check_status
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - the_client.get
    - dns.query._compute_times
    - labels.extend
    - resolver.resolve_name
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.query._remaining
    - dns.asyncquery._maybe_get_resolver
    - dns._trio_backend.Backend
    - dns._asyncbackend.NullContext.__init__
    - btext.startswith
    - wire.decode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.asyncquery.https
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.name.from_unicode
    - r.read
    - _colon_colon_end.match
    - dns.asyncquery._http3
    - binascii.unhexlify
    - struct.pack
    - answers.addresses
    - the_manager.connect
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.query._find_header
    - stream.send_h3
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - backend.name
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - backend.get_transport_class
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - dns.inet.is_address
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - dns.asyncresolver.Resolver
    - typing.cast
    - <builtin>.tuple
    - backend.wait_for
    - _backends.get
    - asyncio.get_running_loop
    - importlib.import_module
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - stream.headers
    - dns.asyncbackend.get_backend
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - base64.urlsafe_b64encode
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - random.choice
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 2
    IfCount: 17
    argCount: 16
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5fd3dc0>
    - <ast.Constant object at 0x7fc9c5fd3100>
    - <ast.Constant object at 0x7fc9c5fd3490>
    - <ast.Constant object at 0x7fc9c5fd39d0>
    - <ast.Constant object at 0x7fc9c5fd3730>
    - <ast.Constant object at 0x7fc9c5fd3430>
    - <ast.Constant object at 0x7fc9c5fd3700>
    - <ast.Constant object at 0x7fc9c5fd3c40>
    - <ast.Constant object at 0x7fc9c5fd3df0>
    - <ast.Constant object at 0x7fc9c5fd3520>
    - <ast.Constant object at 0x7fc9c5fd3640>
    - <ast.Constant object at 0x7fc9c5fd3fa0>
    - <ast.Attribute object at 0x7fc9c5fd34f0>
    - <ast.Attribute object at 0x7fc9c5fd3ee0>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - client
    - path
    - post
    - verify
    - bootstrap_address
    - resolver
    - family
    - http_version
    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: 11
    functionLinenumber: 530
    functionName: dns.asyncquery.https
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - rd.covers
    - c.isdigit
    - dns.quic.factories_for_backend
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - httpx.AsyncClient
    - response.elapsed.total_seconds
    - absolute_name.relativize
    - dns.name.IDNA2003Codec.encode
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.asyncbackend.sniff
    - headers.update
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.list
    - <builtin>.callable
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - the_client.post
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - dns.query._check_status
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - the_client.get
    - dns.query._compute_times
    - labels.extend
    - resolver.resolve_name
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.query._remaining
    - dns.asyncquery._maybe_get_resolver
    - dns._trio_backend.Backend
    - dns._asyncbackend.NullContext.__init__
    - btext.startswith
    - wire.decode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.name.from_unicode
    - r.read
    - _colon_colon_end.match
    - dns.asyncquery._http3
    - binascii.unhexlify
    - struct.pack
    - answers.addresses
    - the_manager.connect
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.query._find_header
    - stream.send_h3
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - backend.name
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - backend.get_transport_class
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - dns.inet.is_address
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - dns.asyncresolver.Resolver
    - typing.cast
    - <builtin>.tuple
    - backend.wait_for
    - _backends.get
    - asyncio.get_running_loop
    - importlib.import_module
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - stream.headers
    - dns.asyncbackend.get_backend
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - base64.urlsafe_b64encode
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - random.choice
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a32550>
    - <ast.Constant object at 0x7fc9c5a32eb0>
    - <ast.Constant object at 0x7fc9c5a32790>
    argNames:
    - self
    - address
    - port
    - hostname
    - verify
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 249
    functionName: dns.nameserver.DoTNameserver.__init__
    functionSourceFile: dns.nameserver
    functionUses: 0
    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: 0
    functionLinenumber: 260
    functionName: dns.nameserver.DoTNameserver.kind
    functionSourceFile: dns.nameserver
    functionUses: 0
    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 0x7fc9c5a32e20>
    - <ast.Constant object at 0x7fc9c5a32c70>
    - <ast.Constant object at 0x7fc9c5a327f0>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 263
    functionName: dns.nameserver.DoTNameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._net_write
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - ssl_context.wrap_socket
    - dns.query._connect
    - ssl_context.set_alpn_protocols
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.query._wait_for_readable
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - sel.register
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - os.path.isfile
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - btext.startswith
    - s.connect_ex
    - dns.message._WireReader.read
    - address.find
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.query._net_read
    - dns.query.send_tcp
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - dns.query._tls_handshake
    - selectors.DefaultSelector
    - r.read
    - sel.select
    - sock.recv
    - dns.query.tls
    - s.close
    - _colon_colon_end.match
    - s.bind
    - binascii.unhexlify
    - sock.send
    - struct.pack
    - dns.query._destination_and_source
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.query.tcp
    - contextlib.nullcontext
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.query.receive_tcp
    - dns.inet.any_for_af
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - dns.query._wait_for
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - s.do_handshake
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - s.setblocking
    - dns.flags.Flag
    - what.to_wire
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.path.isdir
    - os.getpid
    - scope.isdigit
    - dns.query._make_dot_ssl_context
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - ssl.create_default_context
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - fd.pending
    - <builtin>.isinstance
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - socket.getaddrinfo
    - dns.query._make_socket
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - s.getsockopt
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.query._wait_for_writable
    - dns.rrset.RRset.__init__
    - canonical.append
    - dns.message._WireReader._get_section
    - socket.if_nametoindex
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e6c850>
    - <ast.Constant object at 0x7fc9c5e6c400>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - backend
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 284
    functionName: dns.nameserver.DoTNameserver.async_query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - backend.make_socket
    - dns.asyncbackend.sniff
    - ssl_context.set_alpn_protocols
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - dns.asyncquery.receive_tcp
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns._asyncio_backend.Backend
    - dns.asyncquery._read_exactly
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - os.path.isfile
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns._trio_backend.Backend
    - dns.name.IDNA2003Codec.encode
    - dns._asyncbackend.NullContext.__init__
    - btext.startswith
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.asyncquery._source_tuple
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.asyncquery._timeout
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - sock.sendall
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.asyncquery.tcp
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - what.to_wire
    - sock.getpeername
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.path.isdir
    - os.getpid
    - dns.query._make_dot_ssl_context
    - dns.asyncquery.send_tcp
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - importlib.import_module
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - ssl.create_default_context
    - typing.cast.recv
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.asyncquery.tls
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5860790>
    - <ast.Constant object at 0x7fc9c5860ac0>
    - <ast.Constant object at 0x7fc9c58602e0>
    - <ast.Constant object at 0x7fc9c59d5340>
    - <ast.Constant object at 0x7fc9c59d5160>
    - <ast.Constant object at 0x7fc9c59d5af0>
    - <ast.Constant object at 0x7fc9c59d55e0>
    - <ast.Constant object at 0x7fc9c59d5820>
    - <ast.Constant object at 0x7fc9c59d5610>
    - <ast.Constant object at 0x7fc9c59d5430>
    - <ast.Constant object at 0x7fc9c59d5d00>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - sock
    - backend
    - ssl_context
    - server_hostname
    - verify
    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: 12
    functionLinenumber: 444
    functionName: dns.asyncquery.tls
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - rd.covers
    - c.isdigit
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - backend.make_socket
    - dns.asyncbackend.sniff
    - ssl_context.set_alpn_protocols
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - dns.asyncquery.receive_tcp
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns._asyncio_backend.Backend
    - dns.asyncquery._read_exactly
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - os.path.isfile
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns._trio_backend.Backend
    - dns.name.IDNA2003Codec.encode
    - dns._asyncbackend.NullContext.__init__
    - btext.startswith
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.asyncquery._source_tuple
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.asyncquery._timeout
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - sock.sendall
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.asyncquery.tcp
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - what.to_wire
    - sock.getpeername
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.path.isdir
    - os.getpid
    - dns.query._make_dot_ssl_context
    - dns.asyncquery.send_tcp
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - importlib.import_module
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - ssl.create_default_context
    - typing.cast.recv
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    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 0x7fc9c61fc760>
    - <ast.Constant object at 0x7fc9c61fcc40>
    - <ast.Constant object at 0x7fc9c61fce80>
    argNames:
    - self
    - address
    - port
    - verify
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 308
    functionName: dns.nameserver.DoQNameserver.__init__
    functionSourceFile: dns.nameserver
    functionUses: 0
    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: 0
    functionLinenumber: 319
    functionName: dns.nameserver.DoQNameserver.kind
    functionSourceFile: dns.nameserver
    functionUses: 0
    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 0x7fc9c64698e0>
    - <ast.Constant object at 0x7fc9c64695b0>
    - <ast.Constant object at 0x7fc9c6469f70>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 322
    functionName: dns.nameserver.DoQNameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - dns.wire.Parser
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.query._remaining
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.__init__
    - dns.rdatatype.RdataType.make
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - the_manager.connect
    - text.encode
    - contextlib.nullcontext
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - dns.quic.SyncQuicManager
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - dns.query.quic
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - stream.send
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59c93d0>
    - <ast.Constant object at 0x7fc9c59c9970>
    argNames:
    - self
    - request
    - timeout
    - source
    - source_port
    - max_size
    - backend
    - one_rr_per_rrset
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 343
    functionName: dns.nameserver.DoQNameserver.async_query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - dns.quic.factories_for_backend
    - sniffio.current_async_library
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.query._remaining
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns._trio_backend.Backend
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - the_manager.connect
    - text.encode
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - backend.name
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - dns.asyncquery.quic
    - _backends.get
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - stream.send
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6406d00>
    - <ast.Constant object at 0x7fc9c64061f0>
    - <ast.Constant object at 0x7fc9c6406c40>
    - <ast.Constant object at 0x7fc9c64065b0>
    - <ast.Constant object at 0x7fc9c6406b80>
    - <ast.Constant object at 0x7fc9c64063d0>
    - <ast.Constant object at 0x7fc9c64064c0>
    - <ast.Constant object at 0x7fc9c6406af0>
    - <ast.Constant object at 0x7fc9c6406460>
    - <ast.Constant object at 0x7fc9c6406610>
    - <ast.Constant object at 0x7fc9c6406280>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - connection
    - verify
    - backend
    - hostname
    - server_hostname
    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: 10
    functionLinenumber: 770
    functionName: dns.asyncquery.quic
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - rd.covers
    - c.isdigit
    - dns.quic.factories_for_backend
    - sniffio.current_async_library
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.query._remaining
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns._trio_backend.Backend
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - the_manager.connect
    - text.encode
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - backend.name
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - asyncio.get_running_loop
    - importlib.import_module
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - stream.send
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised:
    - NoDOQ
    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: dns.asyncquery
    functionSourceFile: dns.asyncquery
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - af
    - address
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: dns.asyncquery._source_tuple
    functionSourceFile: dns.asyncquery
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c57f6d60>
    argNames:
    - expiration
    - now
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: dns.asyncquery._timeout
    functionSourceFile: dns.asyncquery
    functionUses: 13
    functionsReached:
    - <builtin>.max
    - time.time
    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 0x7fc9c5f20250>
    argNames:
    - sock
    - what
    - destination
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 89
    functionName: dns.asyncquery.send_udp
    functionSourceFile: dns.asyncquery
    functionUses: 3
    functionsReached:
    - what.to_wire
    - <builtin>.max
    - sock.sendto
    - time.time
    - dns.asyncquery._timeout
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5c918e0>
    - <ast.Constant object at 0x7fc9c5c910d0>
    - <ast.Constant object at 0x7fc9c5c91700>
    - <ast.Constant object at 0x7fc9c5c914f0>
    - <ast.Constant object at 0x7fc9c5c91100>
    - <ast.Constant object at 0x7fc9c5c91820>
    - <ast.Constant object at 0x7fc9c5c911c0>
    - <ast.Constant object at 0x7fc9c5c916d0>
    - <ast.Constant object at 0x7fc9c5c915e0>
    - <ast.Constant object at 0x7fc9c5c91130>
    argNames:
    - sock
    - destination
    - expiration
    - ignore_unexpected
    - one_rr_per_rrset
    - keyring
    - request_mac
    - ignore_trailing
    - raise_on_truncation
    - ignore_errors
    - query
    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: 10
    functionLinenumber: 119
    functionName: dns.asyncquery.receive_udp
    functionSourceFile: dns.asyncquery
    functionUses: 3
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._matches_destination
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.inet.is_multicast
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - e.message
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - labels.extend
    - dns.query._addresses_equal
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - btext.startswith
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - sock.recvfrom
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.asyncquery._timeout
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - query.is_response
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.inet.inet_pton
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    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 0x7fc9c6da49d0>
    argNames:
    - self
    - enter_result
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 8
    functionName: dns._asyncbackend.NullContext.__init__
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: backend.datagram_connection_required
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5792520>
    - <ast.Constant object at 0x7fc9c57926a0>
    - <ast.Constant object at 0x7fc9c5792580>
    - <ast.Constant object at 0x7fc9c5792910>
    - <ast.Constant object at 0x7fc9c5792ca0>
    - <ast.Constant object at 0x7fc9c5792d90>
    - <ast.Constant object at 0x7fc9c5792130>
    - <ast.Constant object at 0x7fc9c5792400>
    - <ast.Constant object at 0x7fc9c57927c0>
    - <ast.Constant object at 0x7fc9c57921c0>
    - <ast.Constant object at 0x7fc9c57929a0>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - ignore_unexpected
    - one_rr_per_rrset
    - ignore_trailing
    - udp_sock
    - tcp_sock
    - backend
    - ignore_errors
    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: 12
    functionLinenumber: 246
    functionName: dns.asyncquery.udp_with_fallback
    functionSourceFile: dns.asyncquery
    functionUses: 0
    functionsReached:
    - rd.covers
    - c.isdigit
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - dns.query._matches_destination
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.inet.is_multicast
    - dns.asyncquery.udp
    - dns.tsig.Key
    - backend.make_socket
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - dns.asyncquery.receive_tcp
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - e.message
    - dns.asyncquery._read_exactly
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - part.isdigit
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.query._addresses_equal
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.asyncquery.send_udp
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - m.group
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns._trio_backend.Backend
    - dns.name.IDNA2003Codec.encode
    - dns._asyncbackend.NullContext.__init__
    - btext.startswith
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.asyncquery._source_tuple
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - sock.recvfrom
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.asyncquery._timeout
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - sock.sendall
    - dns.asyncquery.receive_udp
    - backend.datagram_connection_required
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.asyncquery.tcp
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - what.to_wire
    - sock.getpeername
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - dns.asyncquery.send_tcp
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - importlib.import_module
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - typing.cast.recv
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - query.is_response
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - sock.sendto
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.inet.inet_pton
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - canonical.append
    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 0x7fc9c58a3670>
    argNames:
    - sock
    - what
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 314
    functionName: dns.asyncquery.send_tcp
    functionSourceFile: dns.asyncquery
    functionUses: 5
    functionsReached:
    - what.to_wire
    - <builtin>.max
    - sock.sendall
    - <builtin>.len
    - time.time
    - dns.asyncquery._timeout
    - <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: sock.sendall
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - sock
    - count
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 339
    functionName: dns.asyncquery._read_exactly
    functionSourceFile: dns.asyncquery
    functionUses: 8
    functionsReached:
    - <builtin>.max
    - <builtin>.len
    - typing.cast.recv
    - time.time
    - dns.asyncquery._timeout
    linkageType: pythonLinkage
    raised:
    - EOFError
    returnType: N/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.recv
    functionSourceFile: typing
    functionUses: 9
    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 0x7fc9c6b61940>
    - <ast.Constant object at 0x7fc9c6b617c0>
    - <ast.Constant object at 0x7fc9c6b61460>
    - <ast.Constant object at 0x7fc9c6b615b0>
    - <ast.Constant object at 0x7fc9c6b61ca0>
    argNames:
    - sock
    - expiration
    - one_rr_per_rrset
    - keyring
    - request_mac
    - ignore_trailing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 353
    functionName: dns.asyncquery.receive_tcp
    functionSourceFile: dns.asyncquery
    functionUses: 5
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - dns.asyncquery._read_exactly
    - dns.wire.Parser
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - dns.tsig.HMACTSig.__init__
    - labels.append
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.__init__
    - dns.rdatatype.RdataType.make
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - dns.asyncquery._timeout
    - text.encode
    - dns.message.from_wire
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - dns.name._validate_labels
    - _rdata_classes.get
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - typing.cast.recv
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sock.getpeername
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - resolver
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 516
    functionName: dns.asyncquery._maybe_get_resolver
    functionSourceFile: dns.asyncquery
    functionUses: 2
    functionsReached:
    - dns.asyncresolver.Resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bbb820>
    - <ast.Constant object at 0x7fc9c5bbb790>
    - <ast.Constant object at 0x7fc9c5bbb8e0>
    - <ast.Constant object at 0x7fc9c5bbb460>
    - <ast.Constant object at 0x7fc9c5bbb370>
    - <ast.Constant object at 0x7fc9c5bbbdf0>
    - <ast.Constant object at 0x7fc9c6381610>
    - <ast.Constant object at 0x7fc9c6381b50>
    - <ast.Constant object at 0x7fc9c6381970>
    - <ast.Constant object at 0x7fc9c6381190>
    argNames:
    - q
    - where
    - url
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - verify
    - backend
    - post
    - connection
    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: 10
    functionLinenumber: 706
    functionName: dns.asyncquery._http3
    functionSourceFile: dns.asyncquery
    functionUses: 2
    functionsReached:
    - rd.covers
    - c.isdigit
    - dns.quic.factories_for_backend
    - sniffio.current_async_library
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - the_connection.make_stream
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - dns.name.Name.__init__
    - dns.query._check_status
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.query._remaining
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns._trio_backend.Backend
    - dns.tsig.GSSTSig.__init__
    - wire.decode
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - q.is_response
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - the_manager.connect
    - text.encode
    - dns.message.from_wire
    - stream.receive
    - dns.tsig._digest
    - dns.query._find_header
    - stream.send_h3
    - dns.entropy.EntropyPool._stir
    - backend.name
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - asyncio.get_running_loop
    - importlib.import_module
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - stream.headers
    - dns.asyncbackend.get_backend
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - q.to_wire
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised:
    - NoDOH
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: backend.get_transport_class
    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: httpx.AsyncClient
    functionSourceFile: httpx
    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: the_client.post
    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: backend.wait_for
    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: the_client.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6415340>
    argNames:
    - backend
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 60
    functionName: dns.quic.factories_for_backend
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached:
    - asyncio.get_running_loop
    - _backends.get
    - dns.asyncbackend.set_default_backend
    - dns.asyncbackend.get_default_backend
    - sniffio.current_async_library
    - dns.asyncbackend.get_backend
    - backend.name
    - dns.asyncbackend.sniff
    - dns._asyncio_backend.Backend
    - dns._trio_backend.Backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 6
    argDefaultValues: []
    argNames:
    - txn_manager
    - s
    - query
    - serial
    - timeout
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 840
    functionName: dns.asyncquery._inbound_xfr
    functionSourceFile: dns.asyncquery
    functionUses: 1
    functionsReached:
    - rd.covers
    - c.isdigit
    - r.add
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.tsig.Key
    - inbound.process_message
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - <builtin>.max
    - <builtin>.callable
    - <builtin>.list
    - RdataClass.to_text
    - dns.rdata.from_wire_parser
    - dns.name.from_text
    - dns.wire.Parser
    - dns.asyncquery._read_exactly
    - dns.name.Name.__init__
    - struct.unpack
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - query.to_wire
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - os.urandom
    - dns.rdataclass.to_text
    - typing.cast.sendto
    - dns.rdatatype.to_text
    - <builtin>.abs
    - labels.append
    - dns.tsig.HMACTSig.__init__
    - label.encode
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.message.Message.__init__
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - typing.cast.recvfrom
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - struct.pack
    - dns.asyncquery._timeout
    - text.encode
    - dns.message.from_wire
    - typing.cast.sendall
    - dns.tsig._digest
    - dns.entropy.EntropyPool._stir
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - txn_manager.from_wire_origin
    - dns.tsig._maybe_start_digest
    - dns.rrset.from_rdata_list
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - hmac.compare_digest
    - contextlib.contextmanager
    - typing.cast.recv
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - <builtin>.isinstance
    - dns.xfr.Inbound
    - dns.tsig.HMACTSig.verify
    - dns.name._maybe_convert_to_binary
    - <builtin>.str
    - <builtin>.super
    - dns.tsig.HMACTSig.sign
    - <builtin>.open
    - dns.message.MessageError.__init__
    - dns.entropy.EntropyPool.random_8
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.sendto
    functionSourceFile: typing
    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: typing.cast.sendall
    functionSourceFile: typing
    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: typing.cast.recvfrom
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61de970>
    - <ast.Constant object at 0x7fc9c61deeb0>
    - <ast.Constant object at 0x7fc9c61ded90>
    - <ast.Constant object at 0x7fc9c61de3d0>
    - <ast.Constant object at 0x7fc9c61de310>
    - <ast.Constant object at 0x7fc9c61de7c0>
    - <ast.Attribute object at 0x7fc9c61decd0>
    - <ast.Constant object at 0x7fc9c61ded60>
    argNames:
    - where
    - txn_manager
    - query
    - port
    - timeout
    - lifetime
    - source
    - source_port
    - udp_mode
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 895
    functionName: dns.asyncquery.inbound_xfr
    functionSourceFile: dns.asyncquery
    functionUses: 0
    functionsReached:
    - rd.covers
    - dns.asyncquery._inbound_xfr
    - c.isdigit
    - sniffio.current_async_library
    - r.add
    - dns.ipv4.inet_aton
    - dns.message.Message.use_edns
    - tok.get_eol_as_token
    - absolute_name.relativize
    - hmac.new
    - dns.entropy.random_16
    - dns.xfr.make_query
    - dns.tsig.Key
    - backend.make_socket
    - dns.asyncbackend.sniff
    - txn_manager.reader
    - inbound.process_message
    - token.is_identifier
    - dns.message.from_wire.initialize_message
    - dns.tsig.get_context
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    - <builtin>.max
    - <builtin>.list
    - <builtin>.callable
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.asyncquery._read_exactly
    - dns._asyncio_backend.Backend
    - dns.wire.Parser
    - dns.message.Message.want_dnssec
    - txn.get
    - part.isdigit
    - q.find_rrset
    - dns.name.Name.__init__
    - struct.unpack
    - btext.split
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.query._compute_times
    - labels.extend
    - query.to_wire
    - dns.message._WireReader._get_question
    - <builtin>.getattr
    - _v4_ending.match
    - os.urandom
    - dns.rdataclass.to_text
    - typing.cast.sendto
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - tok.unget
    - labels.append
    - <builtin>.abs
    - label.encode
    - <builtin>.range
    - dns.tsig.HMACTSig.__init__
    - dns.message._message_factory_from_opcode
    - txn_manager.origin_information
    - dns.message.Message.__init__
    - m.group
    - dns.rdatatype.RdataType.make
    - dns.name.from_unicode
    - dns._trio_backend.Backend
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - btext.startswith
    - dns.tsig.GSSTSig.__init__
    - dns.message._WireReader.read
    - dns.tsig.validate
    - byte_.isdigit
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.GenericRdata.from_wire_parser
    - rrset.add
    - dns.message.Message._make_opt
    - dns.asyncquery._source_tuple
    - typing.cast.recvfrom
    - dns.message.Message.find_rrset
    - dns.rdata.GenericRdata.__init__
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - r.update_ttl
    - dns.name.is_all_ascii
    - r.read
    - query.find_rrset
    - _colon_colon_end.match
    - binascii.unhexlify
    - struct.pack
    - dns.message.Message.section_number
    - dns.asyncquery._timeout
    - tok.get_int
    - _colon_colon_start.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdata.GenericRdata.from_text
    - dns.message.from_wire
    - typing.cast.sendall
    - rdata.to_wire
    - parser.restrict_to
    - tok.get
    - dns.tsig._digest
    - tok.concatenate_remaining_identifiers
    - <builtin>.enumerate
    - dns.entropy.EntropyPool._stir
    - btext.endswith
    - q.use_tsig
    - <builtin>.chr
    - system_random.randrange
    - <builtin>.bytes
    - time.time
    - rdtype_text.replace
    - dns.tsig.HMACTSig.update
    - dns.flags.Flag
    - dns.message._WireReader.__init__
    - dns.message.make_query
    - txn_manager.from_wire_origin
    - dns.rrset.from_rdata_list
    - dns.tsig._maybe_start_digest
    - <builtin>.bytearray
    - dns.opcode.from_flags
    - dns.rdata.from_wire
    - _rdata_classes.get
    - dns.name._validate_labels
    - os.getpid
    - typing.cast
    - <builtin>.tuple
    - _backends.get
    - asyncio.get_running_loop
    - importlib.import_module
    - dns.asyncbackend.set_default_backend
    - hmac.compare_digest
    - contextlib.contextmanager
    - dns.asyncbackend.get_backend
    - typing.cast.recv
    - dns.exception.ExceptionWrapper
    - dns.tsig.GSSTSig.update
    - txn_manager.get_class
    - <builtin>.isinstance
    - dns.xfr.Inbound
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - dns.tsig.HMACTSig.verify
    - <builtin>.super
    - dns.xfr.extract_serial_from_query
    - dns.rdtypes.ANY.OPT.OPT
    - dns.tsig.HMACTSig.sign
    - dns.rrset.RRset
    - <builtin>.open
    - dns.entropy.EntropyPool.random_8
    - dns.message.MessageError.__init__
    - parser.get_remaining
    - dns.tsig.GSSTSig.verify
    - key.name.to_digestable
    - dns.message._maybe_import_update
    - dns.rdata.get_rdata_class
    - dns.entropy.EntropyPool._maybe_seed
    - object.__setattr__
    - dns.inet.af_for_address
    - RdataType.to_text
    - dns.message._WireReader._add_error
    - dns.rrset.RRset.__init__
    - dns.message._WireReader._get_section
    - dns.tokenizer.Tokenizer
    - canonical.append
    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: dns.asyncresolver
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 11
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5b47820>
    - <ast.Attribute object at 0x7fc9c5b47790>
    - <ast.Constant object at 0x7fc9c5b47520>
    - <ast.Constant object at 0x7fc9c5b47d30>
    - <ast.Constant object at 0x7fc9c5b479a0>
    - <ast.Constant object at 0x7fc9c5b47400>
    - <ast.Constant object at 0x7fc9c5b47fd0>
    - <ast.Constant object at 0x7fc9c5b47460>
    - <ast.Constant object at 0x7fc9c5b47430>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    - backend
    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: 4
    functionLinenumber: 48
    functionName: dns.asyncresolver.Resolver.resolve
    functionSourceFile: dns.asyncresolver
    functionUses: 4
    functionsReached:
    - resolution.next_nameserver
    - asyncio.get_running_loop
    - _backends.get
    - dns.asyncbackend.set_default_backend
    - dns.resolver._Resolution
    - dns.asyncbackend.get_default_backend
    - resolution.query_result
    - sniffio.current_async_library
    - dns.asyncbackend.get_backend
    - nameserver.async_query
    - dns.asyncbackend.sniff
    - time.time
    - resolution.next_request
    - dns._asyncio_backend.Backend
    - dns._trio_backend.Backend
    - backend.sleep
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.resolver._Resolution
    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: resolution.next_request
    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: resolution.next_nameserver
    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: backend.sleep
    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: nameserver.async_query
    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: resolution.query_result
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - ipaddr
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 113
    functionName: dns.asyncresolver.Resolver.resolve_address
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - resolution.next_nameserver
    - _colon_colon_start.match
    - dns.asyncresolver.Resolver.resolve
    - _v4_ending.match
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _backends.get
    - address.startswith
    - text.encode
    - resolution.query_result
    - c.isdigit
    - sniffio.current_async_library
    - dns.asyncbackend.get_backend
    - labels.append
    - label.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - m.group
    - <builtin>.isinstance
    - dns._trio_backend.Backend
    - btext.startswith
    - <builtin>.str
    - dns.name._maybe_convert_to_binary
    - btext.endswith
    - dns.resolver._Resolution
    - binascii.hexlify
    - dns.asyncbackend.sniff
    - <builtin>.chr
    - byte_.isdigit
    - time.time
    - encodings.idna.ToASCII
    - dns.asyncbackend.get_default_backend
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - nameserver.async_query
    - dns.name.is_all_ascii
    - dns.ipv6.is_mapped
    - dns._asyncio_backend.Backend
    - dns.name._validate_labels
    - part.isdigit
    - dns.name.Name.__init__
    - _colon_colon_end.match
    - dns.reversename.from_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - modified_kwargs.update
    - asyncio.get_running_loop
    - labels.extend
    - resolution.next_request
    - canonical.append
    - <builtin>.tuple
    - backend.sleep
    - <builtin>.reversed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c69047c0>
    argNames:
    - self
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 141
    functionName: dns.asyncresolver.Resolver.resolve_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - resolution.next_nameserver
    - _backends.get
    - dns.asyncresolver.Resolver.resolve
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - resolution.query_result
    - sniffio.current_async_library
    - dns.asyncbackend.get_backend
    - modified_kwargs.pop
    - dns._trio_backend.Backend
    - dns.resolver._Resolution
    - dns.asyncbackend.sniff
    - time.time
    - dns.resolver.HostAnswers.make
    - dns.asyncbackend.get_default_backend
    - nameserver.async_query
    - dns._asyncio_backend.Backend
    - modified_kwargs.update
    - resolution.next_request
    - backend.sleep
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    - NoAnswer
    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: 5
    functionLinenumber: 210
    functionName: dns.asyncresolver.Resolver.canonical_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - resolution.next_nameserver
    - asyncio.get_running_loop
    - dns.asyncresolver.Resolver.resolve
    - _backends.get
    - dns.asyncbackend.set_default_backend
    - dns.resolver._Resolution
    - dns.asyncbackend.get_default_backend
    - resolution.query_result
    - sniffio.current_async_library
    - dns.asyncbackend.get_backend
    - nameserver.async_query
    - dns.asyncbackend.sniff
    - time.time
    - resolution.next_request
    - dns._asyncio_backend.Backend
    - dns._trio_backend.Backend
    - backend.sleep
    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 0x7fc9c5dd7550>
    argNames:
    - self
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 231
    functionName: dns.asyncresolver.Resolver.try_ddr
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - resolution.next_nameserver
    - _backends.get
    - dns.asyncresolver.Resolver.resolve
    - asyncio.get_running_loop
    - dns.asyncbackend.set_default_backend
    - answer.rrset.processing_order
    - rr.target.to_text
    - dns.ipv6.inet_aton
    - dns.nameserver.DoQNameserver
    - resolution.query_result
    - _v4_ending.match
    - sniffio.current_async_library
    - text.encode
    - dns.asyncbackend.get_backend
    - rr.params.get
    - dns.nameserver.DoHNameserver
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.nameserver.DoTNameserver
    - m.group
    - <builtin>.isinstance
    - dns.query._remaining
    - dns._trio_backend.Backend
    - btext.startswith
    - btext.endswith
    - dns.resolver._Resolution
    - infos.append
    - path.startswith
    - dns.asyncbackend.sniff
    - info.ddr_tls_check_async
    - param.value.endswith
    - time.time
    - urllib.parse.urlparse
    - dns._ddr._get_nameservers_async
    - <builtin>.set
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - nameservers.append
    - nameservers.extend
    - <builtin>.int
    - nameserver.async_query
    - dns._asyncio_backend.Backend
    - dns.inet.is_address
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns._ddr._SVCBInfo.__init__
    - dns._ddr._extract_nameservers_from_svcb
    - resolution.next_request
    - _colon_colon_start.match
    - backend.sleep
    - canonical.append
    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: 1
    functionLinenumber: 266
    functionName: dns.asyncresolver.get_default_resolver
    functionSourceFile: dns.asyncresolver
    functionUses: 8
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    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: 274
    functionName: dns.asyncresolver.reset_default_resolver
    functionSourceFile: ''
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 10
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5a4bb50>
    - <ast.Attribute object at 0x7fc9c5a4b040>
    - <ast.Constant object at 0x7fc9c5a4bdc0>
    - <ast.Constant object at 0x7fc9c5a4bc40>
    - <ast.Constant object at 0x7fc9c5a4b100>
    - <ast.Constant object at 0x7fc9c5a4b520>
    - <ast.Constant object at 0x7fc9c5a4b190>
    - <ast.Constant object at 0x7fc9c5a4be50>
    - <ast.Constant object at 0x7fc9c5a4b700>
    argNames:
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    - backend
    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: 285
    functionName: dns.asyncresolver.resolve
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - ipaddr
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 320
    functionName: dns.asyncresolver.resolve_address
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c57b30d0>
    argNames:
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 332
    functionName: dns.asyncresolver.resolve_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 344
    functionName: dns.asyncresolver.canonical_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6538c70>
    argNames:
    - timeout
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 354
    functionName: dns.asyncresolver.try_ddr
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5be2ca0>
    - <ast.Constant object at 0x7fc9c5be28e0>
    - <ast.Constant object at 0x7fc9c5be2c10>
    - <ast.Constant object at 0x7fc9c5be2490>
    argNames:
    - name
    - rdclass
    - tcp
    - resolver
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 364
    functionName: dns.asyncresolver.zone_for_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - dns.asyncresolver.reset_default_resolver
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - name.is_absolute
    - <builtin>.int
    - dns.name.is_all_ascii
    - name.parent
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.asyncresolver.get_default_resolver
    - resolver.resolve
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - NotAbsolute
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c58b08e0>
    - <ast.Attribute object at 0x7fc9c58b0c40>
    - <ast.Constant object at 0x7fc9c58b0bb0>
    argNames:
    - where
    - port
    - family
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 400
    functionName: dns.asyncresolver.make_resolver_at
    functionSourceFile: dns.asyncresolver
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - dns.nameserver.Do53Nameserver
    - dns.asyncresolver.reset_default_resolver
    - <builtin>.ord
    - nameservers.append
    - <builtin>.int
    - dns.inet.is_address
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - answers.addresses
    - resolver.resolve_name
    - dns.asyncresolver.get_default_resolver
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 14
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5e91070>
    - <ast.Attribute object at 0x7fc9c5e91e20>
    - <ast.Constant object at 0x7fc9c5e91970>
    - <ast.Constant object at 0x7fc9c5e91160>
    - <ast.Constant object at 0x7fc9c5e912e0>
    - <ast.Constant object at 0x7fc9c5e91610>
    - <ast.Constant object at 0x7fc9c5e91e50>
    - <ast.Constant object at 0x7fc9c5e91eb0>
    - <ast.Constant object at 0x7fc9c5e916d0>
    - <ast.Constant object at 0x7fc9c5e917f0>
    - <ast.Attribute object at 0x7fc9c5e91fd0>
    - <ast.Constant object at 0x7fc9c5e91d90>
    argNames:
    - where
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    - backend
    - port
    - family
    - resolver
    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
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 437
    functionName: dns.asyncresolver.resolve_at
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - btext.startswith
    - btext.endswith
    - dns.nameserver.Do53Nameserver
    - dns.asyncresolver.make_resolver_at
    - res.resolve
    - dns.asyncresolver.reset_default_resolver
    - <builtin>.ord
    - nameservers.append
    - <builtin>.int
    - dns.inet.is_address
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - answers.addresses
    - resolver.resolve_name
    - dns.asyncresolver.get_default_resolver
    - canonical.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: res.resolve
    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: dns.asyncbackend
    functionSourceFile: dns.asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 29
    functionName: dns.asyncbackend.get_backend
    functionSourceFile: dns.asyncbackend
    functionUses: 23
    functionsReached:
    - _backends.get
    - dns._asyncio_backend.Backend
    - dns._trio_backend.Backend
    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: 0
    functionLinenumber: -1
    functionName: _backends.get
    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: dns._trio_backend.Backend
    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: dns._asyncio_backend.Backend
    functionSourceFile: <builtin>
    functionUses: 24
    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: 1
    functionLinenumber: 55
    functionName: dns.asyncbackend.sniff
    functionSourceFile: dns.asyncbackend
    functionUses: 20
    functionsReached:
    - asyncio.get_running_loop
    - sniffio.current_async_library
    linkageType: pythonLinkage
    raised:
    - AsyncLibraryNotFoundError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sniffio.current_async_library
    functionSourceFile: sniffio
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 90
    functionName: dns.asyncbackend.set_default_backend
    functionSourceFile: dns.asyncbackend
    functionUses: 20
    functionsReached:
    - _backends.get
    - dns._asyncio_backend.Backend
    - dns.asyncbackend.get_backend
    - dns._trio_backend.Backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns._trio_backend
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns._features._version_check
    - _requirements.get
    - importlib.metadata.version
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - _cache.get
    - version.split
    - dns._features.have
    - requirement.split
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - timeout
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: dns._trio_backend._maybe_timeout
    functionSourceFile: dns._trio_backend
    functionUses: 8
    functionsReached:
    - dns._asyncbackend.NullContext
    - trio.move_on_after
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trio.move_on_after
    functionSourceFile: trio
    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: dns._asyncbackend.NullContext
    functionSourceFile: <builtin>
    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:
    - self
    - sock
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: dns._trio_backend.DatagramSocket.__init__
    functionSourceFile: dns._trio_backend
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - what
    - destination
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 37
    functionName: dns._trio_backend.DatagramSocket.sendto
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.NullContext
    - dns._trio_backend._maybe_timeout
    - trio.move_on_after
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 47
    functionName: dns._trio_backend.DatagramSocket.recvfrom
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.NullContext
    - dns._trio_backend._maybe_timeout
    - trio.move_on_after
    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: 52
    functionName: dns._trio_backend.DatagramSocket.close
    functionSourceFile: dns._trio_backend
    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: dns._trio_backend.DatagramSocket.getpeername
    functionSourceFile: dns._trio_backend
    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: 58
    functionName: dns._trio_backend.DatagramSocket.getsockname
    functionSourceFile: dns._trio_backend
    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
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: dns._trio_backend.DatagramSocket.getpeercert
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6415400>
    argNames:
    - self
    - family
    - stream
    - tls
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: dns._trio_backend.StreamSocket.__init__
    functionSourceFile: dns._trio_backend
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - what
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 71
    functionName: dns._trio_backend.StreamSocket.sendall
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.NullContext
    - dns._trio_backend._maybe_timeout
    - trio.move_on_after
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 76
    functionName: dns._trio_backend.StreamSocket.recv
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.NullContext
    - dns._trio_backend._maybe_timeout
    - trio.move_on_after
    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: 81
    functionName: dns._trio_backend.StreamSocket.close
    functionSourceFile: dns._trio_backend
    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: 84
    functionName: dns._trio_backend.StreamSocket.getpeername
    functionSourceFile: dns._trio_backend
    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: 90
    functionName: dns._trio_backend.StreamSocket.getsockname
    functionSourceFile: dns._trio_backend
    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
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 96
    functionName: dns._trio_backend.StreamSocket.getpeercert
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.NullContext
    - dns._trio_backend._maybe_timeout
    - trio.move_on_after
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - resolver
    - local_port
    - bootstrap_address
    - family
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 116
    functionName: dns._trio_backend._NetworkBackend.__init__
    functionSourceFile: dns._trio_backend
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b448b0>
    - <ast.Constant object at 0x7fc9c5b44df0>
    - <ast.Constant object at 0x7fc9c5b44bb0>
    argNames:
    - self
    - host
    - port
    - timeout
    - local_address
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 123
    functionName: dns._trio_backend._NetworkBackend.connect_tcp
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - dns._trio_backend.StreamSocket.__init__
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - dns.query._remaining
    - addresses.append
    - stream.aclose
    - btext.startswith
    - dns._asyncbackend.NullContext
    - btext.endswith
    - <builtin>.super
    - dns._trio_backend.Backend.make_socket
    - time.time
    - dns._trio_backend.DatagramSocket.__init__
    - httpcore._backends.trio.TrioStream
    - trio.socket.socket
    - s.connect
    - dns.query._expiration_for_this_attempt
    - trio.SocketStream
    - <builtin>.ord
    - trio.move_on_after
    - <builtin>.int
    - dns.inet.is_address
    - part.isdigit
    - <builtin>.min
    - s.close
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - dns.query._compute_times
    - s.bind
    - struct.pack
    - answers.addresses
    - dns._trio_backend._maybe_timeout
    - trio.SSLStream
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61deee0>
    - <ast.Constant object at 0x7fc9c61de490>
    - <ast.Constant object at 0x7fc9c61de250>
    - <ast.Constant object at 0x7fc9c61deb20>
    - <ast.Constant object at 0x7fc9c61de880>
    - <ast.Constant object at 0x7fc9c61dee50>
    argNames:
    - self
    - af
    - socktype
    - proto
    - source
    - destination
    - timeout
    - ssl_context
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 196
    functionName: dns._trio_backend.Backend.make_socket
    functionSourceFile: dns._trio_backend
    functionUses: 1
    functionsReached:
    - dns._trio_backend.StreamSocket.__init__
    - trio.socket.socket
    - s.connect
    - dns._asyncbackend.NullContext
    - s.close
    - trio.SocketStream
    - <builtin>.super
    - s.bind
    - trio.move_on_after
    - dns._trio_backend.DatagramSocket.__init__
    - dns._trio_backend._maybe_timeout
    - trio.SSLStream
    - stream.aclose
    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: 0
    functionLinenumber: -1
    functionName: httpcore._backends.trio.TrioStream
    functionSourceFile: httpcore
    functionUses: 1
    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 0x7fc9c5e91d00>
    - <ast.Constant object at 0x7fc9c5e91e80>
    argNames:
    - self
    - path
    - timeout
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 160
    functionName: dns._trio_backend._NetworkBackend.connect_unix_socket
    functionSourceFile: dns._trio_backend
    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
    - seconds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 165
    functionName: dns._trio_backend._NetworkBackend.sleep
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - trio.sleep
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trio.sleep
    functionSourceFile: trio
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - args
    - local_port
    - bootstrap_address
    - resolver
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 169
    functionName: dns._trio_backend._HTTPTransport.__init__
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.Resolver
    - dns._trio_backend._NetworkBackend.__init__
    - <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: 0
    functionLinenumber: 193
    functionName: dns._trio_backend.Backend.name
    functionSourceFile: dns._trio_backend
    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: trio.socket.socket
    functionSourceFile: trio
    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: s.connect
    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: trio.SocketStream
    functionSourceFile: trio
    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: trio.SSLStream
    functionSourceFile: trio
    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: stream.aclose
    functionSourceFile: <builtin>
    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
    - interval
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 244
    functionName: dns._trio_backend.Backend.sleep
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - trio.sleep
    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: 247
    functionName: dns._trio_backend.Backend.get_transport_class
    functionSourceFile: dns._trio_backend
    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
    - awaitable
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 250
    functionName: dns._trio_backend.Backend.wait_for
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.NullContext
    - dns._trio_backend._maybe_timeout
    - trio.move_on_after
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns._asyncbackend
    functionSourceFile: dns._asyncbackend
    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: 11
    functionName: dns._asyncbackend.NullContext.__enter__
    functionSourceFile: dns._asyncbackend
    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
    - exc_type
    - exc_value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 14
    functionName: dns._asyncbackend.NullContext.__exit__
    functionSourceFile: dns._asyncbackend
    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: 17
    functionName: dns._asyncbackend.NullContext.__aenter__
    functionSourceFile: dns._asyncbackend
    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
    - exc_type
    - exc_value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 20
    functionName: dns._asyncbackend.NullContext.__aexit__
    functionSourceFile: dns._asyncbackend
    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
    - family
    - type
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: dns._asyncbackend.Socket.__init__
    functionSourceFile: dns._asyncbackend
    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: 33
    functionName: dns._asyncbackend.Socket.close
    functionSourceFile: dns._asyncbackend
    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: 36
    functionName: dns._asyncbackend.Socket.getpeername
    functionSourceFile: dns._asyncbackend
    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: dns._asyncbackend.Socket.getsockname
    functionSourceFile: dns._asyncbackend
    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
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: dns._asyncbackend.Socket.getpeercert
    functionSourceFile: dns._asyncbackend
    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: 45
    functionName: dns._asyncbackend.Socket.__aenter__
    functionSourceFile: dns._asyncbackend
    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_value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns._asyncbackend.Socket.__aexit__
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.Socket.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - what
    - destination
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 53
    functionName: dns._asyncbackend.DatagramSocket.sendto
    functionSourceFile: dns._asyncbackend
    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
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 56
    functionName: dns._asyncbackend.DatagramSocket.recvfrom
    functionSourceFile: dns._asyncbackend
    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
    - what
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: dns._asyncbackend.StreamSocket.sendall
    functionSourceFile: dns._asyncbackend
    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
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: dns._asyncbackend.StreamSocket.recv
    functionSourceFile: dns._asyncbackend
    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
    - host
    - port
    - timeout
    - local_address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 69
    functionName: dns._asyncbackend.NullTransport.connect_tcp
    functionSourceFile: dns._asyncbackend
    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: 74
    functionName: dns._asyncbackend.Backend.name
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b44970>
    - <ast.Constant object at 0x7fc9c5b44e20>
    - <ast.Constant object at 0x7fc9c5b44850>
    - <ast.Constant object at 0x7fc9c5b440d0>
    - <ast.Constant object at 0x7fc9c5b44730>
    - <ast.Constant object at 0x7fc9c5b44bb0>
    argNames:
    - self
    - af
    - socktype
    - proto
    - source
    - destination
    - timeout
    - ssl_context
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: dns._asyncbackend.Backend.make_socket
    functionSourceFile: dns._asyncbackend
    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: 90
    functionName: dns._asyncbackend.Backend.datagram_connection_required
    functionSourceFile: dns._asyncbackend
    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
    - interval
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 93
    functionName: dns._asyncbackend.Backend.sleep
    functionSourceFile: dns._asyncbackend
    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: 96
    functionName: dns._asyncbackend.Backend.get_transport_class
    functionSourceFile: dns._asyncbackend
    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
    - awaitable
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 99
    functionName: dns._asyncbackend.Backend.wait_for
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.quic
    functionSourceFile: dns.quic
    functionUses: 0
    functionsReached:
    - dns._features._version_check
    - _requirements.get
    - importlib.metadata.version
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - _cache.get
    - version.split
    - dns._features.have
    - requirement.split
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: dns.quic.null_factory
    functionSourceFile: dns.quic
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.NullContext.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - context
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 31
    functionName: dns.quic._asyncio_manager_factory
    functionSourceFile: dns.quic
    functionUses: 0
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicManager.__init__
    - <builtin>.super
    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 0x7fc9c63763a0>
    - <ast.Attribute object at 0x7fc9c6376730>
    - <ast.Constant object at 0x7fc9c6376670>
    - <ast.Constant object at 0x7fc9c63762b0>
    argNames:
    - self
    - conf
    - verify_mode
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 252
    functionName: dns.quic._asyncio.AsyncioQuicManager.__init__
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    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: 1
    functionLinenumber: 52
    functionName: dns.quic._trio_context_factory
    functionSourceFile: dns.quic
    functionUses: 0
    functionsReached:
    - trio.open_nursery
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trio.open_nursery
    functionSourceFile: trio
    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:
    - context
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.quic._trio_manager_factory
    functionSourceFile: dns.quic
    functionUses: 0
    functionsReached:
    - dns.quic._trio.TrioQuicManager.__init__
    - <builtin>.super
    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 0x7fc9c57e1d30>
    - <ast.Attribute object at 0x7fc9c57e1eb0>
    - <ast.Constant object at 0x7fc9c57e15b0>
    - <ast.Constant object at 0x7fc9c57e19d0>
    argNames:
    - self
    - nursery
    - conf
    - verify_mode
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 220
    functionName: dns.quic._trio.TrioQuicManager.__init__
    functionSourceFile: dns.quic._trio
    functionUses: 1
    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: backend.name
    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: 0
    functionLinenumber: 72
    functionName: dns.quic.AsyncQuicConnection.make_stream
    functionSourceFile: dns.quic
    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: 79
    functionName: dns.quic.SyncQuicConnection.make_stream
    functionSourceFile: dns.quic
    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: dns.quic._sync
    functionSourceFile: dns.quic._sync
    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
    - connection
    - stream_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.quic._sync.SyncQuicStream.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - threading.Lock
    - threading.Condition
    - <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: threading.Condition
    functionSourceFile: threading
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - amount
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 37
    functionName: dns.quic._sync.SyncQuicStream.wait_for
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - <builtin>.max
    - <builtin>.len
    - dns.quic._common.Buffer.have
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: dns.quic._common.BaseQuicStream._timeout_from_expiration
    functionSourceFile: dns.quic._common
    functionUses: 6
    functionsReached:
    - <builtin>.max
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: dns.quic._common.Buffer.have
    functionSourceFile: dns.quic._common
    functionUses: 11
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.quic._sync.SyncQuicStream.wait_for_end
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - <builtin>.max
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - time.time
    - dns.quic._common.Buffer.seen_end
    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: dns.quic._common.Buffer.seen_end
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c65409a0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 59
    functionName: dns.quic._sync.SyncQuicStream.receive
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    - struct.unpack
    - dns.quic._common.Buffer.get_all
    - dns.quic._sync.SyncQuicStream.wait_for
    - <builtin>.max
    - <builtin>.len
    - dns.quic._common.Buffer.have
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - dns.quic._common.Buffer.get
    - time.time
    - dns.quic._common.BaseQuicStream._expiration_from_timeout
    - dns.quic._sync.SyncQuicStream.wait_for_end
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 84
    functionName: dns.quic._common.BaseQuicStream._expiration_from_timeout
    functionSourceFile: dns.quic._common
    functionUses: 2
    functionsReached:
    - time.time
    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: 59
    functionName: dns.quic._common.Buffer.get_all
    functionSourceFile: dns.quic._common
    functionUses: 3
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 53
    functionName: dns.quic._common.Buffer.get
    functionSourceFile: dns.quic._common
    functionUses: 3
    functionsReached:
    - <builtin>.len
    - dns.quic._common.Buffer.have
    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 0x7fc9c57f6490>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 73
    functionName: dns.quic._sync.SyncQuicStream.send
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._encapsulate
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - datagram
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 132
    functionName: dns.quic._common.BaseQuicStream._encapsulate
    functionSourceFile: dns.quic._common
    functionUses: 3
    functionsReached:
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 77
    functionName: dns.quic._sync.SyncQuicStream._add_input
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._common_add_input
    - <builtin>.len
    - dns.quic._common.Buffer.put
    - dns.quic._common.Buffer.have
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 138
    functionName: dns.quic._common.BaseQuicStream._common_add_input
    functionSourceFile: dns.quic._common
    functionUses: 3
    functionsReached:
    - <builtin>.len
    - dns.quic._common.Buffer.put
    - dns.quic._common.Buffer.have
    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: 82
    functionName: dns.quic._sync.SyncQuicStream.close
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._close
    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: 147
    functionName: dns.quic._common.BaseQuicStream._close
    functionSourceFile: dns.quic._common
    functionUses: 6
    functionsReached:
    - dns.quic._common.Buffer.put
    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: 86
    functionName: dns.quic._sync.SyncQuicStream.__enter__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 89
    functionName: dns.quic._sync.SyncQuicStream.__exit__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._sync.SyncQuicStream.close
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 6
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - connection
    - address
    - port
    - source
    - source_port
    - manager
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 97
    functionName: dns.quic._sync.SyncQuicConnection.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - socket.socketpair
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - socket.if_nametoindex
    - <builtin>.isinstance
    - btext.startswith
    - <builtin>.super
    - btext.endswith
    - address.find
    - threading.Lock
    - socket.getaddrinfo
    - <builtin>.ord
    - threading.Event
    - <builtin>.int
    - part.isdigit
    - scope.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.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: socket.socketpair
    functionSourceFile: socket
    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: threading.Event
    functionSourceFile: threading
    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: 116
    functionName: dns.quic._sync.SyncQuicConnection._read
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - time.time
    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: 127
    functionName: dns.quic._sync.SyncQuicConnection._drain_wakeup
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 8
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 134
    functionName: dns.quic._sync.SyncQuicConnection._worker
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.min
    - dns.quic._common.BaseQuicConnection._handle_timer
    - <builtin>.max
    - dns.quic._sync.SyncQuicConnection._handle_events
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - sel.register
    - stream._add_input
    - selectors.DefaultSelector
    - time.time
    - <builtin>.isinstance
    - sel.select
    - dns.quic._common.BaseQuicConnection.is_h3
    - key.data
    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 0x7fc9c5f1b820>
    argNames:
    - self
    - closed_is_special
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 201
    functionName: dns.quic._common.BaseQuicConnection._get_timer_values
    functionSourceFile: dns.quic._common
    functionUses: 4
    functionsReached:
    - <builtin>.max
    - <builtin>.min
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.data
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 214
    functionName: dns.quic._common.BaseQuicConnection._handle_timer
    functionSourceFile: dns.quic._common
    functionUses: 4
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 5
    IfCount: 15
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 168
    functionName: dns.quic._sync.SyncQuicConnection._handle_events
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - dns.quic._common.BaseQuicConnection.is_h3
    - stream._add_input
    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: 187
    functionName: dns.quic._common.BaseQuicConnection.is_h3
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stream._add_input
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c64f3070>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 210
    functionName: dns.quic._sync.SyncQuicConnection.write
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c64f3220>
    argNames:
    - self
    - stream_id
    - headers
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 215
    functionName: dns.quic._sync.SyncQuicConnection.send_headers
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b61ca0>
    argNames:
    - self
    - stream_id
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 221
    functionName: dns.quic._sync.SyncQuicConnection.send_data
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 227
    functionName: dns.quic._sync.SyncQuicConnection.run
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - threading.Thread
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Thread
    functionSourceFile: threading
    functionUses: 1
    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 0x7fc9c5b22100>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 233
    functionName: dns.quic._sync.SyncQuicConnection.make_stream
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._sync.SyncQuicStream.__init__
    - threading.Lock
    - threading.Condition
    - <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
    - stream_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 244
    functionName: dns.quic._sync.SyncQuicConnection.close_stream
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 248
    functionName: dns.quic._sync.SyncQuicConnection.close
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    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 0x7fc9c64057c0>
    - <ast.Attribute object at 0x7fc9c6405e50>
    - <ast.Constant object at 0x7fc9c64058b0>
    - <ast.Constant object at 0x7fc9c6405dc0>
    argNames:
    - self
    - conf
    - verify_mode
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 262
    functionName: dns.quic._sync.SyncQuicManager.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - threading.Lock
    - <builtin>.super
    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 0x7fc9c59d59a0>
    - <ast.Constant object at 0x7fc9c59d54c0>
    - <ast.Constant object at 0x7fc9c59d5760>
    - <ast.Constant object at 0x7fc9c59d5e80>
    - <ast.Constant object at 0x7fc9c59d5a00>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    - want_session_ticket
    - want_token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 268
    functionName: dns.quic._sync.SyncQuicManager.connect
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - aioquic.quic.connection.QuicConnection
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - address.find
    - functools.partial
    - time.time
    - socket.getaddrinfo
    - dns.quic._common.BaseQuicManager._connect
    - copy.copy
    - <builtin>.ord
    - qconn.connect
    - <builtin>.int
    - connection.run
    - part.isdigit
    - scope.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    - socket.if_nametoindex
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59f1b80>
    - <ast.Constant object at 0x7fc9c59f1eb0>
    - <ast.Constant object at 0x7fc9c59f1760>
    - <ast.Constant object at 0x7fc9c59f1160>
    - <ast.Constant object at 0x7fc9c59f1d30>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    - want_session_ticket
    - want_token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 255
    functionName: dns.quic._common.BaseQuicManager._connect
    functionSourceFile: dns.quic._common
    functionUses: 3
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - aioquic.quic.connection.QuicConnection
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - address.find
    - functools.partial
    - time.time
    - socket.getaddrinfo
    - copy.copy
    - <builtin>.ord
    - qconn.connect
    - <builtin>.int
    - part.isdigit
    - scope.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    - socket.if_nametoindex
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: connection.run
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 285
    functionName: dns.quic._sync.SyncQuicManager.closed
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    - ticket
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 289
    functionName: dns.quic._sync.SyncQuicManager.save_session_ticket
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 293
    functionName: dns.quic._sync.SyncQuicManager.save_token
    functionSourceFile: dns.quic._sync
    functionUses: 0
    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: 0
    functionLinenumber: 297
    functionName: dns.quic._sync.SyncQuicManager.__enter__
    functionSourceFile: dns.quic._sync
    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: 300
    functionName: dns.quic._sync.SyncQuicManager.__exit__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - connection.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: connection.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: dns.quic._common
    functionSourceFile: dns.quic._common
    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: 32
    functionName: dns.quic._common.Buffer.__init__
    functionSourceFile: dns.quic._common
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: dns.quic._common.Buffer.put
    functionSourceFile: dns.quic._common
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - connection
    - stream_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: dns.quic._common.BaseQuicStream.__init__
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.__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: 75
    functionName: dns.quic._common.BaseQuicStream.id
    functionSourceFile: dns.quic._common
    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: 78
    functionName: dns.quic._common.BaseQuicStream.headers
    functionSourceFile: dns.quic._common
    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: 81
    functionName: dns.quic._common.BaseQuicStream.trailers
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b26f10>
    argNames:
    - self
    - url
    - datagram
    - post
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 104
    functionName: dns.quic._common.BaseQuicStream.send_h3
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - base64.urlsafe_b64encode
    - url_parts.netloc.encode
    - headers.extend
    - url_parts.path.encode
    - urllib.parse.urlparse
    - url_parts.scheme.encode
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: url_parts.path.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: url_parts.scheme.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: url_parts.netloc.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: headers.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61de670>
    - <ast.Constant object at 0x7fc9c61de8e0>
    - <ast.Constant object at 0x7fc9c61de9a0>
    argNames:
    - self
    - connection
    - address
    - port
    - source
    - source_port
    - manager
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 153
    functionName: dns.quic._common.BaseQuicConnection.__init__
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - socket.if_nametoindex
    - btext.startswith
    - btext.endswith
    - address.find
    - manager.is_h3
    - socket.getaddrinfo
    - <builtin>.ord
    - <builtin>.int
    - aioquic.h3.connection.H3Connection
    - part.isdigit
    - _colon_colon_end.match
    - scope.isdigit
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.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: manager.is_h3
    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: aioquic.h3.connection.H3Connection
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 190
    functionName: dns.quic._common.BaseQuicConnection.close_stream
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e6d2e0>
    argNames:
    - self
    - stream_id
    - headers
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 193
    functionName: dns.quic._common.BaseQuicConnection.send_headers
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c641f940>
    argNames:
    - self
    - stream_id
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 197
    functionName: dns.quic._common.BaseQuicConnection.send_data
    functionSourceFile: dns.quic._common
    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 0x7fc9c64698e0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 221
    functionName: dns.quic._common.AsyncQuicConnection.make_stream
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6469a60>
    - <ast.Constant object at 0x7fc9c6469430>
    argNames:
    - self
    - conf
    - verify_mode
    - connection_factory
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 226
    functionName: dns.quic._common.BaseQuicManager.__init__
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - os.path.isdir
    - aioquic.quic.configuration.QuicConfiguration
    - os.path.isfile
    - conf.load_verify_locations
    - <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: aioquic.quic.configuration.QuicConfiguration
    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: conf.load_verify_locations
    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: copy.copy
    functionSourceFile: copy
    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: functools.partial
    functionSourceFile: functools
    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: aioquic.quic.connection.QuicConnection
    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: qconn.connect
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 311
    functionName: dns.quic._common.BaseQuicManager.closed
    functionSourceFile: dns.quic._common
    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: 317
    functionName: dns.quic._common.BaseQuicManager.is_h3
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    - ticket
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 320
    functionName: dns.quic._common.BaseQuicManager.save_session_ticket
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 331
    functionName: dns.quic._common.BaseQuicManager.save_token
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.len
    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 0x7fc9c6404760>
    - <ast.Constant object at 0x7fc9c6404580>
    - <ast.Constant object at 0x7fc9c64044f0>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 344
    functionName: dns.quic._common.AsyncQuicManager.connect
    functionSourceFile: dns.quic._common
    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: dns.quic._trio
    functionSourceFile: dns.quic._trio
    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
    - connection
    - stream_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: dns.quic._trio.TrioQuicStream.__init__
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - trio.Condition
    - <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: trio.Condition
    functionSourceFile: trio
    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:
    - self
    - amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 32
    functionName: dns.quic._trio.TrioQuicStream.wait_for
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - dns.quic._common.Buffer.have
    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: 41
    functionName: dns.quic._trio.TrioQuicStream.wait_for_end
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    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 0x7fc9c5a4beb0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 48
    functionName: dns.quic._trio.TrioQuicStream.receive
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._trio.TrioQuicStream.wait_for_end
    - dns.quic._common.Buffer.seen_end
    - dns.quic._common.Buffer.get_all
    - struct.unpack
    - dns.quic._trio.TrioQuicStream.wait_for
    - <builtin>.len
    - trio.move_on_after
    - dns.quic._common.Buffer.have
    - dns.quic._common.Buffer.get
    - dns._asyncbackend.NullContext.__init__
    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 0x7fc9c57b3640>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.quic._trio.TrioQuicStream.send
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._encapsulate
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 68
    functionName: dns.quic._trio.TrioQuicStream._add_input
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._common_add_input
    - <builtin>.len
    - dns.quic._common.Buffer.put
    - dns.quic._common.Buffer.have
    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: 73
    functionName: dns.quic._trio.TrioQuicStream.close
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._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: 78
    functionName: dns.quic._trio.TrioQuicStream.__aenter__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 81
    functionName: dns.quic._trio.TrioQuicStream.__aexit__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._trio.TrioQuicStream.close
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5be26d0>
    argNames:
    - self
    - connection
    - address
    - port
    - source
    - source_port
    - manager
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: dns.quic._trio.TrioQuicConnection.__init__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - trio.socket.socket
    - trio.Event
    - <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: trio.Event
    functionSourceFile: trio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 97
    functionName: dns.quic._trio.TrioQuicConnection._worker
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - socket.if_nametoindex
    - btext.startswith
    - btext.endswith
    - dns.quic._trio.TrioQuicConnection._handle_events
    - address.find
    - trio.CancelScope
    - trio.current_time
    - time.time
    - socket.getaddrinfo
    - <builtin>.max
    - <builtin>.ord
    - trio.sleep
    - <builtin>.int
    - dns.quic._common.BaseQuicConnection.is_h3
    - part.isdigit
    - <builtin>.min
    - dns.quic._common.BaseQuicConnection._handle_timer
    - scope.isdigit
    - dns.inet.af_for_address
    - _colon_colon_end.match
    - btext.split
    - dns.inet.low_level_address_tuple
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - stream._add_input
    - canonical.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: trio.current_time
    functionSourceFile: trio
    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: trio.CancelScope
    functionSourceFile: trio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 7
    IfCount: 16
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 134
    functionName: dns.quic._trio.TrioQuicConnection._handle_events
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - dns.quic._common.BaseQuicConnection.is_h3
    - trio.sleep
    - stream._add_input
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e39520>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 179
    functionName: dns.quic._trio.TrioQuicConnection.write
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached: []
    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: 1
    functionLinenumber: 185
    functionName: dns.quic._trio.TrioQuicConnection.run
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - trio.open_nursery
    - nursery.start_soon
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nursery.start_soon
    functionSourceFile: <builtin>
    functionUses: 1
    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 0x7fc9c6404ac0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 192
    functionName: dns.quic._trio.TrioQuicConnection.make_stream
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._trio.TrioQuicStream.__init__
    - <builtin>.super
    - trio.move_on_after
    - trio.Condition
    - dns._asyncbackend.NullContext.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 207
    functionName: dns.quic._trio.TrioQuicConnection.close
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a89ee0>
    - <ast.Constant object at 0x7fc9c5a89df0>
    - <ast.Constant object at 0x7fc9c5a891c0>
    - <ast.Constant object at 0x7fc9c5a89fd0>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    - want_session_ticket
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 231
    functionName: dns.quic._trio.TrioQuicManager.connect
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - aioquic.quic.connection.QuicConnection
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - address.find
    - functools.partial
    - time.time
    - socket.getaddrinfo
    - dns.quic._common.BaseQuicManager._connect
    - copy.copy
    - <builtin>.ord
    - qconn.connect
    - <builtin>.int
    - part.isdigit
    - scope.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    - socket.if_nametoindex
    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: 241
    functionName: dns.quic._trio.TrioQuicManager.__aenter__
    functionSourceFile: dns.quic._trio
    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: 244
    functionName: dns.quic._trio.TrioQuicManager.__aexit__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - connection.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: dns.quic._asyncio
    functionSourceFile: dns.quic._asyncio
    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
    - connection
    - stream_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: dns.quic._asyncio.AsyncioQuicStream.__init__
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - asyncio.Condition
    - <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: asyncio.Condition
    functionSourceFile: asyncio
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 32
    functionName: dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    functionSourceFile: dns.quic._asyncio
    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
    - amount
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 36
    functionName: dns.quic._asyncio.AsyncioQuicStream.wait_for
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - <builtin>.max
    - <builtin>.len
    - asyncio.wait_for
    - dns.quic._common.Buffer.have
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: dns.quic._asyncio.AsyncioQuicStream.wait_for_end
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - <builtin>.max
    - asyncio.wait_for
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e91d60>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 58
    functionName: dns.quic._asyncio.AsyncioQuicStream.receive
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    - struct.unpack
    - dns.quic._common.Buffer.get_all
    - dns.quic._asyncio.AsyncioQuicStream.wait_for_end
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - <builtin>.max
    - <builtin>.len
    - asyncio.wait_for
    - dns.quic._common.Buffer.have
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - dns.quic._common.Buffer.get
    - time.time
    - dns.quic._asyncio.AsyncioQuicStream.wait_for
    - dns.quic._common.BaseQuicStream._expiration_from_timeout
    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 0x7fc9c61de730>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 69
    functionName: dns.quic._asyncio.AsyncioQuicStream.send
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._encapsulate
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 73
    functionName: dns.quic._asyncio.AsyncioQuicStream._add_input
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._common_add_input
    - <builtin>.len
    - dns.quic._common.Buffer.put
    - dns.quic._common.Buffer.have
    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: 78
    functionName: dns.quic._asyncio.AsyncioQuicStream.close
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._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: 83
    functionName: dns.quic._asyncio.AsyncioQuicStream.__aenter__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 86
    functionName: dns.quic._asyncio.AsyncioQuicStream.__aexit__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.put
    - dns.quic._asyncio.AsyncioQuicStream.close
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6481070>
    argNames:
    - self
    - connection
    - address
    - port
    - source
    - source_port
    - manager
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 94
    functionName: dns.quic._asyncio.AsyncioQuicConnection.__init__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - asyncio.Event
    - asyncio.Condition
    - <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: asyncio.Event
    functionSourceFile: asyncio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 104
    functionName: dns.quic._asyncio.AsyncioQuicConnection._receiver
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - _backends.get
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.asyncbackend.get_backend
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - dns._trio_backend.Backend
    - btext.startswith
    - btext.endswith
    - backend.make_socket
    - time.time
    - <builtin>.ord
    - <builtin>.int
    - dns._asyncio_backend.Backend
    - part.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 132
    functionName: dns.quic._asyncio.AsyncioQuicConnection._wakeup
    functionSourceFile: ''
    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: 137
    functionName: dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer
    functionSourceFile: dns.quic._asyncio
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 143
    functionName: dns.quic._asyncio.AsyncioQuicConnection._sender
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer
    - <builtin>.min
    - dns.quic._common.BaseQuicConnection._handle_timer
    - <builtin>.max
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - asyncio.wait_for
    - stream._add_input
    - asyncio.sleep
    - time.time
    - <builtin>.isinstance
    - dns.quic._common.BaseQuicConnection.is_h3
    - dns.quic._asyncio.AsyncioQuicConnection._handle_events
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 7
    IfCount: 17
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 159
    functionName: dns.quic._asyncio.AsyncioQuicConnection._handle_events
    functionSourceFile: dns.quic._asyncio
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - dns.quic._common.BaseQuicConnection.is_h3
    - asyncio.sleep
    - stream._add_input
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bbb8e0>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 206
    functionName: dns.quic._asyncio.AsyncioQuicConnection.write
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    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: 210
    functionName: dns.quic._asyncio.AsyncioQuicConnection.run
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _backends.get
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.asyncbackend.get_backend
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - dns._trio_backend.Backend
    - btext.startswith
    - asyncio.Task
    - dns.quic._asyncio.AsyncioQuicConnection._sender
    - btext.endswith
    - backend.make_socket
    - time.time
    - <builtin>.max
    - dns.quic._asyncio.AsyncioQuicConnection._receiver
    - <builtin>.ord
    - asyncio.wait_for
    - <builtin>.int
    - asyncio.sleep
    - dns.quic._common.BaseQuicConnection.is_h3
    - dns._asyncio_backend.Backend
    - dns.quic._asyncio.AsyncioQuicConnection._handle_events
    - dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer
    - part.isdigit
    - <builtin>.min
    - dns.quic._common.BaseQuicConnection._handle_timer
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - stream._add_input
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    - canonical.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: asyncio.Task
    functionSourceFile: asyncio
    functionUses: 1
    functionsReached: []
    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 0x7fc9c5bbb0a0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 216
    functionName: dns.quic._asyncio.AsyncioQuicConnection.make_stream
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicStream.__init__
    - asyncio.Condition
    - asyncio.wait_for
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 228
    functionName: dns.quic._asyncio.AsyncioQuicConnection.close
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f1b970>
    - <ast.Constant object at 0x7fc9c5f1b370>
    - <ast.Constant object at 0x7fc9c5f1b4f0>
    - <ast.Constant object at 0x7fc9c5f1bf40>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    - want_session_ticket
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 257
    functionName: dns.quic._asyncio.AsyncioQuicManager.connect
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - aioquic.quic.connection.QuicConnection
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - address.find
    - functools.partial
    - time.time
    - socket.getaddrinfo
    - dns.quic._common.BaseQuicManager._connect
    - copy.copy
    - <builtin>.ord
    - qconn.connect
    - <builtin>.int
    - connection.run
    - part.isdigit
    - scope.isdigit
    - _colon_colon_end.match
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - dns.inet.low_level_address_tuple
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    - socket.if_nametoindex
    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: 267
    functionName: dns.quic._asyncio.AsyncioQuicManager.__aenter__
    functionSourceFile: dns.quic._asyncio
    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: 270
    functionName: dns.quic._asyncio.AsyncioQuicManager.__aexit__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - connection.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: dns.rdtypes.ANY.PTR
    functionSourceFile: dns.rdtypes.ANY.PTR
    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: dns.rdtypes.nsbase
    functionSourceFile: dns.rdtypes.nsbase
    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
    - rdclass
    - rdtype
    - target
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.rdtypes.nsbase.NSBase.__init__
    functionSourceFile: dns.rdtypes.nsbase
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c6117fd0>
    - <ast.Constant object at 0x7fc9c6117610>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: dns.rdtypes.nsbase.NSBase.to_text
    functionSourceFile: dns.rdtypes.nsbase
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61175b0>
    - <ast.Constant object at 0x7fc9c61179d0>
    - <ast.Constant object at 0x7fc9c6117dc0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 41
    functionName: dns.rdtypes.nsbase.NSBase.from_text
    functionSourceFile: dns.rdtypes.nsbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.nsbase.NSBase.__init__
    - tok.get_name
    - <builtin>.super
    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 0x7fc9c61170d0>
    - <ast.Constant object at 0x7fc9c6117a00>
    - <ast.Constant object at 0x7fc9c6117c40>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 47
    functionName: dns.rdtypes.nsbase.NSBase._to_wire
    functionSourceFile: dns.rdtypes.nsbase
    functionUses: 0
    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 0x7fc9c6481df0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 51
    functionName: dns.rdtypes.nsbase.NSBase.from_wire_parser
    functionSourceFile: dns.rdtypes.nsbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.nsbase.NSBase.__init__
    - parser.get_name
    - <builtin>.super
    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 0x7fc9c64815b0>
    - <ast.Constant object at 0x7fc9c6481c70>
    - <ast.Constant object at 0x7fc9c6481610>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 62
    functionName: dns.rdtypes.nsbase.UncompressedNS._to_wire
    functionSourceFile: dns.rdtypes.nsbase
    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: 5
    functionLinenumber: -1
    functionName: dns.e164
    functionSourceFile: dns.e164
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7fc9c5e91c70>
    argNames:
    - text
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 30
    functionName: dns.e164.from_e164
    functionSourceFile: dns.e164
    functionUses: 1
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - parts.reverse
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - d.isdigit
    - <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: d.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: parts.reverse
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7fc9c5e91ee0>
    - <ast.Constant object at 0x7fc9c5e91070>
    argNames:
    - name
    - origin
    - want_plus_prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 52
    functionName: dns.e164.to_e164
    functionSourceFile: dns.e164
    functionUses: 0
    functionsReached:
    - name.relativize
    - <builtin>.len
    - dlabels.reverse
    - text.decode
    - d.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dlabels.reverse
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61de3d0>
    argNames:
    - number
    - domains
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 88
    functionName: dns.e164.query
    functionSourceFile: dns.e164
    functionUses: 0
    functionsReached:
    - dns.resolver.BaseResolver.use_edns
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - dns.win32util.DnsInfo.__init__
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.resolver.get_default_resolver
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - opt.split
    - dns.resolver.reset_default_resolver
    - dns.name._maybe_convert_to_binary
    - dns.resolver.NXDOMAIN
    - <builtin>.super
    - parts.reverse
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.chr
    - byte_.isdigit
    - <builtin>.open
    - dns.name.Name
    - encodings.idna.ToASCII
    - dns.resolver.BaseResolver.reset
    - dns.win32util._RegistryGetter.__init__
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.win32util.get_dns_info
    - dns.e164.from_e164
    - <builtin>.int
    - nameservers.append
    - dns.name.is_all_ascii
    - l.split
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.__init__
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.resolver.BaseResolver.read_registry
    - labels.extend
    - d.isdigit
    - socket.gethostname
    - resolver.resolve
    - <builtin>.tuple
    - getter.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: dns.resolver.NXDOMAIN
    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: dns.versioned
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5860400>
    - <ast.Constant object at 0x7fc9c58601c0>
    - <ast.Constant object at 0x7fc9c58609d0>
    argNames:
    - self
    - origin
    - rdclass
    - relativize
    - pruning_policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 46
    functionName: dns.versioned.Zone.__init__
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <builtin>.min
    - <builtin>.set
    - <builtin>.super
    - <builtin>.len
    - dns.versioned.Zone._default_pruning_policy
    - dns.versioned.Zone.set_max_versions.policy
    - collections.deque
    - threading.Lock
    - dns.versioned.Zone._commit_version_unlocked
    - dns.versioned.Zone._prune_versions_unlocked
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - txn
    - version
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 252
    functionName: dns.versioned.Zone._commit_version_unlocked
    functionSourceFile: dns.versioned
    functionUses: 2
    functionsReached:
    - <builtin>.min
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.len
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._prune_versions_unlocked
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e9d580>
    - <ast.Constant object at 0x7fc9c5e9dcd0>
    argNames:
    - self
    - id
    - serial
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 83
    functionName: dns.versioned.Zone.reader
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - v.nodes.get
    - <builtin>.reversed
    - typing.cast
    - n.get_rdataset
    linkageType: pythonLinkage
    raised:
    - ValueError
    - KeyError
    returnType: N/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.nodes.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: n.get_rdataset
    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:
    - <ast.Constant object at 0x7fc9c6404580>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: dns.versioned.Zone.writer
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - event.wait
    - threading.Event
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: event.wait
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 171
    functionName: dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    functionSourceFile: dns.versioned
    functionUses: 5
    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
    - zone
    - version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 177
    functionName: dns.versioned.Zone._default_pruning_policy
    functionSourceFile: dns.versioned
    functionUses: 7
    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: 182
    functionName: dns.versioned.Zone._prune_versions_unlocked
    functionSourceFile: dns.versioned
    functionUses: 6
    functionsReached:
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._default_pruning_policy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - zone
    - _
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 213
    functionName: dns.versioned.Zone.set_max_versions.policy
    functionSourceFile: dns.versioned
    functionUses: 7
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - max_versions
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 200
    functionName: dns.versioned.Zone.set_max_versions
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone._default_pruning_policy
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._prune_versions_unlocked
    - dns.versioned.Zone.set_pruning_policy
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - policy
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 218
    functionName: dns.versioned.Zone.set_pruning_policy
    functionSourceFile: dns.versioned
    functionUses: 1
    functionsReached:
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone._default_pruning_policy
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._prune_versions_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 238
    functionName: dns.versioned.Zone._end_read
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone._default_pruning_policy
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._prune_versions_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 243
    functionName: dns.versioned.Zone._end_write_unlocked
    functionSourceFile: dns.versioned
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 248
    functionName: dns.versioned.Zone._end_write
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - txn
    - version
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 262
    functionName: dns.versioned.Zone._commit_version
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <builtin>.min
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.len
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._commit_version_unlocked
    - dns.versioned.Zone._prune_versions_unlocked
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    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: 266
    functionName: dns.versioned.Zone._get_next_version_id
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <builtin>.len
    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 0x7fc9c63812b0>
    argNames:
    - self
    - name
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 273
    functionName: dns.versioned.Zone.find_node
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <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: 280
    functionName: dns.versioned.Zone.delete_node
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c64499a0>
    - <ast.Constant object at 0x7fc9c6449be0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 283
    functionName: dns.versioned.Zone.find_rdataset
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c6415070>
    - <ast.Constant object at 0x7fc9c64154f0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 295
    functionName: dns.versioned.Zone.get_rdataset
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5900940>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 310
    functionName: dns.versioned.Zone.delete_rdataset
    functionSourceFile: dns.versioned
    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
    - name
    - replacement
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 318
    functionName: dns.versioned.Zone.replace_rdataset
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.dnssec
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns._features._version_check
    - _requirements.get
    - importlib.metadata.version
    - int_parts.append
    - <builtin>.set
    - dns.dnssec.SimpleDeny.__init__
    - <builtin>.super
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - _cache.get
    - version.split
    - dns._features.have
    - requirement.split
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 76
    functionName: dns.dnssec.algorithm_from_text
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - Algorithm.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Algorithm.from_text
    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:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: dns.dnssec.algorithm_to_text
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - Algorithm.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Algorithm.to_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 98
    functionName: dns.dnssec.to_timestamp
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - <builtin>.int
    - calendar.timegm
    - dns.rdtypes.ANY.RRSIG.sigtime_to_posixtime
    - what.isdigit
    - <builtin>.isinstance
    - value.timestamp
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.timestamp
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.RRSIG.sigtime_to_posixtime
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    functionUses: 4
    functionsReached:
    - what.isdigit
    - <builtin>.len
    - calendar.timegm
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 112
    functionName: dns.dnssec.key_id
    functionSourceFile: dns.dnssec
    functionUses: 9
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    - key.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.to_wire
    functionSourceFile: <builtin>
    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: 135
    functionName: dns.dnssec.Policy.__init__
    functionSourceFile: dns.dnssec
    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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 138
    functionName: dns.dnssec.Policy.ok_to_sign
    functionSourceFile: dns.dnssec
    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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 141
    functionName: dns.dnssec.Policy.ok_to_validate
    functionSourceFile: dns.dnssec
    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
    - algorithm
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 144
    functionName: dns.dnssec.Policy.ok_to_create_ds
    functionSourceFile: dns.dnssec
    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
    - algorithm
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 147
    functionName: dns.dnssec.Policy.ok_to_validate_ds
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - deny_sign
    - deny_validate
    - deny_create_ds
    - deny_validate_ds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: dns.dnssec.SimpleDeny.__init__
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - <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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 159
    functionName: dns.dnssec.SimpleDeny.ok_to_sign
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 162
    functionName: dns.dnssec.SimpleDeny.ok_to_validate
    functionSourceFile: dns.dnssec
    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
    - algorithm
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 165
    functionName: dns.dnssec.SimpleDeny.ok_to_create_ds
    functionSourceFile: dns.dnssec
    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
    - algorithm
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 168
    functionName: dns.dnssec.SimpleDeny.ok_to_validate_ds
    functionSourceFile: dns.dnssec
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 3
    IfCount: 9
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a32310>
    - <ast.Constant object at 0x7fc9c5a32490>
    - <ast.Constant object at 0x7fc9c5a32be0>
    argNames:
    - name
    - key
    - algorithm
    - origin
    - policy
    - validating
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 185
    functionName: dns.dnssec.make_ds
    functionSourceFile: dns.dnssec
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - text.encode
    - c.isdigit
    - dns.rdataclass.to_text
    - contextlib.contextmanager
    - hashlib.sha1
    - dshash.digest
    - dns.rdatatype.to_text
    - labels.append
    - dns.exception.ExceptionWrapper
    - dns.dnssec.key_id
    - label.encode
    - <builtin>.range
    - parser.restrict_to
    - algorithm.upper
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - name.canonicalize
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - hashlib.sha384
    - hashlib.sha256
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - dns.name.is_all_ascii
    - RdataClass.to_text
    - dns.rdataclass.RdataClass.make
    - dns.rdata.from_wire
    - dns.wire.Parser
    - key.to_wire
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - <builtin>.len
    - RdataType.to_text
    - struct.pack
    - labels.extend
    - dshash.update
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    - UnsupportedAlgorithm
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: algorithm.upper
    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: 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.sha384
    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: name.canonicalize
    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: dshash.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: dshash.digest
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61fcb80>
    argNames:
    - name
    - key
    - algorithm
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 262
    functionName: dns.dnssec.make_cds
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - <builtin>.getattr
    - importlib.import_module
    - text.encode
    - c.isdigit
    - dns.rdataclass.to_text
    - contextlib.contextmanager
    - hashlib.sha1
    - dshash.digest
    - dns.rdatatype.to_text
    - labels.append
    - dns.exception.ExceptionWrapper
    - dns.dnssec.key_id
    - label.encode
    - <builtin>.range
    - parser.restrict_to
    - algorithm.upper
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - name.canonicalize
    - <builtin>.isinstance
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - dns.dnssec.make_ds
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - hashlib.sha384
    - hashlib.sha256
    - <builtin>.int
    - dns.rdata.from_wire_parser
    - dns.name.is_all_ascii
    - RdataClass.to_text
    - dns.rdataclass.RdataClass.make
    - dns.rdata.from_wire
    - dns.wire.Parser
    - key.to_wire
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - <builtin>.len
    - RdataType.to_text
    - struct.pack
    - labels.extend
    - dshash.update
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - keys
    - rrsig
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 298
    functionName: dns.dnssec._find_candidate_keys
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - keys.get
    - dns.dnssec.key_id
    - value.get_rdataset
    - <builtin>.range
    - <builtin>.isinstance
    - typing.cast
    - key.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keys.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: value.get_rdataset
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rrset
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 318
    functionName: dns.dnssec._get_rrname_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 6
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - sig
    - data
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 327
    functionName: dns.dnssec._validate_signature
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - contextlib.contextmanager
    - dns.dnssecalgs.get_algorithm_cls
    - labels.append
    - label.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - parser.seek
    - public_cls.from_dnskey
    - parser.get_uint8
    - public_key.verify
    - dns.name.from_wire_parser
    - <builtin>.int
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.wire.Parser
    - dns.name._validate_labels
    - algorithms.get
    - Algorithm.make
    - dns.name.Name.__init__
    - <builtin>.len
    - parser.get_bytes
    - dns.name.from_wire
    - parser.restore_furthest
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValidationFailure
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - dnskey
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 70
    functionName: dns.dnssecalgs.get_algorithm_cls_from_dnskey
    functionSourceFile: dns.dnssecalgs
    functionUses: 5
    functionsReached:
    - contextlib.contextmanager
    - dns.dnssecalgs.get_algorithm_cls
    - labels.append
    - label.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - parser.seek
    - parser.get_uint8
    - dns.name.from_wire_parser
    - <builtin>.int
    - dns.wire.Parser
    - dns.name._validate_labels
    - algorithms.get
    - Algorithm.make
    - dns.name.Name.__init__
    - <builtin>.len
    - parser.get_bytes
    - dns.name.from_wire
    - parser.restore_furthest
    - <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: public_cls.from_dnskey
    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: public_key.verify
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bcc1f0>
    - <ast.Constant object at 0x7fc9c5bcc940>
    - <ast.Constant object at 0x7fc9c5bcce20>
    argNames:
    - rrset
    - rrsig
    - keys
    - origin
    - now
    - policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 337
    functionName: dns.dnssec._validate_rrsig
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - rrsig.to_wire
    - rrname.to_digestable
    - keys.get
    - labels.append
    - dns.dnssecalgs.get_algorithm_cls
    - dns.dnssec.key_id
    - <builtin>.range
    - label.encode
    - rrname.is_wild
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - rdata.to_digestable
    - dns.dnssec.SimpleDeny.ok_to_validate
    - dns.name._maybe_convert_to_binary
    - rrname.derelativize
    - <builtin>.chr
    - value.get_rdataset
    - byte_.isdigit
    - parser.seek
    - public_cls.from_dnskey
    - time.time
    - parser.get_uint8
    - public_key.verify
    - dns.name.from_wire_parser
    - encodings.idna.ToASCII
    - rrsig.signer.to_digestable
    - rrname.is_absolute
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.wire.Parser
    - key.to_wire
    - dns.name._validate_labels
    - <builtin>.sorted
    - dns.dnssec._validate_signature
    - signer.derelativize
    - algorithms.get
    - Algorithm.make
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - dns.dnssec._make_rrsig_signature_data
    - parser.restore_furthest
    - dns.dnssec._find_candidate_keys
    - labels.extend
    - signer.is_absolute
    - dns.dnssec._get_rrname_rdataset
    - rrname.split
    - parser.get_bytes
    - dns.name.from_wire
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValidationFailure
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c619e610>
    argNames:
    - rrset
    - rrsig
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 607
    functionName: dns.dnssec._make_rrsig_signature_data
    functionSourceFile: dns.dnssec
    functionUses: 4
    functionsReached:
    - text.encode
    - c.isdigit
    - rrsig.to_wire
    - rrname.to_digestable
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - rrname.is_wild
    - rdata.to_digestable
    - dns.name._maybe_convert_to_binary
    - rrname.derelativize
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - rrsig.signer.to_digestable
    - rrname.is_absolute
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - <builtin>.sorted
    - signer.derelativize
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - signer.is_absolute
    - dns.dnssec._get_rrname_rdataset
    - rrname.split
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValidationFailure
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e2e80>
    - <ast.Constant object at 0x7fc9c56e2df0>
    - <ast.Constant object at 0x7fc9c56e2070>
    argNames:
    - rrset
    - rrsigset
    - keys
    - origin
    - now
    - policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 407
    functionName: dns.dnssec._validate
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - dns.dnssec._validate_rrsig
    - rrsig.to_wire
    - rrname.to_digestable
    - dns.dnssecalgs.get_algorithm_cls
    - labels.append
    - keys.get
    - label.encode
    - dns.dnssec.key_id
    - <builtin>.range
    - rrsigname.choose_relativity
    - dns.name.from_unicode
    - rrname.is_wild
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - rdata.to_digestable
    - dns.dnssec.SimpleDeny.ok_to_validate
    - dns.name._maybe_convert_to_binary
    - rrname.derelativize
    - <builtin>.chr
    - value.get_rdataset
    - byte_.isdigit
    - parser.seek
    - public_cls.from_dnskey
    - time.time
    - parser.get_uint8
    - public_key.verify
    - dns.name.from_wire_parser
    - encodings.idna.ToASCII
    - rrsig.signer.to_digestable
    - rrname.is_absolute
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - rrname.choose_relativity
    - dns.wire.Parser
    - dns.name._validate_labels
    - key.to_wire
    - <builtin>.sorted
    - dns.dnssec._validate_signature
    - dns.name.Name.__init__
    - signer.derelativize
    - algorithms.get
    - Algorithm.make
    - <builtin>.len
    - struct.pack
    - dns.dnssec._make_rrsig_signature_data
    - parser.restore_furthest
    - labels.extend
    - dns.dnssec._find_candidate_keys
    - signer.is_absolute
    - dns.dnssec._get_rrname_rdataset
    - rrname.split
    - parser.get_bytes
    - dns.name.from_wire
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValidationFailure
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rrname.choose_relativity
    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: rrsigname.choose_relativity
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 1
    IfCount: 9
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c639c400>
    - <ast.Constant object at 0x7fc9c639c220>
    - <ast.Constant object at 0x7fc9c639c910>
    - <ast.Constant object at 0x7fc9c639ccd0>
    - <ast.Constant object at 0x7fc9c639c2b0>
    - <ast.Constant object at 0x7fc9c639c4c0>
    - <ast.Constant object at 0x7fc9c639cb80>
    argNames:
    - rrset
    - private_key
    - signer
    - dnskey
    - inception
    - expiration
    - lifetime
    - verify
    - policy
    - origin
    - deterministic
    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: 6
    functionLinenumber: 480
    functionName: dns.dnssec._sign
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.dnssec.to_timestamp
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - rrsig.to_wire
    - rrname.to_digestable
    - dns.dnssecalgs.get_algorithm_cls
    - labels.append
    - dns.dnssec.key_id
    - <builtin>.range
    - label.encode
    - what.isdigit
    - <builtin>.isinstance
    - rrname.is_wild
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - rdata.to_digestable
    - dns.dnssectypes.Algorithm.make
    - dns.name._maybe_convert_to_binary
    - typing.cast
    - <builtin>.super
    - rrname.derelativize
    - dns.rdtypes.ANY.RRSIG.RRSIG.__init__
    - <builtin>.chr
    - byte_.isdigit
    - parser.seek
    - dns.rdtypes.ANY.RRSIG.sigtime_to_posixtime
    - time.time
    - signing_key.sign
    - parser.get_uint8
    - value.timestamp
    - calendar.timegm
    - dns.name.from_wire_parser
    - encodings.idna.ToASCII
    - rrsig.signer.to_digestable
    - rrname.is_absolute
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.wire.Parser
    - key.to_wire
    - dns.name._validate_labels
    - <builtin>.sorted
    - signer.derelativize
    - algorithms.get
    - Algorithm.make
    - dns.name.Name.__init__
    - dns.dnssec.SimpleDeny.ok_to_sign
    - <builtin>.len
    - struct.pack
    - dns.dnssec._make_rrsig_signature_data
    - labels.extend
    - parser.get_bytes
    - signer.is_absolute
    - dns.dnssec._get_rrname_rdataset
    - rrname.split
    - dns.name.from_wire
    - parser.restore_furthest
    - <builtin>.tuple
    - rrsig_template.replace
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rrname.derelativize
    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: rrname.is_wild
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 12
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - type_covered
    - algorithm
    - labels
    - original_ttl
    - expiration
    - inception
    - key_tag
    - signer
    - signature
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: dns.rdtypes.ANY.RRSIG.RRSIG.__init__
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    functionUses: 4
    functionsReached:
    - dns.dnssectypes.Algorithm.make
    - <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: signing_key.sign
    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: rrsig_template.replace
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: signer.is_absolute
    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: signer.derelativize
    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: rrsig.to_wire
    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: rrsig.signer.to_digestable
    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: rrname.is_absolute
    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: rrname.split
    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: rrname.to_digestable
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5b34c10>
    - <ast.Constant object at 0x7fc9c5b34760>
    argNames:
    - public_key
    - algorithm
    - flags
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 674
    functionName: dns.dnssec._make_dnskey
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - algorithms.get
    - Algorithm.make
    - dns.dnssecalgs.get_algorithm_cls
    - public_key.to_dnskey
    - <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: Algorithm.make
    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: public_key.to_dnskey
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    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 0x7fc9c5e23b50>
    argNames:
    - algorithm
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: dns.dnssecalgs.get_algorithm_cls
    functionSourceFile: dns.dnssecalgs
    functionUses: 8
    functionsReached:
    - algorithms.get
    - Algorithm.make
    linkageType: pythonLinkage
    raised:
    - UnsupportedAlgorithm
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5b342b0>
    - <ast.Constant object at 0x7fc9c5b349a0>
    argNames:
    - public_key
    - algorithm
    - flags
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 709
    functionName: dns.dnssec._make_cdnskey
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - Algorithm.make
    - algorithms.get
    - dns.dnssecalgs.get_algorithm_cls
    - public_key.to_dnskey
    - <builtin>.isinstance
    - dns.dnssec._make_dnskey
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 4
    argDefaultValues: []
    argNames:
    - domain
    - salt
    - iterations
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 747
    functionName: dns.dnssec.nsec3_hash
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - domain.canonicalize
    - str.maketrans
    - text.encode
    - c.isdigit
    - hashlib.sha1
    - labels.append
    - label.encode
    - <builtin>.range
    - algorithm.upper
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - base64.b32encode
    - output.translate
    - <builtin>.list
    - dns.name.from_text
    - bytes.fromhex
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    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: str.maketrans
    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: bytes.fromhex
    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: domain.canonicalize
    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: base64.b32encode
    functionSourceFile: base64
    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: output.translate
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6362700>
    argNames:
    - rrset
    - algorithms
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 808
    functionName: dns.dnssec.make_ds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - c.isdigit
    - dns.ttl.from_text
    - dns.rdataset.Rdataset.update_ttl
    - name.canonicalize
    - dns.ttl.make
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - dns.rdata.from_wire_parser
    - RdataClass.to_text
    - dns.wire.Parser
    - c.lower
    - key.to_wire
    - dns.name.Name.__init__
    - <builtin>.len
    - labels.extend
    - dshash.update
    - <builtin>.getattr
    - dns.rdataclass.to_text
    - dns.rdatatype.to_text
    - dshash.digest
    - labels.append
    - dns.rdataset.from_rdata_list
    - label.encode
    - <builtin>.range
    - dns.rdataset.ImmutableRdataset.add
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - typing.cast.covers
    - byte_.isdigit
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.dnssec.make_ds
    - dns.rdata.GenericRdata.__init__
    - <builtin>.ord
    - dns.rdataclass.RdataClass.make
    - <builtin>.int
    - dns.name.is_all_ascii
    - struct.pack
    - dns.rdataset.Rdataset.add
    - res.extend
    - dns.dnssec.cds_rdataset_to_ds_rdataset
    - text.encode
    - _algorithms.add
    - parser.restrict_to
    - algorithm.upper
    - dns.rdataset.Rdataset.__init__
    - dns.rdataset.ImmutableRdataset.update_ttl
    - <builtin>.chr
    - rdtype_text.replace
    - hashlib.sha384
    - text.isdigit
    - dns.rdata.from_wire
    - res.append
    - dns.name._validate_labels
    - _rdata_classes.get
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - dns.dnssec.dnskey_rdataset_to_cds_rdataset
    - typing.cast
    - <builtin>.tuple
    - importlib.import_module
    - contextlib.contextmanager
    - hashlib.sha1
    - dns.exception.ExceptionWrapper
    - dns.dnssec.key_id
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.rdatatype.is_singleton
    - parser.get_remaining
    - <builtin>.set
    - hashlib.sha256
    - dns.rdata.get_rdata_class
    - RdataType.to_text
    - dns.dnssec.make_cds
    - dns.dnssec._get_rrname_rdataset
    linkageType: pythonLinkage
    raised:
    - ValueError
    - UnsupportedAlgorithm
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _algorithms.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdataset
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 866
    functionName: dns.dnssec.cds_rdataset_to_ds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - c.isdigit
    - dns.rdataset.from_rdata_list
    - dns.ttl.from_text
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.rdatatype.is_singleton
    - <builtin>.int
    - text.isdigit
    - res.append
    - c.lower
    - <builtin>.len
    - dns.rdataset.Rdataset.add
    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: res.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c58f5340>
    argNames:
    - name
    - rdataset
    - algorithm
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 895
    functionName: dns.dnssec.dnskey_rdataset_to_cds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - <builtin>.getattr
    - importlib.import_module
    - text.encode
    - c.isdigit
    - dns.rdataclass.to_text
    - contextlib.contextmanager
    - hashlib.sha1
    - dshash.digest
    - dns.rdatatype.to_text
    - labels.append
    - dns.rdataset.from_rdata_list
    - dns.ttl.from_text
    - dns.dnssec.key_id
    - label.encode
    - <builtin>.range
    - dns.exception.ExceptionWrapper
    - algorithm.upper
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - dns.name.from_unicode
    - name.canonicalize
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - parser.restrict_to
    - dns.rdatatype.RdataType.make
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - <builtin>.chr
    - byte_.isdigit
    - dns.rdatatype.is_singleton
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdata.GenericRdata.from_wire_parser
    - rdtype_text.replace
    - dns.dnssec.make_ds
    - encodings.idna.ToASCII
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - hashlib.sha384
    - <builtin>.int
    - hashlib.sha256
    - dns.rdata.from_wire_parser
    - dns.name.is_all_ascii
    - RdataClass.to_text
    - dns.rdataclass.RdataClass.make
    - text.isdigit
    - dns.rdata.from_wire
    - res.append
    - dns.wire.Parser
    - c.lower
    - key.to_wire
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - <builtin>.len
    - RdataType.to_text
    - struct.pack
    - dns.rdataset.Rdataset.add
    - dns.dnssec.make_cds
    - labels.extend
    - dshash.update
    - typing.cast
    - <builtin>.tuple
    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: res.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdataset
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 928
    functionName: dns.dnssec.dnskey_rdataset_to_cdnskey_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.clear
    - c.isdigit
    - dns.rdataset.from_rdata_list
    - dns.ttl.from_text
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - typing.cast.covers
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.ttl.make
    - dns.rdatatype.is_singleton
    - <builtin>.int
    - text.isdigit
    - res.append
    - c.lower
    - <builtin>.len
    - dns.rdataset.Rdataset.add
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a87070>
    - <ast.Constant object at 0x7fc9c5a876d0>
    - <ast.Constant object at 0x7fc9c5a87310>
    - <ast.Constant object at 0x7fc9c5a87ac0>
    - <ast.Constant object at 0x7fc9c5a87d00>
    - <ast.Constant object at 0x7fc9c5a87400>
    argNames:
    - txn
    - rrset
    - signer
    - ksks
    - zsks
    - inception
    - expiration
    - lifetime
    - policy
    - origin
    - deterministic
    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: 7
    functionLinenumber: 955
    functionName: dns.dnssec.default_rrset_signer
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.dnssec.to_timestamp
    - dns.dnssec._sign
    - text.encode
    - c.isdigit
    - contextlib.contextmanager
    - rrsig.to_wire
    - rrname.to_digestable
    - dns.dnssecalgs.get_algorithm_cls
    - labels.append
    - dns.dnssec.key_id
    - <builtin>.range
    - label.encode
    - rrname.is_wild
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - rdata.to_digestable
    - what.isdigit
    - dns.dnssectypes.Algorithm.make
    - dns.name._maybe_convert_to_binary
    - typing.cast
    - <builtin>.super
    - rrname.derelativize
    - dns.rdtypes.ANY.RRSIG.RRSIG.__init__
    - <builtin>.chr
    - dns.dnssec._need_pyca
    - byte_.isdigit
    - parser.seek
    - time.time
    - dns.rdtypes.ANY.RRSIG.sigtime_to_posixtime
    - signing_key.sign
    - parser.get_uint8
    - calendar.timegm
    - value.timestamp
    - dns.name.from_wire_parser
    - encodings.idna.ToASCII
    - <builtin>.set
    - rrsig.signer.to_digestable
    - rrname.is_absolute
    - <builtin>.list
    - txn.add
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.wire.Parser
    - key.to_wire
    - dns.name._validate_labels
    - <builtin>.sorted
    - signer.derelativize
    - algorithms.get
    - Algorithm.make
    - dns.name.Name.__init__
    - dns.dnssec.SimpleDeny.ok_to_sign
    - <builtin>.len
    - struct.pack
    - dns.dnssec._make_rrsig_signature_data
    - labels.extend
    - parser.get_bytes
    - signer.is_absolute
    - dns.dnssec._get_rrname_rdataset
    - rrname.split
    - dns.name.from_wire
    - parser.restore_furthest
    - <builtin>.tuple
    - rrsig_template.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1191
    functionName: dns.dnssec._need_pyca
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ImportError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: txn.add
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 4
    IfCount: 10
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5ef81c0>
    - <ast.Constant object at 0x7fc9c5ef8fd0>
    - <ast.Constant object at 0x7fc9c5ef8c70>
    - <ast.Constant object at 0x7fc9c5ef8e50>
    - <ast.Constant object at 0x7fc9c5ef8eb0>
    - <ast.Constant object at 0x7fc9c5ef8970>
    - <ast.Constant object at 0x7fc9c5ef85e0>
    - <ast.Constant object at 0x7fc9c5ef8f10>
    - <ast.Constant object at 0x7fc9c5ef8880>
    - <ast.Constant object at 0x7fc9c5ef8e80>
    - <ast.Constant object at 0x7fc9c5ef8a60>
    argNames:
    - zone
    - txn
    - keys
    - add_dnskey
    - dnskey_ttl
    - inception
    - expiration
    - lifetime
    - nsec3
    - rrset_signer
    - policy
    - deterministic
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 997
    functionName: dns.dnssec.sign_zone
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.dnssec._sign_zone_nsec._txn_add_nsec
    - text.encode
    - c.isdigit
    - contextlib.nullcontext
    - r.add
    - labels.append
    - label.encode
    - _txn.add
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - <builtin>.super
    - zone.writer
    - functools.partial
    - name.is_subdomain
    - <builtin>.chr
    - byte_.isdigit
    - zsks.append
    - encodings.idna.ToASCII
    - txn.get_node
    - dns.dnssec._sign_zone_nsec
    - <builtin>.set
    - <builtin>.list
    - txn.add
    - dns.name.from_text
    - <builtin>.ord
    - r.update_ttl
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - txn.get
    - <builtin>.sorted
    - Bitmap.from_rdtypes
    - _txn.get
    - dns.name.Name.__init__
    - zone.get_soa
    - <builtin>.len
    - struct.pack
    - ksks.append
    - labels.extend
    - dns.rrset.RRset.__init__
    - txn.iterate_names
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ksks.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: zsks.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: _txn.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: _txn.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 4
    IfCount: 8
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e0f760>
    argNames:
    - zone
    - txn
    - rrset_signer
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1112
    functionName: dns.dnssec._sign_zone_nsec
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.dnssec._sign_zone_nsec._txn_add_nsec
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - <builtin>.super
    - name.is_subdomain
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - txn.get_node
    - <builtin>.set
    - <builtin>.list
    - dns.name.from_text
    - txn.add
    - <builtin>.ord
    - r.update_ttl
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - txn.get
    - <builtin>.sorted
    - Bitmap.from_rdtypes
    - dns.name.Name.__init__
    - zone.get_soa
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - txn.iterate_names
    - typing.cast
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e54c70>
    argNames:
    - txn
    - name
    - next_secure
    - rdclass
    - ttl
    - rrset_signer
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1119
    functionName: dns.dnssec._sign_zone_nsec._txn_add_nsec
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - text.encode
    - c.isdigit
    - r.add
    - labels.append
    - label.encode
    - dns.rrset.from_rdata
    - <builtin>.isinstance
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - <builtin>.super
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - txn.get_node
    - <builtin>.set
    - <builtin>.list
    - txn.add
    - dns.name.from_text
    - <builtin>.ord
    - r.update_ttl
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.rrset.from_rdata_list
    - dns.name._validate_labels
    - Bitmap.from_rdtypes
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - dns.rrset.RRset.__init__
    - typing.cast
    - <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: Bitmap.from_rdtypes
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - next
    - windows
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 37
    functionName: dns.rdtypes.ANY.NSEC.NSEC.__init__
    functionSourceFile: dns.rdtypes.ANY.NSEC
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <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: zone.get_soa
    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: txn.iterate_names
    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: dns.rdtypes.ANY.RRSIG
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    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: what.isdigit
    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: calendar.timegm
    functionSourceFile: calendar
    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:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns.rdtypes.ANY.RRSIG.posixtime_to_sigtime
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    functionUses: 1
    functionsReached:
    - time.strftime
    - time.gmtime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.gmtime
    functionSourceFile: time
    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: time.strftime
    functionSourceFile: time
    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: dns.dnssectypes.Algorithm.make
    functionSourceFile: <builtin>
    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: 0
    functionLinenumber: 93
    functionName: dns.rdtypes.ANY.RRSIG.RRSIG.covers
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    functionUses: 0
    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 0x7fc9c6338d90>
    - <ast.Constant object at 0x7fc9c6338400>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 96
    functionName: dns.rdtypes.ANY.RRSIG.RRSIG.to_text
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.RRSIG.posixtime_to_sigtime
    - dns.rdata._base64ify
    - RdataType.to_text
    - <builtin>.len
    - time.gmtime
    - dns.rdatatype.to_text
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - time.strftime
    - base64.b64encode
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f9640>
    - <ast.Constant object at 0x7fc9c63f90a0>
    - <ast.Constant object at 0x7fc9c63f9e20>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 108
    functionName: dns.rdtypes.ANY.RRSIG.RRSIG.from_text
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - base64.b64decode
    - <builtin>.len
    - dns.dnssectypes.Algorithm.make
    - <builtin>.int
    - calendar.timegm
    - dns.rdtypes.ANY.RRSIG.RRSIG.__init__
    - tok.get_ttl
    - RdataType.from_text
    - dns.dnssectypes.Algorithm.from_text
    - tok.concatenate_remaining_identifiers
    - dns.rdtypes.ANY.RRSIG.sigtime_to_posixtime
    - what.isdigit
    - tok.get_int
    - tok.get_name
    - tok.get_string
    - dns.rdatatype.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssectypes.Algorithm.from_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f90160>
    - <ast.Constant object at 0x7fc9c5f900a0>
    - <ast.Constant object at 0x7fc9c5f90430>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: dns.rdtypes.ANY.RRSIG.RRSIG._to_wire
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c63f5d90>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 151
    functionName: dns.rdtypes.ANY.RRSIG.RRSIG.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.RRSIG
    functionUses: 0
    functionsReached:
    - parser.get_name
    - parser.get_remaining
    - <builtin>.super
    - dns.rdtypes.ANY.RRSIG.RRSIG.__init__
    - parser.get_struct
    - dns.dnssectypes.Algorithm.make
    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: dns.dnssectypes
    functionSourceFile: dns.dnssectypes
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 46
    functionName: dns.dnssectypes.Algorithm._maximum
    functionSourceFile: dns.dnssectypes
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 60
    functionName: dns.dnssectypes.DSDigest._maximum
    functionSourceFile: dns.dnssectypes
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 70
    functionName: dns.dnssectypes.NSEC3Hash._maximum
    functionSourceFile: dns.dnssectypes
    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: dns.dnssecalgs.base
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.dnssecalgs.base.GenericPublicKey
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached:
    - abc.abstractmethod
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: abc.abstractmethod
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 16
    functionName: dns.dnssecalgs.base.GenericPublicKey.__init__
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 20
    functionName: dns.dnssecalgs.base.GenericPublicKey.verify
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 24
    functionName: dns.dnssecalgs.base.GenericPublicKey.encode_key_bytes
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 28
    functionName: dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7fc9c5a321c0>
    - <ast.Constant object at 0x7fc9c5a326d0>
    argNames:
    - self
    - flags
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 32
    functionName: dns.dnssecalgs.base.GenericPublicKey.to_dnskey
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached:
    - dns.dnssecalgs.rsa.PublicRSA.encode_key_bytes
    - dns.dnssecalgs.dsa.PublicDSA.encode_key_bytes
    - int.bit_length
    - pn.parameter_numbers.p.to_bytes
    - pn.parameter_numbers.q.to_bytes
    - pn.n.to_bytes
    - pn.x.to_bytes
    - pn.parameter_numbers.g.to_bytes
    - int.to_bytes
    - struct.pack
    - dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes
    - pn.n.bit_length
    - math.ceil
    - pn.y.to_bytes
    - dns.dnssecalgs.ecdsa.PublicECDSA.encode_key_bytes
    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: 1
    functionLinenumber: 22
    functionName: dns.dnssecalgs.rsa.PublicRSA.encode_key_bytes
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 1
    functionsReached:
    - int.bit_length
    - math.ceil
    - pn.n.to_bytes
    - struct.pack
    - pn.n.bit_length
    - int.to_bytes
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 26
    functionName: dns.dnssecalgs.dsa.PublicDSA.encode_key_bytes
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 1
    functionsReached:
    - pn.parameter_numbers.q.to_bytes
    - pn.parameter_numbers.p.to_bytes
    - pn.parameter_numbers.g.to_bytes
    - struct.pack
    - pn.y.to_bytes
    linkageType: pythonLinkage
    raised:
    - ValueError
    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: 26
    functionName: dns.dnssecalgs.ecdsa.PublicECDSA.encode_key_bytes
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 1
    functionsReached:
    - pn.y.to_bytes
    - pn.x.to_bytes
    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: 15
    functionName: dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes
    functionSourceFile: ''
    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:
    - cls
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 45
    functionName: dns.dnssecalgs.base.GenericPublicKey.from_dnskey
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - public_pem
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: dns.dnssecalgs.base.GenericPublicKey.from_pem
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 55
    functionName: dns.dnssecalgs.base.GenericPublicKey.to_pem
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.dnssecalgs.base.GenericPrivateKey
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached:
    - abc.abstractmethod
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: dns.dnssecalgs.base.GenericPrivateKey.__init__
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b440a0>
    - <ast.Constant object at 0x7fc9c6b440d0>
    argNames:
    - self
    - data
    - verify
    - deterministic
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 68
    functionName: dns.dnssecalgs.base.GenericPrivateKey.sign
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: dns.dnssecalgs.base.GenericPrivateKey.public_key
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b44dc0>
    argNames:
    - cls
    - private_pem
    - password
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 82
    functionName: dns.dnssecalgs.base.GenericPrivateKey.from_pem
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f5310>
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: dns.dnssecalgs.base.GenericPrivateKey.to_pem
    functionSourceFile: dns.dnssecalgs.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.dnskeybase
    functionSourceFile: dns.rdtypes.dnskeybase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - flags
    - protocol
    - algorithm
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: dns.rdtypes.dnskeybase.DNSKEYBase.__init__
    functionSourceFile: dns.rdtypes.dnskeybase
    functionUses: 2
    functionsReached:
    - enum.IntFlag.__init__
    - dns.dnssectypes.Algorithm.make
    - <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: enum.IntFlag.__init__
    functionSourceFile: ''
    functionUses: 3
    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 0x7fc9c5bcc850>
    - <ast.Constant object at 0x7fc9c5bcc070>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 50
    functionName: dns.rdtypes.dnskeybase.DNSKEYBase.to_text
    functionSourceFile: dns.rdtypes.dnskeybase
    functionUses: 0
    functionsReached:
    - dns.rdata._base64ify
    - <builtin>.len
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - base64.b64encode
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e2820>
    - <ast.Constant object at 0x7fc9c56e22b0>
    - <ast.Constant object at 0x7fc9c56e2340>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.rdtypes.dnskeybase.DNSKEYBase.from_text
    functionSourceFile: dns.rdtypes.dnskeybase
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - dns.rdtypes.dnskeybase.DNSKEYBase.__init__
    - <builtin>.super
    - base64.b64decode
    - tok.get_uint16
    - tok.get_string
    - tok.concatenate_remaining_identifiers
    - enum.IntFlag.__init__
    - dns.dnssectypes.Algorithm.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b55580>
    - <ast.Constant object at 0x7fc9c6b55040>
    - <ast.Constant object at 0x7fc9c6b55850>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: dns.rdtypes.dnskeybase.DNSKEYBase._to_wire
    functionSourceFile: dns.rdtypes.dnskeybase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c6338250>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 71
    functionName: dns.rdtypes.dnskeybase.DNSKEYBase.from_wire_parser
    functionSourceFile: dns.rdtypes.dnskeybase
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.dnskeybase.DNSKEYBase.__init__
    - <builtin>.super
    - parser.get_struct
    - enum.IntFlag.__init__
    - dns.dnssectypes.Algorithm.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.DNSKEY
    functionSourceFile: dns.rdtypes.ANY.DNSKEY
    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: dns.rdtypes.ANY.CDS
    functionSourceFile: dns.rdtypes.ANY.CDS
    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: dns.rdtypes.dsbase
    functionSourceFile: dns.rdtypes.dsbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - key_tag
    - algorithm
    - digest_type
    - digest
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: dns.rdtypes.dsbase.DSBase.__init__
    functionSourceFile: dns.rdtypes.dsbase
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - dns.dnssectypes.DSDigest.make
    - dns.dnssectypes.Algorithm.make
    - <builtin>.super
    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: dns.dnssectypes.DSDigest.make
    functionSourceFile: <builtin>
    functionUses: 3
    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 0x7fc9c61fca60>
    - <ast.Constant object at 0x7fc9c61fcac0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 55
    functionName: dns.rdtypes.dsbase.DSBase.to_text
    functionSourceFile: dns.rdtypes.dsbase
    functionUses: 0
    functionsReached:
    - kw.copy
    - <builtin>.len
    - dns.rdata._wordbreak
    - dns.rdata._hexify
    - binascii.hexlify
    - <builtin>.range
    - separator.join
    - kw.pop
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e19c70>
    - <ast.Constant object at 0x7fc9c5e19d90>
    - <ast.Constant object at 0x7fc9c5e19910>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.rdtypes.dsbase.DSBase.from_text
    functionSourceFile: dns.rdtypes.dsbase
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - dns.dnssectypes.DSDigest.make
    - <builtin>.super
    - <builtin>.len
    - binascii.unhexlify
    - tok.get_uint16
    - tok.get_string
    - tok.concatenate_remaining_identifiers
    - dns.rdtypes.dsbase.DSBase.__init__
    - dns.dnssectypes.Algorithm.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f57f0>
    - <ast.Constant object at 0x7fc9c63f5dc0>
    - <ast.Constant object at 0x7fc9c63f5040>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 74
    functionName: dns.rdtypes.dsbase.DSBase._to_wire
    functionSourceFile: dns.rdtypes.dsbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c6338400>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 80
    functionName: dns.rdtypes.dsbase.DSBase.from_wire_parser
    functionSourceFile: dns.rdtypes.dsbase
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.dnssectypes.DSDigest.make
    - <builtin>.super
    - <builtin>.len
    - parser.get_struct
    - dns.rdtypes.dsbase.DSBase.__init__
    - dns.dnssectypes.Algorithm.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.DS
    functionSourceFile: dns.rdtypes.ANY.DS
    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: dns.rdtypes.ANY.CDNSKEY
    functionSourceFile: dns.rdtypes.ANY.CDNSKEY
    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: dns.rdtypes.ANY.NSEC3PARAM
    functionSourceFile: dns.rdtypes.ANY.NSEC3PARAM
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - algorithm
    - flags
    - iterations
    - salt
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.__init__
    functionSourceFile: dns.rdtypes.ANY.NSEC3PARAM
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5bccbb0>
    - <ast.Constant object at 0x7fc9c5bcc370>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.to_text
    functionSourceFile: dns.rdtypes.ANY.NSEC3PARAM
    functionUses: 0
    functionsReached:
    - binascii.hexlify
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bcc790>
    - <ast.Constant object at 0x7fc9c5bcc0a0>
    - <ast.Constant object at 0x7fc9c5bccb20>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 47
    functionName: dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.from_text
    functionSourceFile: dns.rdtypes.ANY.NSEC3PARAM
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - <builtin>.super
    - salt.encode
    - binascii.unhexlify
    - tok.get_uint16
    - dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.__init__
    - tok.get_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: salt.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f90df0>
    - <ast.Constant object at 0x7fc9c5f90310>
    - <ast.Constant object at 0x7fc9c5f909a0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM._to_wire
    functionSourceFile: dns.rdtypes.ANY.NSEC3PARAM
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    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 0x7fc9c6338070>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 66
    functionName: dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.NSEC3PARAM
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.__init__
    - parser.get_counted_bytes
    - parser.get_struct
    - <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: dns.rdtypes.ANY.NSEC
    functionSourceFile: dns.rdtypes.ANY.NSEC
    functionUses: 0
    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 0x7fc9c5e19280>
    - <ast.Constant object at 0x7fc9c5e19460>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: dns.rdtypes.ANY.NSEC.NSEC.to_text
    functionSourceFile: dns.rdtypes.ANY.NSEC
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f5f70>
    - <ast.Constant object at 0x7fc9c63f5640>
    - <ast.Constant object at 0x7fc9c63f5c40>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 50
    functionName: dns.rdtypes.ANY.NSEC.NSEC.from_text
    functionSourceFile: dns.rdtypes.ANY.NSEC
    functionUses: 0
    functionsReached:
    - tok.get_name
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - <builtin>.super
    - Bitmap.from_text
    - <builtin>.isinstance
    - <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: Bitmap.from_text
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c648c280>
    - <ast.Constant object at 0x7fc9c648c160>
    - <ast.Constant object at 0x7fc9c648c490>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 57
    functionName: dns.rdtypes.ANY.NSEC.NSEC._to_wire
    functionSourceFile: dns.rdtypes.ANY.NSEC
    functionUses: 0
    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 0x7fc9c63f9880>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.rdtypes.ANY.NSEC.NSEC.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.NSEC
    functionUses: 0
    functionsReached:
    - parser.get_name
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - <builtin>.super
    - Bitmap.from_wire_parser
    - <builtin>.isinstance
    - <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: Bitmap.from_wire_parser
    functionSourceFile: <builtin>
    functionUses: 3
    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: 4
    functionLinenumber: -1
    functionName: dns.dnssecalgs
    functionSourceFile: dns.dnssecalgs
    functionUses: 0
    functionsReached:
    - dns._features._version_check
    - _requirements.get
    - importlib.metadata.version
    - int_parts.append
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - algorithms.update
    - _cache.get
    - version.split
    - dns._features.have
    - requirement.split
    - <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: algorithms.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: algorithms.get
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c595cca0>
    - <ast.Constant object at 0x7fc9c595cee0>
    argNames:
    - algorithm
    - algorithm_cls
    - name
    - oid
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 88
    functionName: dns.dnssecalgs.register_algorithm_cls
    functionSourceFile: dns.dnssecalgs
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - <builtin>.isinstance
    - dns.name.IDNA2003Codec.encode
    - <builtin>.issubclass
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - <builtin>.bytes
    - byte_.isdigit
    - encodings.idna.ToASCII
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - Algorithm.make
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - labels.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssecalgs.eddsa
    functionSourceFile: dns.dnssecalgs.eddsa
    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
    - signature
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 12
    functionName: dns.dnssecalgs.eddsa.PublicEDDSA.verify
    functionSourceFile: dns.dnssecalgs.eddsa
    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:
    - cls
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 22
    functionName: dns.dnssecalgs.eddsa.PublicEDDSA.from_dnskey
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicKey.from_public_bytes
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAPublicKey.from_public_bytes
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey.from_public_bytes
    - <builtin>.isinstance
    - abc.ABC.key_cls.from_public_bytes
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.rsa.RSAPublicKey.from_public_bytes
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicKey.from_public_bytes
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.asymmetric.dsa.DSAPublicKey.from_public_bytes
    functionSourceFile: cryptography
    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: abc.ABC.key_cls.from_public_bytes
    functionSourceFile: abc
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 13
    functionName: dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 10
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f5e580>
    - <ast.Constant object at 0x7fc9c5f5eeb0>
    argNames:
    - self
    - data
    - verify
    - deterministic
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 32
    functionName: dns.dnssecalgs.eddsa.PrivateEDDSA.sign
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached:
    - abc.ABC.public_cls
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - int.from_bytes
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 4
    functionsReached:
    - abc.ABC.public_cls
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 18
    functionName: dns.dnssecalgs.ecdsa.PublicECDSA.verify
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 4
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - int.from_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 18
    functionName: dns.dnssecalgs.dsa.PublicDSA.verify
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 4
    functionsReached:
    - int.from_bytes
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: dns.dnssecalgs.rsa.PublicRSA.verify
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 4
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 45
    functionName: dns.dnssecalgs.eddsa.PrivateEDDSA.generate
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey.generate
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey.generate
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - <builtin>.isinstance
    - abc.ABC.key_cls.generate
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAPrivateKey.generate
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.ec.EllipticCurvePrivateKey.generate
    functionSourceFile: cryptography
    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: abc.ABC.key_cls.generate
    functionSourceFile: abc
    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: cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey.generate
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.asymmetric.dsa.DSAPrivateKey.generate
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssecalgs.cryptography
    functionSourceFile: dns.dnssecalgs.cryptography
    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:
    - cls
    - public_pem
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 23
    functionName: dns.dnssecalgs.cryptography.CryptographyPublicKey.from_pem
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.serialization.load_pem_public_key
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__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: cryptography.hazmat.primitives.serialization.load_pem_public_key
    functionSourceFile: cryptography
    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: 27
    functionName: dns.dnssecalgs.cryptography.CryptographyPublicKey.to_pem
    functionSourceFile: dns.dnssecalgs.cryptography
    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: abc.ABC.public_cls
    functionSourceFile: abc
    functionUses: 5
    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 0x7fc9c5e23a00>
    argNames:
    - cls
    - private_pem
    - password
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 52
    functionName: dns.dnssecalgs.cryptography.CryptographyPrivateKey.from_pem
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.serialization.load_pem_private_key
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__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: cryptography.hazmat.primitives.serialization.load_pem_private_key
    functionSourceFile: cryptography
    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.Constant object at 0x7fc9c5e235b0>
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: dns.dnssecalgs.cryptography.CryptographyPrivateKey.to_pem
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.serialization.BestAvailableEncryption
    - cryptography.hazmat.primitives.serialization.NoEncryption
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.serialization.BestAvailableEncryption
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.serialization.NoEncryption
    functionSourceFile: cryptography
    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: dns.dnssecalgs.ecdsa
    functionSourceFile: dns.dnssecalgs.ecdsa
    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: cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    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.asymmetric.ec.ECDSA
    functionSourceFile: cryptography
    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: pn.x.to_bytes
    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: pn.y.to_bytes
    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:
    - cls
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 32
    functionName: dns.dnssecalgs.ecdsa.PublicECDSA.from_dnskey
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicNumbers
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - int.from_bytes
    - <builtin>.isinstance
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    - cryptography.hazmat.backends.default_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicNumbers
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b44400>
    - <ast.Constant object at 0x7fc9c6b44550>
    argNames:
    - self
    - data
    - verify
    - deterministic
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 50
    functionName: dns.dnssecalgs.ecdsa.PrivateECDSA.sign
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 0
    functionsReached:
    - abc.ABC.public_cls
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - cryptography.hazmat.primitives.asymmetric.utils.decode_dss_signature
    - int.from_bytes
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - int.to_bytes
    - <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: cryptography.hazmat.primitives.asymmetric.utils.decode_dss_signature
    functionSourceFile: cryptography
    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: int.to_bytes
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 73
    functionName: dns.dnssecalgs.ecdsa.PrivateECDSA.generate
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.ec.generate_private_key
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - cryptography.hazmat.backends.default_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.ec.generate_private_key
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.hashes.SHA256
    functionSourceFile: cryptography
    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: dns.dnssecalgs.ecdsa.PublicECDSAP256SHA256
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.hashes.SHA256
    - cryptography.hazmat.primitives.asymmetric.ec.SECP256R1
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.ec.SECP256R1
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.hashes.SHA384
    functionSourceFile: cryptography
    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: dns.dnssecalgs.ecdsa.PublicECDSAP384SHA384
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.ec.SECP384R1
    - cryptography.hazmat.primitives.hashes.SHA384
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.ec.SECP384R1
    functionSourceFile: cryptography
    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: dns.dnssecalgs.rsa
    functionSourceFile: dns.dnssecalgs.rsa
    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: cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    functionSourceFile: cryptography
    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: int.bit_length
    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: pn.n.bit_length
    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: pn.n.to_bytes
    functionSourceFile: <builtin>
    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:
    - cls
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 36
    functionName: dns.dnssecalgs.rsa.PublicRSA.from_dnskey
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - struct.unpack
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicNumbers
    - int.from_bytes
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - <builtin>.isinstance
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    - cryptography.hazmat.backends.default_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.rsa.RSAPublicNumbers
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c595cbe0>
    - <ast.Constant object at 0x7fc9c595ca00>
    argNames:
    - self
    - data
    - verify
    - deterministic
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 59
    functionName: dns.dnssecalgs.rsa.PrivateRSA.sign
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - abc.ABC.public_cls
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - int.from_bytes
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - key_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 74
    functionName: dns.dnssecalgs.rsa.PrivateRSA.generate
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.rsa.generate_private_key
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - cryptography.hazmat.backends.default_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.rsa.generate_private_key
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.hashes.MD5
    functionSourceFile: cryptography
    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: dns.dnssecalgs.rsa.PublicRSAMD5
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.hashes.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.hashes.SHA1
    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: 1
    functionLinenumber: -1
    functionName: dns.dnssecalgs.rsa.PublicRSASHA1
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.hashes.SHA1
    linkageType: 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: dns.dnssecalgs.rsa.PublicRSASHA1NSEC3SHA1
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.hashes.SHA1
    linkageType: 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: dns.dnssecalgs.rsa.PublicRSASHA256
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.hashes.SHA256
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.hashes.SHA512
    functionSourceFile: cryptography
    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: dns.dnssecalgs.rsa.PublicRSASHA512
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.hashes.SHA512
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssecalgs.dsa
    functionSourceFile: dns.dnssecalgs.dsa
    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: dns.dnssecalgs.dsa.PublicDSA
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.hashes.SHA1
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pn.parameter_numbers.q.to_bytes
    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: pn.parameter_numbers.p.to_bytes
    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: pn.parameter_numbers.g.to_bytes
    functionSourceFile: <builtin>
    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:
    - cls
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 41
    functionName: dns.dnssecalgs.dsa.PublicDSA.from_dnskey
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 0
    functionsReached:
    - struct.unpack
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAParameterNumbers
    - cryptography.hazmat.backends.default_backend
    - int.from_bytes
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - <builtin>.isinstance
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAPublicNumbers
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.dsa.DSAParameterNumbers
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.asymmetric.dsa.DSAPublicNumbers
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63384c0>
    - <ast.Constant object at 0x7fc9c6338af0>
    argNames:
    - self
    - data
    - verify
    - deterministic
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 71
    functionName: dns.dnssecalgs.dsa.PrivateDSA.sign
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 0
    functionsReached:
    - abc.ABC.public_cls
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    - struct.pack
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - cryptography.hazmat.primitives.asymmetric.utils.decode_dss_signature
    - int.from_bytes
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - int.to_bytes
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - key_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 97
    functionName: dns.dnssecalgs.dsa.PrivateDSA.generate
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - cryptography.hazmat.primitives.asymmetric.dsa.generate_private_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.asymmetric.dsa.generate_private_key
    functionSourceFile: cryptography
    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: dns.rdtypes.mxbase
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - preference
    - exchange
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: dns.rdtypes.mxbase.MXBase.__init__
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5f900a0>
    - <ast.Constant object at 0x7fc9c5f902e0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 40
    functionName: dns.rdtypes.mxbase.MXBase.to_text
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c648c670>
    - <ast.Constant object at 0x7fc9c648c580>
    - <ast.Constant object at 0x7fc9c648c100>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 45
    functionName: dns.rdtypes.mxbase.MXBase.from_text
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 0
    functionsReached:
    - tok.get_name
    - tok.get_uint16
    - dns.rdtypes.mxbase.MXBase.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f54f0>
    - <ast.Constant object at 0x7fc9c63f5430>
    - <ast.Constant object at 0x7fc9c63f5790>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 52
    functionName: dns.rdtypes.mxbase.MXBase._to_wire
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c6b550a0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 58
    functionName: dns.rdtypes.mxbase.MXBase.from_wire_parser
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 0
    functionsReached:
    - parser.get_name
    - parser.get_uint16
    - dns.rdtypes.mxbase.MXBase.__init__
    - <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: 0
    functionLinenumber: 63
    functionName: dns.rdtypes.mxbase.MXBase._processing_priority
    functionSourceFile: dns.rdtypes.mxbase
    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:
    - cls
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 67
    functionName: dns.rdtypes.mxbase.MXBase._processing_order
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - dns.rdtypes.util.priority_processing_order
    - <builtin>.list
    - ordered.extend
    - <builtin>.len
    - by_priority.keys
    - collections.defaultdict
    - random.shuffle
    - rdata._processing_priority
    - dns.rdtypes.util._priority_table
    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 0x7fc9c6338a90>
    - <ast.Constant object at 0x7fc9c6338df0>
    - <ast.Constant object at 0x7fc9c63387f0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 77
    functionName: dns.rdtypes.mxbase.UncompressedMX._to_wire
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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 0x7fc9c56e2280>
    - <ast.Constant object at 0x7fc9c56e2d00>
    - <ast.Constant object at 0x7fc9c56e29a0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 86
    functionName: dns.rdtypes.mxbase.UncompressedDowncasingMX._to_wire
    functionSourceFile: dns.rdtypes.mxbase
    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: dns.rdtypes.euibase
    functionSourceFile: dns.rdtypes.euibase
    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
    - rdclass
    - rdtype
    - eui
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 37
    functionName: dns.rdtypes.euibase.EUIBase.__init__
    functionSourceFile: dns.rdtypes.euibase
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - <builtin>.super
    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 0x7fc9c5a32dc0>
    - <ast.Constant object at 0x7fc9c5a32fd0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 45
    functionName: dns.rdtypes.euibase.EUIBase.to_text
    functionSourceFile: dns.rdtypes.euibase
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - binascii.hexlify
    - dns.rdata._hexify
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a32e50>
    - <ast.Constant object at 0x7fc9c5a324f0>
    - <ast.Constant object at 0x7fc9c5a32e20>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.rdtypes.euibase.EUIBase.from_text
    functionSourceFile: dns.rdtypes.euibase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.euibase.EUIBase.__init__
    - <builtin>.super
    - text.encode
    - <builtin>.len
    - binascii.unhexlify
    - <builtin>.range
    - tok.get_string
    - text.replace
    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 0x7fc9c61fc340>
    - <ast.Constant object at 0x7fc9c61fc9a0>
    - <ast.Constant object at 0x7fc9c61fcc10>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: dns.rdtypes.euibase.EUIBase._to_wire
    functionSourceFile: dns.rdtypes.euibase
    functionUses: 0
    functionsReached:
    - file.write
    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 0x7fc9c61fc970>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 71
    functionName: dns.rdtypes.euibase.EUIBase.from_wire_parser
    functionSourceFile: dns.rdtypes.euibase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.euibase.EUIBase.__init__
    - parser.get_bytes
    - <builtin>.len
    - <builtin>.super
    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: dns.rdtypes.txtbase
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - strings
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: dns.rdtypes.txtbase.TXTBase.__init__
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - <builtin>.super
    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: dns.rdtypes.txtbase.TXTBase.__init__.<lambda1>
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    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 0x7fc9c595c400>
    - <ast.Constant object at 0x7fc9c595cdc0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 59
    functionName: dns.rdtypes.txtbase.TXTBase.to_text
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    - <builtin>.bytearray
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c595c5b0>
    - <ast.Constant object at 0x7fc9c595cfd0>
    - <ast.Constant object at 0x7fc9c595c700>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 73
    functionName: dns.rdtypes.txtbase.TXTBase.from_text
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - tok.get_remaining
    - <builtin>.super
    - <builtin>.len
    - strings.append
    - token.is_quoted_string
    - dns.rdtypes.txtbase.TXTBase.__init__
    - token.unescape_to_bytes
    - token.is_identifier
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.unescape_to_bytes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.is_quoted_string
    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: strings.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    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 0x7fc9c5fa0f70>
    - <ast.Constant object at 0x7fc9c5fa0b20>
    - <ast.Constant object at 0x7fc9c5fa0c70>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 98
    functionName: dns.rdtypes.txtbase.TXTBase._to_wire
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - dns.renderer.prefixed_length
    - output.write
    - output.tell
    - file.write
    - length.to_bytes
    - output.seek
    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 0x7fc9c5e73c70>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 104
    functionName: dns.rdtypes.txtbase.TXTBase.from_wire_parser
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - <builtin>.super
    - strings.append
    - <builtin>.len
    - dns.rdtypes.txtbase.TXTBase.__init__
    - parser.get_counted_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: dns.rdtypes.ANY.URI
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - priority
    - weight
    - target
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: dns.rdtypes.ANY.URI.URI.__init__
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - <builtin>.super
    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 0x7fc9c5f5ec40>
    - <ast.Constant object at 0x7fc9c5f5eb80>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: dns.rdtypes.ANY.URI.URI.to_text
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5f5e5b0>
    - <ast.Constant object at 0x7fc9c5f5e9d0>
    - <ast.Constant object at 0x7fc9c5f5ee20>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: dns.rdtypes.ANY.URI.URI.from_text
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 0
    functionsReached:
    - target.is_identifier
    - <builtin>.super
    - <builtin>.len
    - tok.get_uint16
    - dns.rdtypes.ANY.URI.URI.__init__
    - tok.get
    - target.is_quoted_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: target.is_quoted_string
    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: target.is_identifier
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d736d0>
    - <ast.Constant object at 0x7fc9c5d73a90>
    - <ast.Constant object at 0x7fc9c5d73310>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: dns.rdtypes.ANY.URI.URI._to_wire
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d73880>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.rdtypes.ANY.URI.URI.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - <builtin>.len
    - dns.rdtypes.ANY.URI.URI.__init__
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 71
    functionName: dns.rdtypes.ANY.URI.URI._processing_priority
    functionSourceFile: dns.rdtypes.ANY.URI
    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: 74
    functionName: dns.rdtypes.ANY.URI.URI._processing_weight
    functionSourceFile: dns.rdtypes.ANY.URI
    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:
    - cls
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 78
    functionName: dns.rdtypes.ANY.URI.URI._processing_order
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.len
    - dns.rdtypes.util.weighted_processing_order
    - <builtin>.sum
    - ordered.append
    - by_priority.keys
    - rdata._processing_weight
    - random.uniform
    - collections.defaultdict
    - <builtin>.enumerate
    - rdata._processing_priority
    - dns.rdtypes.util._priority_table
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.DNAME
    functionSourceFile: dns.rdtypes.ANY.DNAME
    functionUses: 0
    functionsReached: []
    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 0x7fc9c5f5e910>
    - <ast.Constant object at 0x7fc9c5f5e250>
    - <ast.Constant object at 0x7fc9c5f5e940>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 26
    functionName: dns.rdtypes.ANY.DNAME.DNAME._to_wire
    functionSourceFile: dns.rdtypes.ANY.DNAME
    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: dns.rdtypes.ANY.GPOS
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 26
    functionName: dns.rdtypes.ANY.GPOS._validate_float_string
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 3
    functionsReached:
    - left.decode
    - what.split
    - <builtin>.len
    - right.decode
    - what.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: what.split
    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: left.decode
    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: right.decode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - latitude
    - longitude
    - altitude
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 53
    functionName: dns.rdtypes.ANY.GPOS.GPOS.__init__
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 2
    functionsReached:
    - <builtin>.str
    - left.decode
    - what.split
    - <builtin>.super
    - <builtin>.len
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - right.decode
    - what.isdigit
    - <builtin>.isinstance
    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 0x7fc9c6b44f40>
    - <ast.Constant object at 0x7fc9c6b44430>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: dns.rdtypes.ANY.GPOS.GPOS.to_text
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b442b0>
    - <ast.Constant object at 0x7fc9c6b441c0>
    - <ast.Constant object at 0x7fc9c6b44c70>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 84
    functionName: dns.rdtypes.ANY.GPOS.GPOS.from_text
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - left.decode
    - what.split
    - <builtin>.super
    - <builtin>.len
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - right.decode
    - what.isdigit
    - dns.rdtypes.ANY.GPOS.GPOS.__init__
    - tok.get_string
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 6
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e2e20>
    - <ast.Constant object at 0x7fc9c56e2400>
    - <ast.Constant object at 0x7fc9c56e2c70>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 92
    functionName: dns.rdtypes.ANY.GPOS.GPOS._to_wire
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    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 0x7fc9c63381c0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 107
    functionName: dns.rdtypes.ANY.GPOS.GPOS.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - left.decode
    - what.split
    - <builtin>.super
    - <builtin>.len
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - right.decode
    - parser.get_counted_bytes
    - what.isdigit
    - dns.rdtypes.ANY.GPOS.GPOS.__init__
    - <builtin>.isinstance
    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: 114
    functionName: dns.rdtypes.ANY.GPOS.GPOS.float_latitude
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    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: 9
    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: 119
    functionName: dns.rdtypes.ANY.GPOS.GPOS.float_longitude
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    functionsReached:
    - <builtin>.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: 1
    functionLinenumber: 124
    functionName: dns.rdtypes.ANY.GPOS.GPOS.float_altitude
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    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: dns.rdtypes.ANY.SSHFP
    functionSourceFile: dns.rdtypes.ANY.SSHFP
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - algorithm
    - fp_type
    - fingerprint
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.SSHFP.SSHFP.__init__
    functionSourceFile: dns.rdtypes.ANY.SSHFP
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5e23a60>
    - <ast.Constant object at 0x7fc9c5e23040>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 40
    functionName: dns.rdtypes.ANY.SSHFP.SSHFP.to_text
    functionSourceFile: dns.rdtypes.ANY.SSHFP
    functionUses: 0
    functionsReached:
    - kw.copy
    - <builtin>.len
    - dns.rdata._wordbreak
    - dns.rdata._hexify
    - binascii.hexlify
    - <builtin>.range
    - separator.join
    - kw.pop
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f9b50>
    - <ast.Constant object at 0x7fc9c63f9a60>
    - <ast.Constant object at 0x7fc9c63f9cd0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.rdtypes.ANY.SSHFP.SSHFP.from_text
    functionSourceFile: dns.rdtypes.ANY.SSHFP
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - <builtin>.super
    - binascii.unhexlify
    - dns.rdtypes.ANY.SSHFP.SSHFP.__init__
    - tok.concatenate_remaining_identifiers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f9310>
    - <ast.Constant object at 0x7fc9c63f9b80>
    - <ast.Constant object at 0x7fc9c63f9730>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: dns.rdtypes.ANY.SSHFP.SSHFP._to_wire
    functionSourceFile: dns.rdtypes.ANY.SSHFP
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c5bcc4f0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.rdtypes.ANY.SSHFP.SSHFP.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.SSHFP
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - parser.get_remaining
    - dns.rdtypes.ANY.SSHFP.SSHFP.__init__
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.AMTRELAY
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    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: 30
    functionName: dns.rdtypes.ANY.AMTRELAY.Relay.relay
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - precedence
    - discovery_optional
    - relay_type
    - relay
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c61fc610>
    - <ast.Constant object at 0x7fc9c61fccd0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 52
    functionName: dns.rdtypes.ANY.AMTRELAY.AMTRELAY.to_text
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b44f40>
    - <ast.Constant object at 0x7fc9c6b44400>
    - <ast.Constant object at 0x7fc9c6b44b20>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 59
    functionName: dns.rdtypes.ANY.AMTRELAY.AMTRELAY.from_text
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - <builtin>.super
    - dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__
    - <builtin>.bool
    - Relay.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Relay.from_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e28b0>
    - <ast.Constant object at 0x7fc9c56e2790>
    - <ast.Constant object at 0x7fc9c56e2e50>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 75
    functionName: dns.rdtypes.ANY.AMTRELAY.AMTRELAY._to_wire
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c5bcc490>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 82
    functionName: dns.rdtypes.ANY.AMTRELAY.AMTRELAY.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__
    - <builtin>.bool
    - Relay.from_wire_parser
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Relay.from_wire_parser
    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: dns.rdtypes.ANY.HINFO
    functionSourceFile: dns.rdtypes.ANY.HINFO
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - cpu
    - os
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.HINFO.HINFO.__init__
    functionSourceFile: dns.rdtypes.ANY.HINFO
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c63f9670>
    - <ast.Constant object at 0x7fc9c63f9ee0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: dns.rdtypes.ANY.HINFO.HINFO.to_text
    functionSourceFile: dns.rdtypes.ANY.HINFO
    functionUses: 0
    functionsReached:
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    - <builtin>.bytearray
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f92e0>
    - <ast.Constant object at 0x7fc9c63f9760>
    - <ast.Constant object at 0x7fc9c63f98b0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 43
    functionName: dns.rdtypes.ANY.HINFO.HINFO.from_text
    functionSourceFile: dns.rdtypes.ANY.HINFO
    functionUses: 0
    functionsReached:
    - tok.get_string
    - dns.rdtypes.ANY.HINFO.HINFO.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68f8310>
    - <ast.Constant object at 0x7fc9c68f8460>
    - <ast.Constant object at 0x7fc9c68f8940>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: dns.rdtypes.ANY.HINFO.HINFO._to_wire
    functionSourceFile: dns.rdtypes.ANY.HINFO
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    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 0x7fc9c5bcc4f0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 61
    functionName: dns.rdtypes.ANY.HINFO.HINFO.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.HINFO
    functionUses: 0
    functionsReached:
    - parser.get_counted_bytes
    - dns.rdtypes.ANY.HINFO.HINFO.__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: dns.rdtypes.ANY.NS
    functionSourceFile: dns.rdtypes.ANY.NS
    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: dns.rdtypes.ANY.CAA
    functionSourceFile: dns.rdtypes.ANY.CAA
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - flags
    - tag
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.CAA.CAA.__init__
    functionSourceFile: dns.rdtypes.ANY.CAA
    functionUses: 2
    functionsReached:
    - tag.isalnum
    - <builtin>.super
    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: tag.isalnum
    functionSourceFile: <builtin>
    functionUses: 3
    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 0x7fc9c6b44130>
    - <ast.Constant object at 0x7fc9c6b44f40>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: dns.rdtypes.ANY.CAA.CAA.to_text
    functionSourceFile: dns.rdtypes.ANY.CAA
    functionUses: 0
    functionsReached:
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    - <builtin>.bytearray
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e2850>
    - <ast.Constant object at 0x7fc9c56e2a00>
    - <ast.Constant object at 0x7fc9c56e2520>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 46
    functionName: dns.rdtypes.ANY.CAA.CAA.from_text
    functionSourceFile: dns.rdtypes.ANY.CAA
    functionUses: 0
    functionsReached:
    - tag.isalnum
    - tok.get_uint8
    - dns.rdtypes.ANY.CAA.CAA.__init__
    - <builtin>.super
    - tok.get_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e2c70>
    - <ast.Constant object at 0x7fc9c56e29a0>
    - <ast.Constant object at 0x7fc9c56e2cd0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: dns.rdtypes.ANY.CAA.CAA._to_wire
    functionSourceFile: dns.rdtypes.ANY.CAA
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    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 0x7fc9c63386a0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 63
    functionName: dns.rdtypes.ANY.CAA.CAA.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.CAA
    functionUses: 0
    functionsReached:
    - tag.isalnum
    - parser.get_remaining
    - dns.rdtypes.ANY.CAA.CAA.__init__
    - <builtin>.super
    - parser.get_counted_bytes
    - parser.get_uint8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.NID
    functionSourceFile: dns.rdtypes.ANY.NID
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - preference
    - nodeid
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 18
    functionName: dns.rdtypes.ANY.NID.NID.__init__
    functionSourceFile: dns.rdtypes.ANY.NID
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - <builtin>.len
    - <builtin>.int
    - binascii.hexlify
    - dns.rdata._hexify
    - dns.rdtypes.util.parse_formatted_hex
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - <builtin>.isinstance
    - data.decode
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68f8370>
    - <ast.Constant object at 0x7fc9c68f8700>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: dns.rdtypes.ANY.NID.NID.to_text
    functionSourceFile: dns.rdtypes.ANY.NID
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68f8f10>
    - <ast.Constant object at 0x7fc9c68f8100>
    - <ast.Constant object at 0x7fc9c68f8280>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 33
    functionName: dns.rdtypes.ANY.NID.NID.from_text
    functionSourceFile: dns.rdtypes.ANY.NID
    functionUses: 0
    functionsReached:
    - tok.get_identifier
    - <builtin>.super
    - <builtin>.len
    - <builtin>.int
    - tok.get_uint16
    - binascii.hexlify
    - dns.rdata._hexify
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.range
    - dns.rdtypes.ANY.NID.NID.__init__
    - separator.join
    - <builtin>.isinstance
    - data.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: tok.get_identifier
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e19280>
    - <ast.Constant object at 0x7fc9c5e19c10>
    - <ast.Constant object at 0x7fc9c5e19a90>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 40
    functionName: dns.rdtypes.ANY.NID.NID._to_wire
    functionSourceFile: dns.rdtypes.ANY.NID
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    - <builtin>.int
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.range
    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 0x7fc9c5e23bb0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 45
    functionName: dns.rdtypes.ANY.NID.NID.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.NID
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - <builtin>.len
    - parser.get_uint16
    - <builtin>.int
    - binascii.hexlify
    - dns.rdata._hexify
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.range
    - dns.rdtypes.ANY.NID.NID.__init__
    - separator.join
    - <builtin>.isinstance
    - data.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: dns.rdtypes.ANY.EUI64
    functionSourceFile: dns.rdtypes.ANY.EUI64
    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: dns.rdtypes.ANY.RP
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - mbox
    - txt
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.rdtypes.ANY.RP.RP.__init__
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c56e2610>
    - <ast.Constant object at 0x7fc9c56e2310>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 37
    functionName: dns.rdtypes.ANY.RP.RP.to_text
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e2dc0>
    - <ast.Constant object at 0x7fc9c56e25e0>
    - <ast.Constant object at 0x7fc9c56e2d60>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 43
    functionName: dns.rdtypes.ANY.RP.RP.from_text
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 0
    functionsReached:
    - tok.get_name
    - dns.rdtypes.ANY.RP.RP.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6338be0>
    - <ast.Constant object at 0x7fc9c6338910>
    - <ast.Constant object at 0x7fc9c63381c0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: dns.rdtypes.ANY.RP.RP._to_wire
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 0
    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 0x7fc9c63388b0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.rdtypes.ANY.RP.RP.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 0
    functionsReached:
    - parser.get_name
    - dns.rdtypes.ANY.RP.RP.__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: dns.rdtypes.ANY.OPENPGPKEY
    functionSourceFile: dns.rdtypes.ANY.OPENPGPKEY
    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
    - rdclass
    - rdtype
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.__init__
    functionSourceFile: dns.rdtypes.ANY.OPENPGPKEY
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c61fc760>
    - <ast.Constant object at 0x7fc9c61fca90>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 36
    functionName: dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.to_text
    functionSourceFile: dns.rdtypes.ANY.OPENPGPKEY
    functionUses: 0
    functionsReached:
    - dns.rdata._base64ify
    - <builtin>.len
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - base64.b64encode
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a326d0>
    - <ast.Constant object at 0x7fc9c5a329d0>
    - <ast.Constant object at 0x7fc9c5a32a60>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 40
    functionName: dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.from_text
    functionSourceFile: dns.rdtypes.ANY.OPENPGPKEY
    functionUses: 0
    functionsReached:
    - base64.b64decode
    - tok.concatenate_remaining_identifiers
    - dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.__init__
    - <builtin>.super
    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 0x7fc9c5a32cd0>
    - <ast.Constant object at 0x7fc9c5a32550>
    - <ast.Constant object at 0x7fc9c5a320a0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 47
    functionName: dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY._to_wire
    functionSourceFile: dns.rdtypes.ANY.OPENPGPKEY
    functionUses: 0
    functionsReached:
    - file.write
    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 0x7fc9c6b44f70>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 51
    functionName: dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.OPENPGPKEY
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.__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: dns.rdtypes.ANY.CNAME
    functionSourceFile: dns.rdtypes.ANY.CNAME
    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: dns.rdtypes.ANY.L64
    functionSourceFile: dns.rdtypes.ANY.L64
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - preference
    - locator64
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 18
    functionName: dns.rdtypes.ANY.L64.L64.__init__
    functionSourceFile: dns.rdtypes.ANY.L64
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - <builtin>.len
    - <builtin>.int
    - binascii.hexlify
    - dns.rdata._hexify
    - dns.rdtypes.util.parse_formatted_hex
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - <builtin>.isinstance
    - data.decode
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e23be0>
    - <ast.Constant object at 0x7fc9c5e23c70>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: dns.rdtypes.ANY.L64.L64.to_text
    functionSourceFile: dns.rdtypes.ANY.L64
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e232e0>
    - <ast.Constant object at 0x7fc9c5e23a30>
    - <ast.Constant object at 0x7fc9c5e238b0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 33
    functionName: dns.rdtypes.ANY.L64.L64.from_text
    functionSourceFile: dns.rdtypes.ANY.L64
    functionUses: 0
    functionsReached:
    - tok.get_identifier
    - <builtin>.super
    - <builtin>.len
    - tok.get_uint16
    - <builtin>.int
    - binascii.hexlify
    - dns.rdata._hexify
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.range
    - separator.join
    - <builtin>.isinstance
    - data.decode
    - dns.rdtypes.ANY.L64.L64.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f9d00>
    - <ast.Constant object at 0x7fc9c63f9eb0>
    - <ast.Constant object at 0x7fc9c63f9ee0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 40
    functionName: dns.rdtypes.ANY.L64.L64._to_wire
    functionSourceFile: dns.rdtypes.ANY.L64
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    - <builtin>.int
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.range
    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 0x7fc9c63f9730>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 45
    functionName: dns.rdtypes.ANY.L64.L64.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.L64
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - <builtin>.len
    - parser.get_uint16
    - <builtin>.int
    - binascii.hexlify
    - dns.rdata._hexify
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.range
    - separator.join
    - <builtin>.isinstance
    - data.decode
    - dns.rdtypes.ANY.L64.L64.__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: dns.rdtypes.ANY.ISDN
    functionSourceFile: dns.rdtypes.ANY.ISDN
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - address
    - subaddress
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.ISDN.ISDN.__init__
    functionSourceFile: dns.rdtypes.ANY.ISDN
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c61fce80>
    - <ast.Constant object at 0x7fc9c61fca30>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: dns.rdtypes.ANY.ISDN.ISDN.to_text
    functionSourceFile: dns.rdtypes.ANY.ISDN
    functionUses: 0
    functionsReached:
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    - <builtin>.bytearray
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b44cd0>
    - <ast.Constant object at 0x7fc9c6b44e50>
    - <ast.Constant object at 0x7fc9c6b44eb0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.rdtypes.ANY.ISDN.ISDN.from_text
    functionSourceFile: dns.rdtypes.ANY.ISDN
    functionUses: 0
    functionsReached:
    - tok.get_remaining
    - <builtin>.super
    - <builtin>.len
    - dns.rdtypes.ANY.ISDN.ISDN.__init__
    - tok.get_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6338ac0>
    - <ast.Constant object at 0x7fc9c63385e0>
    - <ast.Constant object at 0x7fc9c6338520>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdtypes.ANY.ISDN.ISDN._to_wire
    functionSourceFile: dns.rdtypes.ANY.ISDN
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e24f0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 72
    functionName: dns.rdtypes.ANY.ISDN.ISDN.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.ISDN
    functionUses: 0
    functionsReached:
    - parser.remaining
    - parser.get_counted_bytes
    - dns.rdtypes.ANY.ISDN.ISDN.__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: dns.rdtypes.ANY.EUI48
    functionSourceFile: dns.rdtypes.ANY.EUI48
    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: dns.rdtypes.ANY.RT
    functionSourceFile: dns.rdtypes.ANY.RT
    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: dns.rdtypes.ANY.NINFO
    functionSourceFile: dns.rdtypes.ANY.NINFO
    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: dns.rdtypes.ANY.LP
    functionSourceFile: dns.rdtypes.ANY.LP
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - preference
    - fqdn
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 17
    functionName: dns.rdtypes.ANY.LP.LP.__init__
    functionSourceFile: dns.rdtypes.ANY.LP
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c63f93d0>
    - <ast.Constant object at 0x7fc9c63f9460>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 22
    functionName: dns.rdtypes.ANY.LP.LP.to_text
    functionSourceFile: dns.rdtypes.ANY.LP
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63f9c40>
    - <ast.Constant object at 0x7fc9c63f9790>
    - <ast.Constant object at 0x7fc9c63f9850>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 27
    functionName: dns.rdtypes.ANY.LP.LP.from_text
    functionSourceFile: dns.rdtypes.ANY.LP
    functionUses: 0
    functionsReached:
    - tok.get_name
    - dns.rdtypes.ANY.LP.LP.__init__
    - tok.get_uint16
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68f8a00>
    - <ast.Constant object at 0x7fc9c68f8c70>
    - <ast.Constant object at 0x7fc9c68f8070>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.LP.LP._to_wire
    functionSourceFile: dns.rdtypes.ANY.LP
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c68f85e0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: dns.rdtypes.ANY.LP.LP.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.LP
    functionUses: 0
    functionsReached:
    - parser.get_name
    - dns.rdtypes.ANY.LP.LP.__init__
    - parser.get_uint16
    - <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: dns.rdtypes.ANY.TXT
    functionSourceFile: dns.rdtypes.ANY.TXT
    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: dns.rdtypes.ANY.RESINFO
    functionSourceFile: dns.rdtypes.ANY.RESINFO
    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: dns.rdtypes.ANY.HIP
    functionSourceFile: dns.rdtypes.ANY.HIP
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - hit
    - algorithm
    - key
    - servers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: dns.rdtypes.ANY.HIP.HIP.__init__
    functionSourceFile: dns.rdtypes.ANY.HIP
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5d736a0>
    - <ast.Constant object at 0x7fc9c5d73e80>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: dns.rdtypes.ANY.HIP.HIP.to_text
    functionSourceFile: dns.rdtypes.ANY.HIP
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - x.to_unicode
    - binascii.hexlify
    - base64.b64encode
    - server.choose_relativity
    - servers.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: server.choose_relativity
    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: servers.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: x.to_unicode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a8c310>
    - <ast.Constant object at 0x7fc9c5a8cbe0>
    - <ast.Constant object at 0x7fc9c5a8c0a0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.rdtypes.ANY.HIP.HIP.from_text
    functionSourceFile: dns.rdtypes.ANY.HIP
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - tok.get_remaining
    - <builtin>.super
    - base64.b64decode
    - dns.rdtypes.ANY.HIP.HIP.__init__
    - binascii.unhexlify
    - tok.as_name
    - tok.get_string
    - servers.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: tok.as_name
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b55940>
    - <ast.Constant object at 0x7fc9c6b55280>
    - <ast.Constant object at 0x7fc9c6b552e0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: dns.rdtypes.ANY.HIP.HIP._to_wire
    functionSourceFile: dns.rdtypes.ANY.HIP
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    - server.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: server.to_wire
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    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 0x7fc9c5794700>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: dns.rdtypes.ANY.HIP.HIP.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.HIP
    functionUses: 0
    functionsReached:
    - parser.remaining
    - parser.get_name
    - <builtin>.super
    - dns.rdtypes.ANY.HIP.HIP.__init__
    - parser.get_bytes
    - parser.get_struct
    - servers.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: dns.rdtypes.ANY.TLSA
    functionSourceFile: dns.rdtypes.ANY.TLSA
    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: dns.rdtypes.ANY.L32
    functionSourceFile: dns.rdtypes.ANY.L32
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - preference
    - locator32
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 18
    functionName: dns.rdtypes.ANY.L32.L32.__init__
    functionSourceFile: dns.rdtypes.ANY.L32
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c595c1c0>
    - <ast.Constant object at 0x7fc9c595c0a0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 23
    functionName: dns.rdtypes.ANY.L32.L32.to_text
    functionSourceFile: dns.rdtypes.ANY.L32
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e6cfa0>
    - <ast.Constant object at 0x7fc9c5e6cb80>
    - <ast.Constant object at 0x7fc9c5e6c9d0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 27
    functionName: dns.rdtypes.ANY.L32.L32.from_text
    functionSourceFile: dns.rdtypes.ANY.L32
    functionUses: 0
    functionsReached:
    - tok.get_uint16
    - tok.get_identifier
    - dns.rdtypes.ANY.L32.L32.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e6c0a0>
    - <ast.Constant object at 0x7fc9c5e6c940>
    - <ast.Constant object at 0x7fc9c5e6c850>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.L32.L32._to_wire
    functionSourceFile: dns.rdtypes.ANY.L32
    functionUses: 0
    functionsReached:
    - part.isdigit
    - file.write
    - text.encode
    - btext.split
    - <builtin>.len
    - struct.pack
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    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 0x7fc9c5e19c70>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: dns.rdtypes.ANY.L32.L32.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.L32
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - parser.get_uint16
    - dns.rdtypes.ANY.L32.L32.__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: dns.rdtypes.ANY.DSYNC
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 23
    functionName: dns.rdtypes.ANY.DSYNC.Scheme._maximum
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    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:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 27
    functionName: dns.rdtypes.ANY.DSYNC.Scheme._unknown_exception_class
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - rrtype
    - scheme
    - port
    - target
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: dns.rdtypes.ANY.DSYNC.DSYNC.__init__
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    functionUses: 2
    functionsReached:
    - Scheme.make
    - <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: Scheme.make
    functionSourceFile: <builtin>
    functionUses: 3
    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 0x7fc9c5d73a00>
    - <ast.Constant object at 0x7fc9c5d73fd0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 46
    functionName: dns.rdtypes.ANY.DSYNC.DSYNC.to_text
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    functionUses: 0
    functionsReached:
    - RdataType.to_text
    - Scheme.to_text
    - dns.rdatatype.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Scheme.to_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a8cf70>
    - <ast.Constant object at 0x7fc9c5a8c730>
    - <ast.Constant object at 0x7fc9c5a8c760>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 54
    functionName: dns.rdtypes.ANY.DSYNC.DSYNC.from_text
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    functionUses: 0
    functionsReached:
    - Scheme.make
    - <builtin>.super
    - dns.rdtypes.ANY.DSYNC.DSYNC.__init__
    - tok.get_uint16
    - RdataType.from_text
    - tok.get_name
    - tok.get_string
    - dns.rdatatype.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5a8ce20>
    - <ast.Constant object at 0x7fc9c5a8cc40>
    - <ast.Constant object at 0x7fc9c5a8c970>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: dns.rdtypes.ANY.DSYNC.DSYNC._to_wire
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c5e739a0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 69
    functionName: dns.rdtypes.ANY.DSYNC.DSYNC.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    functionUses: 0
    functionsReached:
    - parser.get_name
    - Scheme.make
    - <builtin>.super
    - dns.rdtypes.ANY.DSYNC.DSYNC.__init__
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.CERT
    functionSourceFile: dns.rdtypes.ANY.CERT
    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:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: dns.rdtypes.ANY.CERT._ctype_from_text
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 1
    functionsReached:
    - _ctype_by_name.get
    - <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: _ctype_by_name.get
    functionSourceFile: <builtin>
    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:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 61
    functionName: dns.rdtypes.ANY.CERT._ctype_to_text
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 1
    functionsReached:
    - _ctype_by_value.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: _ctype_by_value.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - certificate_type
    - key_tag
    - algorithm
    - certificate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 76
    functionName: dns.rdtypes.ANY.CERT.CERT.__init__
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5bcc940>
    - <ast.Constant object at 0x7fc9c5bccbe0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 85
    functionName: dns.rdtypes.ANY.CERT.CERT.to_text
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 0
    functionsReached:
    - _ctype_by_value.get
    - <builtin>.str
    - dns.rdata._base64ify
    - <builtin>.len
    - dns.dnssectypes.Algorithm.to_text
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - base64.b64encode
    - data.decode
    - dns.rdtypes.ANY.CERT._ctype_to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssectypes.Algorithm.to_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bccf70>
    - <ast.Constant object at 0x7fc9c5bcc760>
    - <ast.Constant object at 0x7fc9c5bccfd0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 92
    functionName: dns.rdtypes.ANY.CERT.CERT.from_text
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 0
    functionsReached:
    - _ctype_by_name.get
    - dns.rdtypes.ANY.CERT.CERT.__init__
    - <builtin>.super
    - base64.b64decode
    - <builtin>.int
    - tok.get_uint16
    - dns.rdtypes.ANY.CERT._ctype_from_text
    - dns.dnssectypes.Algorithm.from_text
    - tok.concatenate_remaining_identifiers
    - tok.get_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c56e2df0>
    - <ast.Constant object at 0x7fc9c56e2910>
    - <ast.Constant object at 0x7fc9c56e2fa0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: dns.rdtypes.ANY.CERT.CERT._to_wire
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c56e2400>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 110
    functionName: dns.rdtypes.ANY.CERT.CERT.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - parser.get_remaining
    - dns.rdtypes.ANY.CERT.CERT.__init__
    - parser.get_struct
    linkageType: 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: dns.rdtypes.ANY.LOC
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - what
    - desc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: dns.rdtypes.ANY.LOC._exponent_of
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 3
    functionsReached:
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: dns.rdtypes.ANY.LOC._float_to_tuple
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 3
    functionsReached:
    - <builtin>.int
    - <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: 1
    argDefaultValues: []
    argNames:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: dns.rdtypes.ANY.LOC._tuple_to_float
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 2
    functionsReached:
    - <builtin>.float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - what
    - desc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 76
    functionName: dns.rdtypes.ANY.LOC._encode_size
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 2
    functionsReached:
    - <builtin>.enumerate
    - <builtin>.pow
    - <builtin>.int
    - dns.rdtypes.ANY.LOC._exponent_of
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - what
    - desc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 83
    functionName: dns.rdtypes.ANY.LOC._decode_size
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 1
    functionsReached:
    - <builtin>.pow
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - value
    - low
    - high
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 93
    functionName: dns.rdtypes.ANY.LOC._check_coordinate_list
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 9
    argDefaultValues:
    - <ast.Name object at 0x7fc9c5b7bb20>
    - <ast.Name object at 0x7fc9c5b7b940>
    - <ast.Name object at 0x7fc9c5b7b370>
    argNames:
    - self
    - rdclass
    - rdtype
    - latitude
    - longitude
    - altitude
    - size
    - hprec
    - vprec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 121
    functionName: dns.rdtypes.ANY.LOC.LOC.__init__
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - <builtin>.int
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - <builtin>.float
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.round
    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 0x7fc9c6b6b460>
    - <ast.Constant object at 0x7fc9c6b6b730>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 158
    functionName: dns.rdtypes.ANY.LOC.LOC.to_text
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 36
    ICount: 3
    IfCount: 25
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5bc2bb0>
    - <ast.Constant object at 0x7fc9c5bc2e80>
    - <ast.Constant object at 0x7fc9c5bc27c0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 188
    functionName: dns.rdtypes.ANY.LOC.LOC.from_text
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached:
    - tok.get_remaining
    - t.split
    - <builtin>.isinstance
    - <builtin>.enumerate
    - <builtin>.round
    - <builtin>.super
    - milliseconds.isdigit
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - dns.rdtypes.ANY.LOC._exponent_of
    - tok.get_string
    - dns.rdtypes.ANY.LOC._encode_size
    - dns.rdtypes.ANY.LOC.LOC.__init__
    - <builtin>.int
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - <builtin>.float
    - t.isdigit
    - seconds.isdigit
    - <builtin>.len
    - <builtin>.pow
    - tok.get_int
    - <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: t.isdigit
    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: t.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: seconds.isdigit
    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: milliseconds.isdigit
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    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 0x7fc9c5e91be0>
    - <ast.Constant object at 0x7fc9c5e917f0>
    - <ast.Constant object at 0x7fc9c5e910d0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 284
    functionName: dns.rdtypes.ANY.LOC.LOC._to_wire
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.enumerate
    - struct.pack
    - <builtin>.pow
    - <builtin>.int
    - dns.rdtypes.ANY.LOC._exponent_of
    - dns.rdtypes.ANY.LOC._encode_size
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61de0a0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 309
    functionName: dns.rdtypes.ANY.LOC.LOC.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.pow
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - parser.get_struct
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - <builtin>.int
    - <builtin>.float
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.rdtypes.ANY.LOC.LOC.__init__
    - <builtin>.round
    - dns.rdtypes.ANY.LOC._decode_size
    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: 340
    functionName: dns.rdtypes.ANY.LOC.LOC.float_latitude
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.LOC._tuple_to_float
    - <builtin>.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: 2
    functionLinenumber: 345
    functionName: dns.rdtypes.ANY.LOC.LOC.float_longitude
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.LOC._tuple_to_float
    - <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: dns.rdtypes.ANY.MX
    functionSourceFile: dns.rdtypes.ANY.MX
    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: dns.rdtypes.ANY.AVC
    functionSourceFile: dns.rdtypes.ANY.AVC
    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: dns.rdtypes.ANY.NSEC3
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 0
    functionsReached:
    - bytes.maketrans
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bytes.maketrans
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 9
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - algorithm
    - flags
    - iterations
    - salt
    - next
    - windows
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: dns.rdtypes.ANY.NSEC3.NSEC3.__init__
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <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: 67
    functionName: dns.rdtypes.ANY.NSEC3.NSEC3._next_text
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 2
    functionsReached:
    - base64.b32encode
    - next.rstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.rstrip
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    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 0x7fc9c5bc2790>
    - <ast.Constant object at 0x7fc9c5bc29a0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 72
    functionName: dns.rdtypes.ANY.NSEC3.NSEC3.to_text
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 0
    functionsReached:
    - binascii.hexlify
    - base64.b32encode
    - dns.rdtypes.ANY.NSEC3.NSEC3._next_text
    - next.rstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e66b80>
    - <ast.Constant object at 0x7fc9c5e664c0>
    - <ast.Constant object at 0x7fc9c5e66280>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 82
    functionName: dns.rdtypes.ANY.NSEC3.NSEC3.from_text
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - <builtin>.super
    - <builtin>.len
    - binascii.unhexlify
    - salt.encode
    - base64.b32decode
    - tok.get_uint16
    - Bitmap.from_text
    - dns.rdtypes.ANY.NSEC3.NSEC3.__init__
    - next.endswith
    - <builtin>.isinstance
    - <builtin>.tuple
    - tok.get_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.endswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base64.b32decode
    functionSourceFile: base64
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c63fd400>
    - <ast.Constant object at 0x7fc9c63fdb80>
    - <ast.Constant object at 0x7fc9c63fd280>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: dns.rdtypes.ANY.NSEC3.NSEC3._to_wire
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    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 0x7fc9c6b53130>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 112
    functionName: dns.rdtypes.ANY.NSEC3.NSEC3.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - Bitmap.from_wire_parser
    - parser.get_counted_bytes
    - dns.rdtypes.ANY.NSEC3.NSEC3.__init__
    - <builtin>.isinstance
    - <builtin>.tuple
    - parser.get_struct
    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 0x7fc9c5d58dc0>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 119
    functionName: dns.rdtypes.ANY.NSEC3.NSEC3.next_name
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 0
    functionsReached:
    - text.encode
    - c.isdigit
    - labels.append
    - label.encode
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - byte_.isdigit
    - encodings.idna.ToASCII
    - base64.b32encode
    - <builtin>.list
    - dns.name.from_text
    - <builtin>.ord
    - dns.rdtypes.ANY.NSEC3.NSEC3._next_text
    - <builtin>.int
    - dns.name.is_all_ascii
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - <builtin>.len
    - struct.pack
    - next.rstrip
    - labels.extend
    - <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: dns.rdtypes.ANY.CSYNC
    functionSourceFile: dns.rdtypes.ANY.CSYNC
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - serial
    - flags
    - windows
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: dns.rdtypes.ANY.CSYNC.CSYNC.__init__
    functionSourceFile: dns.rdtypes.ANY.CSYNC
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.super
    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 0x7fc9c5e91eb0>
    - <ast.Constant object at 0x7fc9c5e91be0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 47
    functionName: dns.rdtypes.ANY.CSYNC.CSYNC.to_text
    functionSourceFile: dns.rdtypes.ANY.CSYNC
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d58fd0>
    - <ast.Constant object at 0x7fc9c5d58310>
    - <ast.Constant object at 0x7fc9c5d58eb0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 52
    functionName: dns.rdtypes.ANY.CSYNC.CSYNC.from_text
    functionSourceFile: dns.rdtypes.ANY.CSYNC
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - tok.get_uint32
    - dns.rdtypes.ANY.CSYNC.CSYNC.__init__
    - tok.get_uint16
    - Bitmap.from_text
    - <builtin>.isinstance
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d58070>
    - <ast.Constant object at 0x7fc9c5d584f0>
    - <ast.Constant object at 0x7fc9c5d58c10>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdtypes.ANY.CSYNC.CSYNC._to_wire
    functionSourceFile: dns.rdtypes.ANY.CSYNC
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c6b53730>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 65
    functionName: dns.rdtypes.ANY.CSYNC.CSYNC.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.CSYNC
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.rdtypes.ANY.CSYNC.CSYNC.__init__
    - Bitmap.from_wire_parser
    - <builtin>.isinstance
    - <builtin>.tuple
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.WALLET
    functionSourceFile: dns.rdtypes.ANY.WALLET
    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: dns.rdtypes.ANY.TKEY
    functionSourceFile: dns.rdtypes.ANY.TKEY
    functionUses: 0
    functionsReached: []
    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 0x7fc9c5ee0250>
    argNames:
    - self
    - rdclass
    - rdtype
    - algorithm
    - inception
    - expiration
    - mode
    - error
    - key
    - other
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 40
    functionName: dns.rdtypes.ANY.TKEY.TKEY.__init__
    functionSourceFile: dns.rdtypes.ANY.TKEY
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5905880>
    - <ast.Constant object at 0x7fc9c5905790>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 61
    functionName: dns.rdtypes.ANY.TKEY.TKEY.to_text
    functionSourceFile: dns.rdtypes.ANY.TKEY
    functionUses: 0
    functionsReached:
    - dns.rdata._base64ify
    - <builtin>.len
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - base64.b64encode
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5990d90>
    - <ast.Constant object at 0x7fc9c5990e50>
    - <ast.Constant object at 0x7fc9c5990700>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 70
    functionName: dns.rdtypes.ANY.TKEY.TKEY.from_text
    functionSourceFile: dns.rdtypes.ANY.TKEY
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.rdtypes.ANY.TKEY.TKEY.__init__
    - tok.get_name
    - base64.b64decode
    - tok.get_uint32
    - tok.get_uint16
    - tok.concatenate_remaining_identifiers
    - tok.get_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 6
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e8cf70>
    - <ast.Constant object at 0x7fc9c5e8ce20>
    - <ast.Constant object at 0x7fc9c5e8c700>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: dns.rdtypes.ANY.TKEY.TKEY._to_wire
    functionSourceFile: dns.rdtypes.ANY.TKEY
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    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 0x7fc9c59df340>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 99
    functionName: dns.rdtypes.ANY.TKEY.TKEY.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.TKEY
    functionUses: 0
    functionsReached:
    - parser.get_name
    - <builtin>.super
    - dns.rdtypes.ANY.TKEY.TKEY.__init__
    - parser.get_counted_bytes
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.AFSDB
    functionSourceFile: dns.rdtypes.ANY.AFSDB
    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: 38
    functionName: dns.rdtypes.ANY.AFSDB.AFSDB.subtype
    functionSourceFile: dns.rdtypes.ANY.AFSDB
    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: 43
    functionName: dns.rdtypes.ANY.AFSDB.AFSDB.hostname
    functionSourceFile: dns.rdtypes.ANY.AFSDB
    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: dns.rdtypes.ANY.DLV
    functionSourceFile: dns.rdtypes.ANY.DLV
    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: dns.rdtypes.ANY.SPF
    functionSourceFile: dns.rdtypes.ANY.SPF
    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: dns.rdtypes.ANY.X25
    functionSourceFile: dns.rdtypes.ANY.X25
    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
    - rdclass
    - rdtype
    - address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.X25.X25.__init__
    functionSourceFile: dns.rdtypes.ANY.X25
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c61ad340>
    - <ast.Constant object at 0x7fc9c61ada30>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 38
    functionName: dns.rdtypes.ANY.X25.X25.to_text
    functionSourceFile: dns.rdtypes.ANY.X25
    functionUses: 0
    functionsReached:
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    - <builtin>.bytearray
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c61ad7c0>
    - <ast.Constant object at 0x7fc9c61ad760>
    - <ast.Constant object at 0x7fc9c61ad400>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: dns.rdtypes.ANY.X25.X25.from_text
    functionSourceFile: dns.rdtypes.ANY.X25
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.X25.X25.__init__
    - tok.get_string
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c68effa0>
    - <ast.Constant object at 0x7fc9c68ef490>
    - <ast.Constant object at 0x7fc9c68ef280>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns.rdtypes.ANY.X25.X25._to_wire
    functionSourceFile: dns.rdtypes.ANY.X25
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    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 0x7fc9c68efd00>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.rdtypes.ANY.X25.X25.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.X25
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.X25.X25.__init__
    - parser.get_counted_bytes
    - <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: dns.rdtypes.IN.IPSECKEY
    functionSourceFile: dns.rdtypes.IN.IPSECKEY
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - precedence
    - gateway_type
    - algorithm
    - gateway
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: dns.rdtypes.IN.IPSECKEY.IPSECKEY.__init__
    functionSourceFile: dns.rdtypes.IN.IPSECKEY
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c6b53070>
    - <ast.Constant object at 0x7fc9c6b53970>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 50
    functionName: dns.rdtypes.IN.IPSECKEY.IPSECKEY.to_text
    functionSourceFile: dns.rdtypes.IN.IPSECKEY
    functionUses: 0
    functionsReached:
    - dns.rdata._base64ify
    - <builtin>.len
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - base64.b64encode
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e91a00>
    - <ast.Constant object at 0x7fc9c5e91dc0>
    - <ast.Constant object at 0x7fc9c5e916d0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 56
    functionName: dns.rdtypes.IN.IPSECKEY.IPSECKEY.from_text
    functionSourceFile: dns.rdtypes.IN.IPSECKEY
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - Gateway.from_text
    - <builtin>.super
    - base64.b64decode
    - tok.concatenate_remaining_identifiers
    - dns.rdtypes.IN.IPSECKEY.IPSECKEY.__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: Gateway.from_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c64bf280>
    - <ast.Constant object at 0x7fc9c64bf640>
    - <ast.Constant object at 0x7fc9c64bf3a0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: dns.rdtypes.IN.IPSECKEY.IPSECKEY._to_wire
    functionSourceFile: dns.rdtypes.IN.IPSECKEY
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c63fdf70>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 80
    functionName: dns.rdtypes.IN.IPSECKEY.IPSECKEY.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.IPSECKEY
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - Gateway.from_wire_parser
    - parser.get_struct
    - dns.rdtypes.IN.IPSECKEY.IPSECKEY.__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: Gateway.from_wire_parser
    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: dns.rdtypes.IN.DHCID
    functionSourceFile: dns.rdtypes.IN.DHCID
    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
    - rdclass
    - rdtype
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: dns.rdtypes.IN.DHCID.DHCID.__init__
    functionSourceFile: dns.rdtypes.IN.DHCID
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5d58700>
    - <ast.Constant object at 0x7fc9c5d58040>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 37
    functionName: dns.rdtypes.IN.DHCID.DHCID.to_text
    functionSourceFile: dns.rdtypes.IN.DHCID
    functionUses: 0
    functionsReached:
    - dns.rdata._base64ify
    - <builtin>.len
    - dns.rdata._wordbreak
    - <builtin>.range
    - separator.join
    - base64.b64encode
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d58c40>
    - <ast.Constant object at 0x7fc9c5d58340>
    - <ast.Constant object at 0x7fc9c5d58bb0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 41
    functionName: dns.rdtypes.IN.DHCID.DHCID.from_text
    functionSourceFile: dns.rdtypes.IN.DHCID
    functionUses: 0
    functionsReached:
    - base64.b64decode
    - dns.rdtypes.IN.DHCID.DHCID.__init__
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    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 0x7fc9c5d58370>
    - <ast.Constant object at 0x7fc9c5d58a30>
    - <ast.Constant object at 0x7fc9c5d58a00>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns.rdtypes.IN.DHCID.DHCID._to_wire
    functionSourceFile: dns.rdtypes.IN.DHCID
    functionUses: 0
    functionsReached:
    - file.write
    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 0x7fc9c64bf5b0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 52
    functionName: dns.rdtypes.IN.DHCID.DHCID.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.DHCID
    functionUses: 0
    functionsReached:
    - dns.rdtypes.IN.DHCID.DHCID.__init__
    - parser.get_remaining
    - <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: dns.rdtypes.IN.SRV
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - priority
    - weight
    - port
    - target
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: dns.rdtypes.IN.SRV.SRV.__init__
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5bc20d0>
    - <ast.Constant object at 0x7fc9c5bc2d90>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: dns.rdtypes.IN.SRV.SRV.to_text
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b892b0>
    - <ast.Constant object at 0x7fc9c6b892e0>
    - <ast.Constant object at 0x7fc9c7023ac0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 47
    functionName: dns.rdtypes.IN.SRV.SRV.from_text
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - tok.get_name
    - tok.get_uint16
    - dns.rdtypes.IN.SRV.SRV.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e66a30>
    - <ast.Constant object at 0x7fc9c5e666a0>
    - <ast.Constant object at 0x7fc9c5e66c10>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: dns.rdtypes.IN.SRV.SRV._to_wire
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c63fdca0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 62
    functionName: dns.rdtypes.IN.SRV.SRV.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - parser.get_name
    - parser.get_struct
    - dns.rdtypes.IN.SRV.SRV.__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: 67
    functionName: dns.rdtypes.IN.SRV.SRV._processing_priority
    functionSourceFile: dns.rdtypes.IN.SRV
    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: 70
    functionName: dns.rdtypes.IN.SRV.SRV._processing_weight
    functionSourceFile: dns.rdtypes.IN.SRV
    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:
    - cls
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 74
    functionName: dns.rdtypes.IN.SRV.SRV._processing_order
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.len
    - dns.rdtypes.util.weighted_processing_order
    - <builtin>.sum
    - ordered.append
    - by_priority.keys
    - rdata._processing_weight
    - random.uniform
    - collections.defaultdict
    - <builtin>.enumerate
    - rdata._processing_priority
    - dns.rdtypes.util._priority_table
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.IN.HTTPS
    functionSourceFile: dns.rdtypes.IN.HTTPS
    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: dns.rdtypes.IN.APL
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - family
    - negation
    - address
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 36
    functionName: dns.rdtypes.IN.APL.APLItem.__init__
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 2
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdata.Rdata._as_int
    - dns.rdata.Rdata._as_uint16
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - dns.rdata.Rdata._as_ipv4_address
    - _leading_zero.match
    - binascii.hexlify
    - <builtin>.bytes
    - dns.rdata.Rdata._as_ipv6_address
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.canonicalize
    - dns.rdata.Rdata._as_bytes
    - dns.rdata.Rdata._as_bool
    - dns.rdata.Rdata._as_uint8
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.canonicalize
    - value.encode
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - canonical.append
    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: 49
    functionName: dns.rdtypes.IN.APL.APLItem.__str__
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.rdtypes.IN.APL.APLItem.to_wire
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - m.group
    - <builtin>.isinstance
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - file.write
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - items
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 88
    functionName: dns.rdtypes.IN.APL.APL.__init__
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e8c550>
    - <ast.Constant object at 0x7fc9c5e8c460>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 95
    functionName: dns.rdtypes.IN.APL.APL.to_text
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached:
    - <builtin>.map
    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 0x7fc9c5e8cb80>
    - <ast.Constant object at 0x7fc9c5e8c250>
    - <ast.Constant object at 0x7fc9c5e8cb20>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 99
    functionName: dns.rdtypes.IN.APL.APL.from_text
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - tok.get_remaining
    - token.unescape
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.rdata.Rdata._as_int
    - dns.rdata.Rdata._as_uint16
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.rdtypes.IN.APL.APL.__init__
    - <builtin>.isinstance
    - items.append
    - m.group
    - btext.startswith
    - dns.rdtypes.IN.APL.APLItem.__init__
    - <builtin>.super
    - btext.endswith
    - dns.rdata.Rdata._as_ipv4_address
    - rest.split
    - _leading_zero.match
    - binascii.hexlify
    - <builtin>.bytes
    - dns.rdata.Rdata._as_ipv6_address
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.canonicalize
    - dns.rdata.Rdata._as_bytes
    - dns.rdata.Rdata._as_bool
    - dns.rdata.Rdata._as_uint8
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.canonicalize
    - value.encode
    - dns.ipv6.inet_ntoa
    - item.split
    - dns.ipv4.inet_ntoa
    - <builtin>.tuple
    - canonical.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: item.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: rest.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: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5990310>
    - <ast.Constant object at 0x7fc9c5990fa0>
    - <ast.Constant object at 0x7fc9c5990ca0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 119
    functionName: dns.rdtypes.IN.APL.APL._to_wire
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached:
    - item.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.to_wire
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59900a0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 124
    functionName: dns.rdtypes.IN.APL.APL.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - codecs.encode
    - text.encode
    - dns.rdata.Rdata._as_int
    - dns.rdata.Rdata._as_uint16
    - dns.ipv4.inet_aton
    - <builtin>.range
    - dns.rdtypes.IN.APL.APL.__init__
    - <builtin>.isinstance
    - items.append
    - m.group
    - parser.remaining
    - btext.startswith
    - dns.rdtypes.IN.APL.APLItem.__init__
    - <builtin>.super
    - btext.endswith
    - dns.rdata.Rdata._as_ipv4_address
    - _leading_zero.match
    - binascii.hexlify
    - <builtin>.bytes
    - parser.get_struct
    - dns.rdata.Rdata._as_ipv6_address
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.canonicalize
    - dns.rdata.Rdata._as_bytes
    - dns.rdata.Rdata._as_bool
    - dns.rdata.Rdata._as_uint8
    - part.isdigit
    - _colon_colon_end.match
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - chunks.append
    - dns.ipv6.canonicalize
    - value.encode
    - parser.get_bytes
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - <builtin>.tuple
    - canonical.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: codecs.encode
    functionSourceFile: codecs
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.IN.NSAP_PTR
    functionSourceFile: dns.rdtypes.IN.NSAP_PTR
    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: dns.rdtypes.IN.AAAA
    functionSourceFile: dns.rdtypes.IN.AAAA
    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
    - rdclass
    - rdtype
    - address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: dns.rdtypes.IN.AAAA.AAAA.__init__
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5e8c0a0>
    - <ast.Constant object at 0x7fc9c5e8c310>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 35
    functionName: dns.rdtypes.IN.AAAA.AAAA.to_text
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e8c940>
    - <ast.Constant object at 0x7fc9c5e8ce80>
    - <ast.Constant object at 0x7fc9c5e8cfa0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: dns.rdtypes.IN.AAAA.AAAA.from_text
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 0
    functionsReached:
    - dns.rdtypes.IN.AAAA.AAAA.__init__
    - tok.get_identifier
    - <builtin>.super
    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 0x7fc9c5e8c460>
    - <ast.Constant object at 0x7fc9c5e8c550>
    - <ast.Constant object at 0x7fc9c5e8ceb0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 45
    functionName: dns.rdtypes.IN.AAAA.AAAA._to_wire
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - _v4_ending.match
    - dns.ipv6.inet_aton
    - text.encode
    - dns.ipv4.inet_aton
    - <builtin>.range
    - <builtin>.isinstance
    - m.group
    - btext.startswith
    - btext.endswith
    - <builtin>.ord
    - <builtin>.int
    - part.isdigit
    - _colon_colon_end.match
    - file.write
    - btext.split
    - <builtin>.len
    - binascii.unhexlify
    - struct.pack
    - canonical.append
    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 0x7fc9c5ee0e80>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.rdtypes.IN.AAAA.AAAA.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.IN.AAAA.AAAA.__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: dns.rdtypes.IN.NAPTR
    functionSourceFile: dns.rdtypes.IN.NAPTR
    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:
    - file
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 27
    functionName: dns.rdtypes.IN.NAPTR._write_string
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 1
    functionsReached:
    - file.write
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 9
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - order
    - preference
    - flags
    - service
    - regexp
    - replacement
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: dns.rdtypes.IN.NAPTR.NAPTR.__init__
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c63fd610>
    - <ast.Constant object at 0x7fc9c63fd400>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 53
    functionName: dns.rdtypes.IN.NAPTR.NAPTR.to_text
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 0
    functionsReached:
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    - <builtin>.bytearray
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b53970>
    - <ast.Constant object at 0x7fc9c6b53100>
    - <ast.Constant object at 0x7fc9c6b53a00>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.rdtypes.IN.NAPTR.NAPTR.from_text
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - tok.get_uint16
    - dns.rdtypes.IN.NAPTR.NAPTR.__init__
    - tok.get_name
    - tok.get_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e91070>
    - <ast.Constant object at 0x7fc9c5e91160>
    - <ast.Constant object at 0x7fc9c5e91c70>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: dns.rdtypes.IN.NAPTR.NAPTR._to_wire
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 0
    functionsReached:
    - file.write
    - <builtin>.len
    - dns.rdtypes.IN.NAPTR._write_string
    - struct.pack
    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 0x7fc9c5e91220>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 86
    functionName: dns.rdtypes.IN.NAPTR.NAPTR.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 0
    functionsReached:
    - parser.get_name
    - <builtin>.super
    - strings.append
    - dns.rdtypes.IN.NAPTR.NAPTR.__init__
    - <builtin>.range
    - parser.get_counted_bytes
    - parser.get_struct
    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: 104
    functionName: dns.rdtypes.IN.NAPTR.NAPTR._processing_priority
    functionSourceFile: dns.rdtypes.IN.NAPTR
    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:
    - cls
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 108
    functionName: dns.rdtypes.IN.NAPTR.NAPTR._processing_order
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - dns.rdtypes.util.priority_processing_order
    - <builtin>.list
    - ordered.extend
    - <builtin>.len
    - by_priority.keys
    - collections.defaultdict
    - random.shuffle
    - rdata._processing_priority
    - dns.rdtypes.util._priority_table
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.IN.A
    functionSourceFile: dns.rdtypes.IN.A
    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
    - rdclass
    - rdtype
    - address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: dns.rdtypes.IN.A.A.__init__
    functionSourceFile: dns.rdtypes.IN.A
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5e912b0>
    - <ast.Constant object at 0x7fc9c5e91c70>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 35
    functionName: dns.rdtypes.IN.A.A.to_text
    functionSourceFile: dns.rdtypes.IN.A
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5e91100>
    - <ast.Constant object at 0x7fc9c5e91280>
    - <ast.Constant object at 0x7fc9c5e91460>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: dns.rdtypes.IN.A.A.from_text
    functionSourceFile: dns.rdtypes.IN.A
    functionUses: 0
    functionsReached:
    - tok.get_identifier
    - dns.rdtypes.IN.A.A.__init__
    - <builtin>.super
    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 0x7fc9c5e91730>
    - <ast.Constant object at 0x7fc9c5e91cd0>
    - <ast.Constant object at 0x7fc9c5e91370>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 45
    functionName: dns.rdtypes.IN.A.A._to_wire
    functionSourceFile: dns.rdtypes.IN.A
    functionUses: 0
    functionsReached:
    - part.isdigit
    - file.write
    - text.encode
    - btext.split
    - <builtin>.len
    - struct.pack
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    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 0x7fc9c6b53be0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.rdtypes.IN.A.A.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.A
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.IN.A.A.__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: dns.rdtypes.IN.KX
    functionSourceFile: dns.rdtypes.IN.KX
    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: dns.rdtypes.IN.WKS
    functionSourceFile: dns.rdtypes.IN.WKS
    functionUses: 0
    functionsReached:
    - socket.getprotobyname
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.getprotobyname
    functionSourceFile: socket
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - address
    - protocol
    - bitmap
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: dns.rdtypes.IN.WKS.WKS.__init__
    functionSourceFile: dns.rdtypes.IN.WKS
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c5ee0700>
    - <ast.Constant object at 0x7fc9c5ee0b80>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns.rdtypes.IN.WKS.WKS.to_text
    functionSourceFile: dns.rdtypes.IN.WKS
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - <builtin>.range
    - <builtin>.enumerate
    - bits.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5b7b550>
    - <ast.Constant object at 0x7fc9c5b7b760>
    - <ast.Constant object at 0x7fc9c5b7b4c0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 58
    functionName: dns.rdtypes.IN.WKS.WKS.from_text
    functionSourceFile: dns.rdtypes.IN.WKS
    functionUses: 0
    functionsReached:
    - tok.get_remaining
    - token.unescape
    - protocol.isdigit
    - <builtin>.super
    - <builtin>.len
    - dns.rdtypes.IN.WKS.WKS.__init__
    - bitmap.append
    - <builtin>.int
    - socket.getservbyname
    - <builtin>.range
    - socket.getprotobyname
    - <builtin>.bytearray
    - tok.get_string
    - dns.rdata._truncate_bitmap
    - value.isdigit
    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: 0
    functionLinenumber: -1
    functionName: protocol.isdigit
    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: value.isdigit
    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: bitmap.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c59df640>
    - <ast.Constant object at 0x7fc9c59df730>
    - <ast.Constant object at 0x7fc9c59df700>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 89
    functionName: dns.rdtypes.IN.WKS.WKS._to_wire
    functionSourceFile: dns.rdtypes.IN.WKS
    functionUses: 0
    functionsReached:
    - part.isdigit
    - file.write
    - text.encode
    - btext.split
    - <builtin>.len
    - struct.pack
    - <builtin>.ord
    - <builtin>.int
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    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 0x7fc9c59df160>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 96
    functionName: dns.rdtypes.IN.WKS.WKS.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.WKS
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - dns.rdtypes.IN.WKS.WKS.__init__
    - parser.get_bytes
    - parser.get_uint8
    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: dns.rdtypes.IN
    functionSourceFile: dns.rdtypes.IN
    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: dns.rdtypes.IN.PX
    functionSourceFile: dns.rdtypes.IN.PX
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - preference
    - map822
    - mapx400
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: dns.rdtypes.IN.PX.PX.__init__
    functionSourceFile: dns.rdtypes.IN.PX
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c61ad9a0>
    - <ast.Constant object at 0x7fc9c61ad8e0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 41
    functionName: dns.rdtypes.IN.PX.PX.to_text
    functionSourceFile: dns.rdtypes.IN.PX
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d58e20>
    - <ast.Constant object at 0x7fc9c5d58190>
    - <ast.Constant object at 0x7fc9c5d58e80>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 47
    functionName: dns.rdtypes.IN.PX.PX.from_text
    functionSourceFile: dns.rdtypes.IN.PX
    functionUses: 0
    functionsReached:
    - tok.get_name
    - tok.get_uint16
    - dns.rdtypes.IN.PX.PX.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d58880>
    - <ast.Constant object at 0x7fc9c5d58820>
    - <ast.Constant object at 0x7fc9c5d58eb0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: dns.rdtypes.IN.PX.PX._to_wire
    functionSourceFile: dns.rdtypes.IN.PX
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c5905370>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 62
    functionName: dns.rdtypes.IN.PX.PX.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.PX
    functionUses: 0
    functionsReached:
    - parser.get_name
    - dns.rdtypes.IN.PX.PX.__init__
    - parser.get_uint16
    - <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: 0
    functionLinenumber: 68
    functionName: dns.rdtypes.IN.PX.PX._processing_priority
    functionSourceFile: dns.rdtypes.IN.PX
    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:
    - cls
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 72
    functionName: dns.rdtypes.IN.PX.PX._processing_order
    functionSourceFile: dns.rdtypes.IN.PX
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - dns.rdtypes.util.priority_processing_order
    - <builtin>.list
    - ordered.extend
    - <builtin>.len
    - by_priority.keys
    - collections.defaultdict
    - random.shuffle
    - rdata._processing_priority
    - dns.rdtypes.util._priority_table
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.IN.NSAP
    functionSourceFile: dns.rdtypes.IN.NSAP
    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
    - rdclass
    - rdtype
    - address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.IN.NSAP.NSAP.__init__
    functionSourceFile: dns.rdtypes.IN.NSAP
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c6b6bc70>
    - <ast.Constant object at 0x7fc9c6b6b7c0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: dns.rdtypes.IN.NSAP.NSAP.to_text
    functionSourceFile: dns.rdtypes.IN.NSAP
    functionUses: 0
    functionsReached:
    - binascii.hexlify
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c6b6bb20>
    - <ast.Constant object at 0x7fc9c6b6b880>
    - <ast.Constant object at 0x7fc9c6b6b100>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: dns.rdtypes.IN.NSAP.NSAP.from_text
    functionSourceFile: dns.rdtypes.IN.NSAP
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.len
    - binascii.unhexlify
    - address.encode
    - dns.rdtypes.IN.NSAP.NSAP.__init__
    - tok.get_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: address.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    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 0x7fc9c59df370>
    - <ast.Constant object at 0x7fc9c59dfe50>
    - <ast.Constant object at 0x7fc9c59df2e0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: dns.rdtypes.IN.NSAP.NSAP._to_wire
    functionSourceFile: dns.rdtypes.IN.NSAP
    functionUses: 0
    functionsReached:
    - file.write
    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 0x7fc9c59dfdf0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 58
    functionName: dns.rdtypes.IN.NSAP.NSAP.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.NSAP
    functionUses: 0
    functionsReached:
    - dns.rdtypes.IN.NSAP.NSAP.__init__
    - parser.get_remaining
    - <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: dns.rdtypes.IN.SVCB
    functionSourceFile: dns.rdtypes.IN.SVCB
    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: dns.rdtypes.CH.A
    functionSourceFile: dns.rdtypes.CH.A
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - domain
    - address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.CH.A.A.__init__
    functionSourceFile: dns.rdtypes.CH.A
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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 0x7fc9c61addc0>
    - <ast.Constant object at 0x7fc9c61ada30>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 39
    functionName: dns.rdtypes.CH.A.A.to_text
    functionSourceFile: dns.rdtypes.CH.A
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d58760>
    - <ast.Constant object at 0x7fc9c5d58640>
    - <ast.Constant object at 0x7fc9c5d58fa0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 44
    functionName: dns.rdtypes.CH.A.A.from_text
    functionSourceFile: dns.rdtypes.CH.A
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - tok.get_name
    - tok.get_uint16
    - dns.rdtypes.CH.A.A.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc9c5d58ac0>
    - <ast.Constant object at 0x7fc9c5d58850>
    - <ast.Constant object at 0x7fc9c5d58910>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: dns.rdtypes.CH.A.A._to_wire
    functionSourceFile: dns.rdtypes.CH.A
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    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 0x7fc9c5905790>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 57
    functionName: dns.rdtypes.CH.A.A.from_wire_parser
    functionSourceFile: dns.rdtypes.CH.A
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - parser.get_name
    - parser.get_uint16
    - dns.rdtypes.CH.A.A.__init__
    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: dns.rdtypes.CH
    functionSourceFile: dns.rdtypes.CH
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_token':
  - 37
  - 38
  '...fuzz_token.TestOneInput':
  - 24
  - 26
  - 23
  '...fuzz_token.main':
  - 32
  - 33
  - 34
  dns:
  - 18
  dns._asyncbackend.Socket.__aexit__:
  - 49
  dns._asyncio_backend:
  - 3
  - 127
  dns._asyncio_backend.Backend.make_socket:
  - 261
  - 230
  - 231
  - 232
  - 235
  - 236
  - 243
  - 244
  - 245
  - 249
  - 250
  dns._asyncio_backend.Backend.sleep:
  - 267
  dns._asyncio_backend.Backend.wait_for:
  - 276
  dns._asyncio_backend.DatagramSocket.__init__:
  - 68
  dns._asyncio_backend.DatagramSocket.close:
  - 89
  dns._asyncio_backend.DatagramSocket.getpeername:
  - 92
  dns._asyncio_backend.DatagramSocket.getsockname:
  - 95
  dns._asyncio_backend.DatagramSocket.recvfrom:
  - 83
  - 84
  - 79
  dns._asyncio_backend.DatagramSocket.sendto:
  - 74
  - 75
  dns._asyncio_backend.StreamSocket.__init__:
  - 103
  dns._asyncio_backend.StreamSocket.close:
  - 115
  dns._asyncio_backend.StreamSocket.getpeercert:
  - 124
  dns._asyncio_backend.StreamSocket.getpeername:
  - 118
  dns._asyncio_backend.StreamSocket.getsockname:
  - 121
  dns._asyncio_backend.StreamSocket.recv:
  - 112
  dns._asyncio_backend.StreamSocket.sendall:
  - 108
  - 109
  dns._asyncio_backend._DatagramProtocol.close:
  - 52
  - 53
  dns._asyncio_backend._DatagramProtocol.connection_lost:
  - 41
  - 42
  - 49
  - 47
  dns._asyncio_backend._DatagramProtocol.datagram_received:
  - 33
  - 34
  dns._asyncio_backend._DatagramProtocol.error_received:
  - 37
  - 38
  dns._asyncio_backend._HTTPTransport.__init__:
  - 201
  - 205
  - 206
  - 207
  dns._asyncio_backend._NetworkBackend.__init__:
  - 145
  - 140
  dns._asyncio_backend._NetworkBackend.connect_tcp:
  - 160
  - 162
  - 163
  - 164
  - 167
  - 168
  - 170
  - 171
  - 172
  - 173
  - 178
  - 154
  - 155
  - 156
  - 157
  - 158
  dns._asyncio_backend._NetworkBackend.sleep:
  - 189
  dns._asyncio_backend._get_running_loop:
  - 19
  - 21
  dns._asyncio_backend._maybe_wait_for:
  - 57
  - 59
  dns._ddr:
  - 17
  dns._ddr._SVCBInfo.ddr_check_certificate:
  - 34
  - 35
  - 36
  dns._ddr._SVCBInfo.ddr_tls_check_async:
  - 64
  - 73
  - 74
  - 59
  - 60
  - 61
  - 62
  - 63
  dns._ddr._SVCBInfo.ddr_tls_check_sync:
  - 47
  - 48
  - 49
  - 52
  - 53
  - 54
  - 55
  - 56
  dns._ddr._SVCBInfo.make_tls_context:
  - 42
  dns._ddr._extract_nameservers_from_svcb:
  - 79
  - 82
  - 84
  - 85
  - 87
  - 88
  - 90
  - 91
  - 95
  - 96
  - 97
  - 99
  - 100
  - 102
  - 107
  - 108
  - 112
  - 113
  - 115
  - 116
  - 118
  - 119
  - 121
  - 122
  - 124
  - 125
  dns._ddr._get_nameservers_async:
  - 144
  - 147
  - 148
  - 150
  - 151
  dns._ddr._get_nameservers_sync:
  - 130
  - 133
  - 134
  - 136
  - 137
  dns._features._tuple_from_text:
  - 10
  - 12
  - 13
  - 14
  - 17
  - 20
  dns._features._version_check:
  - 32
  - 34
  - 36
  - 40
  - 41
  - 42
  - 26
  dns._features.force:
  - 78
  dns._features.have:
  - 64
  - 69
  - 70
  - 51
  - 60
  - 61
  - 63
  dns._immutable_ctx:
  - 10
  dns._immutable_ctx._Immutable:
  - 14
  dns._immutable_ctx._Immutable.__delattr__:
  - 32
  - 29
  dns._immutable_ctx._Immutable.__setattr__:
  - 26
  - 23
  dns._immutable_ctx._immutable_init:
  - 44
  dns._immutable_ctx._immutable_init.nf:
  - 40
  - 42
  - 37
  dns._immutable_ctx.immutable:
  - 49
  - 52
  - 53
  - 54
  dns._immutable_ctx.immutable.ncls:
  - 66
  dns._immutable_ctx.immutable.ncls.__init__:
  - 64
  dns._immutable_ctx.immutable.ncls.__setstate__:
  - 70
  dns._tls_util.convert_verify_to_cafile_and_capath:
  - 12
  - 13
  - 15
  dns._trio_backend:
  - 105
  - 3
  - 15
  dns._trio_backend.Backend.make_socket:
  - 225
  - 226
  - 227
  - 228
  - 230
  - 233
  - 237
  - 207
  - 239
  - 210
  - 211
  - 212
  - 214
  - 216
  - 218
  - 223
  dns._trio_backend.Backend.sleep:
  - 245
  dns._trio_backend.Backend.wait_for:
  - 251
  dns._trio_backend.DatagramSocket.__init__:
  - 34
  dns._trio_backend.DatagramSocket.close:
  - 53
  dns._trio_backend.DatagramSocket.getpeername:
  - 56
  dns._trio_backend.DatagramSocket.getsockname:
  - 59
  dns._trio_backend.DatagramSocket.recvfrom:
  - 48
  - 49
  dns._trio_backend.DatagramSocket.sendto:
  - 40
  - 42
  - 38
  - 39
  dns._trio_backend.StreamSocket.__init__:
  - 67
  dns._trio_backend.StreamSocket.close:
  - 82
  dns._trio_backend.StreamSocket.getpeercert:
  - 97
  - 98
  - 99
  - 100
  dns._trio_backend.StreamSocket.getpeername:
  - 88
  - 85
  - 86
  dns._trio_backend.StreamSocket.getsockname:
  - 91
  - 92
  - 94
  dns._trio_backend.StreamSocket.recv:
  - 77
  - 78
  dns._trio_backend.StreamSocket.sendall:
  - 72
  - 73
  dns._trio_backend._HTTPTransport.__init__:
  - 184
  - 178
  - 182
  - 183
  dns._trio_backend._NetworkBackend.__init__:
  - 117
  dns._trio_backend._NetworkBackend.connect_tcp:
  - 128
  - 129
  - 130
  - 131
  - 133
  - 135
  - 136
  - 137
  - 140
  - 141
  - 143
  - 144
  - 149
  - 150
  - 151
  - 154
  - 155
  - 127
  dns._trio_backend._NetworkBackend.sleep:
  - 166
  dns._trio_backend._maybe_timeout:
  - 20
  - 21
  - 23
  dns.asyncbackend.get_backend:
  - 38
  - 39
  - 41
  - 44
  - 45
  - 48
  - 30
  dns.asyncbackend.get_default_backend:
  - 83
  - 84
  - 87
  dns.asyncbackend.set_default_backend:
  - 91
  - 100
  dns.asyncbackend.sniff:
  - 56
  - 64
  - 76
  - 69
  dns.asyncquery:
  - 57
  - 18
  dns.asyncquery._http3:
  - 721
  - 724
  - 727
  - 731
  - 733
  - 737
  - 739
  - 740
  - 743
  - 746
  - 749
  - 750
  - 753
  - 754
  - 755
  - 756
  - 757
  - 764
  - 765
  dns.asyncquery._inbound_xfr:
  - 848
  - 851
  - 852
  - 854
  - 855
  - 856
  - 858
  - 859
  - 860
  - 861
  - 866
  - 867
  - 871
  - 872
  - 873
  - 875
  - 876
  - 877
  - 878
  - 888
  - 889
  - 891
  dns.asyncquery._maybe_get_resolver:
  - 522
  - 526
  dns.asyncquery._read_exactly:
  - 345
  - 346
  - 340
  - 348
  dns.asyncquery._source_tuple:
  - 67
  - 68
  - 69
  - 71
  dns.asyncquery._timeout:
  - 81
  - 82
  - 83
  - 84
  dns.asyncquery.https:
  - 650
  - 657
  - 658
  - 664
  - 665
  - 674
  - 675
  - 548
  - 676
  - 677
  - 688
  - 561
  - 693
  - 566
  - 567
  - 569
  - 700
  - 573
  - 701
  - 575
  - 576
  - 578
  - 581
  - 584
  - 587
  - 588
  - 590
  - 593
  - 594
  - 598
  - 599
  - 614
  - 617
  - 621
  - 627
  - 629
  - 636
  - 637
  - 639
  dns.asyncquery.inbound_xfr:
  - 928
  - 932
  - 907
  - 943
  - 946
  - 947
  - 916
  - 917
  - 950
  - 919
  - 920
  - 921
  - 923
  - 924
  - 925
  - 926
  - 927
  dns.asyncquery.quic:
  - 827
  - 802
  - 834
  - 804
  - 835
  - 809
  - 811
  - 812
  - 785
  - 817
  - 818
  - 821
  - 822
  - 824
  - 825
  - 826
  - 795
  - 798
  dns.asyncquery.receive_tcp:
  - 361
  - 369
  - 370
  - 371
  - 372
  - 373
  dns.asyncquery.receive_udp:
  - 162
  - 132
  - 165
  - 171
  - 175
  - 145
  - 146
  - 150
  - 152
  dns.asyncquery.send_tcp:
  - 327
  - 328
  - 333
  - 334
  - 335
  - 336
  - 319
  dns.asyncquery.send_udp:
  - 112
  - 113
  - 114
  - 115
  - 95
  dns.asyncquery.tcp:
  - 416
  - 420
  - 421
  - 423
  - 424
  - 425
  - 395
  - 429
  - 430
  - 439
  - 409
  - 410
  - 411
  - 415
  dns.asyncquery.tls:
  - 482
  - 483
  - 485
  - 486
  - 487
  - 459
  - 511
  - 498
  - 499
  - 474
  - 475
  - 476
  - 478
  - 479
  dns.asyncquery.udp:
  - 224
  - 225
  - 195
  - 208
  - 209
  - 210
  - 211
  - 212
  - 213
  - 241
  - 215
  - 216
  - 217
  - 218
  - 222
  dns.asyncquery.udp_with_fallback:
  - 282
  - 299
  - 261
  dns.asyncresolver:
  - 18
  dns.asyncresolver.Resolver:
  - 46
  dns.asyncresolver.Resolver.canonical_name:
  - 225
  - 211
  dns.asyncresolver.Resolver.resolve:
  - 71
  - 103
  - 105
  - 74
  - 75
  - 76
  - 78
  - 110
  - 83
  - 89
  - 90
  - 91
  - 92
  - 61
  - 94
  dns.asyncresolver.Resolver.resolve_address:
  - 137
  - 138
  - 116
  - 134
  dns.asyncresolver.Resolver.resolve_name:
  - 147
  - 165
  - 166
  - 169
  - 170
  - 171
  - 172
  - 173
  - 174
  - 175
  - 178
  - 179
  - 180
  - 181
  - 185
  - 194
  - 198
  - 201
  - 204
  dns.asyncresolver.Resolver.try_ddr:
  - 256
  - 257
  - 232
  - 251
  - 252
  - 255
  dns.asyncresolver.canonical_name:
  - 345
  - 351
  dns.asyncresolver.get_default_resolver:
  - 267
  - 268
  - 269
  dns.asyncresolver.make_resolver_at:
  - 423
  - 424
  - 426
  - 427
  - 429
  - 430
  - 431
  - 432
  - 406
  dns.asyncresolver.reset_default_resolver:
  - 282
  - 275
  dns.asyncresolver.resolve:
  - 297
  - 306
  dns.asyncresolver.resolve_address:
  - 329
  - 323
  dns.asyncresolver.resolve_at:
  - 466
  - 467
  - 453
  dns.asyncresolver.resolve_name:
  - 341
  - 335
  dns.asyncresolver.try_ddr:
  - 361
  - 355
  dns.asyncresolver.zone_for_name:
  - 385
  - 389
  - 395
  - 371
  - 377
  - 378
  - 379
  - 380
  - 381
  dns.dnssec:
  - 18
  - 179
  - 172
  - 1197
  dns.dnssec.SimpleDeny.__init__:
  - 153
  dns.dnssec._find_candidate_keys:
  - 301
  - 302
  - 303
  - 306
  - 309
  - 312
  dns.dnssec._get_rrname_rdataset:
  - 321
  dns.dnssec._make_cdnskey:
  - 737
  - 715
  - 735
  dns.dnssec._make_dnskey:
  - 705
  - 706
  - 680
  - 699
  - 702
  - 703
  dns.dnssec._make_rrsig_signature_data:
  - 642
  - 645
  - 648
  - 649
  - 651
  - 653
  - 654
  - 656
  - 658
  - 659
  - 660
  - 661
  - 662
  - 663
  - 664
  - 667
  - 612
  - 628
  - 629
  - 632
  - 633
  - 635
  - 639
  dns.dnssec._sign:
  - 538
  - 540
  - 543
  - 554
  - 555
  - 557
  - 559
  - 560
  - 561
  - 568
  - 569
  - 570
  - 573
  - 576
  - 585
  - 590
  - 593
  - 597
  - 598
  - 602
  - 604
  - 493
  dns.dnssec._sign_zone_nsec:
  - 1185
  - 1186
  - 1155
  - 1156
  - 1159
  - 1166
  - 1167
  - 1168
  - 1169
  - 1170
  - 1173
  - 1181
  - 1177
  - 1178
  - 1117
  - 1182
  - 1151
  dns.dnssec._sign_zone_nsec._txn_add_nsec:
  - 1127
  - 1128
  - 1131
  - 1132
  - 1134
  - 1136
  - 1137
  - 1140
  - 1147
  - 1148
  - 1149
  dns.dnssec._validate:
  - 449
  - 450
  - 452
  - 457
  - 464
  - 465
  - 466
  - 469
  - 470
  - 473
  - 446
  - 415
  dns.dnssec._validate_rrsig:
  - 384
  - 385
  - 386
  - 388
  - 391
  - 377
  - 394
  - 395
  - 398
  - 345
  - 380
  - 381
  dns.dnssec._validate_signature:
  - 329
  - 331
  - 334
  dns.dnssec.algorithm_from_text:
  - 84
  - 77
  dns.dnssec.algorithm_to_text:
  - 88
  - 95
  dns.dnssec.cds_rdataset_to_ds_rdataset:
  - 869
  - 878
  - 881
  - 882
  - 883
  - 892
  dns.dnssec.default_rrset_signer:
  - 994
  - 968
  - 970
  - 981
  - 982
  dns.dnssec.dnskey_rdataset_to_cdnskey_rdataset:
  - 931
  - 938
  - 941
  - 942
  - 943
  - 952
  dns.dnssec.dnskey_rdataset_to_cds_rdataset:
  - 901
  - 920
  - 923
  - 924
  - 925
  dns.dnssec.key_id:
  - 128
  - 129
  - 113
  - 120
  - 122
  - 126
  dns.dnssec.make_cds:
  - 288
  - 268
  - 287
  dns.dnssec.make_ds:
  - 256
  - 257
  - 259
  - 193
  - 222
  - 225
  - 226
  - 229
  - 233
  - 235
  - 237
  - 238
  - 239
  - 240
  - 241
  - 242
  - 246
  - 247
  - 248
  - 249
  - 251
  - 252
  - 253
  - 255
  dns.dnssec.make_ds_rdataset:
  - 833
  - 835
  - 842
  - 843
  - 813
  - 845
  - 846
  - 849
  - 851
  - 853
  - 854
  - 855
  - 856
  - 858
  - 861
  - 862
  - 863
  dns.dnssec.nsec3_hash:
  - 800
  - 770
  - 802
  - 803
  - 775
  - 776
  - 780
  - 783
  - 753
  - 785
  - 786
  - 787
  - 793
  - 794
  - 795
  - 798
  - 799
  dns.dnssec.sign_zone:
  - 1061
  - 1062
  - 1063
  - 1064
  - 1066
  - 1067
  - 1069
  - 1074
  - 1075
  - 1077
  - 1079
  - 1083
  - 1084
  - 1085
  - 1086
  - 1089
  - 1091
  - 1092
  - 1094
  - 1097
  - 1109
  - 1011
  dns.dnssec.to_timestamp:
  - 99
  - 100
  - 101
  - 102
  - 103
  - 104
  - 105
  - 106
  dns.dnssecalgs:
  - 33
  - 12
  - 31
  dns.dnssecalgs.base.GenericPrivateKey.from_pem:
  - 85
  dns.dnssecalgs.base.GenericPrivateKey.public_key:
  - 78
  dns.dnssecalgs.base.GenericPrivateKey.sign:
  - 74
  dns.dnssecalgs.base.GenericPrivateKey.to_pem:
  - 89
  dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination:
  - 29
  dns.dnssecalgs.base.GenericPublicKey.encode_key_bytes:
  - 25
  dns.dnssecalgs.base.GenericPublicKey.from_dnskey:
  - 46
  dns.dnssecalgs.base.GenericPublicKey.from_pem:
  - 51
  dns.dnssecalgs.base.GenericPublicKey.to_dnskey:
  - 40
  - 33
  - 34
  dns.dnssecalgs.base.GenericPublicKey.to_pem:
  - 56
  dns.dnssecalgs.base.GenericPublicKey.verify:
  - 21
  dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__:
  - 40
  - 42
  dns.dnssecalgs.cryptography.CryptographyPrivateKey.from_pem:
  - 56
  - 55
  dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key:
  - 49
  dns.dnssecalgs.cryptography.CryptographyPrivateKey.to_pem:
  - 64
  - 60
  - 61
  - 63
  dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__:
  - 16
  - 14
  dns.dnssecalgs.cryptography.CryptographyPublicKey.from_pem:
  - 24
  - 25
  dns.dnssecalgs.cryptography.CryptographyPublicKey.to_pem:
  - 28
  dns.dnssecalgs.dsa.PrivateDSA.generate:
  - 98
  - 99
  dns.dnssecalgs.dsa.PrivateDSA.sign:
  - 77
  - 78
  - 79
  - 81
  - 84
  - 88
  - 89
  - 90
  - 92
  - 93
  dns.dnssecalgs.dsa.PublicDSA:
  - 16
  dns.dnssecalgs.dsa.PublicDSA.encode_key_bytes:
  - 33
  - 34
  - 35
  - 36
  - 37
  - 27
  - 28
  - 30
  dns.dnssecalgs.dsa.PublicDSA.from_dnskey:
  - 42
  - 44
  - 54
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 62
  dns.dnssecalgs.dsa.PublicDSA.verify:
  - 24
  - 21
  - 22
  dns.dnssecalgs.ecdsa.PrivateECDSA.generate:
  - 74
  - 75
  - 76
  dns.dnssecalgs.ecdsa.PrivateECDSA.sign:
  - 65
  - 68
  - 69
  - 56
  - 57
  - 61
  - 62
  - 63
  dns.dnssecalgs.ecdsa.PublicECDSA.encode_key_bytes:
  - 27
  - 28
  - 29
  dns.dnssecalgs.ecdsa.PublicECDSA.from_dnskey:
  - 33
  - 36
  - 37
  - 39
  - 40
  - 41
  dns.dnssecalgs.ecdsa.PublicECDSA.verify:
  - 24
  - 21
  - 22
  dns.dnssecalgs.ecdsa.PublicECDSAP256SHA256:
  - 83
  - 84
  dns.dnssecalgs.ecdsa.PublicECDSAP384SHA384:
  - 94
  - 95
  dns.dnssecalgs.eddsa.PrivateEDDSA.generate:
  - 46
  dns.dnssecalgs.eddsa.PrivateEDDSA.sign:
  - 40
  - 41
  - 38
  - 39
  dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes:
  - 16
  - 17
  dns.dnssecalgs.eddsa.PublicEDDSA.from_dnskey:
  - 24
  - 25
  - 23
  dns.dnssecalgs.eddsa.PublicEDDSA.verify:
  - 13
  dns.dnssecalgs.get_algorithm_cls:
  - 61
  - 53
  - 62
  - 63
  dns.dnssecalgs.get_algorithm_cls_from_dnskey:
  - 71
  - 80
  - 81
  - 82
  - 83
  - 85
  dns.dnssecalgs.register_algorithm_cls:
  - 106
  - 108
  - 110
  - 111
  - 113
  - 114
  - 116
  - 117
  - 119
  - 120
  - 122
  - 94
  dns.dnssecalgs.rsa.PrivateRSA.generate:
  - 75
  - 76
  - 79
  dns.dnssecalgs.rsa.PrivateRSA.sign:
  - 65
  - 66
  - 67
  - 69
  - 70
  dns.dnssecalgs.rsa.PublicRSA.encode_key_bytes:
  - 33
  - 23
  - 24
  - 25
  - 26
  - 27
  - 28
  - 30
  - 31
  dns.dnssecalgs.rsa.PublicRSA.from_dnskey:
  - 37
  - 39
  - 41
  - 42
  - 46
  - 47
  - 48
  - 49
  dns.dnssecalgs.rsa.PublicRSA.verify:
  - 20
  dns.dnssecalgs.rsa.PublicRSAMD5:
  - 86
  dns.dnssecalgs.rsa.PublicRSASHA1:
  - 95
  dns.dnssecalgs.rsa.PublicRSASHA1NSEC3SHA1:
  - 104
  dns.dnssecalgs.rsa.PublicRSASHA256:
  - 113
  dns.dnssecalgs.rsa.PublicRSASHA512:
  - 122
  dns.dnssectypes:
  - 18
  dns.dnssectypes.DSDigest:
  - 51
  dns.dnssectypes.NSEC3Hash:
  - 65
  dns.e164:
  - 18
  - 27
  dns.e164.from_e164:
  - 48
  - 33
  - 49
  - 47
  dns.e164.query:
  - 105
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 113
  - 93
  dns.e164.to_e164:
  - 76
  - 77
  - 78
  - 79
  - 81
  - 82
  - 83
  - 85
  - 57
  dns.edns:
  - 18
  dns.edns.CookieOption.__init__:
  - 457
  - 459
  - 454
  dns.edns.CookieOption.from_wire_parser:
  - 483
  dns.edns.CookieOption.to_text:
  - 472
  - 473
  - 474
  dns.edns.CookieOption.to_wire:
  - 464
  - 465
  - 466
  - 463
  dns.edns.ECSOption:
  - 194
  dns.edns.ECSOption.__init__:
  - 197
  - 232
  - 233
  - 207
  - 208
  - 239
  - 210
  - 240
  - 212
  - 214
  - 215
  - 216
  - 217
  - 219
  - 221
  - 222
  - 223
  dns.edns.ECSOption.from_text:
  - 290
  - 294
  - 299
  - 271
  - 273
  - 275
  - 276
  - 248
  - 281
  - 282
  - 283
  - 285
  - 286
  dns.edns.ECSOption.from_wire_parser:
  - 320
  - 321
  - 323
  - 327
  - 315
  - 316
  - 317
  - 318
  dns.edns.ECSOption.to_wire:
  - 305
  - 306
  - 303
  dns.edns.EDECode:
  - 331
  dns.edns.EDEOption:
  - 365
  dns.edns.EDEOption.__init__:
  - 377
  - 370
  - 379
  - 380
  dns.edns.EDEOption.from_wire_parser:
  - 416
  - 418
  - 422
  - 412
  - 413
  - 415
  dns.edns.EDEOption.to_text:
  - 386
  - 387
  - 388
  - 389
  - 390
  - 393
  dns.edns.EDEOption.to_wire:
  - 398
  - 399
  - 400
  - 402
  - 403
  dns.edns.GenericOption:
  - 163
  dns.edns.GenericOption.__init__:
  - 170
  - 171
  dns.edns.GenericOption.from_wire_parser:
  - 190
  dns.edns.GenericOption.to_wire:
  - 174
  - 175
  dns.edns.NSIDOption.__init__:
  - 427
  dns.edns.NSIDOption.from_wire_parser:
  - 449
  dns.edns.NSIDOption.to_text:
  - 440
  - 442
  - 438
  dns.edns.NSIDOption.to_wire:
  - 432
  - 431
  dns.edns.Option:
  - 69
  dns.edns.Option.__eq__:
  - 129
  - 125
  - 127
  dns.edns.Option.__ge__:
  - 149
  - 151
  dns.edns.Option.__gt__:
  - 154
  - 156
  dns.edns.Option.__init__:
  - 72
  - 76
  dns.edns.Option.__le__:
  - 144
  - 146
  dns.edns.Option.__lt__:
  - 139
  - 141
  dns.edns.Option.__ne__:
  - 136
  - 132
  - 134
  dns.edns.Option.__str__:
  - 159
  dns.edns.Option._cmp:
  - 112
  - 116
  - 117
  - 118
  - 120
  dns.edns.Option.from_wire_parser:
  - 100
  dns.edns.Option.to_generic:
  - 96
  - 90
  - 94
  dns.edns.Option.to_wire:
  - 79
  dns.edns.OptionType:
  - 36
  dns.edns.ReportChannelOption.__init__:
  - 489
  dns.edns.ReportChannelOption.from_wire_parser:
  - 502
  dns.edns.ReportChannelOption.to_text:
  - 496
  dns.edns.ReportChannelOption.to_wire:
  - 493
  dns.edns.get_option_class:
  - 521
  - 522
  - 515
  dns.edns.option_from_wire:
  - 560
  - 561
  - 562
  - 547
  dns.edns.option_from_wire_parser:
  - 530
  - 539
  - 540
  - 541
  dns.edns.register_type:
  - 566
  dns.entropy:
  - 114
  - 110
  dns.entropy.EntropyPool.__init__:
  - 36
  - 37
  - 39
  - 40
  - 41
  - 43
  dns.entropy.EntropyPool._maybe_seed:
  - 66
  - 67
  - 69
  - 71
  - 73
  - 74
  - 61
  - 63
  dns.entropy.EntropyPool._stir:
  - 49
  - 50
  dns.entropy.EntropyPool.random_16:
  - 89
  dns.entropy.EntropyPool.random_32:
  - 92
  dns.entropy.EntropyPool.random_8:
  - 78
  - 79
  - 80
  - 81
  - 82
  dns.entropy.EntropyPool.random_between:
  - 96
  - 98
  - 107
  - 101
  dns.entropy.EntropyPool.stir:
  - 58
  dns.entropy.between:
  - 128
  - 130
  - 127
  dns.entropy.random_16:
  - 120
  - 121
  - 123
  dns.enum:
  - 21
  dns.enum.IntEnum._check_value:
  - 35
  - 36
  - 38
  - 39
  dns.enum.IntEnum._missing_:
  - 27
  - 28
  - 29
  dns.enum.IntEnum._short_name:
  - 97
  dns.enum.IntEnum.from_text:
  - 44
  - 49
  - 50
  - 52
  - 53
  - 54
  - 55
  - 56
  dns.enum.IntEnum.make:
  - 73
  - 86
  - 87
  - 88
  - 89
  dns.enum.IntEnum.to_text:
  - 66
  - 67
  - 68
  - 61
  - 63
  dns.exception:
  - 18
  dns.exception.AlgorithmKeyMismatch:
  - 148
  dns.exception.DNSException:
  - 52
  - 29
  dns.exception.DNSException.__init__:
  - 66
  - 67
  - 69
  - 56
  - 57
  - 59
  - 60
  - 62
  - 63
  dns.exception.DNSException.__str__:
  - 112
  - 106
  - 108
  - 109
  dns.exception.DNSException._check_kwargs:
  - 81
  - 83
  dns.exception.DNSException._check_params:
  - 72
  - 75
  - 76
  dns.exception.DNSException._fmt_kwargs:
  - 97
  - 98
  - 100
  - 88
  - 94
  - 95
  dns.exception.DeniedByPolicy:
  - 156
  dns.exception.ExceptionWrapper.__exit__:
  - 167
  dns.exception.FormError:
  - 116
  dns.exception.SyntaxError:
  - 120
  dns.exception.Timeout:
  - 132
  dns.exception.Timeout.__init__:
  - 140
  dns.exception.TooBig:
  - 128
  dns.exception.UnexpectedEnd:
  - 124
  dns.exception.UnsupportedAlgorithm:
  - 144
  dns.exception.ValidationFailure:
  - 152
  dns.flags:
  - 18
  dns.flags._from_text:
  - 53
  - 54
  - 55
  dns.flags._to_text:
  - 64
  - 61
  - 62
  - 63
  dns.flags.edns_from_text:
  - 88
  - 94
  dns.flags.edns_to_text:
  - 104
  - 98
  dns.flags.from_text:
  - 74
  - 68
  dns.flags.to_text:
  - 84
  - 78
  dns.grange:
  - 18
  dns.grange.from_text:
  - 65
  - 69
  - 42
  - 45
  - 46
  - 47
  - 50
  - 51
  - 54
  - 26
  - 59
  - 61
  - 62
  dns.immutable.Dict.__getitem__:
  - 31
  dns.immutable.Dict.__hash__:
  - 34
  - 36
  - 37
  - 38
  dns.immutable.Dict.__init__:
  - 17
  - 26
  - 27
  - 23
  dns.immutable.Dict.__iter__:
  - 46
  dns.immutable.Dict.__len__:
  - 43
  dns.immutable.constify:
  - 64
  - 65
  - 66
  - 67
  - 50
  - 53
  - 54
  - 55
  - 57
  - 60
  - 61
  - 62
  - 63
  dns.inet:
  - 18
  dns.inet.af_for_address:
  - 91
  - 76
  - 87
  dns.inet.any_for_af:
  - 176
  - 178
  - 175
  dns.inet.canonicalize:
  - 184
  - 195
  - 192
  dns.inet.inet_ntop:
  - 67
  - 68
  - 69
  - 70
  - 55
  dns.inet.inet_pton:
  - 34
  - 46
  - 47
  - 48
  - 49
  dns.inet.is_address:
  - 120
  - 132
  - 128
  dns.inet.is_multicast:
  - 113
  - 98
  - 109
  dns.inet.low_level_address_tuple:
  - 162
  - 163
  - 165
  - 168
  - 141
  - 150
  - 151
  - 152
  - 154
  - 155
  - 156
  dns.ipv4:
  - 18
  dns.ipv4.canonicalize:
  - 68
  - 77
  dns.ipv4.inet_aton:
  - 40
  - 47
  - 48
  - 51
  - 52
  - 54
  - 55
  - 57
  - 61
  - 62
  dns.ipv4.inet_ntoa:
  - 34
  - 27
  dns.ipv6:
  - 99
  - 100
  - 101
  - 18
  - 27
  dns.ipv6.canonicalize:
  - 217
  - 210
  dns.ipv6.inet_aton:
  - 128
  - 131
  - 133
  - 135
  - 137
  - 142
  - 143
  - 144
  - 145
  - 146
  - 152
  - 153
  - 156
  - 157
  - 162
  - 163
  - 164
  - 168
  - 169
  - 170
  - 173
  - 174
  - 176
  - 177
  - 179
  - 181
  - 182
  - 184
  - 190
  - 105
  - 118
  - 119
  - 123
  - 124
  - 125
  - 126
  dns.ipv6.inet_ntoa:
  - 31
  - 39
  - 41
  - 44
  - 46
  - 50
  - 51
  - 52
  - 53
  - 62
  - 63
  - 64
  - 67
  - 71
  - 74
  - 77
  - 80
  - 81
  - 83
  - 87
  - 90
  - 92
  - 95
  dns.ipv6.is_mapped:
  - 206
  - 199
  dns.message:
  - 18
  dns.message.AnswerForNXDOMAIN:
  - 102
  dns.message.BadEDNS:
  - 62
  dns.message.BadTSIG:
  - 67
  dns.message.ChainTooLong:
  - 98
  dns.message.ChainingResult:
  - 964
  dns.message.CopyMode:
  - 1846
  dns.message.Message:
  - 144
  dns.message.Message.__eq__:
  - 256
  - 258
  - 260
  - 262
  - 264
  - 265
  - 267
  - 268
  - 250
  dns.message.Message.__init__:
  - 149
  - 150
  dns.message.Message.__ne__:
  - 273
  dns.message.Message.__repr__:
  - 206
  dns.message.Message.__str__:
  - 209
  dns.message.Message._compute_opt_reserve:
  - 525
  - 526
  - 534
  - 535
  - 536
  - 538
  - 539
  dns.message.Message._compute_tsig_reserve:
  - 545
  - 551
  - 553
  - 554
  - 555
  dns.message.Message._make_opt:
  - 786
  - 787
  dns.message.Message._make_tsig:
  - 673
  - 662
  dns.message.Message._parse_special_rr_header:
  - 954
  - 953
  - 946
  - 947
  dns.message.Message.additional:
  - 198
  dns.message.Message.answer:
  - 180
  dns.message.Message.authority:
  - 189
  dns.message.Message.edns:
  - 844
  dns.message.Message.ednsflags:
  - 858
  - 851
  - 860
  - 861
  dns.message.Message.extended_errors:
  - 931
  - 932
  dns.message.Message.find_rrset:
  - 396
  - 398
  - 399
  - 400
  - 401
  - 403
  - 404
  - 405
  - 406
  - 407
  - 408
  - 409
  - 410
  - 412
  - 413
  - 414
  - 415
  - 418
  - 419
  - 421
  - 423
  - 424
  - 425
  - 356
  dns.message.Message.get_options:
  - 927
  dns.message.Message.get_rrset:
  - 441
  - 481
  dns.message.Message.had_tsig:
  - 782
  dns.message.Message.is_response:
  - 288
  - 297
  - 299
  - 305
  - 306
  - 276
  - 308
  - 309
  - 282
  - 285
  dns.message.Message.keyalgorithm:
  - 758
  - 759
  dns.message.Message.keyname:
  - 751
  dns.message.Message.mac:
  - 766
  - 767
  dns.message.Message.opcode:
  - 912
  - 916
  dns.message.Message.options:
  - 873
  - 874
  dns.message.Message.payload:
  - 865
  - 866
  dns.message.Message.question:
  - 171
  dns.message.Message.rcode:
  - 898
  - 894
  dns.message.Message.section_count:
  - 512
  - 513
  - 515
  - 516
  - 517
  - 518
  - 520
  - 497
  - 508
  - 510
  - 511
  dns.message.Message.section_from_number:
  - 330
  - 341
  dns.message.Message.section_number:
  - 314
  - 324
  - 325
  - 326
  dns.message.Message.set_opcode:
  - 924
  - 919
  dns.message.Message.set_rcode:
  - 905
  - 901
  dns.message.Message.to_text:
  - 217
  - 225
  - 226
  - 227
  - 228
  - 229
  - 230
  - 231
  - 232
  - 233
  - 234
  - 235
  - 236
  - 237
  - 238
  - 239
  - 240
  - 241
  - 247
  dns.message.Message.to_wire:
  - 641
  - 646
  - 647
  - 648
  - 649
  - 650
  - 652
  - 654
  - 655
  - 567
  - 601
  - 603
  - 604
  - 608
  - 610
  - 612
  - 613
  - 614
  - 615
  - 616
  - 618
  - 619
  - 620
  - 621
  - 622
  - 623
  - 624
  - 625
  - 627
  - 628
  - 632
  - 633
  - 634
  - 635
  - 636
  - 637
  - 638
  dns.message.Message.tsig_error:
  - 774
  - 775
  dns.message.Message.use_edns:
  - 832
  - 834
  - 835
  - 838
  - 821
  - 823
  - 825
  - 798
  dns.message.Message.use_tsig:
  - 736
  - 738
  - 685
  - 722
  - 725
  - 726
  - 728
  - 729
  - 730
  - 731
  - 733
  - 734
  dns.message.Message.want_dnssec:
  - 880
  - 890
  - 891
  - 888
  dns.message.MessageSection:
  - 110
  dns.message.NoPreviousName:
  - 106
  dns.message.NotQueryResponse:
  - 94
  dns.message.QueryMessage.canonical_name:
  - 1073
  - 1086
  dns.message.QueryMessage.resolve_chaining:
  - 1024
  - 1027
  - 1059
  - 997
  - 1030
  - 1062
  - 1032
  - 1063
  - 1035
  - 1036
  - 1037
  - 1067
  - 1070
  - 1012
  - 1014
  - 1048
  - 1050
  - 1052
  dns.message.ShortHeader:
  - 49
  dns.message.TrailingJunk:
  - 53
  dns.message.Truncated:
  - 76
  dns.message.Truncated.__init__:
  - 83
  dns.message.Truncated.message:
  - 86
  dns.message.UnknownHeaderField:
  - 57
  dns.message.UnknownTSIGKey:
  - 72
  dns.message._TextReader:
  - 1416
  dns.message._TextReader.__init__:
  - 1438
  dns.message._TextReader._header_line:
  - 1453
  - 1455
  - 1457
  - 1458
  - 1459
  - 1461
  - 1462
  - 1463
  - 1465
  - 1466
  - 1467
  - 1469
  - 1470
  - 1473
  - 1474
  - 1475
  - 1477
  - 1478
  - 1479
  - 1480
  - 1482
  - 1483
  - 1484
  - 1485
  - 1486
  - 1487
  - 1488
  - 1491
  dns.message._TextReader._make_message:
  - 1606
  - 1607
  - 1609
  - 1610
  - 1611
  - 1612
  - 1613
  dns.message._TextReader._question_line:
  - 1504
  - 1506
  - 1507
  - 1511
  - 1512
  - 1513
  - 1520
  - 1521
  - 1524
  - 1494
  - 1527
  - 1498
  - 1499
  - 1500
  dns.message._TextReader._rr_line:
  - 1537
  - 1538
  - 1539
  - 1543
  - 1545
  - 1546
  - 1550
  - 1551
  - 1552
  - 1560
  - 1561
  - 1562
  - 1569
  - 1570
  - 1573
  - 1574
  - 1576
  - 1578
  - 1579
  - 1580
  - 1588
  - 1592
  - 1602
  - 1603
  - 1530
  dns.message._TextReader.read:
  - 1632
  - 1637
  - 1639
  - 1659
  - 1642
  - 1644
  - 1656
  - 1647
  - 1657
  - 1618
  - 1654
  - 1624
  - 1625
  - 1658
  - 1627
  - 1628
  - 1629
  dns.message._WireReader:
  - 1109
  dns.message._WireReader.__init__:
  - 1136
  dns.message._WireReader._add_error:
  - 1164
  dns.message._WireReader._get_question:
  - 1153
  - 1154
  - 1155
  - 1156
  - 1159
  - 1148
  dns.message._WireReader._get_section:
  - 1167
  - 1176
  - 1178
  - 1179
  - 1180
  - 1183
  - 1184
  - 1190
  - 1194
  - 1199
  - 1200
  - 1205
  - 1206
  - 1212
  - 1213
  - 1215
  - 1216
  - 1217
  - 1218
  - 1219
  - 1221
  - 1222
  - 1223
  - 1224
  - 1225
  - 1226
  - 1229
  - 1231
  - 1233
  - 1238
  - 1244
  - 1246
  - 1256
  - 1257
  - 1259
  - 1261
  - 1262
  - 1263
  dns.message._WireReader.read:
  - 1280
  - 1281
  - 1285
  - 1286
  - 1288
  - 1289
  - 1290
  - 1291
  - 1293
  - 1294
  - 1296
  - 1297
  - 1268
  - 1271
  - 1273
  - 1276
  - 1277
  - 1278
  dns.message._message_factory_from_opcode:
  - 1099
  - 1101
  - 1102
  dns.message.from_file:
  - 1737
  - 1738
  - 1740
  - 1742
  - 1716
  dns.message.from_text:
  - 1705
  - 1708
  - 1671
  dns.message.from_wire:
  - 1409
  - 1317
  - 1407
  - 1384
  - 1395
  - 1397
  - 1375
  dns.message.make_query:
  - 1761
  - 1827
  - 1829
  - 1831
  - 1833
  - 1835
  - 1839
  - 1840
  - 1841
  - 1816
  - 1817
  - 1818
  - 1819
  - 1820
  - 1821
  - 1822
  dns.message.make_response:
  - 1920
  - 1921
  - 1924
  - 1925
  - 1927
  - 1928
  - 1931
  - 1864
  - 1903
  - 1905
  - 1906
  - 1907
  - 1909
  - 1911
  - 1912
  - 1914
  - 1915
  - 1916
  - 1917
  - 1918
  - 1919
  dns.name:
  - 896
  - 899
  - 38
  - 18
  - 1138
  - 1139
  - 1141
  - 1142
  - 311
  - 312
  - 1143
  - 314
  - 315
  - 316
  - 317
  dns.name.AbsoluteConcatenation:
  - 113
  dns.name.BadEscape:
  - 88
  dns.name.BadLabelType:
  - 96
  dns.name.BadPointer:
  - 92
  dns.name.EmptyLabel:
  - 84
  dns.name.IDNA2003Codec:
  - 201
  dns.name.IDNA2003Codec.__init__:
  - 211
  - 204
  dns.name.IDNA2003Codec.decode:
  - 225
  - 226
  - 227
  - 228
  - 231
  dns.name.IDNA2003Codec.encode:
  - 217
  - 220
  - 215
  dns.name.IDNA2008Codec:
  - 237
  dns.name.IDNA2008Codec.__init__:
  - 268
  - 246
  dns.name.IDNA2008Codec.decode:
  - 296
  - 297
  - 298
  - 300
  - 303
  - 304
  - 305
  - 306
  dns.name.IDNA2008Codec.encode:
  - 288
  - 290
  - 275
  - 277
  - 278
  - 279
  - 282
  - 285
  - 287
  dns.name.IDNACodec:
  - 177
  dns.name.IDNACodec.decode:
  - 192
  - 193
  - 197
  - 190
  dns.name.IDNACodec.is_idna:
  - 183
  dns.name.IDNAException:
  - 128
  dns.name.IDNAException.__init__:
  - 136
  dns.name.LabelTooLong:
  - 109
  dns.name.Name:
  - 366
  dns.name.Name.__add__:
  - 750
  dns.name.Name.__copy__:
  - 383
  dns.name.Name.__deepcopy__:
  - 386
  dns.name.Name.__eq__:
  - 536
  - 537
  dns.name.Name.__ge__:
  - 560
  - 561
  dns.name.Name.__gt__:
  - 566
  - 567
  dns.name.Name.__hash__:
  - 419
  - 420
  - 413
  dns.name.Name.__init__:
  - 376
  - 378
  - 379
  - 380
  dns.name.Name.__le__:
  - 554
  - 555
  dns.name.Name.__len__:
  - 744
  - 739
  dns.name.Name.__lt__:
  - 548
  - 549
  dns.name.Name.__ne__:
  - 542
  - 543
  dns.name.Name.__repr__:
  - 572
  dns.name.Name.__setstate__:
  - 393
  - 394
  dns.name.Name.__str__:
  - 575
  dns.name.Name.__sub__:
  - 753
  dns.name.Name.canonicalize:
  - 529
  - 533
  dns.name.Name.choose_relativity:
  - 835
  - 836
  - 837
  - 839
  - 825
  dns.name.Name.concatenate:
  - 776
  - 784
  - 786
  - 787
  - 788
  dns.name.Name.derelativize:
  - 817
  - 818
  - 807
  dns.name.Name.fullcompare:
  - 480
  - 482
  - 485
  - 487
  - 456
  - 425
  - 458
  - 459
  - 457
  - 492
  - 494
  - 463
  - 464
  - 466
  - 478
  - 479
  dns.name.Name.is_absolute:
  - 402
  - 397
  dns.name.Name.is_subdomain:
  - 509
  - 501
  - 510
  dns.name.Name.is_superdomain:
  - 523
  - 515
  - 524
  dns.name.Name.is_wild:
  - 410
  - 405
  dns.name.Name.parent:
  - 856
  - 844
  - 854
  dns.name.Name.predecessor:
  - 872
  - 859
  dns.name.Name.relativize:
  - 801
  - 802
  - 791
  dns.name.Name.split:
  - 769
  - 771
  - 773
  - 756
  - 766
  - 767
  dns.name.Name.successor:
  - 892
  - 877
  dns.name.Name.to_digestable:
  - 647
  - 631
  dns.name.Name.to_text:
  - 578
  - 587
  - 589
  - 591
  - 595
  dns.name.Name.to_unicode:
  - 618
  - 620
  - 622
  - 626
  - 628
  - 601
  dns.name.Name.to_wire:
  - 658
  - 684
  - 685
  - 686
  - 687
  - 688
  - 689
  - 692
  - 693
  - 695
  - 696
  - 697
  - 698
  - 701
  - 704
  - 705
  - 707
  - 708
  - 712
  - 713
  - 715
  - 716
  - 719
  - 721
  - 722
  - 725
  - 726
  - 727
  - 729
  - 730
  - 731
  - 732
  - 733
  - 735
  dns.name.NameRelation:
  - 50
  dns.name.NameTooLong:
  - 105
  dns.name.NeedAbsoluteNameOrOrigin:
  - 100
  dns.name.NeedSubdomainOfOrigin:
  - 140
  dns.name.NoIDNA2008:
  - 123
  dns.name.NoParent:
  - 118
  dns.name._absolute_predecessor:
  - 1184
  - 1186
  - 1187
  - 1190
  - 1193
  - 1195
  - 1200
  - 1201
  - 1202
  - 1203
  - 1204
  - 1205
  - 1183
  dns.name._absolute_successor:
  - 1216
  - 1219
  - 1252
  - 1225
  - 1258
  - 1259
  - 1230
  - 1262
  - 1232
  - 1265
  - 1237
  - 1241
  - 1243
  dns.name._escapify:
  - 166
  - 167
  - 169
  - 170
  - 148
  - 151
  - 155
  - 156
  - 157
  - 158
  - 159
  dns.name._handle_relativity_and_call:
  - 1280
  - 1282
  - 1283
  - 1284
  - 1285
  - 1287
  - 1288
  - 1289
  dns.name._maybe_convert_to_binary:
  - 352
  - 360
  - 357
  - 359
  dns.name._pad_to_max_label:
  - 1169
  - 1170
  - 1173
  - 1167
  dns.name._pad_to_max_name:
  - 1154
  - 1156
  - 1157
  - 1161
  - 1162
  - 1163
  - 1151
  dns.name._validate_labels:
  - 322
  - 333
  - 337
  - 338
  - 340
  - 342
  - 345
  - 347
  dns.name._wire_length:
  - 1147
  dns.name._wire_length.<lambda1>:
  - 1147
  dns.name.from_text:
  - 1027
  - 1029
  - 1030
  - 1031
  - 1032
  - 1033
  - 1034
  - 1035
  - 1036
  - 1037
  - 1043
  - 1046
  - 1048
  - 1050
  - 1051
  - 1052
  - 1054
  - 1056
  - 1062
  - 1064
  - 1065
  - 1067
  - 1068
  - 1069
  - 1070
  - 991
  - 1005
  - 1006
  - 1008
  - 1017
  - 1018
  - 1020
  dns.name.from_unicode:
  - 905
  - 922
  - 924
  - 931
  - 933
  - 935
  - 936
  - 937
  - 938
  - 939
  - 940
  - 941
  - 942
  - 948
  - 951
  - 953
  - 955
  - 956
  - 957
  - 959
  - 961
  - 967
  - 969
  - 970
  - 972
  - 974
  - 975
  - 976
  dns.name.from_wire:
  - 1128
  - 1130
  - 1131
  - 1110
  dns.name.from_wire_parser:
  - 1091
  - 1092
  - 1094
  - 1095
  - 1096
  - 1097
  - 1098
  - 1101
  - 1104
  - 1105
  - 1106
  - 1077
  dns.name.is_all_ascii:
  - 980
  - 981
  dns.namedict:
  - 28
  dns.namedict.NameDict:
  - 37
  dns.namedict.NameDict.__delitem__:
  - 71
  - 72
  - 74
  - 76
  - 77
  dns.namedict.NameDict.__init__:
  - 52
  - 46
  - 47
  dns.namedict.NameDict.__iter__:
  - 80
  dns.namedict.NameDict.__len__:
  - 83
  dns.namedict.NameDict.__setitem__:
  - 65
  - 68
  dns.namedict.NameDict.__update_max_depth:
  - 57
  - 58
  - 55
  dns.namedict.NameDict.get_deepest_match:
  - 101
  - 102
  - 104
  - 105
  - 106
  - 89
  dns.nameserver.AddressAndPortNameserver.__init__:
  - 58
  dns.nameserver.AddressAndPortNameserver.__str__:
  - 69
  dns.nameserver.Do53Nameserver.__init__:
  - 81
  dns.nameserver.Do53Nameserver.async_query:
  - 147
  - 134
  - 135
  dns.nameserver.Do53Nameserver.query:
  - 96
  - 97
  - 108
  dns.nameserver.DoHNameserver.__init__:
  - 173
  dns.nameserver.DoHNameserver.answer_port:
  - 193
  - 194
  dns.nameserver.DoHNameserver.async_query:
  - 233
  dns.nameserver.DoHNameserver.query:
  - 208
  dns.nameserver.DoQNameserver.__init__:
  - 315
  dns.nameserver.DoQNameserver.async_query:
  - 354
  dns.nameserver.DoQNameserver.query:
  - 332
  dns.nameserver.DoTNameserver.__init__:
  - 256
  dns.nameserver.DoTNameserver.async_query:
  - 295
  dns.nameserver.DoTNameserver.query:
  - 273
  dns.node:
  - 18
  dns.node.ImmutableNode.__init__:
  - 320
  - 321
  - 322
  dns.node.ImmutableNode.find_rdataset:
  - 332
  - 334
  dns.node.ImmutableNode.get_rdataset:
  - 345
  - 343
  dns.node.Node:
  - 73
  dns.node.Node.__eq__:
  - 121
  - 122
  - 124
  - 125
  dns.node.Node.__iter__:
  - 136
  dns.node.Node.__len__:
  - 133
  dns.node.Node.__ne__:
  - 130
  dns.node.Node.__repr__:
  - 115
  dns.node.Node._append_rdataset:
  - 160
  - 164
  - 139
  - 148
  - 149
  - 150
  - 154
  - 156
  dns.node.Node.classify:
  - 309
  - 307
  - 308
  - 293
  dns.node.Node.delete_rdataset:
  - 264
  - 250
  - 262
  - 263
  dns.node.Node.find_rdataset:
  - 198
  - 199
  - 201
  - 203
  - 204
  - 173
  dns.node.Node.get_rdataset:
  - 214
  - 239
  dns.node.Node.replace_rdataset:
  - 290
  - 267
  - 281
  - 283
  - 286
  - 287
  dns.node.Node.to_text:
  - 107
  - 108
  - 109
  - 110
  - 111
  - 112
  - 95
  dns.node.NodeKind:
  - 50
  dns.node.NodeKind.classify:
  - 60
  - 62
  dns.node.NodeKind.classify_rdataset:
  - 69
  dns.opcode:
  - 18
  dns.opcode.UnknownOpcode:
  - 48
  dns.opcode.from_flags:
  - 72
  - 65
  dns.opcode.from_text:
  - 52
  - 61
  dns.opcode.is_update:
  - 108
  - 101
  dns.opcode.to_flags:
  - 76
  dns.opcode.to_text:
  - 88
  - 97
  dns.query:
  - 18
  - 67
  - 66
  dns.query.BadResponse:
  - 209
  dns.query.HTTPVersion:
  - 377
  dns.query.NoDOH:
  - 213
  dns.query.NoDOQ:
  - 218
  dns.query.UDPMode:
  - 1451
  dns.query.UnexpectedSource:
  - 205
  dns.query._HTTPTransport.__init__:
  - 144
  - 138
  - 142
  - 143
  dns.query._NetworkBackend.__init__:
  - 76
  dns.query._NetworkBackend.connect_tcp:
  - 86
  - 87
  - 88
  - 89
  - 90
  - 92
  - 94
  - 95
  - 96
  - 99
  - 100
  - 101
  - 102
  - 103
  - 105
  - 111
  - 112
  - 113
  - 115
  - 118
  dns.query._addresses_equal:
  - 275
  - 276
  dns.query._check_status:
  - 609
  - 610
  - 612
  - 613
  - 615
  - 617
  - 619
  dns.query._compute_times:
  - 227
  - 228
  dns.query._connect:
  - 1142
  - 1143
  - 1145
  - 1146
  - 1147
  - 1148
  dns.query._destination_and_source:
  - 324
  - 329
  - 335
  - 336
  - 337
  - 306
  - 338
  - 309
  - 312
  - 313
  - 314
  - 316
  dns.query._expiration_for_this_attempt:
  - 61
  - 63
  dns.query._find_header:
  - 600
  - 602
  - 603
  dns.query._http3:
  - 672
  - 673
  - 642
  - 645
  - 680
  - 649
  - 681
  - 652
  - 653
  - 655
  - 671
  - 661
  - 664
  - 667
  - 668
  - 669
  - 670
  - 639
  dns.query._inbound_xfr:
  - 1471
  - 1474
  - 1475
  - 1477
  - 1478
  - 1480
  - 1481
  - 1482
  - 1487
  - 1488
  - 1492
  - 1493
  - 1495
  - 1496
  - 1497
  - 1498
  - 1508
  - 1509
  - 1511
  dns.query._make_dot_ssl_context:
  - 1235
  - 1236
  - 1238
  - 1240
  - 1241
  dns.query._make_socket:
  - 358
  - 343
  - 345
  - 346
  - 347
  - 348
  - 350
  dns.query._matches_destination:
  - 288
  - 291
  - 285
  - 287
  dns.query._maybe_get_resolver:
  - 368
  - 372
  dns.query._net_read:
  - 1028
  - 1036
  - 1037
  - 1039
  - 1042
  - 1044
  dns.query._net_write:
  - 1057
  - 1059
  - 1061
  - 1049
  - 1054
  dns.query._remaining:
  - 52
  - 54
  - 55
  dns.query._tls_handshake:
  - 1224
  - 1227
  - 1229
  dns.query._udp_recv:
  - 695
  - 693
  - 687
  dns.query._udp_send:
  - 705
  - 706
  - 708
  - 710
  - 699
  dns.query._wait_for:
  - 256
  - 258
  - 242
  - 244
  - 246
  - 248
  - 250
  - 251
  - 252
  - 255
  dns.query._wait_for_readable:
  - 263
  dns.query._wait_for_writable:
  - 267
  dns.query.https:
  - 513
  - 515
  - 518
  - 526
  - 533
  - 534
  - 536
  - 410
  - 547
  - 554
  - 555
  - 561
  - 569
  - 570
  - 571
  - 581
  - 586
  - 463
  - 593
  - 594
  - 468
  - 469
  - 471
  - 475
  - 477
  - 478
  - 480
  - 483
  - 486
  - 489
  - 490
  - 492
  - 493
  - 494
  - 498
  dns.query.inbound_xfr:
  - 1698
  - 1701
  - 1702
  - 1703
  - 1643
  - 1679
  - 1680
  - 1682
  - 1684
  - 1687
  - 1688
  - 1689
  - 1690
  - 1692
  dns.query.quic:
  - 1408
  - 1411
  - 1444
  - 1445
  - 1415
  - 1418
  - 1419
  - 1422
  - 1428
  - 1429
  - 1367
  - 1432
  - 1433
  - 1434
  - 1435
  - 1436
  - 1437
  dns.query.receive_tcp:
  - 1127
  - 1128
  - 1129
  - 1130
  - 1131
  - 1102
  dns.query.receive_udp:
  - 836
  - 806
  - 807
  - 840
  - 842
  - 811
  - 813
  - 755
  - 827
  - 830
  dns.query.send_tcp:
  - 1088
  - 1089
  - 1090
  - 1091
  - 1069
  - 1082
  - 1083
  dns.query.send_udp:
  - 736
  - 737
  - 738
  - 719
  - 735
  dns.query.tcp:
  - 1163
  - 1196
  - 1195
  - 1198
  - 1197
  - 1200
  - 1203
  - 1205
  - 1207
  - 1208
  - 1209
  - 1213
  dns.query.tls:
  - 1345
  - 1323
  - 1260
  - 1324
  - 1325
  - 1328
  - 1329
  - 1339
  - 1331
  - 1338
  - 1307
  - 1340
  - 1341
  - 1311
  dns.query.udp:
  - 931
  - 904
  - 905
  - 908
  - 909
  - 910
  - 912
  - 914
  - 915
  - 862
  dns.query.udp_with_fallback:
  - 953
  - 997
  - 1013
  dns.query.xfr:
  - 1607
  - 1608
  - 1609
  - 1610
  - 1611
  - 1612
  - 1615
  - 1616
  - 1617
  - 1618
  - 1619
  - 1622
  - 1623
  - 1624
  - 1627
  - 1532
  - 1629
  - 1628
  dns.query.xfr.DummyTransactionManager.writer:
  - 1605
  dns.quic:
  - 8
  - 43
  dns.quic._asyncio.AsyncioQuicConnection.__init__:
  - 97
  - 98
  - 99
  - 95
  dns.quic._asyncio.AsyncioQuicConnection._handle_events:
  - 162
  - 163
  - 165
  - 166
  - 168
  - 169
  - 170
  - 171
  - 172
  - 173
  - 175
  - 177
  - 178
  - 179
  - 180
  - 181
  - 182
  - 186
  - 187
  - 188
  - 189
  - 190
  - 191
  - 193
  - 194
  - 195
  - 196
  - 197
  - 198
  - 201
  - 204
  dns.quic._asyncio.AsyncioQuicConnection._receiver:
  - 129
  - 130
  - 106
  - 107
  - 110
  - 113
  - 116
  - 119
  - 121
  - 124
  dns.quic._asyncio.AsyncioQuicConnection._sender:
  - 144
  - 146
  - 147
  - 150
  - 151
  - 153
  - 156
  - 157
  dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer:
  - 139
  - 140
  dns.quic._asyncio.AsyncioQuicConnection._wakeup:
  - 135
  dns.quic._asyncio.AsyncioQuicConnection.close:
  - 229
  - 230
  - 231
  - 233
  - 235
  - 236
  - 238
  - 239
  - 243
  - 244
  - 247
  - 248
  dns.quic._asyncio.AsyncioQuicConnection.make_stream:
  - 224
  - 218
  - 221
  - 223
  dns.quic._asyncio.AsyncioQuicConnection.run:
  - 211
  - 213
  - 214
  dns.quic._asyncio.AsyncioQuicConnection.write:
  - 208
  - 207
  dns.quic._asyncio.AsyncioQuicManager.__aexit__:
  - 273
  - 274
  - 275
  dns.quic._asyncio.AsyncioQuicManager.__init__:
  - 255
  dns.quic._asyncio.AsyncioQuicManager.connect:
  - 264
  - 260
  - 263
  dns.quic._asyncio.AsyncioQuicStream.__aexit__:
  - 89
  - 87
  dns.quic._asyncio.AsyncioQuicStream.__init__:
  - 29
  - 30
  dns.quic._asyncio.AsyncioQuicStream._add_input:
  - 74
  - 76
  dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up:
  - 34
  dns.quic._asyncio.AsyncioQuicStream.close:
  - 79
  dns.quic._asyncio.AsyncioQuicStream.receive:
  - 64
  - 65
  - 66
  - 67
  - 59
  - 60
  - 61
  - 62
  dns.quic._asyncio.AsyncioQuicStream.send:
  - 70
  - 71
  dns.quic._asyncio.AsyncioQuicStream.wait_for:
  - 43
  - 38
  - 39
  dns.quic._asyncio.AsyncioQuicStream.wait_for_end:
  - 50
  - 51
  - 54
  dns.quic._asyncio_manager_factory:
  - 34
  dns.quic._common.BaseQuicConnection.__init__:
  - 169
  - 170
  - 173
  - 174
  - 175
  - 176
  - 178
  - 182
  dns.quic._common.BaseQuicConnection._get_timer_values:
  - 202
  - 203
  - 204
  - 206
  - 207
  - 211
  dns.quic._common.BaseQuicConnection._handle_timer:
  - 216
  - 217
  - 215
  dns.quic._common.BaseQuicConnection.send_data:
  - 199
  dns.quic._common.BaseQuicConnection.send_headers:
  - 195
  dns.quic._common.BaseQuicManager.__init__:
  - 234
  - 236
  - 239
  - 243
  - 248
  - 249
  - 252
  dns.quic._common.BaseQuicManager._connect:
  - 288
  - 294
  - 264
  - 265
  - 298
  - 268
  - 270
  - 303
  - 272
  - 304
  - 305
  - 279
  - 284
  - 286
  dns.quic._common.BaseQuicManager.save_session_ticket:
  - 324
  - 325
  - 326
  - 327
  dns.quic._common.BaseQuicManager.save_token:
  - 336
  - 337
  - 338
  - 335
  dns.quic._common.BaseQuicStream.__init__:
  - 70
  dns.quic._common.BaseQuicStream._close:
  - 148
  - 149
  dns.quic._common.BaseQuicStream._common_add_input:
  - 139
  - 142
  dns.quic._common.BaseQuicStream._encapsulate:
  - 136
  - 133
  - 135
  dns.quic._common.BaseQuicStream._expiration_from_timeout:
  - 85
  - 86
  dns.quic._common.BaseQuicStream._timeout_from_expiration:
  - 92
  - 93
  dns.quic._common.BaseQuicStream.send_h3:
  - 128
  - 129
  - 130
  - 105
  - 107
  - 108
  - 109
  - 113
  - 116
  - 117
  - 121
  - 122
  dns.quic._common.Buffer.get:
  - 54
  dns.quic._common.Buffer.get_all:
  - 60
  dns.quic._common.Buffer.have:
  - 44
  - 46
  dns.quic._common.Buffer.put:
  - 40
  - 37
  dns.quic._sync.SyncQuicConnection.__init__:
  - 98
  - 99
  - 100
  - 102
  - 103
  - 106
  - 108
  - 109
  - 110
  - 111
  - 112
  - 114
  dns.quic._sync.SyncQuicConnection._drain_wakeup:
  - 130
  dns.quic._sync.SyncQuicConnection._handle_events:
  - 171
  - 172
  - 174
  - 175
  - 177
  - 178
  - 179
  - 181
  - 182
  - 183
  - 185
  - 187
  - 188
  - 189
  - 191
  - 192
  - 193
  - 196
  - 197
  - 198
  - 199
  - 200
  - 201
  - 204
  - 206
  - 207
  - 208
  dns.quic._sync.SyncQuicConnection._read:
  - 121
  - 125
  dns.quic._sync.SyncQuicConnection._worker:
  - 164
  - 166
  - 136
  - 137
  - 138
  - 142
  - 143
  - 144
  - 145
  - 147
  - 148
  - 150
  - 151
  - 153
  dns.quic._sync.SyncQuicConnection.close:
  - 256
  - 257
  - 258
  - 250
  - 252
  - 253
  - 255
  dns.quic._sync.SyncQuicConnection.close_stream:
  - 246
  dns.quic._sync.SyncQuicConnection.make_stream:
  - 240
  - 234
  - 237
  - 239
  dns.quic._sync.SyncQuicConnection.run:
  - 228
  - 230
  - 231
  dns.quic._sync.SyncQuicConnection.send_data:
  - 224
  - 225
  - 223
  dns.quic._sync.SyncQuicConnection.send_headers:
  - 217
  - 218
  - 219
  dns.quic._sync.SyncQuicConnection.write:
  - 212
  - 213
  dns.quic._sync.SyncQuicManager.__exit__:
  - 304
  - 305
  - 303
  dns.quic._sync.SyncQuicManager.__init__:
  - 265
  - 266
  dns.quic._sync.SyncQuicManager.closed:
  - 287
  dns.quic._sync.SyncQuicManager.connect:
  - 281
  - 282
  - 278
  dns.quic._sync.SyncQuicManager.save_session_ticket:
  - 291
  dns.quic._sync.SyncQuicManager.save_token:
  - 295
  dns.quic._sync.SyncQuicStream.__exit__:
  - 90
  - 92
  dns.quic._sync.SyncQuicStream.__init__:
  - 33
  - 34
  - 35
  dns.quic._sync.SyncQuicStream._add_input:
  - 80
  - 78
  dns.quic._sync.SyncQuicStream.close:
  - 84
  dns.quic._sync.SyncQuicStream.receive:
  - 64
  - 66
  - 68
  - 69
  - 71
  - 60
  - 61
  - 62
  dns.quic._sync.SyncQuicStream.send:
  - 74
  - 75
  dns.quic._sync.SyncQuicStream.wait_for:
  - 41
  - 45
  - 39
  dns.quic._sync.SyncQuicStream.wait_for_end:
  - 56
  - 51
  - 53
  dns.quic._trio.TrioQuicConnection.__init__:
  - 90
  - 91
  - 92
  - 93
  dns.quic._trio.TrioQuicConnection._handle_events:
  - 137
  - 138
  - 140
  - 141
  - 143
  - 144
  - 145
  - 146
  - 147
  - 148
  - 150
  - 152
  - 153
  - 154
  - 155
  - 156
  - 157
  - 161
  - 162
  - 163
  - 164
  - 165
  - 166
  - 168
  - 169
  - 170
  - 171
  - 172
  - 174
  - 177
  dns.quic._trio.TrioQuicConnection._worker:
  - 128
  - 99
  - 100
  - 101
  - 131
  - 103
  - 132
  - 105
  - 106
  - 114
  - 115
  - 117
  - 118
  - 120
  - 121
  - 126
  - 127
  dns.quic._trio.TrioQuicConnection.close:
  - 208
  - 209
  - 210
  - 212
  - 214
  - 215
  - 216
  dns.quic._trio.TrioQuicConnection.make_stream:
  - 193
  - 194
  - 196
  - 198
  - 199
  - 201
  - 202
  dns.quic._trio.TrioQuicConnection.run:
  - 186
  - 188
  - 189
  - 190
  dns.quic._trio.TrioQuicConnection.write:
  - 180
  - 182
  - 183
  dns.quic._trio.TrioQuicManager.__aexit__:
  - 248
  - 249
  - 247
  dns.quic._trio.TrioQuicManager.__init__:
  - 228
  dns.quic._trio.TrioQuicManager.connect:
  - 234
  - 237
  - 238
  dns.quic._trio.TrioQuicStream.__aexit__:
  - 82
  - 84
  dns.quic._trio.TrioQuicStream.__init__:
  - 29
  - 30
  dns.quic._trio.TrioQuicStream._add_input:
  - 69
  - 71
  dns.quic._trio.TrioQuicStream.close:
  - 74
  dns.quic._trio.TrioQuicStream.receive:
  - 49
  - 50
  - 52
  - 54
  - 55
  - 56
  - 58
  - 59
  - 60
  - 61
  dns.quic._trio.TrioQuicStream.send:
  - 65
  - 66
  dns.quic._trio.TrioQuicStream.wait_for:
  - 34
  - 38
  dns.quic._trio.TrioQuicStream.wait_for_end:
  - 43
  - 46
  dns.quic._trio_context_factory:
  - 53
  dns.quic._trio_manager_factory:
  - 56
  dns.quic.factories_for_backend:
  - 61
  - 62
  - 63
  dns.quic.null_factory:
  - 29
  dns.rcode:
  - 18
  dns.rcode.UnknownRcode:
  - 80
  dns.rcode.from_flags:
  - 97
  - 109
  dns.rcode.from_text:
  - 84
  - 93
  dns.rcode.to_flags:
  - 113
  - 122
  dns.rcode.to_text:
  - 130
  - 139
  - 141
  dns.rdata:
  - 18
  dns.rdata.GenericRdata:
  - 615
  dns.rdata.GenericRdata.__init__:
  - 629
  dns.rdata.GenericRdata._to_wire:
  - 655
  dns.rdata.GenericRdata.from_text:
  - 644
  - 645
  - 647
  - 648
  - 649
  - 650
  - 652
  dns.rdata.GenericRdata.from_wire_parser:
  - 662
  dns.rdata.GenericRdata.to_text:
  - 638
  dns.rdata.NoRelativeRdataOrdering:
  - 53
  dns.rdata.Rdata:
  - 132
  dns.rdata.Rdata.__eq__:
  - 353
  - 355
  - 339
  - 341
  - 346
  - 348
  - 351
  dns.rdata.Rdata.__ge__:
  - 385
  - 386
  - 391
  dns.rdata.Rdata.__getstate__:
  - 168
  - 167
  dns.rdata.Rdata.__gt__:
  - 400
  - 394
  - 395
  dns.rdata.Rdata.__hash__:
  - 403
  dns.rdata.Rdata.__init__:
  - 148
  - 141
  - 149
  dns.rdata.Rdata.__le__:
  - 376
  - 377
  - 382
  dns.rdata.Rdata.__lt__:
  - 368
  - 373
  - 367
  dns.rdata.Rdata.__ne__:
  - 360
  - 362
  - 364
  dns.rdata.Rdata.__repr__:
  - 269
  - 270
  - 273
  - 276
  - 278
  - 281
  dns.rdata.Rdata.__setstate__:
  - 177
  - 172
  - 173
  - 174
  dns.rdata.Rdata.__str__:
  - 286
  dns.rdata.Rdata._as_bool:
  - 579
  dns.rdata.Rdata._as_bytes:
  - 488
  - 489
  - 490
  - 491
  - 492
  - 496
  - 498
  dns.rdata.Rdata._as_int:
  - 547
  - 549
  - 551
  dns.rdata.Rdata._as_ipv4_address:
  - 557
  - 558
  - 559
  - 560
  - 561
  - 562
  dns.rdata.Rdata._as_ipv6_address:
  - 568
  - 569
  - 570
  - 571
  - 572
  - 573
  dns.rdata.Rdata._as_name:
  - 507
  - 508
  - 509
  dns.rdata.Rdata._as_rdataclass:
  - 474
  dns.rdata.Rdata._as_rdatatype:
  - 478
  dns.rdata.Rdata._as_ttl:
  - 586
  - 587
  - 588
  - 589
  dns.rdata.Rdata._as_tuple:
  - 602
  - 598
  dns.rdata.Rdata._as_uint16:
  - 523
  - 525
  dns.rdata.Rdata._as_uint32:
  - 531
  - 533
  dns.rdata.Rdata._as_uint48:
  - 539
  - 541
  dns.rdata.Rdata._as_uint8:
  - 515
  - 517
  dns.rdata.Rdata._cmp:
  - 289
  - 321
  - 322
  - 325
  - 329
  - 331
  - 333
  - 308
  - 311
  - 312
  - 315
  - 318
  - 319
  dns.rdata.Rdata._get_all_slots:
  - 153
  - 154
  dns.rdata.Rdata._processing_order:
  - 608
  - 609
  dns.rdata.Rdata.covers:
  - 180
  dns.rdata.Rdata.extended_rdatatype:
  - 201
  - 194
  dns.rdata.Rdata.replace:
  - 451
  - 458
  - 428
  - 461
  - 464
  - 465
  - 466
  - 440
  - 444
  - 445
  - 447
  dns.rdata.Rdata.to_digestable:
  - 264
  - 259
  dns.rdata.Rdata.to_generic:
  - 256
  - 250
  - 254
  dns.rdata.Rdata.to_text:
  - 209
  dns.rdata.Rdata.to_wire:
  - 232
  - 237
  - 242
  - 245
  - 246
  - 247
  dns.rdata.RdatatypeExists:
  - 894
  dns.rdata._base64ify:
  - 88
  - 84
  dns.rdata._escapify:
  - 97
  - 99
  - 100
  - 101
  - 102
  - 105
  - 106
  - 107
  - 108
  - 109
  dns.rdata._hexify:
  - 80
  - 76
  dns.rdata._truncate_bitmap:
  - 120
  - 121
  - 116
  dns.rdata._wordbreak:
  - 65
  - 66
  - 67
  - 68
  - 61
  dns.rdata.from_text:
  - 769
  - 770
  - 771
  - 773
  - 774
  - 775
  - 777
  - 779
  - 781
  - 782
  - 783
  - 789
  - 792
  - 793
  - 800
  - 801
  - 807
  - 808
  - 811
  - 812
  - 813
  - 733
  dns.rdata.from_wire:
  - 888
  - 889
  - 890
  - 862
  dns.rdata.from_wire_parser:
  - 846
  - 847
  - 848
  - 850
  - 851
  - 823
  dns.rdata.get_rdata_class:
  - 673
  - 674
  - 675
  - 676
  - 677
  - 678
  - 679
  - 681
  - 682
  - 684
  - 688
  - 689
  - 694
  dns.rdata.load_all_types:
  - 711
  - 712
  - 716
  - 717
  - 701
  dns.rdata.register_type:
  - 928
  - 930
  - 933
  - 935
  - 910
  - 926
  - 927
  dns.rdataclass:
  - 18
  dns.rdataclass.RdataClass:
  - 25
  dns.rdataclass.UnknownRdataclass:
  - 58
  dns.rdataclass.from_text:
  - 76
  - 62
  dns.rdataclass.is_metaclass:
  - 101
  - 94
  dns.rdataclass.to_text:
  - 80
  - 90
  dns.rdataset:
  - 18
  dns.rdataset.DifferingCovers:
  - 40
  dns.rdataset.ImmutableRdataset:
  - 359
  dns.rdataset.ImmutableRdataset.__copy__:
  - 409
  dns.rdataset.ImmutableRdataset.__init__:
  - 369
  - 364
  - 366
  dns.rdataset.ImmutableRdataset.copy:
  - 412
  dns.rdataset.ImmutableRdataset.difference:
  - 421
  dns.rdataset.ImmutableRdataset.intersection:
  - 418
  dns.rdataset.ImmutableRdataset.symmetric_difference:
  - 424
  dns.rdataset.ImmutableRdataset.union:
  - 415
  dns.rdataset.IncompatibleTypes:
  - 45
  dns.rdataset.Rdataset:
  - 49
  dns.rdataset.Rdataset.__eq__:
  - 194
  - 186
  - 188
  dns.rdataset.Rdataset.__init__:
  - 60
  - 71
  dns.rdataset.Rdataset.__ne__:
  - 197
  dns.rdataset.Rdataset.__repr__:
  - 167
  - 170
  - 173
  - 175
  - 178
  dns.rdataset.Rdataset.__str__:
  - 183
  dns.rdataset.Rdataset._clone:
  - 78
  dns.rdataset.Rdataset._rdata_repr:
  - 164
  dns.rdataset.Rdataset._rdata_repr.maybe_truncate:
  - 160
  dns.rdataset.Rdataset.add:
  - 128
  - 129
  - 130
  - 131
  - 132
  - 134
  - 104
  - 136
  - 137
  - 138
  - 126
  dns.rdataset.Rdataset.intersection_update:
  - 145
  - 146
  dns.rdataset.Rdataset.match:
  - 338
  - 335
  dns.rdataset.Rdataset.processing_order:
  - 354
  - 351
  - 343
  dns.rdataset.Rdataset.to_text:
  - 256
  - 258
  - 259
  - 261
  - 263
  - 264
  - 233
  - 234
  - 235
  - 265
  - 271
  - 208
  - 240
  - 241
  - 245
  - 251
  - 252
  - 253
  dns.rdataset.Rdataset.to_wire:
  - 322
  - 323
  - 324
  - 325
  - 326
  - 327
  - 306
  - 311
  - 312
  - 313
  - 282
  - 317
  - 318
  - 319
  dns.rdataset.Rdataset.union_update:
  - 141
  - 142
  dns.rdataset.Rdataset.update:
  - 155
  - 156
  - 149
  dns.rdataset.Rdataset.update_ttl:
  - 94
  - 97
  - 86
  - 95
  dns.rdataset.from_rdata:
  - 508
  - 502
  dns.rdataset.from_rdata_list:
  - 483
  - 489
  - 492
  - 493
  - 494
  - 495
  - 496
  dns.rdataset.from_text:
  - 473
  - 479
  dns.rdataset.from_text_list:
  - 455
  - 456
  - 457
  - 458
  - 459
  - 460
  - 463
  - 437
  dns.rdatatype:
  - 18
  dns.rdatatype.RdataType:
  - 27
  dns.rdatatype.RdataType._extra_from_text:
  - 128
  - 130
  - 133
  dns.rdatatype.RdataType._extra_to_text:
  - 137
  - 138
  - 139
  - 140
  dns.rdatatype.UnknownRdatatype:
  - 163
  dns.rdatatype.from_text:
  - 181
  - 167
  dns.rdatatype.is_metatype:
  - 199
  dns.rdatatype.is_singleton:
  - 226
  - 213
  dns.rdatatype.register_type:
  - 248
  - 235
  - 247
  dns.rdatatype.to_text:
  - 185
  - 195
  dns.rdtypes:
  - 18
  dns.rdtypes.ANY:
  - 18
  dns.rdtypes.ANY.AFSDB.AFSDB:
  - 24
  dns.rdtypes.ANY.AFSDB.AFSDB.hostname:
  - 44
  dns.rdtypes.ANY.AFSDB.AFSDB.subtype:
  - 39
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY:
  - 36
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__:
  - 48
  - 45
  - 46
  - 47
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY._to_wire:
  - 77
  - 78
  - 79
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY.from_text:
  - 64
  - 66
  - 67
  - 68
  - 70
  - 71
  - 62
  - 63
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY.from_wire_parser:
  - 83
  - 84
  - 86
  - 87
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY.to_text:
  - 53
  dns.rdtypes.ANY.AVC.AVC:
  - 24
  dns.rdtypes.ANY.CAA.CAA:
  - 28
  dns.rdtypes.ANY.CAA.CAA.__init__:
  - 35
  - 36
  - 37
  - 38
  - 40
  dns.rdtypes.ANY.CAA.CAA._to_wire:
  - 55
  - 56
  - 58
  - 59
  - 60
  dns.rdtypes.ANY.CAA.CAA.from_text:
  - 49
  - 50
  - 51
  - 52
  dns.rdtypes.ANY.CAA.CAA.from_wire_parser:
  - 64
  - 65
  - 66
  - 67
  dns.rdtypes.ANY.CAA.CAA.to_text:
  - 43
  dns.rdtypes.ANY.CDNSKEY.CDNSKEY:
  - 33
  dns.rdtypes.ANY.CDS.CDS:
  - 24
  dns.rdtypes.ANY.CERT.CERT:
  - 70
  dns.rdtypes.ANY.CERT.CERT.__init__:
  - 79
  - 80
  - 81
  - 82
  - 83
  dns.rdtypes.ANY.CERT.CERT._to_wire:
  - 106
  - 107
  - 103
  dns.rdtypes.ANY.CERT.CERT.from_text:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 95
  dns.rdtypes.ANY.CERT.CERT.from_wire_parser:
  - 112
  - 113
  - 111
  dns.rdtypes.ANY.CERT.CERT.to_text:
  - 88
  - 86
  - 87
  dns.rdtypes.ANY.CERT._ctype_from_text:
  - 56
  - 58
  - 55
  dns.rdtypes.ANY.CERT._ctype_to_text:
  - 65
  - 62
  - 63
  dns.rdtypes.ANY.CNAME.CNAME:
  - 24
  dns.rdtypes.ANY.CSYNC.CSYNC:
  - 35
  dns.rdtypes.ANY.CSYNC.CSYNC.__init__:
  - 40
  - 41
  - 42
  - 43
  - 44
  - 45
  dns.rdtypes.ANY.CSYNC.CSYNC._to_wire:
  - 61
  - 62
  dns.rdtypes.ANY.CSYNC.CSYNC.from_text:
  - 56
  - 57
  - 58
  - 55
  dns.rdtypes.ANY.CSYNC.CSYNC.from_wire_parser:
  - 66
  - 67
  - 68
  dns.rdtypes.ANY.CSYNC.CSYNC.to_text:
  - 48
  dns.rdtypes.ANY.DLV.DLV:
  - 24
  dns.rdtypes.ANY.DNAME.DNAME:
  - 24
  dns.rdtypes.ANY.DNAME.DNAME._to_wire:
  - 27
  dns.rdtypes.ANY.DNSKEY.DNSKEY:
  - 33
  dns.rdtypes.ANY.DS.DS:
  - 24
  dns.rdtypes.ANY.DSYNC.DSYNC:
  - 33
  dns.rdtypes.ANY.DSYNC.DSYNC.__init__:
  - 40
  - 41
  - 42
  - 43
  - 44
  dns.rdtypes.ANY.DSYNC.DSYNC._to_wire:
  - 64
  - 65
  - 66
  dns.rdtypes.ANY.DSYNC.DSYNC.from_text:
  - 57
  - 58
  - 59
  - 60
  - 61
  dns.rdtypes.ANY.DSYNC.DSYNC.from_wire_parser:
  - 72
  - 70
  - 71
  dns.rdtypes.ANY.DSYNC.DSYNC.to_text:
  - 49
  - 47
  dns.rdtypes.ANY.DSYNC.Scheme:
  - 18
  dns.rdtypes.ANY.DSYNC.UnknownScheme:
  - 14
  dns.rdtypes.ANY.EUI48.EUI48:
  - 25
  dns.rdtypes.ANY.EUI64.EUI64:
  - 25
  dns.rdtypes.ANY.GPOS.GPOS:
  - 47
  dns.rdtypes.ANY.GPOS.GPOS.__init__:
  - 64
  - 65
  - 66
  - 71
  - 74
  - 54
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 61
  - 62
  - 63
  dns.rdtypes.ANY.GPOS.GPOS._to_wire:
  - 96
  - 97
  - 99
  - 100
  - 101
  - 103
  - 104
  - 93
  - 95
  dns.rdtypes.ANY.GPOS.GPOS.float_altitude:
  - 125
  - 126
  dns.rdtypes.ANY.GPOS.GPOS.float_latitude:
  - 115
  - 116
  dns.rdtypes.ANY.GPOS.GPOS.float_longitude:
  - 120
  - 121
  dns.rdtypes.ANY.GPOS.GPOS.from_text:
  - 88
  - 89
  - 90
  - 87
  dns.rdtypes.ANY.GPOS.GPOS.from_wire_parser:
  - 108
  - 109
  - 110
  - 111
  dns.rdtypes.ANY.GPOS.GPOS.to_text:
  - 80
  - 79
  dns.rdtypes.ANY.GPOS._validate_float_string:
  - 34
  - 37
  - 39
  - 41
  - 27
  - 29
  - 31
  dns.rdtypes.ANY.HINFO.HINFO:
  - 28
  dns.rdtypes.ANY.HINFO.HINFO.__init__:
  - 35
  - 36
  - 37
  dns.rdtypes.ANY.HINFO.HINFO._to_wire:
  - 51
  - 53
  - 54
  - 55
  - 57
  - 58
  dns.rdtypes.ANY.HINFO.HINFO.from_text:
  - 48
  - 46
  - 47
  dns.rdtypes.ANY.HINFO.HINFO.from_wire_parser:
  - 64
  - 62
  - 63
  dns.rdtypes.ANY.HINFO.HINFO.to_text:
  - 40
  dns.rdtypes.ANY.HIP.HIP:
  - 30
  dns.rdtypes.ANY.HIP.HIP.__init__:
  - 37
  - 38
  - 39
  - 40
  - 41
  dns.rdtypes.ANY.HIP.HIP._to_wire:
  - 68
  - 69
  - 70
  - 71
  - 72
  - 73
  - 74
  dns.rdtypes.ANY.HIP.HIP.from_text:
  - 64
  - 65
  - 58
  - 59
  - 60
  - 62
  - 63
  dns.rdtypes.ANY.HIP.HIP.from_wire_parser:
  - 78
  - 79
  - 80
  - 82
  - 83
  - 84
  - 85
  dns.rdtypes.ANY.HIP.HIP.to_text:
  - 44
  - 45
  - 48
  - 49
  - 50
  - 51
  dns.rdtypes.ANY.ISDN.ISDN:
  - 28
  dns.rdtypes.ANY.ISDN.ISDN.__init__:
  - 35
  - 36
  - 37
  dns.rdtypes.ANY.ISDN.ISDN._to_wire:
  - 64
  - 65
  - 66
  - 68
  - 69
  - 61
  - 63
  dns.rdtypes.ANY.ISDN.ISDN.from_text:
  - 52
  - 53
  - 54
  - 55
  - 58
  dns.rdtypes.ANY.ISDN.ISDN.from_wire_parser:
  - 73
  - 74
  - 75
  - 78
  dns.rdtypes.ANY.ISDN.ISDN.to_text:
  - 40
  - 42
  - 43
  - 46
  dns.rdtypes.ANY.L32.L32:
  - 12
  dns.rdtypes.ANY.L32.L32.__init__:
  - 19
  - 20
  - 21
  dns.rdtypes.ANY.L32.L32._to_wire:
  - 35
  - 36
  dns.rdtypes.ANY.L32.L32.from_text:
  - 32
  - 30
  - 31
  dns.rdtypes.ANY.L32.L32.from_wire_parser:
  - 40
  - 41
  - 42
  dns.rdtypes.ANY.L64.L64:
  - 12
  dns.rdtypes.ANY.L64.L64.__init__:
  - 19
  - 20
  - 21
  - 22
  - 24
  - 26
  dns.rdtypes.ANY.L64.L64._to_wire:
  - 41
  - 42
  dns.rdtypes.ANY.L64.L64.from_text:
  - 36
  - 37
  - 38
  dns.rdtypes.ANY.L64.L64.from_wire_parser:
  - 48
  - 46
  - 47
  dns.rdtypes.ANY.LOC:
  - 24
  dns.rdtypes.ANY.LOC.LOC:
  - 108
  dns.rdtypes.ANY.LOC.LOC.__init__:
  - 132
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 146
  - 147
  - 148
  - 149
  - 150
  - 151
  - 152
  - 153
  - 154
  - 155
  - 156
  dns.rdtypes.ANY.LOC.LOC._to_wire:
  - 299
  - 300
  - 301
  - 302
  - 303
  - 306
  dns.rdtypes.ANY.LOC.LOC.float_latitude:
  - 341
  - 342
  dns.rdtypes.ANY.LOC.LOC.float_longitude:
  - 346
  - 347
  dns.rdtypes.ANY.LOC.LOC.from_text:
  - 256
  - 258
  - 260
  - 261
  - 262
  - 263
  - 265
  - 266
  - 267
  - 268
  - 270
  - 271
  - 272
  - 273
  - 275
  - 278
  - 279
  - 280
  - 282
  - 197
  - 198
  - 199
  - 200
  - 201
  - 202
  - 203
  - 204
  - 206
  - 207
  - 208
  - 210
  - 212
  - 216
  - 217
  - 218
  - 219
  - 220
  - 221
  - 223
  - 226
  - 227
  - 228
  - 229
  - 230
  - 231
  - 232
  - 233
  - 235
  - 236
  - 237
  - 239
  - 241
  - 245
  - 246
  - 247
  - 248
  - 249
  - 250
  - 252
  - 255
  dns.rdtypes.ANY.LOC.LOC.from_wire_parser:
  - 321
  - 323
  - 327
  - 329
  - 333
  - 334
  - 335
  - 336
  - 337
  - 318
  - 319
  dns.rdtypes.ANY.LOC.LOC.to_text:
  - 176
  - 163
  - 159
  dns.rdtypes.ANY.LOC._check_coordinate_list:
  - 96
  - 98
  - 100
  - 102
  - 94
  dns.rdtypes.ANY.LOC._decode_size:
  - 88
  - 90
  - 85
  dns.rdtypes.ANY.LOC._encode_size:
  - 77
  - 78
  - 79
  dns.rdtypes.ANY.LOC._exponent_of:
  - 42
  - 43
  - 46
  - 39
  dns.rdtypes.ANY.LOC._float_to_tuple:
  - 64
  - 52
  - 57
  - 58
  - 60
  - 62
  - 63
  dns.rdtypes.ANY.LOC._tuple_to_float:
  - 69
  - 70
  - 71
  - 72
  - 73
  dns.rdtypes.ANY.LP.LP:
  - 11
  dns.rdtypes.ANY.LP.LP.__init__:
  - 18
  - 19
  - 20
  dns.rdtypes.ANY.LP.LP._to_wire:
  - 35
  - 36
  dns.rdtypes.ANY.LP.LP.from_text:
  - 32
  - 30
  - 31
  dns.rdtypes.ANY.LP.LP.from_wire_parser:
  - 40
  - 41
  - 42
  dns.rdtypes.ANY.LP.LP.to_text:
  - 23
  dns.rdtypes.ANY.MX.MX:
  - 24
  dns.rdtypes.ANY.NID.NID:
  - 12
  dns.rdtypes.ANY.NID.NID.__init__:
  - 19
  - 20
  - 21
  - 22
  - 24
  - 26
  dns.rdtypes.ANY.NID.NID._to_wire:
  - 41
  - 42
  dns.rdtypes.ANY.NID.NID.from_text:
  - 36
  - 37
  - 38
  dns.rdtypes.ANY.NID.NID.from_wire_parser:
  - 48
  - 46
  - 47
  dns.rdtypes.ANY.NINFO.NINFO:
  - 24
  dns.rdtypes.ANY.NS.NS:
  - 24
  dns.rdtypes.ANY.NSEC.NSEC:
  - 33
  dns.rdtypes.ANY.NSEC.NSEC.__init__:
  - 38
  - 39
  - 40
  - 41
  - 42
  dns.rdtypes.ANY.NSEC.NSEC._to_wire:
  - 60
  - 61
  dns.rdtypes.ANY.NSEC.NSEC.from_text:
  - 53
  - 54
  - 55
  dns.rdtypes.ANY.NSEC.NSEC.from_wire_parser:
  - 65
  - 66
  - 67
  dns.rdtypes.ANY.NSEC.NSEC.to_text:
  - 45
  - 46
  dns.rdtypes.ANY.NSEC3:
  - 32
  - 29
  dns.rdtypes.ANY.NSEC3.NSEC3:
  - 50
  dns.rdtypes.ANY.NSEC3.NSEC3.__init__:
  - 64
  - 65
  - 57
  - 58
  - 59
  - 60
  - 61
  - 62
  - 63
  dns.rdtypes.ANY.NSEC3.NSEC3._next_text:
  - 68
  - 69
  dns.rdtypes.ANY.NSEC3.NSEC3._to_wire:
  - 103
  - 104
  - 105
  - 106
  - 107
  - 108
  - 109
  dns.rdtypes.ANY.NSEC3.NSEC3.from_text:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 85
  - 86
  - 87
  - 88
  - 89
  - 92
  - 93
  - 94
  dns.rdtypes.ANY.NSEC3.NSEC3.from_wire_parser:
  - 113
  - 114
  - 115
  - 116
  - 117
  dns.rdtypes.ANY.NSEC3.NSEC3.next_name:
  - 120
  dns.rdtypes.ANY.NSEC3.NSEC3.to_text:
  - 73
  - 74
  - 77
  - 78
  dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM:
  - 28
  dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.__init__:
  - 33
  - 34
  - 35
  - 36
  - 37
  dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM._to_wire:
  - 61
  - 62
  - 63
  dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.from_text:
  - 50
  - 51
  - 52
  - 53
  - 54
  - 57
  - 58
  dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.from_wire_parser:
  - 67
  - 68
  - 69
  dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.to_text:
  - 40
  - 43
  dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY:
  - 28
  dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.__init__:
  - 33
  - 34
  dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY._to_wire:
  - 48
  dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.from_text:
  - 43
  - 44
  - 45
  dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.from_wire_parser:
  - 52
  - 53
  dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.to_text:
  - 37
  dns.rdtypes.ANY.OPT.OPT:
  - 31
  dns.rdtypes.ANY.OPT.OPT.__init__:
  - 36
  - 53
  - 46
  dns.rdtypes.ANY.OPT.OPT.__init__.as_option:
  - 49
  dns.rdtypes.ANY.OPT.OPT._to_wire:
  - 56
  - 57
  - 58
  - 59
  dns.rdtypes.ANY.OPT.OPT.from_wire_parser:
  - 67
  - 68
  - 69
  - 70
  - 71
  - 72
  dns.rdtypes.ANY.OPT.OPT.payload:
  - 76
  dns.rdtypes.ANY.OPT.OPT.to_text:
  - 62
  dns.rdtypes.ANY.PTR.PTR:
  - 24
  dns.rdtypes.ANY.RESINFO.RESINFO:
  - 24
  dns.rdtypes.ANY.RP.RP:
  - 26
  dns.rdtypes.ANY.RP.RP.__init__:
  - 33
  - 34
  - 35
  dns.rdtypes.ANY.RP.RP._to_wire:
  - 51
  - 52
  dns.rdtypes.ANY.RP.RP.from_text:
  - 48
  - 46
  - 47
  dns.rdtypes.ANY.RP.RP.from_wire_parser:
  - 56
  - 57
  - 58
  dns.rdtypes.ANY.RP.RP.to_text:
  - 40
  - 38
  - 39
  dns.rdtypes.ANY.RRSIG.BadSigTime:
  - 31
  dns.rdtypes.ANY.RRSIG.RRSIG:
  - 54
  dns.rdtypes.ANY.RRSIG.RRSIG.__init__:
  - 82
  - 83
  - 84
  - 85
  - 86
  - 87
  - 88
  - 89
  - 90
  - 91
  dns.rdtypes.ANY.RRSIG.RRSIG._to_wire:
  - 136
  - 146
  - 147
  - 148
  dns.rdtypes.ANY.RRSIG.RRSIG.from_text:
  - 111
  - 112
  - 113
  - 114
  - 115
  - 116
  - 117
  - 118
  - 119
  - 120
  - 121
  dns.rdtypes.ANY.RRSIG.RRSIG.from_wire_parser:
  - 152
  - 153
  - 154
  - 155
  dns.rdtypes.ANY.RRSIG.RRSIG.to_text:
  - 98
  - 100
  - 101
  - 103
  - 104
  dns.rdtypes.ANY.RRSIG.posixtime_to_sigtime:
  - 49
  dns.rdtypes.ANY.RRSIG.sigtime_to_posixtime:
  - 35
  - 36
  - 37
  - 39
  - 40
  - 41
  - 42
  - 43
  - 44
  - 45
  dns.rdtypes.ANY.RT.RT:
  - 24
  dns.rdtypes.ANY.SMIMEA.SMIMEA:
  - 9
  dns.rdtypes.ANY.SOA.SOA:
  - 28
  dns.rdtypes.ANY.SOA.SOA.__init__:
  - 37
  - 38
  - 39
  - 40
  - 41
  - 42
  - 43
  - 44
  dns.rdtypes.ANY.SOA.SOA._to_wire:
  - 72
  - 67
  - 68
  - 69
  dns.rdtypes.ANY.SOA.SOA.from_text:
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 61
  - 62
  dns.rdtypes.ANY.SOA.SOA.from_wire_parser:
  - 76
  - 77
  - 78
  dns.rdtypes.ANY.SOA.SOA.to_text:
  - 48
  - 47
  dns.rdtypes.ANY.SPF.SPF:
  - 24
  dns.rdtypes.ANY.SSHFP.SSHFP:
  - 28
  dns.rdtypes.ANY.SSHFP.SSHFP.__init__:
  - 35
  - 36
  - 37
  - 38
  dns.rdtypes.ANY.SSHFP.SSHFP._to_wire:
  - 59
  - 60
  - 61
  dns.rdtypes.ANY.SSHFP.SSHFP.from_text:
  - 52
  - 53
  - 54
  - 55
  - 56
  dns.rdtypes.ANY.SSHFP.SSHFP.from_wire_parser:
  - 65
  - 66
  - 67
  dns.rdtypes.ANY.SSHFP.SSHFP.to_text:
  - 41
  - 42
  - 43
  dns.rdtypes.ANY.TKEY.TKEY:
  - 28
  dns.rdtypes.ANY.TKEY.TKEY.__init__:
  - 52
  - 53
  - 54
  - 55
  - 56
  - 57
  - 58
  - 59
  dns.rdtypes.ANY.TKEY.TKEY._to_wire:
  - 96
  - 88
  - 89
  - 90
  - 92
  - 93
  - 94
  - 95
  dns.rdtypes.ANY.TKEY.TKEY.from_text:
  - 73
  - 74
  - 75
  - 76
  - 77
  - 78
  - 79
  - 80
  - 81
  - 83
  dns.rdtypes.ANY.TKEY.TKEY.from_wire_parser:
  - 100
  - 101
  - 102
  - 103
  - 105
  dns.rdtypes.ANY.TKEY.TKEY.to_text:
  - 65
  - 66
  - 62
  - 63
  dns.rdtypes.ANY.TLSA.TLSA:
  - 9
  dns.rdtypes.ANY.TSIG.TSIG:
  - 29
  dns.rdtypes.ANY.TSIG.TSIG.__init__:
  - 74
  - 75
  - 76
  - 77
  - 78
  - 79
  - 80
  - 81
  - 53
  dns.rdtypes.ANY.TSIG.TSIG._to_wire:
  - 128
  - 129
  - 130
  - 135
  - 138
  - 139
  - 140
  dns.rdtypes.ANY.TSIG.TSIG.from_text:
  - 99
  - 100
  - 101
  - 102
  - 103
  - 104
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 115
  dns.rdtypes.ANY.TSIG.TSIG.from_wire_parser:
  - 144
  - 145
  - 146
  - 147
  - 148
  - 149
  - 150
  dns.rdtypes.ANY.TSIG.TSIG.to_text:
  - 84
  - 85
  - 88
  - 89
  - 91
  - 92
  dns.rdtypes.ANY.TXT.TXT:
  - 24
  dns.rdtypes.ANY.URI.URI:
  - 30
  dns.rdtypes.ANY.URI.URI.__init__:
  - 37
  - 38
  - 39
  - 40
  - 41
  dns.rdtypes.ANY.URI.URI._processing_order:
  - 79
  dns.rdtypes.ANY.URI.URI._to_wire:
  - 59
  - 60
  - 61
  dns.rdtypes.ANY.URI.URI.from_text:
  - 51
  - 52
  - 53
  - 54
  - 56
  dns.rdtypes.ANY.URI.URI.from_wire_parser:
  - 65
  - 66
  - 67
  - 69
  dns.rdtypes.ANY.URI.URI.to_text:
  - 45
  dns.rdtypes.ANY.WALLET.WALLET:
  - 9
  dns.rdtypes.ANY.X25.X25:
  - 28
  dns.rdtypes.ANY.X25.X25.__init__:
  - 35
  - 36
  dns.rdtypes.ANY.X25.X25._to_wire:
  - 49
  - 51
  - 52
  dns.rdtypes.ANY.X25.X25.from_text:
  - 45
  - 46
  dns.rdtypes.ANY.X25.X25.from_wire_parser:
  - 56
  - 57
  dns.rdtypes.ANY.X25.X25.to_text:
  - 39
  dns.rdtypes.ANY.ZONEMD.ZONEMD:
  - 14
  dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__:
  - 32
  - 33
  - 21
  - 22
  - 23
  - 24
  - 25
  - 27
  - 29
  dns.rdtypes.ANY.ZONEMD.ZONEMD._to_wire:
  - 56
  - 57
  - 58
  dns.rdtypes.ANY.ZONEMD.ZONEMD.from_text:
  - 48
  - 49
  - 50
  - 51
  - 52
  - 53
  dns.rdtypes.ANY.ZONEMD.ZONEMD.from_wire_parser:
  - 64
  - 62
  - 63
  dns.rdtypes.ANY.ZONEMD.ZONEMD.to_text:
  - 37
  - 38
  - 39
  dns.rdtypes.CH:
  - 18
  dns.rdtypes.CH.A.A:
  - 27
  dns.rdtypes.CH.A.A.__init__:
  - 35
  - 36
  - 37
  dns.rdtypes.CH.A.A._to_wire:
  - 52
  - 53
  - 54
  dns.rdtypes.CH.A.A.from_text:
  - 48
  - 49
  - 47
  dns.rdtypes.CH.A.A.from_wire_parser:
  - 58
  - 59
  - 60
  dns.rdtypes.CH.A.A.to_text:
  - 40
  dns.rdtypes.IN:
  - 18
  dns.rdtypes.IN.A.A:
  - 27
  dns.rdtypes.IN.A.A.__init__:
  - 32
  - 33
  dns.rdtypes.IN.A.A._to_wire:
  - 46
  dns.rdtypes.IN.A.A.from_text:
  - 42
  - 43
  dns.rdtypes.IN.A.A.from_wire_parser:
  - 50
  - 51
  dns.rdtypes.IN.AAAA.AAAA:
  - 27
  dns.rdtypes.IN.AAAA.AAAA.__init__:
  - 32
  - 33
  dns.rdtypes.IN.AAAA.AAAA._to_wire:
  - 46
  dns.rdtypes.IN.AAAA.AAAA.from_text:
  - 42
  - 43
  dns.rdtypes.IN.AAAA.AAAA.from_wire_parser:
  - 50
  - 51
  dns.rdtypes.IN.APL.APL:
  - 82
  dns.rdtypes.IN.APL.APL.__init__:
  - 89
  - 90
  - 91
  - 93
  dns.rdtypes.IN.APL.APL._to_wire:
  - 120
  - 121
  dns.rdtypes.IN.APL.APL.from_text:
  - 103
  - 104
  - 105
  - 110
  - 111
  - 112
  - 113
  - 114
  - 115
  - 117
  dns.rdtypes.IN.APL.APL.from_wire_parser:
  - 129
  - 134
  - 135
  - 136
  - 137
  - 139
  - 140
  - 147
  - 148
  - 149
  - 150
  - 126
  - 127
  dns.rdtypes.IN.APL.APL.to_text:
  - 96
  dns.rdtypes.IN.APL.APLItem:
  - 32
  dns.rdtypes.IN.APL.APLItem.__init__:
  - 37
  - 38
  - 39
  - 40
  - 41
  - 42
  - 43
  - 44
  - 46
  - 47
  dns.rdtypes.IN.APL.APLItem.__str__:
  - 50
  dns.rdtypes.IN.APL.APLItem.to_wire:
  - 66
  - 67
  - 71
  - 73
  - 75
  - 76
  - 77
  - 56
  - 57
  - 58
  - 59
  - 61
  dns.rdtypes.IN.DHCID.DHCID:
  - 27
  dns.rdtypes.IN.DHCID.DHCID.__init__:
  - 34
  - 35
  dns.rdtypes.IN.DHCID.DHCID._to_wire:
  - 49
  dns.rdtypes.IN.DHCID.DHCID.from_text:
  - 44
  - 45
  - 46
  dns.rdtypes.IN.DHCID.DHCID.from_wire_parser:
  - 53
  - 54
  dns.rdtypes.IN.DHCID.DHCID.to_text:
  - 38
  dns.rdtypes.IN.HTTPS.HTTPS:
  - 9
  dns.rdtypes.IN.IPSECKEY.IPSECKEY:
  - 33
  dns.rdtypes.IN.IPSECKEY.IPSECKEY.__init__:
  - 42
  - 43
  - 44
  - 46
  - 48
  dns.rdtypes.IN.IPSECKEY.IPSECKEY._to_wire:
  - 72
  - 73
  - 74
  - 77
  dns.rdtypes.IN.IPSECKEY.IPSECKEY.from_text:
  - 65
  - 66
  - 67
  - 59
  - 60
  - 61
  - 62
  dns.rdtypes.IN.IPSECKEY.IPSECKEY.from_wire_parser:
  - 81
  - 83
  - 84
  - 85
  dns.rdtypes.IN.IPSECKEY.IPSECKEY.to_text:
  - 51
  - 52
  dns.rdtypes.IN.KX.KX:
  - 24
  dns.rdtypes.IN.NAPTR.NAPTR:
  - 36
  dns.rdtypes.IN.NAPTR.NAPTR.__init__:
  - 45
  - 46
  - 47
  - 48
  - 49
  - 50
  - 51
  dns.rdtypes.IN.NAPTR.NAPTR._processing_order:
  - 109
  dns.rdtypes.IN.NAPTR.NAPTR._to_wire:
  - 78
  - 79
  - 80
  - 81
  - 82
  - 83
  dns.rdtypes.IN.NAPTR.NAPTR.from_text:
  - 67
  - 68
  - 69
  - 70
  - 71
  - 72
  - 73
  dns.rdtypes.IN.NAPTR.NAPTR.from_wire_parser:
  - 87
  - 89
  - 90
  - 91
  - 92
  - 93
  dns.rdtypes.IN.NAPTR.NAPTR.to_text:
  - 57
  - 58
  - 59
  - 54
  dns.rdtypes.IN.NAPTR._write_string:
  - 28
  - 30
  - 31
  dns.rdtypes.IN.NSAP.NSAP:
  - 28
  dns.rdtypes.IN.NSAP.NSAP.__init__:
  - 35
  - 36
  dns.rdtypes.IN.NSAP.NSAP._to_wire:
  - 55
  dns.rdtypes.IN.NSAP.NSAP.from_text:
  - 45
  - 46
  - 48
  - 49
  - 51
  - 52
  dns.rdtypes.IN.NSAP.NSAP.from_wire_parser:
  - 59
  - 60
  dns.rdtypes.IN.NSAP.NSAP.to_text:
  - 39
  dns.rdtypes.IN.NSAP_PTR.NSAP_PTR:
  - 24
  dns.rdtypes.IN.PX.PX:
  - 29
  dns.rdtypes.IN.PX.PX.__init__:
  - 36
  - 37
  - 38
  - 39
  dns.rdtypes.IN.PX.PX._processing_order:
  - 73
  dns.rdtypes.IN.PX.PX._to_wire:
  - 56
  - 57
  - 58
  - 59
  dns.rdtypes.IN.PX.PX.from_text:
  - 50
  - 51
  - 52
  - 53
  dns.rdtypes.IN.PX.PX.from_wire_parser:
  - 64
  - 65
  - 66
  - 63
  dns.rdtypes.IN.PX.PX.to_text:
  - 42
  - 43
  dns.rdtypes.IN.SRV.SRV:
  - 29
  dns.rdtypes.IN.SRV.SRV.__init__:
  - 36
  - 37
  - 38
  - 39
  - 40
  dns.rdtypes.IN.SRV.SRV._processing_order:
  - 75
  dns.rdtypes.IN.SRV.SRV._to_wire:
  - 57
  - 58
  - 59
  dns.rdtypes.IN.SRV.SRV.from_text:
  - 50
  - 51
  - 52
  - 53
  - 54
  dns.rdtypes.IN.SRV.SRV.from_wire_parser:
  - 64
  - 65
  - 63
  dns.rdtypes.IN.SRV.SRV.to_text:
  - 43
  dns.rdtypes.IN.SVCB.SVCB:
  - 9
  dns.rdtypes.IN.WKS:
  - 26
  - 27
  dns.rdtypes.IN.WKS.WKS:
  - 36
  dns.rdtypes.IN.WKS.WKS.__init__:
  - 43
  - 44
  - 45
  - 46
  dns.rdtypes.IN.WKS.WKS._to_wire:
  - 90
  - 91
  - 92
  - 93
  dns.rdtypes.IN.WKS.WKS.from_text:
  - 61
  - 62
  - 63
  - 64
  - 66
  - 67
  - 68
  - 69
  - 70
  - 71
  - 73
  - 75
  - 79
  - 81
  - 82
  - 83
  - 84
  - 86
  - 87
  dns.rdtypes.IN.WKS.WKS.from_wire_parser:
  - 97
  - 98
  - 99
  - 100
  dns.rdtypes.IN.WKS.WKS.to_text:
  - 50
  - 51
  - 52
  - 53
  - 54
  dns.rdtypes.dnskeybase.DNSKEYBase:
  - 39
  dns.rdtypes.dnskeybase.DNSKEYBase.__init__:
  - 44
  - 45
  - 46
  - 47
  - 48
  dns.rdtypes.dnskeybase.DNSKEYBase._to_wire:
  - 66
  - 67
  - 68
  dns.rdtypes.dnskeybase.DNSKEYBase.from_text:
  - 58
  - 59
  - 60
  - 61
  - 62
  - 63
  dns.rdtypes.dnskeybase.DNSKEYBase.from_wire_parser:
  - 72
  - 73
  - 74
  dns.rdtypes.dnskeybase.DNSKEYBase.to_text:
  - 51
  dns.rdtypes.dsbase.DSBase:
  - 29
  dns.rdtypes.dsbase.DSBase.__init__:
  - 43
  - 44
  - 45
  - 46
  - 47
  - 49
  - 52
  dns.rdtypes.dsbase.DSBase._to_wire:
  - 75
  - 76
  - 77
  dns.rdtypes.dsbase.DSBase.from_text:
  - 67
  - 68
  - 69
  - 70
  - 71
  - 72
  dns.rdtypes.dsbase.DSBase.from_wire_parser:
  - 81
  - 82
  - 83
  dns.rdtypes.dsbase.DSBase.to_text:
  - 56
  - 57
  - 58
  dns.rdtypes.euibase.EUIBase:
  - 26
  dns.rdtypes.euibase.EUIBase.__init__:
  - 40
  - 38
  - 39
  dns.rdtypes.euibase.EUIBase._to_wire:
  - 68
  dns.rdtypes.euibase.EUIBase.from_text:
  - 65
  - 52
  - 53
  - 57
  - 58
  - 60
  - 62
  dns.rdtypes.euibase.EUIBase.from_wire_parser:
  - 72
  - 73
  dns.rdtypes.euibase.EUIBase.to_text:
  - 46
  dns.rdtypes.mxbase:
  - 18
  dns.rdtypes.mxbase.MXBase:
  - 31
  dns.rdtypes.mxbase.MXBase.__init__:
  - 36
  - 37
  - 38
  dns.rdtypes.mxbase.MXBase._processing_order:
  - 68
  dns.rdtypes.mxbase.MXBase._to_wire:
  - 53
  - 54
  - 55
  dns.rdtypes.mxbase.MXBase.from_text:
  - 48
  - 49
  - 50
  dns.rdtypes.mxbase.MXBase.from_wire_parser:
  - 59
  - 60
  - 61
  dns.rdtypes.mxbase.MXBase.to_text:
  - 41
  dns.rdtypes.mxbase.UncompressedDowncasingMX:
  - 83
  dns.rdtypes.mxbase.UncompressedDowncasingMX._to_wire:
  - 87
  dns.rdtypes.mxbase.UncompressedMX:
  - 73
  dns.rdtypes.mxbase.UncompressedMX._to_wire:
  - 78
  dns.rdtypes.nsbase:
  - 18
  dns.rdtypes.nsbase.NSBase:
  - 28
  dns.rdtypes.nsbase.NSBase.__init__:
  - 33
  - 34
  dns.rdtypes.nsbase.NSBase._to_wire:
  - 48
  dns.rdtypes.nsbase.NSBase.from_text:
  - 44
  - 45
  dns.rdtypes.nsbase.NSBase.from_wire_parser:
  - 52
  - 53
  dns.rdtypes.nsbase.NSBase.to_text:
  - 37
  - 38
  dns.rdtypes.nsbase.UncompressedNS:
  - 58
  dns.rdtypes.nsbase.UncompressedNS._to_wire:
  - 63
  dns.rdtypes.svcbbase.ALPNParam.__init__:
  - 242
  - 243
  dns.rdtypes.svcbbase.ALPNParam.__init__.<lambda1>:
  - 243
  dns.rdtypes.svcbbase.ALPNParam.from_value:
  - 248
  dns.rdtypes.svcbbase.ALPNParam.from_wire_parser:
  - 257
  - 258
  - 259
  - 260
  dns.rdtypes.svcbbase.ALPNParam.to_text:
  - 251
  - 252
  dns.rdtypes.svcbbase.ALPNParam.to_wire:
  - 264
  - 265
  - 263
  dns.rdtypes.svcbbase.ECHParam.__init__:
  - 379
  dns.rdtypes.svcbbase.ECHParam.from_value:
  - 385
  - 386
  - 383
  dns.rdtypes.svcbbase.ECHParam.from_wire_parser:
  - 394
  - 395
  dns.rdtypes.svcbbase.ECHParam.to_text:
  - 389
  dns.rdtypes.svcbbase.ECHParam.to_wire:
  - 398
  dns.rdtypes.svcbbase.GenericParam:
  - 169
  dns.rdtypes.svcbbase.GenericParam.__init__:
  - 172
  dns.rdtypes.svcbbase.GenericParam.from_value:
  - 180
  - 183
  dns.rdtypes.svcbbase.GenericParam.from_wire_parser:
  - 194
  - 190
  - 191
  dns.rdtypes.svcbbase.GenericParam.to_text:
  - 186
  dns.rdtypes.svcbbase.GenericParam.to_wire:
  - 197
  dns.rdtypes.svcbbase.IPv4HintParam.__init__:
  - 323
  dns.rdtypes.svcbbase.IPv4HintParam.from_value:
  - 329
  - 330
  dns.rdtypes.svcbbase.IPv4HintParam.from_wire_parser:
  - 338
  - 339
  - 340
  - 341
  dns.rdtypes.svcbbase.IPv4HintParam.to_text:
  - 333
  dns.rdtypes.svcbbase.IPv4HintParam.to_wire:
  - 344
  - 345
  dns.rdtypes.svcbbase.IPv6HintParam.__init__:
  - 351
  dns.rdtypes.svcbbase.IPv6HintParam.from_value:
  - 357
  - 358
  dns.rdtypes.svcbbase.IPv6HintParam.from_wire_parser:
  - 368
  - 369
  - 366
  - 367
  dns.rdtypes.svcbbase.IPv6HintParam.to_text:
  - 361
  dns.rdtypes.svcbbase.IPv6HintParam.to_wire:
  - 372
  - 373
  dns.rdtypes.svcbbase.MandatoryParam.__init__:
  - 204
  - 206
  - 207
  - 210
  - 212
  dns.rdtypes.svcbbase.MandatoryParam.from_value:
  - 216
  - 217
  dns.rdtypes.svcbbase.MandatoryParam.from_wire_parser:
  - 226
  - 227
  - 228
  - 231
  - 232
  dns.rdtypes.svcbbase.MandatoryParam.to_text:
  - 220
  dns.rdtypes.svcbbase.MandatoryParam.to_wire:
  - 235
  - 236
  dns.rdtypes.svcbbase.NoDefaultALPNParam.from_value:
  - 280
  dns.rdtypes.svcbbase.NoDefaultALPNParam.from_wire_parser:
  - 290
  dns.rdtypes.svcbbase.OHTTPParam.from_value:
  - 413
  dns.rdtypes.svcbbase.OHTTPParam.from_wire_parser:
  - 423
  dns.rdtypes.svcbbase.Param:
  - 160
  dns.rdtypes.svcbbase.ParamKey:
  - 29
  dns.rdtypes.svcbbase.PortParam.__init__:
  - 301
  dns.rdtypes.svcbbase.PortParam.from_value:
  - 305
  - 306
  dns.rdtypes.svcbbase.PortParam.from_wire_parser:
  - 313
  - 314
  dns.rdtypes.svcbbase.PortParam.to_wire:
  - 317
  dns.rdtypes.svcbbase.SVCBBase:
  - 463
  dns.rdtypes.svcbbase.SVCBBase.__init__:
  - 480
  - 481
  - 482
  - 485
  - 488
  - 489
  - 470
  - 471
  - 472
  - 473
  - 474
  - 475
  - 477
  dns.rdtypes.svcbbase.SVCBBase._processing_order:
  - 587
  dns.rdtypes.svcbbase.SVCBBase._to_wire:
  - 551
  - 552
  - 553
  - 554
  - 556
  - 558
  - 559
  dns.rdtypes.svcbbase.SVCBBase.from_text:
  - 512
  - 513
  - 514
  - 515
  - 516
  - 547
  - 518
  - 548
  - 521
  - 522
  - 523
  - 525
  - 527
  - 528
  - 532
  - 533
  - 536
  - 540
  dns.rdtypes.svcbbase.SVCBBase.from_wire_parser:
  - 576
  - 577
  - 578
  - 580
  - 563
  - 564
  - 565
  - 569
  - 570
  - 571
  - 574
  - 575
  dns.rdtypes.svcbbase.SVCBBase.to_text:
  - 493
  - 495
  - 497
  - 498
  - 500
  - 501
  - 502
  - 506
  dns.rdtypes.svcbbase.UnknownParamKey:
  - 25
  dns.rdtypes.svcbbase._escapify:
  - 91
  - 92
  - 93
  - 94
  - 95
  dns.rdtypes.svcbbase._split:
  - 136
  - 143
  - 144
  - 149
  - 150
  - 154
  dns.rdtypes.svcbbase._unescape:
  - 131
  - 102
  - 105
  - 110
  - 111
  - 115
  - 116
  - 120
  - 124
  - 126
  - 127
  dns.rdtypes.svcbbase._validate_and_define:
  - 448
  - 449
  - 450
  - 452
  - 454
  - 455
  - 457
  - 444
  - 445
  - 447
  dns.rdtypes.svcbbase._validate_key:
  - 66
  - 69
  - 70
  - 71
  - 73
  - 76
  - 77
  dns.rdtypes.svcbbase.key_to_text:
  - 81
  dns.rdtypes.tlsabase.TLSABase:
  - 28
  dns.rdtypes.tlsabase.TLSABase.__init__:
  - 35
  - 36
  - 37
  - 38
  - 39
  dns.rdtypes.tlsabase.TLSABase._to_wire:
  - 61
  - 62
  - 63
  dns.rdtypes.tlsabase.TLSABase.from_text:
  - 53
  - 54
  - 55
  - 56
  - 57
  - 58
  dns.rdtypes.tlsabase.TLSABase.from_wire_parser:
  - 67
  - 68
  - 69
  dns.rdtypes.tlsabase.TLSABase.to_text:
  - 42
  - 43
  - 44
  dns.rdtypes.txtbase:
  - 18
  dns.rdtypes.txtbase.TXTBase:
  - 34
  dns.rdtypes.txtbase.TXTBase.__init__:
  - 44
  - 52
  - 53
  - 54
  - 56
  dns.rdtypes.txtbase.TXTBase.__init__.<lambda1>:
  - 54
  dns.rdtypes.txtbase.TXTBase._to_wire:
  - 99
  - 100
  - 101
  dns.rdtypes.txtbase.TXTBase.from_text:
  - 96
  - 83
  - 84
  - 87
  - 88
  - 91
  - 93
  - 94
  dns.rdtypes.txtbase.TXTBase.from_wire_parser:
  - 106
  - 107
  - 108
  - 109
  dns.rdtypes.txtbase.TXTBase.to_text:
  - 67
  - 68
  dns.rdtypes.util.Bitmap:
  - 125
  dns.rdtypes.util.Bitmap.__init__:
  - 131
  - 134
  - 135
  - 137
  - 139
  - 142
  - 144
  dns.rdtypes.util.Bitmap.from_rdtypes:
  - 192
  - 193
  - 194
  - 171
  - 175
  - 177
  - 178
  - 182
  - 183
  - 184
  - 185
  dns.rdtypes.util.Bitmap.from_text:
  - 162
  - 163
  - 164
  - 166
  - 167
  dns.rdtypes.util.Bitmap.from_wire_parser:
  - 204
  - 205
  - 206
  - 207
  - 208
  dns.rdtypes.util.Bitmap.to_text:
  - 149
  - 151
  - 152
  - 153
  - 154
  - 155
  - 156
  dns.rdtypes.util.Bitmap.to_wire:
  - 197
  - 198
  - 199
  dns.rdtypes.util.Gateway:
  - 34
  dns.rdtypes.util.Gateway.__init__:
  - 41
  - 39
  dns.rdtypes.util.Gateway._check:
  - 48
  - 49
  - 52
  - 54
  - 55
  - 56
  - 58
  - 59
  - 60
  - 61
  dns.rdtypes.util.Gateway.from_text:
  - 81
  - 82
  - 83
  - 84
  - 89
  dns.rdtypes.util.Gateway.from_wire_parser:
  - 111
  - 113
  - 114
  - 115
  - 116
  - 117
  - 118
  - 121
  dns.rdtypes.util.Gateway.to_text:
  - 67
  - 69
  - 71
  - 72
  - 73
  dns.rdtypes.util.Gateway.to_wire:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 103
  - 93
  - 95
  dns.rdtypes.util._priority_table:
  - 212
  - 213
  - 214
  dns.rdtypes.util.parse_formatted_hex:
  - 264
  - 266
  - 259
  - 262
  dns.rdtypes.util.priority_processing_order:
  - 224
  - 226
  - 227
  - 219
  - 220
  - 222
  dns.rdtypes.util.weighted_processing_order:
  - 235
  - 236
  - 238
  - 240
  - 242
  - 243
  - 244
  - 245
  - 246
  - 247
  - 252
  - 254
  dns.renderer:
  - 18
  dns.renderer.Renderer:
  - 59
  dns.renderer.Renderer.__init__:
  - 104
  - 106
  - 107
  - 108
  - 117
  dns.renderer.Renderer._rollback:
  - 128
  - 129
  - 131
  - 132
  - 133
  - 134
  - 123
  dns.renderer.Renderer._set_section:
  - 138
  - 147
  - 148
  dns.renderer.Renderer._temporarily_seek_to:
  - 162
  - 164
  - 165
  - 167
  dns.renderer.Renderer._track_size:
  - 154
  - 155
  - 156
  - 157
  dns.renderer.Renderer._write_tsig:
  - 300
  - 304
  - 305
  - 306
  - 307
  - 308
  - 310
  - 311
  - 314
  - 315
  dns.renderer.Renderer.add_edns:
  - 237
  - 234
  - 229
  dns.renderer.Renderer.add_multi_tsig:
  - 289
  - 290
  - 293
  - 294
  - 296
  - 276
  - 284
  - 286
  dns.renderer.Renderer.add_opt:
  - 226
  - 204
  - 210
  - 214
  - 216
  - 220
  - 221
  - 222
  dns.renderer.Renderer.add_question:
  - 170
  - 172
  - 173
  - 174
  - 175
  dns.renderer.Renderer.add_rdataset:
  - 200
  - 199
  - 198
  - 191
  dns.renderer.Renderer.add_rrset:
  - 185
  - 186
  - 179
  - 187
  dns.renderer.Renderer.add_tsig:
  - 257
  - 258
  - 261
  - 262
  - 250
  - 252
  - 254
  dns.renderer.Renderer.get_wire:
  - 339
  - 341
  dns.renderer.Renderer.release_reserved:
  - 353
  dns.renderer.Renderer.reserve:
  - 344
  - 345
  - 347
  dns.renderer.Renderer.write_header:
  - 326
  - 325
  - 318
  - 327
  dns.renderer.prefixed_length:
  - 42
  - 43
  - 44
  - 45
  - 47
  - 49
  - 51
  - 55
  dns.resolver:
  - 18
  - 50
  dns.resolver.Answer:
  - 248
  dns.resolver.Answer.__delitem__:
  - 312
  dns.resolver.Answer.__getattr__:
  - 289
  - 291
  - 293
  - 295
  - 286
  - 287
  dns.resolver.Answer.__getitem__:
  - 307
  dns.resolver.Answer.__init__:
  - 283
  - 278
  dns.resolver.Answer.__iter__:
  - 304
  dns.resolver.Answer.__len__:
  - 301
  dns.resolver.Answers:
  - 318
  dns.resolver.BaseResolver:
  - 907
  dns.resolver.BaseResolver.__init__:
  - 937
  - 948
  - 949
  - 950
  - 951
  - 952
  - 953
  dns.resolver.BaseResolver._compute_timeout:
  - 1070
  - 1072
  - 1074
  - 1075
  - 1083
  - 1085
  dns.resolver.BaseResolver._enrich_nameservers:
  - 1193
  - 1194
  - 1196
  - 1198
  - 1199
  - 1200
  - 1205
  - 1213
  - 1214
  dns.resolver.BaseResolver._get_qnames_to_try:
  - 1123
  - 1092
  - 1125
  - 1095
  - 1096
  - 1098
  - 1099
  - 1100
  - 1103
  - 1110
  - 1114
  - 1115
  - 1116
  - 1119
  dns.resolver.BaseResolver.nameservers:
  - 1239
  - 1231
  dns.resolver.BaseResolver.read_registry:
  - 1056
  - 1053
  - 1055
  dns.resolver.BaseResolver.read_resolv_conf:
  - 1026
  - 1027
  - 1030
  - 1031
  - 1032
  - 1034
  - 1035
  - 1036
  - 1038
  - 1041
  - 1043
  - 1046
  - 982
  - 999
  - 1001
  - 1006
  - 1008
  - 1009
  - 1011
  - 1014
  - 1017
  - 1018
  - 1019
  - 1020
  - 1023
  dns.resolver.BaseResolver.reset:
  - 956
  - 958
  - 959
  dns.resolver.BaseResolver.set_flags:
  - 1178
  dns.resolver.BaseResolver.use_edns:
  - 1168
  - 1170
  - 1151
  dns.resolver.BaseResolver.use_tsig:
  - 1134
  dns.resolver.Cache:
  - 426
  dns.resolver.Cache.__init__:
  - 433
  - 436
  - 429
  dns.resolver.Cache._maybe_clean:
  - 449
  - 439
  - 441
  - 442
  - 444
  - 445
  - 446
  - 447
  dns.resolver.Cache.flush:
  - 496
  - 497
  - 501
  - 486
  dns.resolver.Cache.get:
  - 464
  - 465
  - 466
  - 453
  dns.resolver.Cache.put:
  - 473
  - 482
  dns.resolver.CacheBase.__init__:
  - 393
  - 394
  dns.resolver.CacheBase.get_statistics_snapshot:
  - 419
  - 412
  dns.resolver.CacheBase.hits:
  - 402
  dns.resolver.CacheBase.misses:
  - 407
  dns.resolver.CacheBase.reset_statistics:
  - 397
  - 399
  dns.resolver.CacheStatistics:
  - 377
  dns.resolver.CacheStatistics.clone:
  - 388
  dns.resolver.EmptyHostAnswers:
  - 322
  dns.resolver.HostAnswers:
  - 326
  dns.resolver.HostAnswers.addresses:
  - 366
  dns.resolver.HostAnswers.addresses_and_families:
  - 353
  - 354
  - 355
  - 356
  - 359
  - 360
  - 361
  - 349
  - 350
  - 351
  dns.resolver.HostAnswers.canonical_name:
  - 370
  - 371
  dns.resolver.HostAnswers.make:
  - 337
  - 338
  - 340
  dns.resolver.LRUCache:
  - 526
  dns.resolver.LRUCache.__init__:
  - 536
  - 540
  - 542
  - 543
  dns.resolver.LRUCache.flush:
  - 612
  - 622
  - 623
  - 624
  - 625
  - 631
  dns.resolver.LRUCache.get:
  - 553
  - 564
  - 565
  - 570
  - 571
  - 575
  dns.resolver.LRUCache.get_hits_for_key:
  - 584
  - 581
  - 583
  dns.resolver.LRUCache.put:
  - 608
  - 590
  - 599
  - 600
  - 601
  - 603
  - 605
  - 607
  dns.resolver.LRUCache.set_max_size:
  - 548
  dns.resolver.LRUCacheNode:
  - 505
  dns.resolver.LifetimeTimeout:
  - 164
  dns.resolver.LifetimeTimeout.__init__:
  - 173
  dns.resolver.LifetimeTimeout._fmt_kwargs:
  - 176
  - 177
  - 178
  dns.resolver.NXDOMAIN:
  - 55
  dns.resolver.NXDOMAIN.__add__:
  - 108
  - 109
  - 110
  - 111
  - 112
  - 113
  - 114
  - 115
  - 117
  dns.resolver.NXDOMAIN.__init__:
  - 65
  dns.resolver.NXDOMAIN.__str__:
  - 80
  - 81
  - 83
  - 87
  dns.resolver.NXDOMAIN._check_kwargs:
  - 68
  - 70
  - 72
  - 74
  - 76
  dns.resolver.NXDOMAIN.canonical_name:
  - 98
  - 99
  - 92
  - 93
  - 95
  dns.resolver.NXDOMAIN.qnames:
  - 120
  dns.resolver.NXDOMAIN.response:
  - 135
  dns.resolver.NXDOMAIN.responses:
  - 127
  dns.resolver.NoAnswer:
  - 189
  dns.resolver.NoAnswer.__init__:
  - 197
  dns.resolver.NoAnswer._fmt_kwargs:
  - 200
  dns.resolver.NoMetaqueries:
  - 240
  dns.resolver.NoNameservers:
  - 207
  dns.resolver.NoNameservers.__init__:
  - 222
  dns.resolver.NoNameservers._fmt_kwargs:
  - 225
  - 226
  - 227
  dns.resolver.NoResolverConfiguration:
  - 244
  dns.resolver.NoRootSOA:
  - 236
  dns.resolver.NotAbsolute:
  - 232
  dns.resolver.Resolver:
  - 1244
  dns.resolver.Resolver.canonical_name:
  - 1489
  - 1475
  dns.resolver.Resolver.query:
  - 1371
  - 1366
  - 1359
  dns.resolver.Resolver.resolve:
  - 1312
  - 1345
  - 1314
  - 1319
  - 1258
  - 1325
  - 1326
  - 1327
  - 1328
  - 1330
  - 1338
  - 1340
  - 1309
  dns.resolver.Resolver.resolve_address:
  - 1384
  - 1404
  - 1403
  - 1400
  dns.resolver.Resolver.resolve_name:
  - 1413
  - 1431
  - 1432
  - 1435
  - 1436
  - 1437
  - 1438
  - 1439
  - 1440
  - 1441
  - 1444
  - 1445
  - 1446
  - 1447
  - 1451
  - 1460
  - 1464
  - 1467
  - 1468
  dns.resolver.Resolver.try_ddr:
  - 1517
  - 1518
  - 1521
  - 1522
  - 1523
  - 1498
  dns.resolver.YXDOMAIN:
  - 143
  dns.resolver._Resolution:
  - 637
  dns.resolver._Resolution.__init__:
  - 658
  - 659
  - 660
  - 661
  - 663
  - 664
  - 667
  dns.resolver._Resolution.next_nameserver:
  - 769
  - 770
  - 775
  - 777
  - 778
  - 761
  - 763
  dns.resolver._Resolution.next_request:
  - 736
  - 705
  - 706
  - 741
  - 710
  - 742
  - 733
  - 713
  - 688
  - 720
  - 721
  - 722
  - 727
  - 697
  - 698
  - 701
  - 702
  dns.resolver._Resolution.query_result:
  - 896
  - 898
  - 899
  - 788
  - 791
  - 793
  - 795
  - 800
  - 801
  - 802
  - 803
  - 804
  - 807
  - 808
  - 809
  - 811
  - 817
  - 818
  - 819
  - 821
  - 826
  - 827
  - 830
  - 832
  - 834
  - 840
  - 842
  - 843
  - 844
  - 847
  - 851
  - 855
  - 857
  - 859
  - 865
  - 868
  - 869
  - 875
  - 876
  - 877
  - 879
  - 881
  - 892
  - 893
  - 894
  dns.resolver._errors_to_text:
  - 156
  - 158
  - 159
  dns.resolver._getaddrinfo:
  - 1920
  - 1921
  - 1922
  - 1844
  - 1850
  - 1851
  - 1863
  - 1869
  - 1870
  - 1875
  - 1876
  - 1882
  - 1883
  - 1884
  - 1895
  - 1898
  - 1900
  - 1902
  - 1905
  - 1908
  - 1912
  - 1916
  - 1917
  - 1918
  - 1919
  dns.resolver._getfqdn:
  - 1971
  - 1972
  - 1974
  dns.resolver._gethostbyaddr:
  - 2021
  - 2022
  - 2024
  - 2025
  - 2026
  - 2027
  - 2001
  - 2006
  - 2011
  - 2014
  dns.resolver._gethostbyname:
  - 1983
  dns.resolver._gethostbyname_ex:
  - 1993
  - 1994
  - 1989
  dns.resolver._getnameinfo:
  - 1952
  - 1954
  - 1957
  - 1958
  - 1961
  - 1930
  - 1962
  - 1963
  - 1964
  - 1966
  - 1936
  - 1937
  - 1940
  - 1944
  - 1945
  - 1946
  - 1949
  - 1951
  dns.resolver.canonical_name:
  - 1641
  - 1647
  dns.resolver.get_default_resolver:
  - 1536
  - 1534
  - 1535
  dns.resolver.make_resolver_at:
  - 1768
  - 1769
  - 1771
  - 1772
  - 1774
  - 1775
  - 1776
  - 1751
  dns.resolver.override_system_resolver:
  - 2033
  - 2046
  - 2047
  dns.resolver.query:
  - 1602
  - 1595
  - 1605
  dns.resolver.reset_default_resolver:
  - 1549
  - 1542
  dns.resolver.resolve:
  - 1563
  - 1572
  dns.resolver.resolve_address:
  - 1625
  - 1619
  dns.resolver.resolve_at:
  - 1809
  - 1796
  dns.resolver.resolve_name:
  - 1637
  - 1631
  dns.resolver.restore_system_resolver:
  - 2059
  dns.resolver.try_ddr:
  - 1657
  - 1651
  dns.resolver.zone_for_name:
  - 1667
  - 1692
  - 1693
  - 1694
  - 1695
  - 1696
  - 1698
  - 1700
  - 1707
  - 1708
  - 1709
  - 1713
  - 1717
  - 1721
  - 1722
  - 1724
  - 1725
  - 1726
  - 1727
  - 1728
  - 1729
  - 1740
  dns.reversename:
  - 18
  - 27
  - 28
  dns.reversename.from_address:
  - 64
  - 66
  - 36
  - 56
  - 57
  - 58
  - 61
  dns.reversename.to_address:
  - 96
  - 97
  - 98
  - 100
  - 101
  - 102
  - 104
  - 74
  - 91
  - 92
  - 93
  - 95
  dns.rrset:
  - 18
  dns.rrset.RRset:
  - 31
  dns.rrset.RRset.__eq__:
  - 89
  - 90
  - 92
  - 94
  dns.rrset.RRset.__init__:
  - 50
  - 52
  dns.rrset.RRset.__repr__:
  - 66
  - 67
  - 68
  - 73
  - 75
  - 77
  - 81
  - 63
  dns.rrset.RRset.__str__:
  - 86
  dns.rrset.RRset._clone:
  - 57
  dns.rrset.RRset.full_match:
  - 121
  - 124
  - 126
  dns.rrset.RRset.match:
  - 97
  - 108
  - 109
  - 111
  dns.rrset.RRset.to_rdataset:
  - 184
  - 180
  dns.rrset.RRset.to_text:
  - 138
  - 154
  dns.rrset.RRset.to_wire:
  - 165
  - 173
  dns.rrset.from_rdata:
  - 281
  - 287
  dns.rrset.from_rdata_list:
  - 265
  - 266
  - 268
  - 271
  - 272
  - 273
  - 274
  - 275
  - 254
  dns.rrset.from_text:
  - 243
  - 244
  - 237
  dns.rrset.from_text_list:
  - 226
  - 198
  - 216
  - 217
  - 218
  - 219
  - 220
  - 221
  - 222
  - 223
  dns.serial:
  - 3
  dns.serial.Serial.__add__:
  - 64
  - 66
  - 74
  - 70
  dns.serial.Serial.__eq__:
  - 16
  - 17
  - 15
  dns.serial.Serial.__gt__:
  - 46
  - 47
  - 48
  - 50
  - 52
  dns.serial.Serial.__iadd__:
  - 80
  - 84
  - 78
  dns.serial.Serial.__isub__:
  - 113
  - 107
  - 109
  dns.serial.Serial.__lt__:
  - 33
  - 35
  - 29
  - 30
  - 31
  dns.serial.Serial.__ne__:
  - 24
  - 22
  - 23
  dns.serial.Serial.__sub__:
  - 99
  - 103
  - 93
  - 95
  dns.set.Set:
  - 22
  dns.set.Set.__add__:
  - 208
  dns.set.Set.__and__:
  - 205
  dns.set.Set.__copy__:
  - 96
  - 98
  dns.set.Set.__delitem__:
  - 270
  - 271
  dns.set.Set.__getitem__:
  - 264
  - 265
  - 267
  dns.set.Set.__iadd__:
  - 225
  dns.set.Set.__iand__:
  - 221
  dns.set.Set.__init__:
  - 34
  - 39
  - 40
  - 41
  - 44
  dns.set.Set.__ior__:
  - 217
  dns.set.Set.__isub__:
  - 229
  dns.set.Set.__iter__:
  - 261
  dns.set.Set.__ixor__:
  - 233
  dns.set.Set.__len__:
  - 258
  dns.set.Set.__ne__:
  - 255
  dns.set.Set.__or__:
  - 202
  dns.set.Set.__repr__:
  - 47
  dns.set.Set.__sub__:
  - 211
  dns.set.Set.__xor__:
  - 214
  dns.set.Set._clone:
  - 74
  - 86
  - 90
  - 91
  - 92
  dns.set.Set.add:
  - 50
  - 52
  dns.set.Set.clear:
  - 248
  - 249
  dns.set.Set.copy:
  - 101
  - 103
  dns.set.Set.difference:
  - 185
  - 186
  - 179
  dns.set.Set.difference_update:
  - 133
  - 137
  - 139
  - 140
  - 142
  - 143
  dns.set.Set.discard:
  - 64
  - 66
  dns.set.Set.intersection:
  - 168
  - 174
  - 175
  dns.set.Set.intersection_update:
  - 128
  - 129
  - 118
  - 122
  - 124
  dns.set.Set.isdisjoint:
  - 305
  - 306
  - 303
  dns.set.Set.issubset:
  - 282
  - 285
  - 284
  - 277
  dns.set.Set.issuperset:
  - 297
  - 290
  - 298
  - 295
  dns.set.Set.pop:
  - 69
  - 70
  dns.set.Set.remove:
  - 56
  dns.set.Set.symmetric_difference:
  - 198
  - 197
  - 190
  dns.set.Set.symmetric_difference_update:
  - 146
  - 148
  - 150
  - 151
  - 153
  - 154
  - 155
  dns.set.Set.union:
  - 163
  - 164
  - 158
  dns.set.Set.union_update:
  - 106
  - 110
  - 112
  - 114
  - 115
  dns.set.Set.update:
  - 245
  - 244
  - 237
  dns.tokenizer:
  - 18
  dns.tokenizer.Token:
  - 45
  dns.tokenizer.Token.__eq__:
  - 91
  dns.tokenizer.Token.__init__:
  - 59
  dns.tokenizer.Token.__ne__:
  - 96
  dns.tokenizer.Token.unescape:
  - 128
  - 129
  - 131
  - 133
  - 104
  - 107
  - 112
  - 113
  - 117
  - 118
  - 122
  - 126
  dns.tokenizer.Token.unescape_to_bytes:
  - 192
  - 161
  - 194
  - 195
  - 166
  - 167
  - 171
  - 172
  - 176
  - 180
  - 182
  - 183
  dns.tokenizer.Tokenizer:
  - 199
  dns.tokenizer.Tokenizer.__init__:
  - 256
  - 257
  - 260
  - 261
  - 237
  - 275
  - 251
  - 252
  - 253
  - 255
  dns.tokenizer.Tokenizer._get_char:
  - 288
  - 290
  - 281
  - 283
  - 284
  - 287
  dns.tokenizer.Tokenizer._unget_char:
  - 307
  - 317
  dns.tokenizer.Tokenizer.as_name:
  - 656
  - 650
  - 659
  - 658
  dns.tokenizer.Tokenizer.concatenate_remaining_identifiers:
  - 619
  - 632
  - 633
  - 634
  - 636
  - 639
  dns.tokenizer.Tokenizer.get:
  - 385
  - 386
  - 389
  - 391
  - 392
  - 400
  - 402
  - 403
  - 404
  - 406
  - 407
  - 410
  - 411
  - 412
  - 413
  - 414
  - 418
  - 419
  - 420
  - 424
  - 432
  - 434
  - 436
  - 443
  - 444
  - 447
  - 448
  - 451
  - 343
  - 358
  - 361
  - 362
  - 364
  - 365
  - 369
  - 370
  - 371
  - 376
  - 377
  - 378
  - 380
  - 381
  - 383
  dns.tokenizer.Tokenizer.get_eol:
  - 692
  dns.tokenizer.Tokenizer.get_eol_as_token:
  - 684
  - 685
  - 678
  dns.tokenizer.Tokenizer.get_identifier:
  - 595
  - 594
  - 587
  dns.tokenizer.Tokenizer.get_int:
  - 488
  - 495
  - 496
  - 498
  - 500
  dns.tokenizer.Tokenizer.get_name:
  - 674
  - 667
  - 675
  dns.tokenizer.Tokenizer.get_remaining:
  - 609
  - 610
  - 611
  - 613
  - 614
  - 600
  dns.tokenizer.Tokenizer.get_string:
  - 570
  - 579
  - 580
  - 582
  dns.tokenizer.Tokenizer.get_ttl:
  - 704
  - 703
  - 706
  - 695
  dns.tokenizer.Tokenizer.get_uint16:
  - 525
  - 517
  - 526
  - 527
  dns.tokenizer.Tokenizer.get_uint32:
  - 538
  - 547
  - 546
  dns.tokenizer.Tokenizer.get_uint48:
  - 554
  - 563
  - 562
  dns.tokenizer.Tokenizer.get_uint8:
  - 512
  - 511
  - 503
  dns.tokenizer.Tokenizer.next:
  - 475
  - 476
  - 470
  dns.tokenizer.Tokenizer.skip_whitespace:
  - 323
  - 335
  - 336
  - 337
  - 338
  dns.tokenizer.Tokenizer.unget:
  - 465
  - 454
  dns.tokenizer.Tokenizer.where:
  - 298
  dns.tokenizer.UngetBufferFull:
  - 41
  dns.transaction.AlreadyEnded:
  - 82
  dns.transaction.DeleteNotExact:
  - 74
  dns.transaction.ReadOnly:
  - 78
  dns.transaction.Transaction.__exit__:
  - 562
  - 563
  - 564
  - 566
  dns.transaction.Transaction.__iter__:
  - 284
  - 285
  dns.transaction.Transaction._add:
  - 420
  - 425
  - 426
  - 427
  - 428
  - 429
  - 431
  - 432
  - 437
  - 443
  - 445
  - 446
  - 447
  - 449
  - 450
  - 451
  - 452
  - 453
  - 454
  - 457
  - 459
  - 460
  dns.transaction.Transaction._changed:
  - 606
  dns.transaction.Transaction._check_ended:
  - 529
  dns.transaction.Transaction._check_read_only:
  - 156
  dns.transaction.Transaction._checked_delete_name:
  - 552
  - 550
  - 551
  dns.transaction.Transaction._checked_delete_rdataset:
  - 545
  - 546
  - 547
  dns.transaction.Transaction._checked_put_rdataset:
  - 540
  - 541
  - 542
  dns.transaction.Transaction._delete:
  - 512
  - 513
  - 514
  - 518
  - 519
  - 522
  - 524
  - 465
  - 470
  - 471
  - 472
  - 473
  - 474
  - 476
  - 477
  - 480
  - 481
  - 482
  - 485
  - 486
  - 487
  - 488
  - 491
  - 494
  - 495
  - 502
  - 503
  - 504
  - 506
  - 507
  - 508
  - 509
  - 510
  dns.transaction.Transaction._delete_name:
  - 585
  dns.transaction.Transaction._delete_rdataset:
  - 592
  dns.transaction.Transaction._end:
  - 533
  - 535
  dns.transaction.Transaction._end_transaction:
  - 610
  dns.transaction.Transaction._get_node:
  - 638
  dns.transaction.Transaction._get_rdataset:
  - 575
  dns.transaction.Transaction._iterate_names:
  - 634
  dns.transaction.Transaction._iterate_rdatasets:
  - 630
  dns.transaction.Transaction._name_exists:
  - 599
  dns.transaction.Transaction._origin_information:
  - 651
  dns.transaction.Transaction._put_rdataset:
  - 581
  dns.transaction.Transaction._raise_if_not_empty:
  - 386
  dns.transaction.Transaction._rdataset_from_args:
  - 391
  - 392
  - 393
  - 394
  - 397
  - 400
  - 402
  - 406
  - 407
  - 408
  - 413
  dns.transaction.Transaction._set_origin:
  - 621
  dns.transaction.Transaction.add:
  - 160
  - 170
  - 171
  - 172
  dns.transaction.Transaction.changed:
  - 288
  - 296
  - 295
  dns.transaction.Transaction.check_delete_name:
  - 349
  - 358
  dns.transaction.Transaction.check_delete_rdataset:
  - 336
  - 346
  dns.transaction.Transaction.check_put_rdataset:
  - 324
  - 333
  dns.transaction.Transaction.commit:
  - 299
  - 309
  dns.transaction.Transaction.delete:
  - 196
  - 213
  - 214
  - 215
  dns.transaction.Transaction.delete_exact:
  - 218
  - 236
  - 237
  - 238
  dns.transaction.Transaction.get:
  - 135
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 146
  dns.transaction.Transaction.get_node:
  - 153
  - 149
  dns.transaction.Transaction.iterate_names:
  - 378
  - 379
  - 373
  dns.transaction.Transaction.iterate_rdatasets:
  - 369
  - 370
  - 363
  dns.transaction.Transaction.name_exists:
  - 241
  - 242
  - 243
  - 244
  - 245
  dns.transaction.Transaction.replace:
  - 192
  - 191
  - 193
  - 175
  dns.transaction.Transaction.rollback:
  - 312
  - 321
  dns.transaction.Transaction.update_serial:
  - 264
  - 265
  - 267
  - 268
  - 269
  - 270
  - 272
  - 273
  - 275
  - 277
  - 279
  - 280
  - 281
  - 253
  dns.transaction.TransactionManager.from_wire_origin:
  - 65
  - 66
  - 67
  dns.transaction.TransactionManager.get_class:
  - 61
  dns.transaction.TransactionManager.origin_information:
  - 36
  dns.transaction.TransactionManager.reader:
  - 20
  dns.transaction.TransactionManager.writer:
  - 24
  dns.transaction._ensure_immutable_node:
  - 92
  - 94
  dns.transaction._ensure_immutable_rdataset:
  - 88
  - 86
  dns.tsig:
  - 71
  - 72
  - 73
  - 74
  - 75
  - 76
  - 77
  - 78
  - 79
  - 80
  - 18
  dns.tsig.BadAlgorithm:
  - 46
  dns.tsig.BadKey:
  - 42
  dns.tsig.BadSignature:
  - 38
  dns.tsig.BadTime:
  - 34
  dns.tsig.GSSTSig:
  - 99
  dns.tsig.GSSTSig.sign:
  - 118
  dns.tsig.GSSTSig.verify:
  - 123
  dns.tsig.GSSTSigAdapter.__call__:
  - 136
  - 137
  - 138
  - 134
  dns.tsig.GSSTSigAdapter.parse_tkey_and_step:
  - 153
  - 156
  - 150
  dns.tsig.HMACTSig:
  - 162
  dns.tsig.HMACTSig.__init__:
  - 193
  - 186
  - 187
  - 190
  dns.tsig.HMACTSig.sign:
  - 201
  - 202
  dns.tsig.HMACTSig.update:
  - 197
  dns.tsig.HMACTSig.verify:
  - 208
  - 209
  dns.tsig.Key.__eq__:
  - 349
  dns.tsig.Key.__init__:
  - 337
  - 338
  - 340
  - 341
  - 343
  - 344
  dns.tsig.Key.__repr__:
  - 357
  - 358
  dns.tsig.PeerBadKey:
  - 54
  dns.tsig.PeerBadSignature:
  - 58
  dns.tsig.PeerBadTime:
  - 62
  dns.tsig.PeerBadTruncation:
  - 66
  dns.tsig.PeerError:
  - 50
  dns.tsig._digest:
  - 214
  - 221
  - 222
  - 223
  - 224
  - 225
  - 227
  - 228
  - 229
  - 230
  - 231
  - 232
  - 233
  - 237
  - 238
  - 239
  - 241
  - 242
  - 243
  - 245
  dns.tsig._maybe_start_digest:
  - 256
  - 257
  - 250
  - 254
  - 255
  dns.tsig.get_context:
  - 324
  - 325
  - 318
  - 327
  dns.tsig.sign:
  - 264
  - 272
  - 273
  - 274
  - 276
  dns.tsig.validate:
  - 290
  - 291
  - 294
  - 295
  - 296
  - 298
  - 300
  - 314
  - 302
  - 306
  - 308
  - 310
  - 312
  - 313
  - 282
  dns.tsigkeyring:
  - 18
  dns.tsigkeyring.from_text:
  - 35
  - 36
  - 37
  - 38
  - 41
  - 28
  dns.tsigkeyring.to_text:
  - 65
  - 67
  - 46
  - 57
  - 58
  - 59
  - 60
  - 62
  - 63
  dns.tsigkeyring.to_text.b64encode:
  - 55
  dns.ttl:
  - 18
  dns.ttl.BadTTL:
  - 33
  dns.ttl.from_text:
  - 64
  - 65
  - 67
  - 37
  - 69
  - 71
  - 73
  - 79
  - 48
  - 49
  - 50
  - 81
  - 56
  - 57
  - 59
  - 62
  dns.ttl.make:
  - 89
  - 90
  - 87
  dns.update:
  - 18
  dns.update.UpdateMessage.__init__:
  - 76
  - 77
  - 78
  - 79
  - 81
  - 83
  - 84
  - 93
  - 92
  - 61
  dns.update.UpdateMessage._add:
  - 134
  - 149
  - 150
  - 151
  - 152
  - 153
  - 154
  - 155
  - 156
  - 158
  - 159
  - 160
  - 161
  - 162
  - 163
  - 164
  - 166
  - 167
  - 168
  - 169
  - 170
  - 171
  dns.update.UpdateMessage._add_rr:
  - 128
  - 131
  - 123
  - 125
  - 127
  dns.update.UpdateMessage._parse_rr_header:
  - 360
  - 361
  - 362
  - 368
  - 370
  dns.update.UpdateMessage.absent:
  - 324
  - 327
  - 328
  - 329
  - 330
  - 341
  - 342
  dns.update.UpdateMessage.add:
  - 186
  - 174
  dns.update.UpdateMessage.delete:
  - 189
  - 203
  - 204
  - 205
  - 206
  - 216
  - 217
  - 218
  - 219
  - 221
  - 222
  - 223
  - 224
  - 226
  - 227
  - 228
  - 239
  - 240
  - 246
  dns.update.UpdateMessage.prerequisite:
  - 106
  dns.update.UpdateMessage.present:
  - 294
  - 295
  - 296
  - 297
  - 267
  - 299
  - 301
  - 302
  - 303
  - 305
  - 307
  - 308
  - 281
  - 282
  - 283
  - 284
  dns.update.UpdateMessage.replace:
  - 264
  - 249
  dns.update.UpdateMessage.update:
  - 115
  dns.update.UpdateMessage.zone:
  - 97
  dns.update.UpdateSection:
  - 36
  dns.version:
  - 18
  - 34
  - 36
  - 31
  dns.versioned:
  - 3
  dns.versioned.UseTransaction:
  - 21
  dns.versioned.Zone.__init__:
  - 68
  - 69
  - 70
  - 71
  - 77
  - 78
  - 79
  - 80
  - 53
  dns.versioned.Zone._commit_version:
  - 264
  dns.versioned.Zone._commit_version_unlocked:
  - 256
  - 259
  - 260
  - 253
  - 254
  dns.versioned.Zone._end_read:
  - 240
  - 241
  dns.versioned.Zone._end_write:
  - 250
  dns.versioned.Zone._end_write_unlocked:
  - 246
  dns.versioned.Zone._get_next_version_id:
  - 267
  dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked:
  - 172
  - 173
  - 174
  dns.versioned.Zone._prune_versions_unlocked:
  - 192
  - 195
  - 198
  - 183
  - 191
  dns.versioned.Zone.find_node:
  - 276
  - 278
  dns.versioned.Zone.find_rdataset:
  - 290
  - 292
  - 293
  dns.versioned.Zone.get_rdataset:
  - 304
  - 305
  - 306
  - 302
  dns.versioned.Zone.reader:
  - 97
  - 98
  - 104
  - 105
  - 106
  - 107
  - 108
  - 110
  - 111
  - 114
  - 119
  - 86
  - 118
  - 89
  - 91
  - 92
  - 95
  dns.versioned.Zone.set_max_versions:
  - 216
  - 201
  - 204
  - 206
  dns.versioned.Zone.set_max_versions.policy:
  - 214
  dns.versioned.Zone.set_pruning_policy:
  - 232
  - 236
  - 221
  dns.versioned.Zone.writer:
  - 130
  - 166
  - 136
  - 168
  - 145
  - 146
  dns.win32util:
  - 234
  - 20
  - 5
  - 44
  dns.win32util._RegistryGetter.__init__:
  - 84
  dns.win32util._RegistryGetter._config_fromkey:
  - 128
  - 129
  - 133
  - 136
  - 138
  - 107
  - 141
  - 110
  - 111
  - 112
  - 142
  - 114
  - 115
  - 116
  - 121
  - 124
  - 125
  - 127
  dns.win32util._RegistryGetter._config_nameservers:
  - 96
  - 97
  - 95
  dns.win32util._RegistryGetter._config_search:
  - 100
  - 101
  - 102
  - 103
  dns.win32util._RegistryGetter._is_nic_enabled:
  - 192
  - 162
  - 166
  - 169
  - 175
  - 177
  - 153
  - 190
  dns.win32util._RegistryGetter._split:
  - 92
  dns.win32util._RegistryGetter.get:
  - 224
  - 228
  - 197
  - 230
  - 199
  - 201
  - 205
  - 207
  - 208
  - 216
  - 218
  - 220
  - 222
  dns.win32util._WMIGetter.__init__:
  - 49
  - 50
  dns.win32util._WMIGetter.get:
  - 73
  - 74
  dns.win32util._WMIGetter.run:
  - 68
  - 53
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 61
  - 63
  dns.win32util._config_domain:
  - 34
  - 36
  dns.win32util.get_dns_info:
  - 240
  - 241
  - 242
  dns.wire.Parser:
  - 12
  dns.wire.Parser.__init__:
  - 24
  - 25
  - 26
  - 15
  dns.wire.Parser.get_bytes:
  - 34
  - 38
  dns.wire.Parser.get_counted_bytes:
  - 42
  - 43
  dns.wire.Parser.get_name:
  - 64
  - 65
  - 66
  dns.wire.Parser.get_remaining:
  - 46
  dns.wire.Parser.get_struct:
  - 61
  dns.wire.Parser.get_uint16:
  - 52
  dns.wire.Parser.get_uint32:
  - 55
  dns.wire.Parser.get_uint48:
  - 58
  dns.wire.Parser.get_uint8:
  - 49
  dns.wire.Parser.restore_furthest:
  - 96
  dns.wire.Parser.restrict_to:
  - 88
  - 84
  - 79
  dns.wire.Parser.seek:
  - 72
  dns.xfr.Inbound:
  - 57
  dns.xfr.Inbound.__exit__:
  - 256
  - 257
  dns.xfr.Inbound.__init__:
  - 68
  - 83
  - 84
  - 87
  - 88
  - 95
  dns.xfr.Inbound.process_message:
  - 130
  - 134
  - 137
  - 138
  - 140
  - 141
  - 146
  - 150
  - 165
  - 168
  - 171
  - 175
  - 183
  - 189
  - 190
  - 193
  - 195
  - 196
  - 204
  - 205
  - 206
  - 208
  - 215
  - 220
  - 229
  - 102
  - 230
  - 236
  - 237
  - 110
  - 111
  - 112
  - 113
  - 239
  - 240
  - 119
  - 120
  - 122
  - 125
  dns.xfr.SerialWentBackwards:
  - 49
  dns.xfr.TransferError:
  - 40
  dns.xfr.TransferError.__init__:
  - 43
  - 44
  dns.xfr.UseTCP:
  - 53
  dns.xfr.extract_serial_from_query:
  - 352
  - 355
  - 337
  - 345
  - 348
  - 350
  dns.xfr.make_query:
  - 273
  - 292
  - 293
  - 295
  - 297
  - 299
  - 300
  - 301
  - 302
  - 303
  - 309
  - 313
  - 314
  - 325
  - 326
  - 327
  - 330
  - 331
  - 332
  dns.zone:
  - 18
  dns.zone.BadZone:
  - 58
  dns.zone.DigestVerificationFailure:
  - 86
  dns.zone.ImmutableVersion.__init__:
  - 1088
  - 1090
  - 1091
  - 1094
  - 1081
  - 1087
  dns.zone.ImmutableVersionedNode.__init__:
  - 928
  - 930
  - 931
  dns.zone.ImmutableVersionedNode.find_rdataset:
  - 941
  - 943
  dns.zone.ImmutableVersionedNode.get_rdataset:
  - 952
  - 954
  dns.zone.NoDigest:
  - 82
  dns.zone.NoNS:
  - 66
  dns.zone.NoSOA:
  - 62
  dns.zone.Transaction.__init__:
  - 1102
  dns.zone.Transaction._changed:
  - 1145
  - 1141
  dns.zone.Transaction._delete_name:
  - 1129
  dns.zone.Transaction._delete_rdataset:
  - 1134
  dns.zone.Transaction._end_transaction:
  - 1152
  - 1153
  - 1155
  - 1157
  - 1160
  - 1166
  - 1150
  - 1151
  dns.zone.Transaction._get_node:
  - 1185
  dns.zone.Transaction._get_rdataset:
  - 1119
  dns.zone.Transaction._iterate_names:
  - 1181
  dns.zone.Transaction._iterate_rdatasets:
  - 1176
  - 1177
  - 1175
  dns.zone.Transaction._name_exists:
  - 1138
  dns.zone.Transaction._origin_information:
  - 1194
  - 1189
  - 1190
  dns.zone.Transaction._put_rdataset:
  - 1124
  dns.zone.Transaction._set_origin:
  - 1170
  dns.zone.Transaction._setup_version:
  - 1113
  - 1115
  dns.zone.UnknownOrigin:
  - 70
  dns.zone.UnsupportedDigestHashAlgorithm:
  - 78
  dns.zone.UnsupportedDigestScheme:
  - 74
  dns.zone.Version.__init__:
  - 984
  - 981
  dns.zone.Version._validate_name:
  - 988
  dns.zone.Version.get_node:
  - 992
  - 991
  dns.zone.Version.get_rdataset:
  - 1000
  - 1001
  - 1003
  dns.zone.Version.items:
  - 1009
  dns.zone.Version.keys:
  - 1006
  dns.zone.VersionedNode.__init__:
  - 920
  dns.zone.WritableVersion.__init__:
  - 1027
  - 1016
  - 1017
  - 1018
  - 1023
  dns.zone.WritableVersion._maybe_cow:
  - 1030
  - 1031
  - 1032
  - 1033
  - 1034
  - 1042
  - 1044
  - 1046
  dns.zone.WritableVersion.delete_node:
  - 1052
  - 1053
  - 1055
  dns.zone.WritableVersion.delete_rdataset:
  - 1069
  - 1070
  - 1071
  dns.zone.WritableVersion.put_rdataset:
  - 1060
  - 1061
  dns.zone.Zone:
  - 122
  dns.zone.Zone.__contains__:
  - 232
  dns.zone.Zone.__delitem__:
  - 212
  dns.zone.Zone.__eq__:
  - 176
  - 178
  - 170
  dns.zone.Zone.__getitem__:
  - 204
  dns.zone.Zone.__init__:
  - 160
  - 162
  - 166
  - 145
  - 157
  - 158
  - 159
  dns.zone.Zone.__iter__:
  - 216
  dns.zone.Zone.__ne__:
  - 192
  - 187
  dns.zone.Zone.__setitem__:
  - 208
  dns.zone.Zone._commit_version:
  - 900
  dns.zone.Zone._compute_digest:
  - 832
  - 833
  - 806
  - 807
  - 809
  - 812
  - 817
  - 818
  - 819
  - 820
  - 821
  - 826
  - 829
  - 830
  - 831
  dns.zone.Zone._validate_name:
  - 201
  - 197
  - 198
  - 199
  dns.zone.Zone.check_origin:
  - 768
  - 770
  - 755
  - 763
  dns.zone.Zone.compute_digest:
  - 840
  - 841
  - 842
  dns.zone.Zone.delete_node:
  - 290
  - 300
  - 301
  dns.zone.Zone.delete_rdataset:
  - 428
  - 429
  - 430
  - 431
  - 432
  - 433
  - 434
  - 435
  - 405
  dns.zone.Zone.find_node:
  - 256
  - 257
  - 259
  - 238
  - 254
  - 255
  dns.zone.Zone.find_rdataset:
  - 311
  - 345
  - 346
  - 347
  - 348
  - 349
  dns.zone.Zone.find_rrset:
  - 512
  - 469
  - 507
  - 508
  - 509
  - 510
  - 511
  dns.zone.Zone.get:
  - 228
  - 229
  dns.zone.Zone.get_node:
  - 266
  - 284
  dns.zone.Zone.get_rdataset:
  - 394
  - 358
  dns.zone.Zone.get_rrset:
  - 521
  - 556
  dns.zone.Zone.get_soa:
  - 776
  - 782
  - 785
  - 791
  - 792
  - 794
  - 795
  - 798
  dns.zone.Zone.items:
  - 225
  dns.zone.Zone.iterate_rdatas:
  - 616
  - 617
  - 618
  - 619
  - 620
  - 623
  - 624
  - 598
  dns.zone.Zone.iterate_rdatasets:
  - 584
  - 585
  - 586
  - 587
  - 588
  - 591
  - 566
  dns.zone.Zone.keys:
  - 219
  dns.zone.Zone.origin_information:
  - 881
  dns.zone.Zone.reader:
  - 870
  dns.zone.Zone.replace_rdataset:
  - 440
  - 458
  - 460
  - 461
  dns.zone.Zone.to_file:
  - 662
  - 663
  - 665
  - 669
  - 670
  - 673
  - 675
  - 677
  - 678
  - 681
  - 683
  - 685
  - 686
  - 688
  - 689
  - 691
  - 692
  - 694
  - 695
  - 696
  - 698
  - 699
  - 700
  - 706
  - 709
  - 710
  - 712
  - 713
  - 635
  dns.zone.Zone.to_text:
  - 748
  - 749
  - 750
  - 751
  - 723
  dns.zone.Zone.values:
  - 222
  dns.zone.Zone.verify_digest:
  - 850
  - 854
  - 855
  - 858
  - 860
  - 861
  dns.zone.Zone.writer:
  - 873
  - 874
  dns.zone._from_text:
  - 1220
  - 1222
  - 1223
  - 1224
  - 1225
  - 1233
  - 1238
  - 1239
  dns.zone._validate_name:
  - 100
  - 101
  - 103
  - 104
  - 109
  - 114
  - 95
  dns.zone.from_file:
  - 1378
  - 1379
  - 1381
  - 1383
  - 1385
  - 1329
  dns.zone.from_text:
  - 1303
  - 1255
  dns.zone.from_xfr:
  - 1440
  - 1441
  - 1442
  - 1443
  - 1445
  - 1446
  - 1447
  - 1448
  - 1449
  - 1451
  - 1452
  - 1432
  - 1433
  - 1434
  - 1406
  - 1439
  dns.zonefile:
  - 18
  dns.zonefile.CNAMEAndOtherData:
  - 43
  dns.zonefile.RRSetsReaderManager.origin_information:
  - 653
  dns.zonefile.RRSetsReaderManager.writer:
  - 647
  dns.zonefile.RRsetsReaderTransaction.__init__:
  - 564
  dns.zonefile.RRsetsReaderTransaction._changed:
  - 607
  dns.zonefile.RRsetsReaderTransaction._delete_name:
  - 587
  - 588
  - 589
  - 590
  - 591
  dns.zonefile.RRsetsReaderTransaction._end_transaction:
  - 610
  - 612
  - 613
  - 616
  - 617
  - 618
  dns.zonefile.RRsetsReaderTransaction._get_node:
  - 577
  - 572
  - 573
  - 574
  - 575
  dns.zonefile.RRsetsReaderTransaction._get_rdataset:
  - 568
  dns.zonefile.RRsetsReaderTransaction._name_exists:
  - 601
  - 602
  dns.zonefile.Reader:
  - 89
  dns.zonefile.Reader.__init__:
  - 130
  - 134
  - 105
  - 139
  - 109
  - 111
  - 123
  - 125
  - 126
  - 127
  dns.zonefile.Reader._eat_line:
  - 144
  - 143
  dns.zonefile.Reader._generate_line:
  - 384
  - 385
  - 412
  - 413
  - 414
  - 417
  - 418
  - 420
  - 421
  - 423
  - 424
  - 426
  - 431
  - 432
  - 434
  - 435
  - 438
  - 324
  - 326
  - 455
  - 329
  - 332
  - 333
  - 334
  - 460
  - 342
  - 343
  - 350
  - 353
  - 354
  - 357
  - 359
  - 361
  - 371
  - 372
  - 373
  - 379
  - 383
  dns.zonefile.Reader._generate_line._calculate_index:
  - 394
  - 395
  dns.zonefile.Reader._generate_line._format_index:
  - 400
  - 402
  - 403
  - 406
  - 407
  - 408
  - 409
  dns.zonefile.Reader._get_identifier:
  - 148
  - 149
  dns.zonefile.Reader._parse_modify:
  - 280
  - 281
  - 282
  - 291
  - 292
  - 293
  - 294
  - 297
  - 298
  - 299
  - 300
  - 305
  - 306
  - 307
  - 308
  - 312
  - 313
  - 315
  - 317
  dns.zonefile.Reader._rr_line:
  - 256
  - 259
  - 263
  - 266
  - 272
  - 275
  - 154
  - 157
  - 160
  - 162
  - 163
  - 164
  - 166
  - 167
  - 170
  - 172
  - 175
  - 176
  - 178
  - 179
  - 182
  - 187
  - 190
  - 195
  - 198
  - 201
  - 203
  - 208
  - 209
  - 212
  - 214
  - 217
  - 222
  - 224
  - 226
  - 229
  - 232
  - 234
  - 239
  dns.zonefile.Reader.read:
  - 513
  - 514
  - 515
  - 517
  - 519
  - 520
  - 523
  - 524
  - 528
  - 540
  - 541
  - 543
  - 544
  - 550
  - 551
  - 553
  - 554
  - 556
  - 557
  - 463
  - 471
  - 472
  - 473
  - 474
  - 475
  - 485
  - 488
  - 490
  - 491
  - 493
  - 496
  - 497
  - 501
  - 502
  - 503
  - 505
  - 507
  - 508
  - 509
  - 510
  - 511
  dns.zonefile.UnknownOrigin:
  - 39
  dns.zonefile._check_cname_and_other_data:
  - 47
  - 48
  - 49
  - 52
  - 53
  - 58
  dns.zonefile._upper_dollarize:
  - 82
  - 83
  dns.zonefile.read_rrsets:
  - 675
  - 724
  - 725
  - 726
  - 727
  - 728
  - 729
  - 730
  - 731
  - 732
  - 733
  - 736
  - 737
  - 738
  - 741
  - 742
  - 743
  - 744
  - 755
  dns.zonetypes:
  - 3
  dns.zonetypes.DigestHashAlgorithm:
  - 24
  dns.zonetypes.DigestScheme:
  - 14
Fuzzer filename: /src/fuzz_token.py
Inheritance:
  dns._asyncbackend.Backend: []
  dns._asyncbackend.DatagramSocket:
  - Socket
  dns._asyncbackend.NullContext: []
  dns._asyncbackend.NullTransport: []
  dns._asyncbackend.Socket: []
  dns._asyncbackend.StreamSocket:
  - Socket
  dns._asyncio_backend.Backend: []
  dns._asyncio_backend.DatagramSocket: []
  dns._asyncio_backend.StreamSocket: []
  dns._asyncio_backend._DatagramProtocol: []
  dns._asyncio_backend._HTTPTransport: []
  dns._asyncio_backend._NetworkBackend:
  - _CoreAsyncNetworkBackend
  dns._ddr._SVCBInfo: []
  dns._immutable_ctx._Immutable: []
  dns._immutable_ctx.immutable.ncls:
  - cls
  - _Immutable
  dns._trio_backend.Backend: []
  dns._trio_backend.DatagramSocket: []
  dns._trio_backend.StreamSocket: []
  dns._trio_backend._HTTPTransport: []
  dns._trio_backend._NetworkBackend:
  - _CoreAsyncNetworkBackend
  dns.asyncbackend.AsyncLibraryNotFoundError: []
  dns.asyncresolver.Resolver: []
  dns.dnssec.Policy: []
  dns.dnssec.SimpleDeny:
  - Policy
  dns.dnssecalgs.base.GenericPrivateKey:
  - ABC
  dns.dnssecalgs.base.GenericPublicKey:
  - ABC
  dns.dnssecalgs.cryptography.CryptographyPrivateKey:
  - GenericPrivateKey
  dns.dnssecalgs.cryptography.CryptographyPublicKey:
  - GenericPublicKey
  dns.dnssecalgs.dsa.PrivateDSA:
  - CryptographyPrivateKey
  dns.dnssecalgs.dsa.PrivateDSANSEC3SHA1:
  - PrivateDSA
  dns.dnssecalgs.dsa.PublicDSA:
  - CryptographyPublicKey
  dns.dnssecalgs.dsa.PublicDSANSEC3SHA1:
  - PublicDSA
  dns.dnssecalgs.ecdsa.PrivateECDSA:
  - CryptographyPrivateKey
  dns.dnssecalgs.ecdsa.PrivateECDSAP256SHA256:
  - PrivateECDSA
  dns.dnssecalgs.ecdsa.PrivateECDSAP384SHA384:
  - PrivateECDSA
  dns.dnssecalgs.ecdsa.PublicECDSA:
  - CryptographyPublicKey
  dns.dnssecalgs.ecdsa.PublicECDSAP256SHA256:
  - PublicECDSA
  dns.dnssecalgs.ecdsa.PublicECDSAP384SHA384:
  - PublicECDSA
  dns.dnssecalgs.eddsa.PrivateED25519:
  - PrivateEDDSA
  dns.dnssecalgs.eddsa.PrivateED448:
  - PrivateEDDSA
  dns.dnssecalgs.eddsa.PrivateEDDSA:
  - CryptographyPrivateKey
  dns.dnssecalgs.eddsa.PublicED25519:
  - PublicEDDSA
  dns.dnssecalgs.eddsa.PublicED448:
  - PublicEDDSA
  dns.dnssecalgs.eddsa.PublicEDDSA:
  - CryptographyPublicKey
  dns.dnssecalgs.rsa.PrivateRSA:
  - CryptographyPrivateKey
  dns.dnssecalgs.rsa.PrivateRSAMD5:
  - PrivateRSA
  dns.dnssecalgs.rsa.PrivateRSASHA1:
  - PrivateRSA
  dns.dnssecalgs.rsa.PrivateRSASHA1NSEC3SHA1:
  - PrivateRSA
  dns.dnssecalgs.rsa.PrivateRSASHA256:
  - PrivateRSA
  dns.dnssecalgs.rsa.PrivateRSASHA512:
  - PrivateRSA
  dns.dnssecalgs.rsa.PublicRSA:
  - CryptographyPublicKey
  dns.dnssecalgs.rsa.PublicRSAMD5:
  - PublicRSA
  dns.dnssecalgs.rsa.PublicRSASHA1:
  - PublicRSA
  dns.dnssecalgs.rsa.PublicRSASHA1NSEC3SHA1:
  - PublicRSA
  dns.dnssecalgs.rsa.PublicRSASHA256:
  - PublicRSA
  dns.dnssecalgs.rsa.PublicRSASHA512:
  - PublicRSA
  dns.dnssectypes.Algorithm: []
  dns.dnssectypes.DSDigest: []
  dns.dnssectypes.NSEC3Hash: []
  dns.edns.CookieOption:
  - Option
  dns.edns.ECSOption:
  - Option
  dns.edns.EDECode: []
  dns.edns.EDEOption:
  - Option
  dns.edns.GenericOption:
  - Option
  dns.edns.NSIDOption:
  - Option
  dns.edns.Option: []
  dns.edns.OptionType: []
  dns.edns.ReportChannelOption:
  - Option
  dns.entropy.EntropyPool: []
  dns.enum.IntEnum: []
  dns.exception.AlgorithmKeyMismatch:
  - UnsupportedAlgorithm
  dns.exception.DNSException:
  - Exception
  dns.exception.DeniedByPolicy:
  - DNSException
  dns.exception.ExceptionWrapper: []
  dns.exception.FormError:
  - DNSException
  dns.exception.SyntaxError:
  - DNSException
  dns.exception.Timeout:
  - DNSException
  dns.exception.TooBig:
  - DNSException
  dns.exception.UnexpectedEnd:
  - SyntaxError
  dns.exception.UnsupportedAlgorithm:
  - DNSException
  dns.exception.ValidationFailure:
  - DNSException
  dns.flags.EDNSFlag: []
  dns.flags.Flag: []
  dns.immutable.Dict: []
  dns.message.AnswerForNXDOMAIN: []
  dns.message.BadEDNS: []
  dns.message.BadTSIG: []
  dns.message.ChainTooLong: []
  dns.message.ChainingResult: []
  dns.message.CopyMode: []
  dns.message.Message: []
  dns.message.MessageError: []
  dns.message.MessageSection: []
  dns.message.NoPreviousName: []
  dns.message.NotQueryResponse: []
  dns.message.QueryMessage:
  - Message
  dns.message.ShortHeader: []
  dns.message.TrailingJunk: []
  dns.message.Truncated: []
  dns.message.UnknownHeaderField: []
  dns.message.UnknownTSIGKey: []
  dns.message._TextReader: []
  dns.message._WireReader: []
  dns.name.AbsoluteConcatenation: []
  dns.name.BadEscape: []
  dns.name.BadLabelType: []
  dns.name.BadPointer: []
  dns.name.EmptyLabel: []
  dns.name.IDNA2003Codec:
  - IDNACodec
  dns.name.IDNA2008Codec:
  - IDNACodec
  dns.name.IDNACodec: []
  dns.name.IDNAException: []
  dns.name.LabelTooLong: []
  dns.name.Name: []
  dns.name.NameRelation: []
  dns.name.NameTooLong: []
  dns.name.NeedAbsoluteNameOrOrigin: []
  dns.name.NeedSubdomainOfOrigin: []
  dns.name.NoIDNA2008: []
  dns.name.NoParent: []
  dns.namedict.NameDict:
  - MutableMapping
  dns.nameserver.AddressAndPortNameserver:
  - Nameserver
  dns.nameserver.Do53Nameserver:
  - AddressAndPortNameserver
  dns.nameserver.DoHNameserver:
  - Nameserver
  dns.nameserver.DoQNameserver:
  - AddressAndPortNameserver
  dns.nameserver.DoTNameserver:
  - AddressAndPortNameserver
  dns.nameserver.Nameserver: []
  dns.node.ImmutableNode:
  - Node
  dns.node.Node: []
  dns.node.NodeKind: []
  dns.opcode.Opcode: []
  dns.opcode.UnknownOpcode: []
  dns.query.BadResponse: []
  dns.query.HTTPVersion: []
  dns.query.NoDOH: []
  dns.query.NoDOQ: []
  dns.query.UDPMode: []
  dns.query.UnexpectedSource: []
  dns.query._HTTPTransport: []
  dns.query._NetworkBackend:
  - _CoreNetworkBackend
  dns.query.ssl: []
  dns.query.ssl.SSLContext: []
  dns.query.ssl.SSLSocket: []
  dns.query.ssl.SSLWantReadError:
  - Exception
  dns.query.ssl.SSLWantWriteError:
  - Exception
  dns.query.ssl.WantReadException:
  - Exception
  dns.query.ssl.WantWriteException:
  - Exception
  dns.query.xfr.DummyTransactionManager: []
  dns.query.xfr.DummyTransactionManager.writer.DummyTransaction: []
  dns.quic.AsyncQuicConnection: []
  dns.quic.AsyncQuicStream: []
  dns.quic.SyncQuicConnection: []
  dns.quic.SyncQuicStream: []
  dns.quic._asyncio.AsyncioQuicConnection:
  - AsyncQuicConnection
  dns.quic._asyncio.AsyncioQuicManager:
  - AsyncQuicManager
  dns.quic._asyncio.AsyncioQuicStream:
  - BaseQuicStream
  dns.quic._common.AsyncQuicConnection:
  - BaseQuicConnection
  dns.quic._common.AsyncQuicManager:
  - BaseQuicManager
  dns.quic._common.BaseQuicConnection: []
  dns.quic._common.BaseQuicManager: []
  dns.quic._common.BaseQuicStream: []
  dns.quic._common.Buffer: []
  dns.quic._common.UnexpectedEOF:
  - Exception
  dns.quic._sync.SyncQuicConnection:
  - BaseQuicConnection
  dns.quic._sync.SyncQuicManager:
  - BaseQuicManager
  dns.quic._sync.SyncQuicStream:
  - BaseQuicStream
  dns.quic._trio.TrioQuicConnection:
  - AsyncQuicConnection
  dns.quic._trio.TrioQuicManager:
  - AsyncQuicManager
  dns.quic._trio.TrioQuicStream:
  - BaseQuicStream
  dns.rcode.Rcode: []
  dns.rcode.UnknownRcode: []
  dns.rdata.GenericRdata:
  - Rdata
  dns.rdata.NoRelativeRdataOrdering: []
  dns.rdata.Rdata: []
  dns.rdata.RdatatypeExists: []
  dns.rdataclass.RdataClass: []
  dns.rdataclass.UnknownRdataclass: []
  dns.rdataset.DifferingCovers: []
  dns.rdataset.ImmutableRdataset:
  - Rdataset
  dns.rdataset.IncompatibleTypes: []
  dns.rdataset.Rdataset: []
  dns.rdatatype.RdataType: []
  dns.rdatatype.UnknownRdatatype: []
  dns.rdtypes.ANY.AFSDB.AFSDB: []
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY: []
  dns.rdtypes.ANY.AMTRELAY.Relay: []
  dns.rdtypes.ANY.AVC.AVC: []
  dns.rdtypes.ANY.CAA.CAA: []
  dns.rdtypes.ANY.CDNSKEY.CDNSKEY: []
  dns.rdtypes.ANY.CDS.CDS: []
  dns.rdtypes.ANY.CERT.CERT: []
  dns.rdtypes.ANY.CNAME.CNAME: []
  dns.rdtypes.ANY.CSYNC.Bitmap: []
  dns.rdtypes.ANY.CSYNC.CSYNC: []
  dns.rdtypes.ANY.DLV.DLV: []
  dns.rdtypes.ANY.DNAME.DNAME: []
  dns.rdtypes.ANY.DNSKEY.DNSKEY: []
  dns.rdtypes.ANY.DS.DS: []
  dns.rdtypes.ANY.DSYNC.DSYNC: []
  dns.rdtypes.ANY.DSYNC.Scheme: []
  dns.rdtypes.ANY.DSYNC.UnknownScheme: []
  dns.rdtypes.ANY.EUI48.EUI48: []
  dns.rdtypes.ANY.EUI64.EUI64: []
  dns.rdtypes.ANY.GPOS.GPOS: []
  dns.rdtypes.ANY.HINFO.HINFO: []
  dns.rdtypes.ANY.HIP.HIP: []
  dns.rdtypes.ANY.ISDN.ISDN: []
  dns.rdtypes.ANY.L32.L32: []
  dns.rdtypes.ANY.L64.L64: []
  dns.rdtypes.ANY.LOC.LOC: []
  dns.rdtypes.ANY.LP.LP: []
  dns.rdtypes.ANY.MX.MX: []
  dns.rdtypes.ANY.NID.NID: []
  dns.rdtypes.ANY.NINFO.NINFO: []
  dns.rdtypes.ANY.NS.NS: []
  dns.rdtypes.ANY.NSEC.Bitmap: []
  dns.rdtypes.ANY.NSEC.NSEC: []
  dns.rdtypes.ANY.NSEC3.Bitmap: []
  dns.rdtypes.ANY.NSEC3.NSEC3: []
  dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM: []
  dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY: []
  dns.rdtypes.ANY.OPT.OPT: []
  dns.rdtypes.ANY.PTR.PTR: []
  dns.rdtypes.ANY.RESINFO.RESINFO: []
  dns.rdtypes.ANY.RP.RP: []
  dns.rdtypes.ANY.RRSIG.BadSigTime: []
  dns.rdtypes.ANY.RRSIG.RRSIG: []
  dns.rdtypes.ANY.RT.RT: []
  dns.rdtypes.ANY.SMIMEA.SMIMEA: []
  dns.rdtypes.ANY.SOA.SOA: []
  dns.rdtypes.ANY.SPF.SPF: []
  dns.rdtypes.ANY.SSHFP.SSHFP: []
  dns.rdtypes.ANY.TKEY.TKEY: []
  dns.rdtypes.ANY.TLSA.TLSA: []
  dns.rdtypes.ANY.TSIG.TSIG: []
  dns.rdtypes.ANY.TXT.TXT: []
  dns.rdtypes.ANY.URI.URI: []
  dns.rdtypes.ANY.WALLET.WALLET: []
  dns.rdtypes.ANY.X25.X25: []
  dns.rdtypes.ANY.ZONEMD.ZONEMD: []
  dns.rdtypes.CH.A.A: []
  dns.rdtypes.IN.A.A: []
  dns.rdtypes.IN.AAAA.AAAA: []
  dns.rdtypes.IN.APL.APL: []
  dns.rdtypes.IN.APL.APLItem: []
  dns.rdtypes.IN.DHCID.DHCID: []
  dns.rdtypes.IN.HTTPS.HTTPS: []
  dns.rdtypes.IN.IPSECKEY.Gateway: []
  dns.rdtypes.IN.IPSECKEY.IPSECKEY: []
  dns.rdtypes.IN.KX.KX: []
  dns.rdtypes.IN.NAPTR.NAPTR: []
  dns.rdtypes.IN.NSAP.NSAP: []
  dns.rdtypes.IN.NSAP_PTR.NSAP_PTR: []
  dns.rdtypes.IN.PX.PX: []
  dns.rdtypes.IN.SRV.SRV: []
  dns.rdtypes.IN.SVCB.SVCB: []
  dns.rdtypes.IN.WKS.WKS: []
  dns.rdtypes.dnskeybase.DNSKEYBase: []
  dns.rdtypes.dnskeybase.Flag: []
  dns.rdtypes.dsbase.DSBase: []
  dns.rdtypes.euibase.EUIBase: []
  dns.rdtypes.mxbase.MXBase: []
  dns.rdtypes.mxbase.UncompressedDowncasingMX:
  - MXBase
  dns.rdtypes.mxbase.UncompressedMX:
  - MXBase
  dns.rdtypes.nsbase.NSBase: []
  dns.rdtypes.nsbase.UncompressedNS:
  - NSBase
  dns.rdtypes.svcbbase.ALPNParam:
  - Param
  dns.rdtypes.svcbbase.ECHParam:
  - Param
  dns.rdtypes.svcbbase.Emptiness: []
  dns.rdtypes.svcbbase.GenericParam:
  - Param
  dns.rdtypes.svcbbase.IPv4HintParam:
  - Param
  dns.rdtypes.svcbbase.IPv6HintParam:
  - Param
  dns.rdtypes.svcbbase.MandatoryParam:
  - Param
  dns.rdtypes.svcbbase.NoDefaultALPNParam:
  - Param
  dns.rdtypes.svcbbase.OHTTPParam:
  - Param
  dns.rdtypes.svcbbase.Param: []
  dns.rdtypes.svcbbase.ParamKey: []
  dns.rdtypes.svcbbase.PortParam:
  - Param
  dns.rdtypes.svcbbase.SVCBBase: []
  dns.rdtypes.svcbbase.UnknownParamKey: []
  dns.rdtypes.tlsabase.TLSABase: []
  dns.rdtypes.txtbase.TXTBase: []
  dns.rdtypes.util.Bitmap: []
  dns.rdtypes.util.Gateway: []
  dns.renderer.Renderer: []
  dns.resolver.Answer: []
  dns.resolver.Answers:
  - dict
  dns.resolver.BaseResolver: []
  dns.resolver.Cache:
  - CacheBase
  dns.resolver.CacheBase: []
  dns.resolver.CacheStatistics: []
  dns.resolver.EmptyHostAnswers: []
  dns.resolver.HostAnswers:
  - Answers
  dns.resolver.LRUCache:
  - CacheBase
  dns.resolver.LRUCacheNode: []
  dns.resolver.LifetimeTimeout: []
  dns.resolver.NXDOMAIN: []
  dns.resolver.NoAnswer: []
  dns.resolver.NoMetaqueries: []
  dns.resolver.NoNameservers: []
  dns.resolver.NoResolverConfiguration: []
  dns.resolver.NoRootSOA: []
  dns.resolver.NotAbsolute: []
  dns.resolver.Resolver:
  - BaseResolver
  dns.resolver.YXDOMAIN: []
  dns.resolver._Resolution: []
  dns.rrset.RRset: []
  dns.serial.Serial: []
  dns.set.Set: []
  dns.tokenizer.Token: []
  dns.tokenizer.Tokenizer: []
  dns.tokenizer.UngetBufferFull: []
  dns.transaction.AlreadyEnded: []
  dns.transaction.DeleteNotExact: []
  dns.transaction.ReadOnly: []
  dns.transaction.Transaction: []
  dns.transaction.TransactionManager: []
  dns.tsig.BadAlgorithm: []
  dns.tsig.BadKey: []
  dns.tsig.BadSignature: []
  dns.tsig.BadTime: []
  dns.tsig.GSSTSig: []
  dns.tsig.GSSTSigAdapter: []
  dns.tsig.HMACTSig: []
  dns.tsig.Key: []
  dns.tsig.PeerBadKey:
  - PeerError
  dns.tsig.PeerBadSignature:
  - PeerError
  dns.tsig.PeerBadTime:
  - PeerError
  dns.tsig.PeerBadTruncation:
  - PeerError
  dns.tsig.PeerError: []
  dns.ttl.BadTTL: []
  dns.update.UpdateMessage: []
  dns.update.UpdateSection: []
  dns.versioned.UseTransaction: []
  dns.versioned.Zone: []
  dns.win32util.DnsInfo: []
  dns.win32util._RegistryGetter: []
  dns.win32util._WMIGetter: []
  dns.wire.Parser: []
  dns.xfr.Inbound: []
  dns.xfr.SerialWentBackwards: []
  dns.xfr.TransferError: []
  dns.xfr.UseTCP: []
  dns.zone.BadZone: []
  dns.zone.DigestVerificationFailure: []
  dns.zone.ImmutableVersion:
  - Version
  dns.zone.ImmutableVersionedNode:
  - VersionedNode
  dns.zone.NoDigest: []
  dns.zone.NoNS:
  - BadZone
  dns.zone.NoSOA:
  - BadZone
  dns.zone.Transaction: []
  dns.zone.UnknownOrigin:
  - BadZone
  dns.zone.UnsupportedDigestHashAlgorithm: []
  dns.zone.UnsupportedDigestScheme: []
  dns.zone.Version: []
  dns.zone.VersionedNode: []
  dns.zone.WritableVersion:
  - Version
  dns.zone.Zone: []
  dns.zonefile.CNAMEAndOtherData: []
  dns.zonefile.RRSetsReaderManager: []
  dns.zonefile.RRsetsReaderTransaction: []
  dns.zonefile.Reader: []
  dns.zonefile.UnknownOrigin: []
  dns.zonetypes.DigestHashAlgorithm: []
  dns.zonetypes.DigestScheme: []
ep:
  func_name: TestOneInput
  module: '...fuzz_token'
