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.wirebase.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.wire.Parser
- 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.rdtypes.ANY.OPT.OPT
- dns.rcode.Rcode
- dns.rcode.UnknownRcode
- dns.rdtypes.ANY.TSIG.TSIG
- dns.set.Set
- dns.rdataset.DifferingCovers
- dns.rdataset.IncompatibleTypes
- dns.rdataset.Rdataset
- dns.rdataset.ImmutableRdataset
- dns.rrset.RRset
- 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.SOA.SOA
- 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.xfr.TransferError
- dns.xfr.SerialWentBackwards
- dns.xfr.UseTCP
- dns.xfr.Inbound
- dns._no_ssl.TLSVersion
- dns._no_ssl.WantReadException
- dns._no_ssl.WantWriteException
- dns._no_ssl.SSLWantReadError
- dns._no_ssl.SSLWantWriteError
- dns._no_ssl.SSLContext
- dns._no_ssl.SSLSocket
- dns.nameserver.Nameserver
- dns.nameserver.AddressAndPortNameserver
- dns.nameserver.Do53Nameserver
- dns.nameserver.DoHNameserver
- dns.nameserver.DoTNameserver
- dns.nameserver.DoQNameserver
- 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._ddr._SVCBInfo
- dns.rdtypes.nsbase.NSBase
- dns.rdtypes.nsbase.UncompressedNS
- dns.rdtypes.ANY.PTR.PTR
- dns.win32util.ConfigMethod
- dns.win32util.DnsInfo
- dns.win32util._WMIGetter
- dns.win32util._RegistryGetter
- dns.win32util._Win32Getter
- dns.win32util._Win32Getter.get.SOCKADDRV4
- dns.win32util._Win32Getter.get.SOCKADDRV6
- dns.win32util._Win32Getter.get.SOCKET_ADDRESS
- dns.win32util._Win32Getter.get.IP_ADAPTER_DNS_SERVER_ADDRESS
- dns.win32util._Win32Getter.get.IF_LUID
- dns.win32util._Win32Getter.get.NET_IF_NETWORK_GUID
- dns.win32util._Win32Getter.get.IP_ADAPTER_PREFIX_XP
- dns.win32util._Win32Getter.get.IP_ADAPTER_GATEWAY_ADDRESS_LH
- dns.win32util._Win32Getter.get.IP_ADAPTER_DNS_SUFFIX
- dns.win32util._Win32Getter.get.IP_ADAPTER_UNICAST_ADDRESS_LH
- dns.win32util._Win32Getter.get.IP_ADAPTER_MULTICAST_ADDRESS_XP
- dns.win32util._Win32Getter.get.IP_ADAPTER_ANYCAST_ADDRESS_XP
- dns.win32util._Win32Getter.get.IP_ADAPTER_DNS_SERVER_ADDRESS_XP
- dns.win32util._Win32Getter.get.IP_ADAPTER_ADDRESSES
- 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.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.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.versioned.UseTransaction
- dns.versioned.Zone
- dns.btree.Element
- dns.btree._Creator
- dns.btree._Node
- dns.btree.Cursor
- dns.btree.Immutable
- dns.btree.BTree
- dns.btree.KV
- dns.btree.BTreeDict
- dns.btree.Member
- dns.btree.BTreeSet
- 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.rrsigbase.BadSigTime
- dns.rdtypes.rrsigbase.RRSIGBase
- 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.btreezone.NodeFlags
- dns.btreezone.Node
- dns.btreezone.ImmutableNode
- dns.btreezone.Delegations
- dns.btreezone.WritableVersion
- dns.btreezone.Bounds
- dns.btreezone.ImmutableVersion
- dns.btreezone.Zone
- dns.rdtypes.mxbase.MXBase
- dns.rdtypes.mxbase.UncompressedMX
- dns.rdtypes.mxbase.UncompressedDowncasingMX
- dns.rdtypes.euibase.EUIBase
- dns.rdtypes.txtbase.TXTBase
- dns.rdtypes.tlsabase.TLSABase
- 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.SMIMEA.SMIMEA
- 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.SIG.SIG
- dns.rdtypes.ANY.KEY.Protocol
- dns.rdtypes.ANY.KEY.LegacyFlag
- dns.rdtypes.ANY.KEY.KEY
- 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.Setup
    - atheris.Fuzz
    - atheris.instrument_all
    - '...fuzz_token.main'
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: '...fuzz_token.TestOneInput'
    functionSourceFile: '...fuzz_token'
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - fdp.ConsumeUnicodeNoSurrogates
    - dns.tokenizer.Tokenizer
    - atheris.FuzzedDataProvider
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 207
    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.Setup
    - atheris.Fuzz
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/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
    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: 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 0x7fd43849fe80>
    - <ast.Constant object at 0x7fd43849f400>
    - <ast.Constant object at 0x7fd43849fee0>
    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: 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: 78
    functionName: dns.tokenizer.Token.is_quoted_string
    functionSourceFile: dns.tokenizer
    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: 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: 471
    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:
    - <builtin>.chr
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - c3.isdigit
    - c2.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: 544
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 185
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 297
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 188
    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:
    - c.encode
    - <builtin>.bytes
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - c3.isdigit
    - c2.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: 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 0x7fd43822c520>
    - <ast.Constant object at 0x7fd43822c940>
    - <ast.Constant object at 0x7fd43822c880>
    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:
    - io.StringIO
    - f.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: 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._get_char
    - dns.tokenizer.Tokenizer._unget_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 0x7fd437da5a60>
    - <ast.Constant object at 0x7fd437da5ee0>
    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.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Token.is_whitespace
    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.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_eof
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.get
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fd437fd2c70>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 487
    functionName: dns.tokenizer.Tokenizer.get_int
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - token.value.isdigit
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Tokenizer.as_int
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Token.is_identifier
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.len
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - dns.tokenizer.Tokenizer.get
    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 0x7fd4380a9f10>
    argNames:
    - self
    - token
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 624
    functionName: dns.tokenizer.Tokenizer.as_int
    functionSourceFile: dns.tokenizer
    functionUses: 9
    functionsReached:
    - token.value.isdigit
    - dns.tokenizer.Token.is_identifier
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 496
    functionName: dns.tokenizer.Tokenizer.get_uint8
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - token.value.isdigit
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Tokenizer.as_int
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Tokenizer.as_uint8
    - dns.tokenizer.Token.is_identifier
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.len
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - dns.tokenizer.Tokenizer.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 638
    functionName: dns.tokenizer.Tokenizer.as_uint8
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - token.value.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.as_int
    - <builtin>.int
    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 0x7fd437fd25e0>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 507
    functionName: dns.tokenizer.Tokenizer.get_uint16
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - token.value.isdigit
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Tokenizer.as_int
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Token.is_identifier
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.tokenizer.Tokenizer.as_uint16
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.len
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - dns.tokenizer.Tokenizer.get
    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 0x7fd437e57670>
    argNames:
    - self
    - token
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 651
    functionName: dns.tokenizer.Tokenizer.as_uint16
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - token.value.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.as_int
    - <builtin>.int
    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 0x7fd438741c70>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 518
    functionName: dns.tokenizer.Tokenizer.get_uint32
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - token.value.isdigit
    - dns.tokenizer.Tokenizer.as_uint32
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Tokenizer.as_int
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Token.is_identifier
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.len
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - dns.tokenizer.Tokenizer.get
    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 0x7fd437e57250>
    argNames:
    - self
    - token
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 671
    functionName: dns.tokenizer.Tokenizer.as_uint32
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - token.value.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.as_int
    - <builtin>.int
    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 0x7fd438741ac0>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 529
    functionName: dns.tokenizer.Tokenizer.get_uint48
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c2.isdigit
    - token.value.isdigit
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Tokenizer.as_int
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Token.is_identifier
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.len
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.as_uint48
    - dns.tokenizer.Tokenizer.get
    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 0x7fd438776700>
    argNames:
    - self
    - token
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 686
    functionName: dns.tokenizer.Tokenizer.as_uint48
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - token.value.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.as_int
    - <builtin>.int
    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 0x7fd438741790>
    argNames:
    - self
    - max_length
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 540
    functionName: dns.tokenizer.Tokenizer.get_string
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Token.unescape
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.tokenizer.Tokenizer.as_string
    - dns.tokenizer.Token.is_quoted_string
    - <builtin>.len
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    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 0x7fd438053460>
    argNames:
    - self
    - token
    - max_length
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 701
    functionName: dns.tokenizer.Tokenizer.as_string
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Token.is_quoted_string
    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: 552
    functionName: dns.tokenizer.Tokenizer.get_identifier
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - dns.tokenizer.Tokenizer.as_identifier
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Token.unescape
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.len
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - dns.tokenizer.Tokenizer.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 717
    functionName: dns.tokenizer.Tokenizer.as_identifier
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Token.is_identifier
    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 0x7fd43886cc10>
    argNames:
    - self
    - max_tokens
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 562
    functionName: dns.tokenizer.Tokenizer.get_remaining
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Tokenizer._unget_char
    - tokens.append
    - dns.tokenizer.Tokenizer.unget
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Token.__init__
    - <builtin>.len
    - dns.tokenizer.Tokenizer.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: 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 0x7fd438810790>
    argNames:
    - self
    - allow_empty
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 581
    functionName: dns.tokenizer.Tokenizer.concatenate_remaining_identifiers
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - c2.isdigit
    - dns.tokenizer.Tokenizer.unget
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Token.unescape
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Token.__init__
    - <builtin>.len
    - dns.tokenizer.Tokenizer.get
    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 0x7fd4380a9d30>
    - <ast.Constant object at 0x7fd4380a9c70>
    - <ast.Constant object at 0x7fd4380a93d0>
    argNames:
    - self
    - token
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 606
    functionName: dns.tokenizer.Tokenizer.as_name
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - name.choose_relativity
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.tokenizer.Token.is_identifier
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 5
    IfCount: 16
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7fd437f3f730>
    - <ast.Constant object at 0x7fd437f3fac0>
    argNames:
    - text
    - origin
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 981
    functionName: dns.name.from_text
    functionSourceFile: <builtin>
    functionUses: 161
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.value.isdigit
    functionSourceFile: <builtin>
    functionUses: 10
    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 0x7fd4382a45e0>
    - <ast.Constant object at 0x7fd4382a4880>
    - <ast.Constant object at 0x7fd4382a4430>
    argNames:
    - self
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 729
    functionName: dns.tokenizer.Tokenizer.get_name
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - dns.tokenizer.Token.is_comment
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - name.choose_relativity
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.name.from_unicode
    - <builtin>.len
    - dns.tokenizer.Tokenizer.get
    - dns.name.IDNA2003Codec.encode
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Token.is_whitespace
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - dns.tokenizer.Tokenizer._get_char
    - encodings.idna.ToASCII
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.as_name
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 745
    functionName: dns.tokenizer.Tokenizer.get_eol_as_token
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.get
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 759
    functionName: dns.tokenizer.Tokenizer.get_eol
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer.get_eol_as_token
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.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: 3
    functionLinenumber: 762
    functionName: dns.tokenizer.Tokenizer.get_ttl
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - c3.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.chr
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Token.unescape
    - <builtin>.int
    - dns.tokenizer.Token.is_comment
    - c.isdigit
    - dns.ttl.from_text
    - text.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.len
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - dns.tokenizer.Tokenizer.get
    - c.lower
    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: 34
    functionName: dns.ttl.from_text
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached:
    - <builtin>.int
    - c.isdigit
    - text.isdigit
    - <builtin>.len
    - 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.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: 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: 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: 52
    functionName: dns.exception.DNSException.__init__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    - <builtin>.dict
    - kwargs.keys
    - <builtin>.set
    - dns.exception.DNSException._check_params
    - <builtin>.super
    - dns.exception.DNSException._check_kwargs
    - <builtin>.str
    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: 68
    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: 77
    functionName: dns.exception.DNSException._check_kwargs
    functionSourceFile: dns.exception
    functionUses: 1
    functionsReached:
    - <builtin>.set
    - kwargs.keys
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 400
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 84
    functionName: dns.exception.DNSException._fmt_kwargs
    functionSourceFile: dns.exception
    functionUses: 1
    functionsReached:
    - <builtin>.map
    - <builtin>.list
    - <builtin>.isinstance
    - kwargs.items
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 25
    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: 102
    functionName: dns.exception.DNSException.__str__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.map
    - dns.exception.DNSException._fmt_kwargs
    - <builtin>.list
    - <builtin>.isinstance
    - <builtin>.super
    - kwargs.items
    - <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
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 136
    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: 157
    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: 160
    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: 163
    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.name._validate_labels
    - _cache.get
    - <builtin>.ord
    - dns.name.IDNA2003Codec.__init__
    - label.encode
    - dns.name.Name.__init__
    - int_parts.append
    - importlib.metadata.version
    - <builtin>.isinstance
    - dns._features._version_check
    - <builtin>.int
    - <builtin>.len
    - requirement.split
    - version.split
    - itertools.takewhile
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.name.IDNA2008Codec.__init__
    - dns._features._tuple_from_text
    - <builtin>.super
    - dns._features.have
    - _requirements.get
    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: 49
    functionName: dns._features.have
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached:
    - int_parts.append
    - requirement.split
    - importlib.metadata.version
    - version.split
    - _cache.get
    - <builtin>.int
    - dns._features._version_check
    - itertools.takewhile
    - dns._features._tuple_from_text
    - _requirements.get
    - <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>.ord
    - <builtin>.isinstance
    - <builtin>.chr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.ord
    functionSourceFile: <builtin>
    functionUses: 230
    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:
    - <builtin>.chr
    - dns.name.IDNACodec.is_idna
    - <builtin>.isinstance
    - label.lower
    - <builtin>.ord
    - dns.name._escapify
    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 0x7fd438130160>
    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: 163
    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: 164
    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:
    - encodings.idna.ToUnicode
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.ord
    - <builtin>.super
    - dns.name._escapify
    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 0x7fd4380791f0>
    - <ast.Constant object at 0x7fd4380796a0>
    - <ast.Constant object at 0x7fd438079070>
    - <ast.Constant object at 0x7fd438079760>
    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:
    - idna.alabel
    - <builtin>.ord
    - <builtin>.len
    - dns.name.is_all_ascii
    - label.encode
    - idna.uts46_remap
    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: 974
    functionName: dns.name.is_all_ascii
    functionSourceFile: dns.name
    functionUses: 163
    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: 191
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - idna.ulabel
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.ord
    - <builtin>.super
    - dns.name._escapify
    - idna.uts46_remap
    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: 190
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - label
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 351
    functionName: dns.name._maybe_convert_to_binary
    functionSourceFile: dns.name
    functionUses: 189
    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: 374
    functionName: dns.name.Name.__init__
    functionSourceFile: dns.name
    functionUses: 188
    functionsReached:
    - <builtin>.isinstance
    - dns.name._validate_labels
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name._maybe_convert_to_binary
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 236
    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: 381
    functionName: dns.name.Name.__copy__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name._validate_labels
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    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: 384
    functionName: dns.name.Name.__deepcopy__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - copy.deepcopy
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.__init__
    - <builtin>.len
    - label.encode
    - <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: 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: 387
    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: 391
    functionName: dns.name.Name.__setstate__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.super
    - 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: 395
    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: 403
    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: 411
    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: 423
    functionName: dns.name.Name.fullcompare
    functionSourceFile: dns.name
    functionUses: 14
    functionsReached:
    - <builtin>.len
    - dns.name.Name.is_absolute
    - other.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: 499
    functionName: dns.name.Name.is_subdomain
    functionSourceFile: dns.name
    functionUses: 6
    functionsReached:
    - <builtin>.len
    - dns.name.Name.is_absolute
    - other.is_absolute
    - dns.name.Name.fullcompare
    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: 513
    functionName: dns.name.Name.is_superdomain
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.name.Name.is_absolute
    - other.is_absolute
    - dns.name.Name.fullcompare
    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: 527
    functionName: dns.name.Name.canonicalize
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - x.lower
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - <builtin>.len
    - label.encode
    - dns.name.Name.__init__
    - <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: 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: 534
    functionName: dns.name.Name.__eq__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.fullcompare
    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: 540
    functionName: dns.name.Name.__ne__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.fullcompare
    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: 546
    functionName: dns.name.Name.__lt__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.fullcompare
    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: 552
    functionName: dns.name.Name.__le__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.fullcompare
    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: 558
    functionName: dns.name.Name.__ge__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.fullcompare
    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: 564
    functionName: dns.name.Name.__gt__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.fullcompare
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 570
    functionName: dns.name.Name.__repr__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.__str__
    - <builtin>.map
    - dns.name.Name.to_text
    - dns.name.Name.is_absolute
    - <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: 3
    functionLinenumber: 573
    functionName: dns.name.Name.__str__
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - dns.name.Name.to_text
    - <builtin>.len
    - dns.name.Name.is_absolute
    - <builtin>.map
    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 0x7fd438c49880>
    argNames:
    - self
    - omit_final_dot
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 576
    functionName: dns.name.Name.to_text
    functionSourceFile: dns.name
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - dns.name.Name.is_absolute
    - <builtin>.map
    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 0x7fd438d64520>
    - <ast.Constant object at 0x7fd438d64ee0>
    argNames:
    - self
    - omit_final_dot
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 597
    functionName: dns.name.Name.to_unicode
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - encodings.idna.ToUnicode
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.ord
    - <builtin>.super
    - dns.name.Name.is_absolute
    - dns.name._escapify
    - <builtin>.len
    - dns.name.IDNA2003Codec.decode
    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 0x7fd438158a60>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 629
    functionName: dns.name.Name.to_digestable
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - dns.name.Name.to_wire
    - compress.get
    - label.encode
    - dns.name.Name.__init__
    - file.tell
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - <builtin>.len
    - origin.is_absolute
    - <builtin>.bytearray
    - file.write
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - out.append
    - <builtin>.bytes
    - label.lower
    - struct.pack
    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 0x7fd437f0b700>
    - <ast.Constant object at 0x7fd437f0bfa0>
    - <ast.Constant object at 0x7fd437f0be80>
    - <ast.Constant object at 0x7fd437f0b910>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 650
    functionName: dns.name.Name.to_wire
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - compress.get
    - label.encode
    - dns.name.Name.__init__
    - file.tell
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - <builtin>.len
    - origin.is_absolute
    - <builtin>.bytearray
    - file.write
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - out.append
    - <builtin>.bytes
    - label.lower
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 173
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 289
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 737
    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: 745
    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: 748
    functionName: dns.name.Name.__add__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.concatenate
    - <builtin>.list
    - labels.extend
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_absolute
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__init__
    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: 774
    functionName: dns.name.Name.concatenate
    functionSourceFile: dns.name
    functionUses: 7
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_absolute
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__init__
    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: 751
    functionName: dns.name.Name.__sub__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.relativize
    - dns.name.Name.is_subdomain
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.fullcompare
    - dns.name.Name.__init__
    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: 789
    functionName: dns.name.Name.relativize
    functionSourceFile: dns.name
    functionUses: 2
    functionsReached:
    - dns.name.Name.is_subdomain
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.fullcompare
    - dns.name.Name.__init__
    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: 754
    functionName: dns.name.Name.split
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name._validate_labels
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    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: 805
    functionName: dns.name.Name.derelativize
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - dns.name.Name.concatenate
    - <builtin>.list
    - labels.extend
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_absolute
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__init__
    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 0x7fd437da67f0>
    - <ast.Constant object at 0x7fd437da6310>
    argNames:
    - self
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 821
    functionName: dns.name.Name.choose_relativity
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.concatenate
    - <builtin>.list
    - dns.name.Name.relativize
    - labels.extend
    - dns.name.Name.derelativize
    - dns.name.Name.is_subdomain
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_absolute
    - other.is_absolute
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.fullcompare
    - dns.name.Name.__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: 842
    functionName: dns.name.Name.parent
    functionSourceFile: dns.name
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    - dns.name._validate_labels
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__init__
    - dns.name._maybe_convert_to_binary
    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 0x7fd437c88fd0>
    argNames:
    - self
    - origin
    - prefix_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 857
    functionName: dns.name.Name.predecessor
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.reversed
    - new_labels.append
    - dns.name._validate_labels
    - other.is_absolute
    - label.encode
    - dns.name.Name.__init__
    - dns.name.Name.parent
    - dns.name.Name.is_subdomain
    - result_name.relativize
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - <builtin>.len
    - dns.name._pad_to_max_name
    - origin.is_absolute
    - dns.name._handle_relativity_and_call
    - dns.name.Name.concatenate
    - dns.name.Name.derelativize
    - <builtin>.min
    - <builtin>.range
    - <builtin>.bytearray
    - new_labels.extend
    - functools.reduce
    - dns.name._absolute_predecessor
    - dns.name._absolute_successor
    - dns.name.Name.fullcompare
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.name._wire_length
    - dns.name._pad_to_max_label
    - <builtin>.bytes
    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: 1258
    functionName: dns.name._handle_relativity_and_call
    functionSourceFile: dns.name
    functionUses: 2
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.reversed
    - new_labels.append
    - dns.name._validate_labels
    - other.is_absolute
    - label.encode
    - dns.name.Name.__init__
    - dns.name.Name.parent
    - dns.name.Name.is_subdomain
    - result_name.relativize
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - <builtin>.len
    - dns.name._pad_to_max_name
    - origin.is_absolute
    - dns.name.Name.concatenate
    - dns.name.Name.derelativize
    - <builtin>.min
    - <builtin>.range
    - <builtin>.bytearray
    - new_labels.extend
    - functools.reduce
    - dns.name._absolute_predecessor
    - dns.name._absolute_successor
    - dns.name.Name.fullcompare
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.name._wire_length
    - dns.name._pad_to_max_label
    - <builtin>.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 0x7fd437c88cd0>
    argNames:
    - self
    - origin
    - prefix_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 875
    functionName: dns.name.Name.successor
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.reversed
    - new_labels.append
    - dns.name._validate_labels
    - other.is_absolute
    - label.encode
    - dns.name.Name.__init__
    - dns.name.Name.parent
    - dns.name.Name.is_subdomain
    - result_name.relativize
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - <builtin>.len
    - dns.name._pad_to_max_name
    - origin.is_absolute
    - dns.name._handle_relativity_and_call
    - dns.name.Name.concatenate
    - dns.name.Name.derelativize
    - <builtin>.min
    - <builtin>.range
    - <builtin>.bytearray
    - new_labels.extend
    - functools.reduce
    - dns.name._absolute_predecessor
    - dns.name._absolute_successor
    - dns.name.Name.fullcompare
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.name._wire_length
    - dns.name._pad_to_max_label
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 5
    IfCount: 15
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7fd437dec070>
    - <ast.Constant object at 0x7fd437dece20>
    argNames:
    - text
    - origin
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 901
    functionName: dns.name.from_unicode
    functionSourceFile: dns.name
    functionUses: 162
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.name.IDNA2003Codec.encode
    - <builtin>.isinstance
    - dns.name._validate_labels
    - <builtin>.int
    - dns.name._maybe_convert_to_binary
    - c.isdigit
    - labels.append
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__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: labels.append
    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: text.encode
    functionSourceFile: <builtin>
    functionUses: 221
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 162
    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: 1064
    functionName: dns.name.from_wire_parser
    functionSourceFile: dns.name
    functionUses: 8
    functionsReached:
    - parser.restore_furthest
    - parser.seek
    - parser.get_bytes
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - labels.append
    - parser.get_uint8
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__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: 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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - message
    - current
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1097
    functionName: dns.name.from_wire
    functionSourceFile: dns.name
    functionUses: 6
    functionsReached:
    - parser.restore_furthest
    - dns.wirebase.Parser
    - parser.seek
    - contextlib.contextmanager
    - parser.get_bytes
    - dns.name._validate_labels
    - <builtin>.isinstance
    - dns.name._maybe_convert_to_binary
    - labels.append
    - parser.get_uint8
    - <builtin>.tuple
    - <builtin>.len
    - dns.name.from_wire_parser
    - label.encode
    - dns.name.Name.__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: 1
    functionLinenumber: -1
    functionName: dns.wirebase.Parser
    functionSourceFile: <builtin>
    functionUses: 7
    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: 1132
    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: 1136
    functionName: dns.name._pad_to_max_name
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - <builtin>.list
    - <builtin>.reversed
    - dns.name._wire_length
    - new_labels.append
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - new_labels.extend
    - <builtin>.tuple
    - functools.reduce
    - <builtin>.len
    - label.encode
    - dns.name.Name.__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: 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: 1152
    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: 1163
    functionName: dns.name._absolute_predecessor
    functionSourceFile: dns.name
    functionUses: 3
    functionsReached:
    - <builtin>.list
    - <builtin>.reversed
    - new_labels.append
    - dns.name._validate_labels
    - label.encode
    - dns.name.Name.__init__
    - dns.name.Name.parent
    - <builtin>.isinstance
    - <builtin>.len
    - dns.name._pad_to_max_name
    - <builtin>.min
    - <builtin>.bytearray
    - new_labels.extend
    - functools.reduce
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.name._wire_length
    - dns.name._pad_to_max_label
    - <builtin>.bytes
    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: 1196
    functionName: dns.name._absolute_successor
    functionSourceFile: dns.name
    functionUses: 3
    functionsReached:
    - dns.name.Name.concatenate
    - dns.name.Name.parent
    - labels.extend
    - <builtin>.list
    - <builtin>.range
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.name._validate_labels
    - <builtin>.bytes
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_absolute
    - new_labels.extend
    - <builtin>.tuple
    - <builtin>.len
    - label.encode
    - dns.name.Name.__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>.range
    functionSourceFile: <builtin>
    functionUses: 172
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.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 0x7fd43871cdf0>
    - <ast.Name object at 0x7fd43871cbb0>
    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:
    - object.__setattr__
    - <builtin>.hash
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <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:
    - <builtin>.dict
    - <builtin>.hash
    - <builtin>.isinstance
    - dns.immutable.Dict.__init__
    - <builtin>.bytes
    - dns.immutable.constify
    - o.items
    - <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:
    - dns._immutable_ctx.immutable.ncls.__setstate__
    - _in__init__.reset
    - <builtin>.super
    - _in__init__.set
    - dns._immutable_ctx.immutable.ncls.__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: _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:
    - <builtin>.hasattr
    - dns._immutable_ctx._immutable_init
    - inspect.signature
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 21
    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:
    - <builtin>.hasattr
    - dns._immutable_ctx._immutable_init
    - inspect.signature
    linkageType: 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: 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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 26
    functionName: dns.enum.IntEnum._missing_
    functionSourceFile: dns.enum
    functionUses: 0
    functionsReached:
    - int.__new__
    - <builtin>.isinstance
    - dns.enum.IntEnum._extra_to_text
    - dns.enum.IntEnum._check_value
    - dns.enum.IntEnum._prefix
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._maximum
    - dns.enum.IntEnum._short_name
    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._maximum
    - dns.enum.IntEnum._short_name
    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:
    - <builtin>.isinstance
    - dns.enum.IntEnum._extra_from_text
    - text.upper
    - dns.enum.IntEnum._check_value
    - <builtin>.int
    - text.startswith
    - enum.IntEnum.__init__
    - dns.enum.IntEnum._prefix
    - <builtin>.len
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._maximum
    - 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:
    - <builtin>.isinstance
    - dns.enum.IntEnum._extra_to_text
    - dns.enum.IntEnum._check_value
    - enum.IntEnum.__init__
    - dns.enum.IntEnum._prefix
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._maximum
    - dns.enum.IntEnum._short_name
    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:
    - dns.enum.IntEnum.from_text
    - <builtin>.isinstance
    - dns.enum.IntEnum._extra_from_text
    - text.upper
    - dns.enum.IntEnum._check_value
    - <builtin>.int
    - text.startswith
    - enum.IntEnum.__init__
    - dns.enum.IntEnum._prefix
    - <builtin>.len
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._maximum
    - 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._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: 8
    functionName: dns._features._tuple_from_text
    functionSourceFile: dns._features
    functionUses: 10
    functionsReached:
    - int_parts.append
    - version.split
    - <builtin>.int
    - itertools.takewhile
    - <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: 22
    functionName: dns._features._version_check
    functionSourceFile: dns._features
    functionUses: 9
    functionsReached:
    - int_parts.append
    - requirement.split
    - importlib.metadata.version
    - version.split
    - <builtin>.int
    - itertools.takewhile
    - dns._features._tuple_from_text
    - <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: 76
    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: 0
    functionLinenumber: -1
    functionName: dns.wirebase
    functionSourceFile: dns.wirebase
    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 0x7fd437df3220>
    argNames:
    - self
    - wire
    - current
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 15
    functionName: dns.wirebase.Parser.__init__
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.wirebase.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: 64
    functionName: dns.wirebase.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: 30
    functionName: dns.wirebase.Parser.remaining
    functionSourceFile: dns.wirebase
    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: 33
    functionName: dns.wirebase.Parser.get_bytes
    functionSourceFile: dns.wirebase
    functionUses: 7
    functionsReached:
    - <builtin>.max
    - dns.wirebase.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: 46
    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 0x7fd437e98490>
    argNames:
    - self
    - length_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: dns.wirebase.Parser.get_counted_bytes
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wirebase.Parser.remaining
    - dns.wirebase.Parser.get_bytes
    - int.from_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: 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: 46
    functionName: dns.wirebase.Parser.get_remaining
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wirebase.Parser.remaining
    - dns.wirebase.Parser.get_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: 49
    functionName: dns.wirebase.Parser.get_uint8
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - dns.wirebase.Parser.get_bytes
    - dns.wirebase.Parser.remaining
    - struct.unpack
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 52
    functionName: dns.wirebase.Parser.get_uint16
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - dns.wirebase.Parser.get_bytes
    - dns.wirebase.Parser.remaining
    - struct.unpack
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.wirebase.Parser.get_uint32
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - dns.wirebase.Parser.get_bytes
    - dns.wirebase.Parser.remaining
    - struct.unpack
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 58
    functionName: dns.wirebase.Parser.get_uint48
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - dns.wirebase.Parser.remaining
    - dns.wirebase.Parser.get_bytes
    - int.from_bytes
    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: 61
    functionName: dns.wirebase.Parser.get_struct
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - dns.wirebase.Parser.remaining
    - <builtin>.max
    - struct.calcsize
    - dns.wirebase.Parser.get_bytes
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: struct.calcsize
    functionSourceFile: struct
    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: contextlib.contextmanager
    functionSourceFile: ''
    functionUses: 11
    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: 72
    functionName: dns.wirebase.Parser.restrict_to
    functionSourceFile: dns.wirebase
    functionUses: 0
    functionsReached:
    - dns.wirebase.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: 89
    functionName: dns.wirebase.Parser.restore_furthest
    functionSourceFile: dns.wirebase
    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.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: 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: c.lower
    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:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 84
    functionName: dns.ttl.make
    functionSourceFile: dns.ttl
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.int
    - c.isdigit
    - dns.ttl.from_text
    - text.isdigit
    - <builtin>.len
    - 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.renderer
    functionSourceFile: dns.renderer
    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 0x7fd4387c2df0>
    - <ast.Name object at 0x7fd4387c29a0>
    - <ast.Constant object at 0x7fd4387c2e80>
    argNames:
    - flags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 45
    functionName: dns.renderer._make_opt
    functionSourceFile: dns.renderer
    functionUses: 18
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.from_unicode
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    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: <builtin>
    functionUses: 58
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 50
    functionName: dns.renderer._make_tsig
    functionSourceFile: dns.renderer
    functionUses: 4
    functionsReached:
    - dns.rdtypes.ANY.TSIG.TSIG
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 5
    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 0x7fd437e85be0>
    - <ast.Constant object at 0x7fd437e85fa0>
    - <ast.Constant object at 0x7fd437e858b0>
    - <ast.Constant object at 0x7fd437e85af0>
    argNames:
    - self
    - id
    - flags
    - max_size
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 110
    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: 129
    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: 144
    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: 160
    functionName: dns.renderer.Renderer._track_size
    functionSourceFile: dns.renderer
    functionUses: 8
    functionsReached:
    - keys_to_delete.append
    - dns.renderer.Renderer._rollback
    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: 168
    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 0x7fd437b597c0>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 176
    functionName: dns.renderer.Renderer.add_question
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - qname.to_wire
    - dns.renderer.Renderer._set_section
    - dns.renderer.Renderer._track_size
    - keys_to_delete.append
    - dns.renderer.Renderer._rollback
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 185
    functionName: dns.renderer.Renderer.add_rrset
    functionSourceFile: dns.renderer
    functionUses: 2
    functionsReached:
    - dns.renderer.Renderer._set_section
    - keys_to_delete.append
    - dns.renderer.Renderer._track_size
    - rrset.to_wire
    - dns.renderer.Renderer._rollback
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 197
    functionName: dns.renderer.Renderer.add_rdataset
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.renderer.Renderer._set_section
    - dns.renderer.Renderer._track_size
    - keys_to_delete.append
    - dns.renderer.Renderer._rollback
    - 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 0x7fd437da6070>
    - <ast.Constant object at 0x7fd437da6dc0>
    - <ast.Constant object at 0x7fd437da6f70>
    argNames:
    - self
    - opt
    - pad
    - opt_size
    - tsig_size
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 210
    functionName: dns.renderer.Renderer.add_opt
    functionSourceFile: dns.renderer
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.renderer._make_opt
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - keys_to_delete.append
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - options.append
    - dns.rdtypes.ANY.OPT.OPT
    - dns.renderer.Renderer._rollback
    - dns.edns.GenericOption
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.renderer.Renderer.add_rrset
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.renderer.Renderer._set_section
    - dns.renderer.Renderer._track_size
    - <builtin>.chr
    - encodings.idna.ToASCII
    - rrset.to_wire
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fd4386b6fa0>
    argNames:
    - self
    - edns
    - ednsflags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 233
    functionName: dns.renderer.Renderer.add_edns
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.renderer._make_opt
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - keys_to_delete.append
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - options.append
    - dns.rdtypes.ANY.OPT.OPT
    - dns.renderer.Renderer._rollback
    - dns.edns.GenericOption
    - dns.rrset.from_rdata_list
    - dns.renderer.Renderer.add_opt
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.renderer.Renderer.add_rrset
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.renderer.Renderer._set_section
    - dns.renderer.Renderer._track_size
    - <builtin>.chr
    - encodings.idna.ToASCII
    - rrset.to_wire
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd438032b20>
    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: 242
    functionName: dns.renderer.Renderer.add_tsig
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.rdtypes.ANY.TSIG.TSIG
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - length.to_bytes
    - hmac.new
    - time.time
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - dns.tsig.get_context
    - dns.tsig.HMACTSig.__init__
    - output.tell
    - dns.tsig._maybe_start_digest
    - keys_to_delete.append
    - byte_.isdigit
    - dns.tsig._digest
    - dns.renderer._make_tsig
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.__init__
    - key.name.to_digestable
    - c.isdigit
    - dns.renderer.Renderer._rollback
    - dns._render_util.prefixed_length
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - dns.tsig.HMACTSig.update
    - dns.tsig.Key
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - dns.tsig.sign
    - r.add
    - dns.tsig.GSSTSig.update
    - output.write
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.renderer.Renderer._set_section
    - dns.renderer.Renderer._write_tsig
    - dns.tsig.GSSTSig.sign
    - dns.renderer.Renderer._track_size
    - dns.renderer.Renderer._temporarily_seek_to
    - <builtin>.chr
    - encodings.idna.ToASCII
    - rdata.replace
    - tsig.to_wire
    - output.seek
    - labels.append
    - <builtin>.super
    - keyname.to_wire
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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 0x7fd4380f8d30>
    - <ast.Constant object at 0x7fd4380f8370>
    - <ast.Constant object at 0x7fd4380f8670>
    - <ast.Constant object at 0x7fd4380f8c70>
    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: 262
    functionName: dns.tsig.sign
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.tsig.get_context
    - dns.tsig.HMACTSig.__init__
    - dns.tsig.GSSTSig.sign
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - rdata.replace
    - <builtin>.isinstance
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.__init__
    - key.name.to_digestable
    - dns.tsig.GSSTSig.update
    - hmac.new
    - dns.tsig.HMACTSig.update
    - <builtin>.len
    - struct.pack
    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: 302
    functionName: dns.renderer.Renderer._write_tsig
    functionSourceFile: dns.renderer
    functionUses: 2
    functionsReached:
    - dns.renderer.Renderer._set_section
    - dns.renderer.Renderer._track_size
    - output.tell
    - dns.renderer.Renderer._temporarily_seek_to
    - keys_to_delete.append
    - tsig.to_wire
    - output.seek
    - length.to_bytes
    - keyname.to_wire
    - dns.renderer.Renderer._rollback
    - output.write
    - dns._render_util.prefixed_length
    - struct.pack
    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 0x7fd4387ce5b0>
    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: 267
    functionName: dns.renderer.Renderer.add_multi_tsig
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.rdtypes.ANY.TSIG.TSIG
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - length.to_bytes
    - hmac.new
    - time.time
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - dns.tsig.get_context
    - dns.tsig.HMACTSig.__init__
    - output.tell
    - dns.tsig._maybe_start_digest
    - keys_to_delete.append
    - byte_.isdigit
    - dns.tsig._digest
    - dns.renderer._make_tsig
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.__init__
    - key.name.to_digestable
    - c.isdigit
    - dns.renderer.Renderer._rollback
    - dns._render_util.prefixed_length
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - dns.tsig.HMACTSig.update
    - dns.tsig.Key
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - dns.tsig.sign
    - r.add
    - dns.tsig.GSSTSig.update
    - output.write
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.renderer.Renderer._set_section
    - dns.renderer.Renderer._write_tsig
    - dns.tsig.GSSTSig.sign
    - dns.renderer.Renderer._track_size
    - dns.renderer.Renderer._temporarily_seek_to
    - <builtin>.chr
    - encodings.idna.ToASCII
    - rdata.replace
    - tsig.to_wire
    - output.seek
    - labels.append
    - <builtin>.super
    - keyname.to_wire
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 7
    functionName: dns._render_util.prefixed_length
    functionSourceFile: dns._render_util
    functionUses: 4
    functionsReached:
    - output.seek
    - length.to_bytes
    - output.tell
    - output.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: 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: 320
    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: 341
    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: 346
    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: 355
    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 0x7fd437b7ad90>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 78
    functionName: dns.edns.Option.to_wire
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 86
    functionName: dns.edns.Option.to_text
    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: 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.GenericOption.__init__
    - dns.edns.CookieOption.to_wire
    - dns.rdata.Rdata._as_bytes
    - dns.edns.ECSOption.to_wire
    - dns.edns.EDEOption.to_wire
    - <builtin>.isinstance
    - dns.edns.ReportChannelOption.to_wire
    - dns.edns.NSIDOption.to_wire
    - <builtin>.bytes
    - value.encode
    - <builtin>.super
    - file.write
    - <builtin>.len
    - dns.edns.GenericOption.to_wire
    - 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 0x7fd43889b100>
    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: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fd437ce5250>
    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:
    - <builtin>.len
    - 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 0x7fd4380f46d0>
    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:
    - struct.pack
    - 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 0x7fd43829ed30>
    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: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fd438852160>
    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:
    - struct.pack
    - file.write
    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 0x7fd43851a730>
    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: 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:
    - dns.rdata.Rdata._as_bytes
    - <builtin>.isinstance
    - <builtin>.bytes
    - value.encode
    - <builtin>.super
    - <builtin>.len
    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.CookieOption.to_wire
    - dns.edns.ECSOption.to_wire
    - other.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.ReportChannelOption.to_wire
    - dns.edns.NSIDOption.to_wire
    - file.write
    - <builtin>.len
    - dns.edns.GenericOption.to_wire
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.CookieOption.to_wire
    - dns.edns.Option._cmp
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - <builtin>.isinstance
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.ReportChannelOption.to_wire
    - file.write
    - <builtin>.len
    - dns.edns.GenericOption.to_wire
    - struct.pack
    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.CookieOption.to_wire
    - dns.edns.Option._cmp
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - <builtin>.isinstance
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.ReportChannelOption.to_wire
    - file.write
    - <builtin>.len
    - dns.edns.GenericOption.to_wire
    - 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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 138
    functionName: dns.edns.Option.__lt__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.CookieOption.to_wire
    - dns.edns.Option._cmp
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - <builtin>.isinstance
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.ReportChannelOption.to_wire
    - file.write
    - <builtin>.len
    - dns.edns.GenericOption.to_wire
    - 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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 143
    functionName: dns.edns.Option.__le__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.CookieOption.to_wire
    - dns.edns.Option._cmp
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - <builtin>.isinstance
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.ReportChannelOption.to_wire
    - file.write
    - <builtin>.len
    - dns.edns.GenericOption.to_wire
    - 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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 148
    functionName: dns.edns.Option.__ge__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.CookieOption.to_wire
    - dns.edns.Option._cmp
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - <builtin>.isinstance
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.ReportChannelOption.to_wire
    - file.write
    - <builtin>.len
    - dns.edns.GenericOption.to_wire
    - 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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 153
    functionName: dns.edns.Option.__gt__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.CookieOption.to_wire
    - dns.edns.Option._cmp
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - <builtin>.isinstance
    - dns.edns.NSIDOption.to_wire
    - dns.edns.EDEOption.to_wire
    - dns.edns.ReportChannelOption.to_wire
    - file.write
    - <builtin>.len
    - dns.edns.GenericOption.to_wire
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: 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.NSIDOption.to_text
    - dns.edns.EDEOption.to_text
    - desc.split
    - dns.edns.CookieOption.to_text
    - EDECode.to_text
    - binascii.hexlify
    - word.title
    - dns.edns.GenericOption.to_text
    - <builtin>.all
    - <builtin>.len
    - dns.edns.ECSOption.to_text
    - dns.edns.ReportChannelOption.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: 437
    functionName: dns.edns.NSIDOption.to_text
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - binascii.hexlify
    - <builtin>.all
    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:
    - EDECode.to_text
    - desc.split
    - word.title
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 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:
    - <builtin>.len
    - binascii.hexlify
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 495
    functionName: dns.edns.ReportChannelOption.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 0x7fd4380a9d90>
    - <ast.Constant object at 0x7fd4380a9130>
    - <ast.Constant object at 0x7fd4380a9fd0>
    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:
    - <builtin>.len
    - value.encode
    - <builtin>.isinstance
    - <builtin>.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: 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:
    - dns.edns.GenericOption.__init__
    - dns.rdata.Rdata._as_bytes
    - <builtin>.isinstance
    - <builtin>.bytes
    - value.encode
    - <builtin>.super
    - <builtin>.len
    - parser.get_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: 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 0x7fd43829e9d0>
    - <ast.Constant object at 0x7fd437d95880>
    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:
    - dns.ipv6.canonicalize
    - _colon_colon_start.match
    - binascii.hexlify
    - <builtin>.ord
    - canonical.append
    - dns.rdata.Rdata._as_ipv4_address
    - math.ceil
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - dns.inet.inet_pton
    - dns.rdata.Rdata._as_int
    - dns.ipv4.inet_ntoa
    - chunks.append
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - dns.ipv6.inet_ntoa
    - m.group
    - dns.ipv4.canonicalize
    - _v4_ending.match
    - <builtin>.super
    - dns.rdata.Rdata._as_ipv6_address
    - struct.pack
    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
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - m.group
    - _v4_ending.match
    - struct.pack
    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:
    - dns.ipv6.canonicalize
    - _colon_colon_start.match
    - binascii.hexlify
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - chunks.append
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - dns.ipv6.inet_ntoa
    - m.group
    - _v4_ending.match
    - struct.pack
    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 0x7fd4387762e0>
    - <ast.Constant object at 0x7fd438776d00>
    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:
    - dns.ipv4.inet_ntoa
    - dns.ipv4.inet_aton
    - dns.ipv4.canonicalize
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - <builtin>.ord
    - part.isdigit
    - btext.split
    - <builtin>.len
    - struct.pack
    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
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - m.group
    - _v4_ending.match
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - dns.ipv6.canonicalize
    - _colon_colon_start.match
    - binascii.hexlify
    - <builtin>.ord
    - canonical.append
    - dns.rdata.Rdata._as_ipv4_address
    - math.ceil
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - ecs_text.split
    - btext.split
    - <builtin>.len
    - btext.endswith
    - dns.inet.inet_pton
    - dns.edns.ECSOption.__init__
    - dns.rdata.Rdata._as_int
    - dns.ipv4.inet_ntoa
    - chunks.append
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - text.split
    - dns.ipv6.inet_ntoa
    - m.group
    - dns.ipv4.canonicalize
    - _v4_ending.match
    - <builtin>.super
    - dns.rdata.Rdata._as_ipv6_address
    - ecs_text.count
    - struct.pack
    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:
    - dns.ipv6.canonicalize
    - _colon_colon_start.match
    - binascii.hexlify
    - <builtin>.ord
    - canonical.append
    - dns.rdata.Rdata._as_ipv4_address
    - math.ceil
    - parser.get_struct
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - _colon_colon_end.match
    - binascii.unhexlify
    - parser.get_bytes
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - dns.inet.inet_pton
    - dns.edns.ECSOption.__init__
    - dns.rdata.Rdata._as_int
    - chunks.append
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - dns.ipv6.inet_ntoa
    - m.group
    - dns.ipv4.canonicalize
    - _v4_ending.match
    - <builtin>.super
    - dns.rdata.Rdata._as_ipv6_address
    - struct.pack
    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: 25
    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: 29
    functionName: dns.ipv6.inet_ntoa
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached:
    - chunks.append
    - dns.ipv4.inet_ntoa
    - _leading_zero.match
    - m.group
    - <builtin>.range
    - binascii.hexlify
    - <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:
    - 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 0x7fd43811d7f0>
    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:
    - EDECode.make
    - parser.get_uint16
    - <builtin>.isinstance
    - text.decode
    - dns.edns.EDEOption.__init__
    - <builtin>.super
    - parser.get_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: 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:
    - dns.edns.NSIDOption.__init__
    - <builtin>.super
    - parser.get_remaining
    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_bytes
    - <builtin>.super
    - <builtin>.len
    - dns.edns.CookieOption.__init__
    - parser.get_remaining
    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:
    - dns.edns.ReportChannelOption.__init__
    - <builtin>.super
    - parser.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: 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:
    - dns.edns.GenericOption.__init__
    - _type_to_class.get
    - dns.rdata.Rdata._as_bytes
    - dns.edns.GenericOption.from_wire_parser
    - <builtin>.isinstance
    - <builtin>.bytes
    - OptionType.make
    - value.encode
    - <builtin>.super
    - <builtin>.len
    - dns.edns.get_option_class
    - parser.get_remaining
    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:
    - dns.edns.GenericOption.__init__
    - _type_to_class.get
    - dns.edns.option_from_wire_parser
    - dns.rdata.Rdata._as_bytes
    - dns.wire.Parser
    - dns.edns.GenericOption.from_wire_parser
    - parser.restrict_to
    - <builtin>.isinstance
    - <builtin>.bytes
    - OptionType.make
    - value.encode
    - <builtin>.super
    - <builtin>.len
    - dns.edns.get_option_class
    - parser.get_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: dns.wire.Parser
    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: 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: 0
    functionLinenumber: -1
    functionName: dns.ipv4
    functionSourceFile: dns.ipv4
    functionUses: 0
    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: 38
    functionName: dns.ipv4.inet_aton
    functionSourceFile: dns.ipv4
    functionUses: 92
    functionsReached:
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - <builtin>.ord
    - part.isdigit
    - btext.split
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 66
    functionName: dns.ipv4.canonicalize
    functionSourceFile: dns.ipv4
    functionUses: 8
    functionsReached:
    - dns.ipv4.inet_ntoa
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - <builtin>.ord
    - part.isdigit
    - btext.split
    - <builtin>.len
    - struct.pack
    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 0x7fd438138280>
    argNames:
    - text
    - ignore_scope
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 103
    functionName: dns.ipv6.inet_aton
    functionSourceFile: dns.ipv6
    functionUses: 85
    functionsReached:
    - dns.ipv4.inet_aton
    - <builtin>.range
    - btext.startswith
    - _colon_colon_start.match
    - m.group
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - <builtin>.ord
    - btext.split
    - _v4_ending.match
    - part.isdigit
    - canonical.append
    - <builtin>.len
    - btext.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 197
    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: 208
    functionName: dns.ipv6.canonicalize
    functionSourceFile: dns.ipv6
    functionUses: 8
    functionsReached:
    - _colon_colon_start.match
    - binascii.hexlify
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - chunks.append
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - dns.ipv6.inet_ntoa
    - m.group
    - _v4_ending.match
    - struct.pack
    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:
    - chunks.append
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - _leading_zero.match
    - m.group
    - <builtin>.range
    - binascii.hexlify
    - <builtin>.len
    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
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - m.group
    - _v4_ending.match
    - struct.pack
    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
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - m.group
    - _v4_ending.match
    - struct.pack
    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 0x7fd4384be700>
    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
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - m.group
    - address.find
    - _v4_ending.match
    - struct.pack
    - scope.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: 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: 172
    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: 181
    functionName: dns.inet.canonicalize
    functionSourceFile: dns.inet
    functionUses: 0
    functionsReached:
    - dns.ipv6.canonicalize
    - _colon_colon_start.match
    - binascii.hexlify
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - chunks.append
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - dns.ipv6.inet_ntoa
    - m.group
    - dns.ipv4.canonicalize
    - _v4_ending.match
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fd437b7ac70>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 9
    functionName: dns.wire.Parser.get_name
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - parser.restore_furthest
    - parser.seek
    - parser.get_bytes
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name._maybe_convert_to_binary
    - labels.append
    - parser.get_uint8
    - <builtin>.tuple
    - <builtin>.len
    - name.relativize
    - dns.name.from_wire_parser
    - label.encode
    - dns.name.Name.__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: name.relativize
    functionSourceFile: <builtin>
    functionUses: 8
    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.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 0x7fd4381bcfa0>
    - <ast.Constant object at 0x7fd437da5d60>
    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:
    - <builtin>.len
    - separator.join
    - data.decode
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437da5ee0>
    - <ast.Constant object at 0x7fd437da5b20>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - binascii.hexlify
    - <builtin>.len
    - 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 0x7fd437da5160>
    - <ast.Constant object at 0x7fd437da5730>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - <builtin>.len
    - 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>.isinstance
    - <builtin>.bytearray
    - <builtin>.chr
    - 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.rdataclass.RdataClass.make
    - dns.rdatatype.RdataType.make
    - dns.rdata.Rdata._as_rdataclass
    - 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:
    - itertools.chain.from_iterable
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - itertools.chain.from_iterable
    - dns.rdata.Rdata._get_all_slots
    - <builtin>.getattr
    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 0x7fd438780880>
    - <ast.Constant object at 0x7fd438780280>
    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: 1
    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 0x7fd438780490>
    - <ast.Constant object at 0x7fd4387808e0>
    - <ast.Constant object at 0x7fd4387809a0>
    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: 11
    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 0x7fd438d54760>
    - <ast.Constant object at 0x7fd438d54850>
    - <ast.Constant object at 0x7fd438d54520>
    - <ast.Constant object at 0x7fd438d54640>
    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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - f.getvalue
    - file.write
    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 0x7fd437ac4160>
    - <ast.Constant object at 0x7fd437ac4b20>
    - <ast.Constant object at 0x7fd437ac4850>
    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 0x7fd43815ae80>
    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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - f.getvalue
    - <builtin>.super
    - file.write
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.Rdata.to_wire
    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 0x7fd43815a670>
    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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - f.getvalue
    - file.write
    - dns.rdata.Rdata.to_wire
    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:
    - dns.rdatatype.to_text
    - <builtin>.str
    - RdataClass.to_text
    - dns.rdata.Rdata.covers
    - dns.rdataclass.to_text
    - 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: 183
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - binascii.hexlify
    - dns.rdata.GenericRdata.to_text
    - dns.rdata._hexify
    - dns.rdata.Rdata.to_text
    - <builtin>.len
    - 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 0x7fd4381d5670>
    - <ast.Constant object at 0x7fd4381d5c10>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - binascii.hexlify
    - dns.rdata._hexify
    - <builtin>.len
    - 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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_digestable
    - f.getvalue
    - file.write
    - other.to_digestable
    - dns.rdata.Rdata.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_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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - <builtin>.isinstance
    - dns.rdata.Rdata.to_digestable
    - f.getvalue
    - file.write
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - <builtin>.isinstance
    - dns.rdata.Rdata.__eq__
    - dns.rdata.Rdata.to_digestable
    - f.getvalue
    - file.write
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - <builtin>.isinstance
    - dns.rdata.Rdata.to_digestable
    - f.getvalue
    - file.write
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - 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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - <builtin>.isinstance
    - dns.rdata.Rdata.to_digestable
    - f.getvalue
    - file.write
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - 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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - <builtin>.isinstance
    - dns.rdata.Rdata.to_digestable
    - f.getvalue
    - file.write
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - 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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - <builtin>.isinstance
    - dns.rdata.Rdata.to_digestable
    - f.getvalue
    - file.write
    - other.to_digestable
    - dns.rdata.Rdata.to_wire
    - 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:
    - io.BytesIO
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata._to_wire
    - <builtin>.hash
    - dns.rdata.Rdata.to_digestable
    - f.getvalue
    - file.write
    - dns.rdata.Rdata.to_wire
    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 0x7fd4381d7ee0>
    - <ast.Constant object at 0x7fd4381d7700>
    - <ast.Constant object at 0x7fd4381d7370>
    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 0x7fd4381d7430>
    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:
    - object.__setattr__
    - kwargs.get
    - <builtin>.getattr
    - inspect.signature
    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:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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:
    - dns.rdata.Rdata._as_int
    - <builtin>.isinstance
    - <builtin>.int
    - c.isdigit
    - dns.ttl.from_text
    - text.isdigit
    - <builtin>.len
    - 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 0x7fd4381d5220>
    - <ast.Constant object at 0x7fd4381d5370>
    - <ast.Constant object at 0x7fd4381d5f70>
    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:
    - tok.get
    - binascii.unhexlify
    - token.is_identifier
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - dns.rdata.GenericRdata.__init__
    - <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: tok.get
    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: 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: 35
    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 0x7fd438502af0>
    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 0x7fd4385027c0>
    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:
    - parser.get_remaining
    - <builtin>.super
    - dns.rdata.GenericRdata.__init__
    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 0x7fd43873f580>
    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:
    - dns.rdatatype.to_text
    - _rdata_classes.get
    - RdataClass.to_text
    - <builtin>.getattr
    - rdtype_text.replace
    - dns.rdataclass.to_text
    - RdataType.to_text
    - importlib.import_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd438727490>
    argNames:
    - disable_dynamic_load
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 700
    functionName: dns.rdata.load_all_types
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - dns.rdata.get_rdata_class
    - dns.rdatatype.to_text
    - _rdata_classes.get
    - RdataClass.to_text
    - <builtin>.getattr
    - rdtype_text.replace
    - dns.rdataclass.to_text
    - RdataType.to_text
    - importlib.import_module
    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 0x7fd438c50c10>
    - <ast.Constant object at 0x7fd438c50760>
    - <ast.Constant object at 0x7fd438c50310>
    - <ast.Constant object at 0x7fd438c50e80>
    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:
    - dns.rdata.get_rdata_class
    - dns.exception.ExceptionWrapper
    - rdata.to_wire
    - tok.get
    - token.is_identifier
    - parser.restrict_to
    - dns.wire.Parser
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - RdataType.to_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - binascii.unhexlify
    - <builtin>.isinstance
    - tok.unget
    - <builtin>.len
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.rdataclass.RdataClass.make
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - rdtype_text.replace
    - importlib.import_module
    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 0x7fd438e97af0>
    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:
    - dns.rdata.get_rdata_class
    - dns.exception.ExceptionWrapper
    - dns.wire.Parser
    - parser.restrict_to
    - parser.get_remaining
    - RdataType.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdatatype.to_text
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.rdataclass.RdataClass.make
    - <builtin>.super
    - rdtype_text.replace
    - importlib.import_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437decdc0>
    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:
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdatatype.to_text
    - dns.exception.ExceptionWrapper
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.rdatatype.RdataType.make
    - parser.get_remaining
    - <builtin>.super
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - rdtype_text.replace
    - dns.rdataclass.to_text
    - RdataType.to_text
    - importlib.import_module
    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 0x7fd437c88e20>
    - <ast.Attribute object at 0x7fd437c887f0>
    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:
    - dns.rdata.get_rdata_class
    - dns.rdatatype.register_type
    - dns.rdatatype.to_text
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.rdatatype.RdataType.make
    - <builtin>.isinstance
    - dns.rdatatype.is_metatype
    - <builtin>.issubclass
    - <builtin>.getattr
    - rdtype_text.replace
    - _singletons.add
    - dns.rdataclass.to_text
    - RdataType.to_text
    - importlib.import_module
    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: 197
    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 0x7fd43870fbe0>
    argNames:
    - rdtype
    - rdtype_text
    - is_singleton
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 231
    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: 114
    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: 118
    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: 122
    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: 126
    functionName: dns.rdatatype.RdataType._extra_from_text
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached:
    - text.find
    - _registered_by_text.get
    - 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: 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: 135
    functionName: dns.rdatatype.RdataType._extra_to_text
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached:
    - _registered_by_value.get
    - current_text.replace
    - current_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: _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: 143
    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: 165
    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: 211
    functionName: dns.rdatatype.is_singleton
    functionSourceFile: dns.rdatatype
    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: _singletons.add
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7fd4382a4280>
    - <ast.Constant object at 0x7fd4382a4610>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - dns.rcode.to_text
    - Rcode.to_text
    - <builtin>.len
    - dns.rdata._base64ify
    - base64.b64encode
    - data.decode
    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 0x7fd4380539d0>
    argNames:
    - value
    - tsig
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 127
    functionName: dns.rcode.to_text
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached:
    - Rcode.to_text
    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 0x7fd437c88b80>
    - <ast.Constant object at 0x7fd437c888e0>
    - <ast.Constant object at 0x7fd437c88e80>
    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:
    - dns.rcode.from_text
    - tok.get_name
    - dns.rcode.Rcode.make
    - tok.get_string
    - tok.get_uint48
    - <builtin>.super
    - tok.get_uint16
    - dns.rdtypes.ANY.TSIG.TSIG.__init__
    - <builtin>.len
    - base64.b64decode
    - 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_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_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: 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: base64.b64decode
    functionSourceFile: base64
    functionUses: 11
    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: 81
    functionName: dns.rcode.from_text
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached:
    - Rcode.from_text
    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 0x7fd4387201f0>
    - <ast.Constant object at 0x7fd438720e80>
    - <ast.Constant object at 0x7fd438720130>
    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:
    - <builtin>.len
    - struct.pack
    - 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 0x7fd4380a98b0>
    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_struct
    - parser.get_counted_bytes
    - parser.get_uint16
    - dns.rcode.Rcode.make
    - <builtin>.super
    - parser.get_uint48
    - dns.rdtypes.ANY.TSIG.TSIG.__init__
    - parser.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: 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: 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: 69
    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: 73
    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: 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: 94
    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: 110
    functionName: dns.rcode.to_flags
    functionSourceFile: dns.rcode
    functionUses: 1
    functionsReached: []
    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: 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.rdtypes.ANY
    functionSourceFile: dns.rdtypes.ANY
    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.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 0x7fd438138fa0>
    - <ast.Constant object at 0x7fd438138970>
    - <ast.Constant object at 0x7fd438138f70>
    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:
    - <builtin>.len
    - opt.to_wire
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437c88ac0>
    - <ast.Constant object at 0x7fd437c88610>
    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 0x7fd437c88400>
    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.get_struct
    - dns.edns.GenericOption.__init__
    - _type_to_class.get
    - dns.edns.option_from_wire_parser
    - dns.rdata.Rdata._as_bytes
    - dns.rdtypes.ANY.OPT.OPT.__init__
    - parser.restrict_to
    - dns.edns.GenericOption.from_wire_parser
    - <builtin>.isinstance
    - <builtin>.bytes
    - OptionType.make
    - value.encode
    - options.append
    - <builtin>.super
    - dns.edns.get_option_class
    - <builtin>.len
    - parser.remaining
    - parser.get_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: 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: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: -1
    functionName: dns.tsig
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - 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
    - gssapi_context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 107
    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: 112
    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: 115
    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: 119
    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: 129
    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: 132
    functionName: dns.tsig.GSSTSigAdapter.__call__
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - dns.tsig.GSSTSigAdapter.parse_tkey_and_step
    - message.find_rrset
    - <builtin>.isinstance
    - gssapi_context.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: 143
    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: 178
    functionName: dns.tsig.HMACTSig.__init__
    functionSourceFile: dns.tsig
    functionUses: 42
    functionsReached:
    - <builtin>.isinstance
    - hmac.new
    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: 195
    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: 198
    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: 205
    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 0x7fd43815ab20>
    - <ast.Constant object at 0x7fd43815a1f0>
    - <ast.Constant object at 0x7fd43815a970>
    - <ast.Constant object at 0x7fd43815a1c0>
    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: 212
    functionName: dns.tsig._digest
    functionSourceFile: dns.tsig
    functionUses: 39
    functionsReached:
    - dns.tsig.HMACTSig.__init__
    - dns.tsig.get_context
    - <builtin>.isinstance
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.__init__
    - key.name.to_digestable
    - dns.tsig.GSSTSig.update
    - hmac.new
    - dns.tsig.HMACTSig.update
    - <builtin>.len
    - struct.pack
    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: 316
    functionName: dns.tsig.get_context
    functionSourceFile: dns.tsig
    functionUses: 41
    functionsReached:
    - dns.tsig.HMACTSig.__init__
    - <builtin>.isinstance
    - hmac.new
    - dns.tsig.GSSTSig.__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: 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: 248
    functionName: dns.tsig._maybe_start_digest
    functionSourceFile: dns.tsig
    functionUses: 39
    functionsReached:
    - dns.tsig.HMACTSig.__init__
    - dns.tsig.get_context
    - <builtin>.isinstance
    - dns.tsig.GSSTSig.__init__
    - dns.tsig.GSSTSig.update
    - hmac.new
    - dns.tsig.HMACTSig.update
    - <builtin>.len
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437e90910>
    - <ast.Constant object at 0x7fd437e908e0>
    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: 278
    functionName: dns.tsig.validate
    functionSourceFile: dns.tsig
    functionUses: 34
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - dns.tsig.HMACTSig.__init__
    - dns.tsig.get_context
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - <builtin>.isinstance
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.__init__
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.len
    - dns.tsig.GSSTSig.update
    - dns.tsig.GSSTSig.verify
    - struct.unpack
    - hmac.compare_digest
    - dns.tsig.HMACTSig.update
    - 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 0x7fd437fde8e0>
    argNames:
    - self
    - name
    - secret
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 330
    functionName: dns.tsig.Key.__init__
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - secret.encode
    - label.encode
    - dns.name.Name.__init__
    - base64.decodebytes
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 346
    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: 354
    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.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.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 0x7fd43822ce50>
    - <ast.Constant object at 0x7fd43822cd60>
    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: 62
    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: 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: 118
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 62
    functionName: dns.rrset.RRset.__repr__
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - dns.rdatatype.to_text
    - RdataClass.to_text
    - <builtin>.str
    - dns.rdataclass.to_text
    - 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:
    - <builtin>.super
    - dns.rrset.RRset.to_text
    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 0x7fd4381d59a0>
    - <ast.Constant object at 0x7fd4381d5340>
    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
    - <builtin>.super
    - dns.rrset.RRset.full_match
    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 0x7fd4381d53d0>
    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 0x7fd437ac43d0>
    - <ast.Constant object at 0x7fd437ac4310>
    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: 3
    functionLinenumber: 179
    functionName: dns.rrset.RRset.to_rdataset
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - dns.rdataset.ImmutableRdataset.add
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    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: 2
    functionLinenumber: 481
    functionName: dns.rdataset.from_rdata_list
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached:
    - dns.rdataset.ImmutableRdataset.add
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    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 0x7fd437ed57c0>
    - <ast.Constant object at 0x7fd437ed5a00>
    - <ast.Constant object at 0x7fd437ed5be0>
    - <ast.Constant object at 0x7fd437ed5160>
    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:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - parser.restrict_to
    - dns.name._validate_labels
    - dns.wire.Parser
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - RdataType.to_text
    - dns.name.Name.__init__
    - dns.rdata.GenericRdata.from_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - parser.get_remaining
    - byte_.isdigit
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - tok.unget
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rdata.from_wire
    - dns.rrset.RRset.__init__
    - tok.get_eol_as_token
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - r.add
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - encodings.idna.ToASCII
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - struct.pack
    - importlib.import_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: r.add
    functionSourceFile: <builtin>
    functionUses: 62
    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:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - parser.restrict_to
    - dns.name._validate_labels
    - dns.wire.Parser
    - <builtin>.ord
    - r.update_ttl
    - dns.rrset.from_text_list
    - label.encode
    - dns.name.Name.__init__
    - RdataType.to_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdata.GenericRdata.from_text
    - byte_.isdigit
    - parser.get_remaining
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - tok.unget
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rdata.from_wire
    - dns.rrset.RRset.__init__
    - tok.get_eol_as_token
    - typing.cast
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - r.add
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - encodings.idna.ToASCII
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - struct.pack
    - importlib.import_module
    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 0x7fd43873fc40>
    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: 59
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - dns.name.IDNA2003Codec.encode
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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.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 0x7fd4385457f0>
    - <ast.Constant object at 0x7fd4385459a0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    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: 78
    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: 86
    functionName: dns.rdataset.Rdataset.update_ttl
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - c.lower
    - <builtin>.isinstance
    - <builtin>.int
    - c.isdigit
    - dns.ttl.from_text
    - text.isdigit
    - <builtin>.len
    - dns.ttl.make
    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 0x7fd437ef5340>
    argNames:
    - self
    - rd
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: dns.rdataset.Rdataset.add
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdatatype.is_singleton
    - dns.rdataset.ImmutableRdataset.clear
    - typing.cast.covers
    - <builtin>.super
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    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: 370
    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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 404
    functionName: dns.rdataset.ImmutableRdataset.clear
    functionSourceFile: ''
    functionUses: 1
    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: 1
    functionLinenumber: 139
    functionName: dns.rdataset.Rdataset.union_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.update_ttl
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 143
    functionName: dns.rdataset.Rdataset.intersection_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.update_ttl
    - <builtin>.super
    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: 1
    functionLinenumber: 147
    functionName: dns.rdataset.Rdataset.update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.update_ttl
    - <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: 157
    functionName: dns.rdataset.Rdataset._rdata_repr
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - dns.rdataset.Rdataset._rdata_repr.maybe_truncate
    - <builtin>.str
    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: 158
    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: 165
    functionName: dns.rdataset.Rdataset.__repr__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdatatype.to_text
    - <builtin>.str
    - RdataClass.to_text
    - dns.rdataset.Rdataset._rdata_repr
    - dns.rdataset.Rdataset._rdata_repr.maybe_truncate
    - <builtin>.len
    - dns.rdataclass.to_text
    - 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: 3
    functionLinenumber: 181
    functionName: dns.rdataset.Rdataset.__str__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - name.choose_relativity
    - dns.rdatatype.to_text
    - <builtin>.str
    - RdataClass.to_text
    - dns.rdataset.Rdataset.to_text
    - s.write
    - <builtin>.len
    - io.StringIO
    - s.getvalue
    - dns.rdataclass.to_text
    - RdataType.to_text
    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 0x7fd437c7d400>
    - <ast.Constant object at 0x7fd437c7d190>
    - <ast.Constant object at 0x7fd437c7d1c0>
    - <ast.Constant object at 0x7fd437c7d0a0>
    - <ast.Constant object at 0x7fd437c7d940>
    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: 198
    functionName: dns.rdataset.Rdataset.to_text
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - name.choose_relativity
    - dns.rdatatype.to_text
    - <builtin>.str
    - RdataClass.to_text
    - dns.rdataset.Rdataset.to_text
    - s.write
    - <builtin>.len
    - io.StringIO
    - s.getvalue
    - dns.rdataclass.to_text
    - RdataType.to_text
    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: 184
    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: 195
    functionName: dns.rdataset.Rdataset.__ne__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.Rdataset.__eq__
    - <builtin>.super
    - <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.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 0x7fd4381585b0>
    - <ast.Constant object at 0x7fd438158610>
    - <ast.Constant object at 0x7fd438158e20>
    - <ast.Constant object at 0x7fd438158490>
    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: 272
    functionName: dns.rdataset.Rdataset.to_wire
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - name.to_wire
    - output.tell
    - random.shuffle
    - output.seek
    - length.to_bytes
    - file.write
    - output.write
    - <builtin>.len
    - dns._render_util.prefixed_length
    - struct.pack
    - dns.rdataset.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: 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: 328
    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: 341
    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: 362
    functionName: dns.rdataset.ImmutableRdataset.__init__
    functionSourceFile: dns.rdataset
    functionUses: 6
    functionsReached:
    - <builtin>.super
    - dns.immutable.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: 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 0x7fd4386b61f0>
    argNames:
    - self
    - rd
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 373
    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: 376
    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: 379
    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: 382
    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: 385
    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: 392
    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: 395
    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: 398
    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: 401
    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: 407
    functionName: dns.rdataset.ImmutableRdataset.__copy__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.__init__
    - <builtin>.super
    - dns.immutable.Dict
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 410
    functionName: dns.rdataset.ImmutableRdataset.copy
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.__init__
    - <builtin>.super
    - dns.immutable.Dict
    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: 413
    functionName: dns.rdataset.ImmutableRdataset.union
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.__init__
    - <builtin>.super
    - dns.immutable.Dict
    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: 416
    functionName: dns.rdataset.ImmutableRdataset.intersection
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.__init__
    - <builtin>.super
    - dns.immutable.Dict
    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: 419
    functionName: dns.rdataset.ImmutableRdataset.difference
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.__init__
    - <builtin>.super
    - dns.immutable.Dict
    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: 422
    functionName: dns.rdataset.ImmutableRdataset.symmetric_difference
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.__init__
    - <builtin>.super
    - dns.immutable.Dict
    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 0x7fd437ed3640>
    - <ast.Constant object at 0x7fd437ed3af0>
    - <ast.Constant object at 0x7fd437ed30d0>
    - <ast.Constant object at 0x7fd437ed3490>
    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: 426
    functionName: dns.rdataset.from_text_list
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - dns.rdata.get_rdata_class
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - parser.restrict_to
    - dns.wire.Parser
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - RdataType.to_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - binascii.unhexlify
    - <builtin>.isinstance
    - tok.unget
    - <builtin>.len
    - dns.rdata.from_wire
    - dns.rdataset.ImmutableRdataset.update_ttl
    - tok.get_eol_as_token
    - _rdata_classes.get
    - dns.rdataset.ImmutableRdataset.add
    - RdataClass.to_text
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.rdataclass.RdataClass.make
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - rdtype_text.replace
    - importlib.import_module
    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: 466
    functionName: dns.rdataset.from_text
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdata.get_rdata_class
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - parser.restrict_to
    - dns.wire.Parser
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - RdataType.to_text
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - binascii.unhexlify
    - <builtin>.isinstance
    - tok.unget
    - <builtin>.len
    - dns.rdata.from_wire
    - dns.rdataset.ImmutableRdataset.update_ttl
    - tok.get_eol_as_token
    - typing.cast
    - _rdata_classes.get
    - dns.rdataset.ImmutableRdataset.add
    - RdataClass.to_text
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.rdataclass.RdataClass.make
    - dns.rdataset.from_text_list
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - rdtype_text.replace
    - importlib.import_module
    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: 3
    functionLinenumber: 500
    functionName: dns.rdataset.from_rdata
    functionSourceFile: dns.rdataset
    functionUses: 8
    functionsReached:
    - typing.cast
    - dns.rdataset.ImmutableRdataset.add
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd4387c2820>
    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>.repr
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <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:
    - <builtin>.hasattr
    - obj.items.update
    - cls.__new__
    - <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:
    - dns.set.Set._clone
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - obj.items.update
    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:
    - dns.set.Set._clone
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - obj.items.update
    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:
    - dns.set.Set.discard
    - <builtin>.isinstance
    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:
    - dns.set.Set._clone
    - dns.set.Set.add
    - dns.set.Set.intersection
    - <builtin>.dict
    - dns.set.Set.discard
    - <builtin>.hasattr
    - <builtin>.isinstance
    - cls.__new__
    - obj.intersection_update
    - dns.set.Set.union_update
    - obj.items.update
    - dns.set.Set.difference_update
    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:
    - dns.set.Set._clone
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - obj.intersection_update
    - obj.items.update
    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:
    - dns.set.Set._clone
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - obj.union_update
    - obj.items.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: 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:
    - dns.set.Set._clone
    - obj.difference_update
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - obj.items.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: 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:
    - dns.set.Set._clone
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - obj.symmetric_difference_update
    - obj.items.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: 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:
    - dns.set.Set._clone
    - <builtin>.dict
    - dns.set.Set.union
    - <builtin>.hasattr
    - cls.__new__
    - obj.union_update
    - obj.items.update
    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:
    - dns.set.Set._clone
    - dns.set.Set.intersection
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - obj.intersection_update
    - obj.items.update
    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:
    - dns.set.Set._clone
    - <builtin>.dict
    - dns.set.Set.union
    - <builtin>.hasattr
    - cls.__new__
    - obj.union_update
    - obj.items.update
    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:
    - dns.set.Set._clone
    - obj.difference_update
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - dns.set.Set.difference
    - obj.items.update
    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:
    - dns.set.Set._clone
    - <builtin>.dict
    - <builtin>.hasattr
    - cls.__new__
    - obj.symmetric_difference_update
    - obj.items.update
    - dns.set.Set.symmetric_difference
    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
    - <builtin>.isinstance
    - dns.set.Set.intersection_update
    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.discard
    - <builtin>.isinstance
    - dns.set.Set.difference_update
    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:
    - dns.set.Set._clone
    - dns.set.Set.add
    - dns.set.Set.intersection
    - <builtin>.dict
    - dns.set.Set.discard
    - <builtin>.hasattr
    - <builtin>.isinstance
    - dns.set.Set.symmetric_difference_update
    - cls.__new__
    - obj.intersection_update
    - dns.set.Set.union_update
    - obj.items.update
    - dns.set.Set.difference_update
    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>.next
    - <builtin>.isinstance
    - <builtin>.list
    - itertools.islice
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns._render_util
    functionSourceFile: dns._render_util
    functionUses: 0
    functionsReached:
    - contextlib.contextmanager
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: output.tell
    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: output.seek
    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: length.to_bytes
    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.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:
    - collections.abc.MutableMapping.update
    - <builtin>.super
    - <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: 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>.len
    - <builtin>.isinstance
    - dns.namedict.NameDict.__update_max_depth
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.name.Name
    functionSourceFile: <builtin>
    functionUses: 17
    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.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 0x7fd4381d7490>
    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:
    - <builtin>.isinstance
    - dns.serial.Serial.__init__
    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:
    - <builtin>.isinstance
    - dns.serial.Serial.__init__
    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:
    - <builtin>.isinstance
    - dns.serial.Serial.__init__
    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:
    - <builtin>.isinstance
    - dns.serial.Serial.__init__
    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
    - <builtin>.isinstance
    - dns.serial.Serial.__init__
    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>.abs
    - <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: 91
    functionName: dns.serial.Serial.__sub__
    functionSourceFile: dns.serial
    functionUses: 0
    functionsReached:
    - <builtin>.abs
    - <builtin>.isinstance
    - dns.serial.Serial.__init__
    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>.abs
    - <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.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:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - textring.items
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.tsig.Key
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - base64.encodebytes
    - <builtin>.isinstance
    - dns.tsigkeyring.to_text.b64encode
    - key.algorithm.to_text
    - name.to_text
    - <builtin>.str
    - keyring.items
    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:
    - int_parts.append
    - requirement.split
    - importlib.metadata.version
    - version.split
    - _cache.get
    - dns._features._version_check
    - <builtin>.int
    - itertools.takewhile
    - dns._features._tuple_from_text
    - dns._features.have
    - _requirements.get
    - <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: 1
    functionsReached:
    - asyncio.get_event_loop
    - asyncio.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: asyncio.get_running_loop
    functionSourceFile: asyncio
    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: asyncio.get_event_loop
    functionSourceFile: asyncio
    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: 25
    functionName: dns._asyncio_backend._DatagramProtocol.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.Queue
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.Queue
    functionSourceFile: asyncio
    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
    - 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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - exc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 35
    functionName: dns._asyncio_backend._DatagramProtocol.error_received
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - exc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: dns._asyncio_backend._DatagramProtocol.connection_lost
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - <builtin>.EOFError
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.EOFError
    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: 0
    functionLinenumber: 44
    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: 49
    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: 60
    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: 65
    functionName: dns._asyncio_backend._DatagramSocket.sendto
    functionSourceFile: dns._asyncio_backend
    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: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 70
    functionName: dns._asyncio_backend._DatagramSocket.recvfrom
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - 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: 77
    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: 80
    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: 83
    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: 86
    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: 91
    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: 96
    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: 100
    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: 103
    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: 106
    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: 109
    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: 112
    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: 128
    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 0x7fd438c49b80>
    - <ast.Constant object at 0x7fd438c49760>
    - <ast.Constant object at 0x7fd438c49220>
    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: 139
    functionName: dns._asyncio_backend._NetworkBackend.connect_tcp
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - addresses.append
    - dns.query._compute_times
    - <builtin>.ord
    - canonical.append
    - anyio.fail_after
    - time.time
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - anyio.connect_tcp
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - <builtin>.min
    - dns.query._remaining
    - part.isdigit
    - dns.query._expiration_for_this_attempt
    - answers.addresses
    - m.group
    - dns.inet.is_address
    - _v4_ending.match
    - struct.pack
    - httpcore._backends.anyio.AnyIOStream
    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: 209
    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: 54
    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: 63
    functionName: dns.query._expiration_for_this_attempt
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - time.time
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7fd437c7d910>
    - <ast.Constant object at 0x7fd437c7d970>
    argNames:
    - self
    - path
    - timeout
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 172
    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: 177
    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: 181
    functionName: dns._asyncio_backend._HTTPTransport.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncio_backend._NetworkBackend.__init__
    - <builtin>.super
    - dns.asyncresolver.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: -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: 205
    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 0x7fd4387ced00>
    - <ast.Constant object at 0x7fd4387ce730>
    - <ast.Constant object at 0x7fd4387ced90>
    - <ast.Constant object at 0x7fd4387ce940>
    - <ast.Constant object at 0x7fd4387ceac0>
    - <ast.Constant object at 0x7fd4387ce400>
    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: 208
    functionName: dns._asyncio_backend.Backend.make_socket
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.get_event_loop
    - asyncio.open_connection
    - asyncio.get_running_loop
    - dns._asyncio_backend._StreamSocket.__init__
    - dns.inet.any_for_af
    - dns._asyncio_backend._DatagramSocket.__init__
    - loop.create_datagram_endpoint
    - <builtin>.super
    - asyncio.wait_for
    - dns._asyncio_backend._maybe_wait_for
    - 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: 255
    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: 258
    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: 261
    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: 264
    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: 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 0x7fd4380e30a0>
    - <ast.Attribute object at 0x7fd4380e32b0>
    - <ast.Constant object at 0x7fd4387808b0>
    - <ast.Constant object at 0x7fd4387802b0>
    - <ast.Constant object at 0x7fd438780430>
    - <ast.Constant object at 0x7fd438780910>
    - <ast.Constant object at 0x7fd4387803d0>
    - <ast.Constant object at 0x7fd438780790>
    - <ast.Constant object at 0x7fd4387800a0>
    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: 47
    functionName: dns.asyncresolver.Resolver.resolve
    functionSourceFile: dns.asyncresolver
    functionUses: 4
    functionsReached:
    - dns.asyncbackend.get_backend
    - nameserver.async_query
    - dns._trio_backend.Backend
    - resolution.next_request
    - backend.sleep
    - asyncio.get_running_loop
    - resolution.next_nameserver
    - _backends.get
    - dns.asyncbackend.sniff
    - resolution.query_result
    - dns.resolver._Resolution
    - dns.asyncbackend.get_default_backend
    - dns._asyncio_backend.Backend
    - time.time
    - sniffio.current_async_library
    - dns.asyncbackend.set_default_backend
    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._Resolution
    functionSourceFile: <builtin>
    functionUses: 5
    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: 3
    functionLinenumber: 80
    functionName: dns.asyncbackend.get_default_backend
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached:
    - dns.asyncbackend.get_backend
    - dns._trio_backend.Backend
    - asyncio.get_running_loop
    - dns.asyncbackend.sniff
    - _backends.get
    - dns._asyncio_backend.Backend
    - sniffio.current_async_library
    - dns.asyncbackend.set_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: 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: 112
    functionName: dns.asyncresolver.Resolver.resolve_address
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.reversename.from_address
    - <builtin>.list
    - labels.extend
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - <builtin>.reversed
    - nameserver.async_query
    - binascii.hexlify
    - dns.name._validate_labels
    - <builtin>.ord
    - canonical.append
    - dns.ipv6.is_mapped
    - address.startswith
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - sniffio.current_async_library
    - _backends.get
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - _colon_colon_end.match
    - binascii.unhexlify
    - dns._trio_backend.Backend
    - <builtin>.isinstance
    - text.encode
    - resolution.next_request
    - backend.sleep
    - <builtin>.int
    - asyncio.get_running_loop
    - c.isdigit
    - dns.asyncbackend.sniff
    - btext.split
    - dns.name.from_unicode
    - <builtin>.len
    - dns.asyncbackend.get_default_backend
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.name.IDNA2003Codec.encode
    - resolution.next_nameserver
    - modified_kwargs.update
    - part.isdigit
    - dns.resolver._Resolution
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - m.group
    - <builtin>.chr
    - dns.asyncresolver.Resolver.resolve
    - encodings.idna.ToASCII
    - _v4_ending.match
    - labels.append
    - resolution.query_result
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437fd2d60>
    - <ast.Name object at 0x7fd437fd2d90>
    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:
    - <builtin>.list
    - labels.extend
    - _colon_colon_start.match
    - <builtin>.reversed
    - binascii.hexlify
    - dns.name._validate_labels
    - <builtin>.ord
    - canonical.append
    - dns.ipv6.is_mapped
    - address.startswith
    - label.encode
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - btext.split
    - <builtin>.len
    - dns.name.from_unicode
    - btext.endswith
    - <builtin>.str
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - dns.name.IDNA2003Codec.encode
    - part.isdigit
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - m.group
    - <builtin>.chr
    - encodings.idna.ToASCII
    - _v4_ending.match
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd4382a4c40>
    argNames:
    - self
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 140
    functionName: dns.asyncresolver.Resolver.resolve_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncbackend.get_backend
    - nameserver.async_query
    - dns._asyncio_backend.Backend
    - time.time
    - sniffio.current_async_library
    - dns._trio_backend.Backend
    - resolution.next_request
    - backend.sleep
    - asyncio.get_running_loop
    - dns.asyncbackend.sniff
    - dns.asyncbackend.get_default_backend
    - dns.resolver.HostAnswers.make
    - dns.asyncbackend.set_default_backend
    - resolution.next_nameserver
    - modified_kwargs.update
    - dns.resolver._Resolution
    - modified_kwargs.pop
    - dns.asyncresolver.Resolver.resolve
    - resolution.query_result
    - _backends.get
    linkageType: pythonLinkage
    raised:
    - NoAnswer
    - 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: modified_kwargs.pop
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fd4384e8ca0>
    - <ast.Constant object at 0x7fd4384e8100>
    - <ast.Constant object at 0x7fd4384e8250>
    argNames:
    - cls
    - v6
    - v4
    - add_empty
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 332
    functionName: dns.resolver.HostAnswers.make
    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: 5
    functionLinenumber: 209
    functionName: dns.asyncresolver.Resolver.canonical_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncbackend.get_backend
    - nameserver.async_query
    - dns.asyncresolver.Resolver.resolve
    - dns._trio_backend.Backend
    - resolution.next_request
    - backend.sleep
    - asyncio.get_running_loop
    - resolution.next_nameserver
    - _backends.get
    - dns.asyncbackend.sniff
    - resolution.query_result
    - dns.resolver._Resolution
    - dns.asyncbackend.get_default_backend
    - dns._asyncio_backend.Backend
    - time.time
    - sniffio.current_async_library
    - dns.asyncbackend.set_default_backend
    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 0x7fd4381d7190>
    argNames:
    - self
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 230
    functionName: dns.asyncresolver.Resolver.try_ddr
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - nameserver.async_query
    - <builtin>.set
    - dns._ddr._extract_nameservers_from_svcb
    - <builtin>.ord
    - canonical.append
    - nameservers.append
    - info.ddr_tls_check_async
    - dns._asyncio_backend.Backend
    - time.time
    - sniffio.current_async_library
    - _backends.get
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - dns._trio_backend.Backend
    - param.value.endswith
    - resolution.next_request
    - backend.sleep
    - <builtin>.isinstance
    - text.encode
    - nameservers.extend
    - answer.rrset.processing_order
    - <builtin>.int
    - dns.nameserver.DoTNameserver
    - rr.target.to_text
    - dns.asyncbackend.sniff
    - asyncio.get_running_loop
    - btext.split
    - <builtin>.len
    - dns.asyncbackend.get_default_backend
    - btext.endswith
    - path.startswith
    - dns.asyncbackend.set_default_backend
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.nameserver.DoHNameserver
    - dns._ddr._get_nameservers_async
    - resolution.next_nameserver
    - infos.append
    - dns.query._remaining
    - rr.params.get
    - part.isdigit
    - dns.resolver._Resolution
    - m.group
    - dns.inet.is_address
    - dns.asyncresolver.Resolver.resolve
    - _v4_ending.match
    - dns.nameserver.DoQNameserver
    - resolution.query_result
    - dns._ddr._SVCBInfo.__init__
    - struct.pack
    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: <builtin>
    functionUses: 1
    functionsReached:
    - urllib.parse.urlparse
    - _colon_colon_start.match
    - <builtin>.set
    - dns._ddr._extract_nameservers_from_svcb
    - <builtin>.ord
    - canonical.append
    - nameservers.append
    - info.ddr_tls_check_async
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - param.value.endswith
    - <builtin>.isinstance
    - text.encode
    - answer.rrset.processing_order
    - <builtin>.int
    - nameservers.extend
    - dns.nameserver.DoTNameserver
    - rr.target.to_text
    - btext.split
    - <builtin>.len
    - btext.endswith
    - path.startswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.nameserver.DoHNameserver
    - infos.append
    - rr.params.get
    - part.isdigit
    - m.group
    - dns.inet.is_address
    - _v4_ending.match
    - dns.nameserver.DoQNameserver
    - dns._ddr._SVCBInfo.__init__
    - struct.pack
    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: 265
    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: 273
    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 0x7fd438ea7940>
    - <ast.Attribute object at 0x7fd438ea7910>
    - <ast.Constant object at 0x7fd438ea7d00>
    - <ast.Constant object at 0x7fd438ea7b80>
    - <ast.Constant object at 0x7fd438ea7a90>
    - <ast.Constant object at 0x7fd438ea71f0>
    - <ast.Constant object at 0x7fd438ea79d0>
    - <ast.Constant object at 0x7fd438ea7b50>
    - <ast.Constant object at 0x7fd438ea77f0>
    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: 284
    functionName: dns.asyncresolver.resolve
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.get_default_resolver
    - dns.asyncresolver.reset_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: 319
    functionName: dns.asyncresolver.resolve_address
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.get_default_resolver
    - dns.asyncresolver.reset_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 0x7fd4387c2fa0>
    argNames:
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 331
    functionName: dns.asyncresolver.resolve_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.get_default_resolver
    - dns.asyncresolver.reset_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: 343
    functionName: dns.asyncresolver.canonical_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.get_default_resolver
    - dns.asyncresolver.reset_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 0x7fd437cea610>
    argNames:
    - timeout
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 353
    functionName: dns.asyncresolver.try_ddr
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.get_default_resolver
    - dns.asyncresolver.reset_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 0x7fd437cea910>
    - <ast.Constant object at 0x7fd437cea580>
    - <ast.Constant object at 0x7fd437cea4f0>
    - <ast.Constant object at 0x7fd437cea7c0>
    argNames:
    - name
    - rdclass
    - tcp
    - resolver
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 363
    functionName: dns.asyncresolver.zone_for_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.asyncresolver.get_default_resolver
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - resolver.resolve
    - dns.name.IDNA2003Codec.encode
    - dns.asyncresolver.reset_default_resolver
    - name.is_absolute
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - name.parent
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 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: 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: 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 0x7fd43886c430>
    - <ast.Attribute object at 0x7fd43886c310>
    - <ast.Constant object at 0x7fd43886c550>
    argNames:
    - where
    - port
    - family
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 399
    functionName: dns.asyncresolver.make_resolver_at
    functionSourceFile: dns.asyncresolver
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - nameservers.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - dns.asyncresolver.get_default_resolver
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - resolver.resolve_name
    - dns.asyncresolver.reset_default_resolver
    - part.isdigit
    - answers.addresses
    - m.group
    - dns.inet.is_address
    - _v4_ending.match
    - dns.nameserver.Do53Nameserver
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: nameservers.append
    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: 1
    IfCount: 0
    argCount: 14
    argDefaultValues:
    - <ast.Attribute object at 0x7fd437da6be0>
    - <ast.Attribute object at 0x7fd437da6e50>
    - <ast.Constant object at 0x7fd437da6610>
    - <ast.Constant object at 0x7fd437da67c0>
    - <ast.Constant object at 0x7fd437da6b50>
    - <ast.Constant object at 0x7fd437da66a0>
    - <ast.Constant object at 0x7fd437da6dc0>
    - <ast.Constant object at 0x7fd437da6f70>
    - <ast.Constant object at 0x7fd437da6790>
    - <ast.Constant object at 0x7fd437da6280>
    - <ast.Attribute object at 0x7fd437da6070>
    - <ast.Constant object at 0x7fd437da6970>
    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: 436
    functionName: dns.asyncresolver.resolve_at
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - nameservers.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - dns.asyncresolver.get_default_resolver
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - dns.asyncresolver.make_resolver_at
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - resolver.resolve_name
    - dns.asyncresolver.reset_default_resolver
    - part.isdigit
    - answers.addresses
    - m.group
    - dns.inet.is_address
    - _v4_ending.match
    - res.resolve
    - dns.nameserver.Do53Nameserver
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 27
    functionName: dns.asyncbackend.get_backend
    functionSourceFile: dns.asyncbackend
    functionUses: 23
    functionsReached:
    - dns._trio_backend.Backend
    - dns._asyncio_backend.Backend
    - _backends.get
    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: 53
    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: 88
    functionName: dns.asyncbackend.set_default_backend
    functionSourceFile: dns.asyncbackend
    functionUses: 20
    functionsReached:
    - dns._trio_backend.Backend
    - dns._asyncio_backend.Backend
    - dns.asyncbackend.get_backend
    - _backends.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._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: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fd437eda700>
    argNames:
    - self
    - enter_result
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 8
    functionName: dns._asyncbackend.NullContext.__init__
    functionSourceFile: dns._asyncbackend
    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: 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 0x7fd4380e30d0>
    - <ast.Constant object at 0x7fd437c88520>
    - <ast.Constant object at 0x7fd437c88550>
    - <ast.Constant object at 0x7fd437c88700>
    - <ast.Constant object at 0x7fd437c88b80>
    - <ast.Constant object at 0x7fd437c88e80>
    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: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns._trio_backend
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - int_parts.append
    - requirement.split
    - importlib.metadata.version
    - version.split
    - _cache.get
    - dns._features._version_check
    - <builtin>.int
    - itertools.takewhile
    - dns._features._tuple_from_text
    - dns._features.have
    - _requirements.get
    - <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:
    - trio.move_on_after
    - dns._asyncbackend.NullContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/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._trio_backend._maybe_timeout
    - trio.move_on_after
    - dns._asyncbackend.NullContext
    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._trio_backend._maybe_timeout
    - trio.move_on_after
    - dns._asyncbackend.NullContext
    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 0x7fd437f3f910>
    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._trio_backend._maybe_timeout
    - trio.move_on_after
    - dns._asyncbackend.NullContext
    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._trio_backend._maybe_timeout
    - trio.move_on_after
    - dns._asyncbackend.NullContext
    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._trio_backend._maybe_timeout
    - trio.move_on_after
    - dns._asyncbackend.NullContext
    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 0x7fd437ed32b0>
    - <ast.Constant object at 0x7fd437ed3790>
    - <ast.Constant object at 0x7fd437ed35e0>
    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:
    - httpcore._backends.trio.TrioStream
    - _colon_colon_start.match
    - s.bind
    - addresses.append
    - dns.query._compute_times
    - <builtin>.ord
    - s.connect
    - dns._asyncbackend.NullContext
    - canonical.append
    - time.time
    - stream.aclose
    - trio.socket.socket
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - dns._trio_backend.StreamSocket.__init__
    - <builtin>.int
    - dns.inet.af_for_address
    - trio.SSLStream
    - trio.move_on_after
    - <builtin>.len
    - btext.split
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns._trio_backend.Backend.make_socket
    - <builtin>.min
    - dns.query._remaining
    - part.isdigit
    - s.close
    - dns.query._expiration_for_this_attempt
    - answers.addresses
    - m.group
    - dns.inet.is_address
    - _v4_ending.match
    - dns._trio_backend.DatagramSocket.__init__
    - dns._trio_backend._maybe_timeout
    - trio.SocketStream
    - <builtin>.super
    - struct.pack
    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 0x7fd4388977f0>
    - <ast.Constant object at 0x7fd438897e20>
    - <ast.Constant object at 0x7fd438897880>
    - <ast.Constant object at 0x7fd438897c70>
    - <ast.Constant object at 0x7fd4388978e0>
    - <ast.Constant object at 0x7fd4388978b0>
    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:
    - trio.socket.socket
    - s.bind
    - dns._trio_backend.StreamSocket.__init__
    - dns._trio_backend.DatagramSocket.__init__
    - dns._trio_backend._maybe_timeout
    - trio.SocketStream
    - <builtin>.super
    - s.connect
    - trio.SSLStream
    - dns._asyncbackend.NullContext
    - s.close
    - trio.move_on_after
    - 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 0x7fd437decbb0>
    - <ast.Constant object at 0x7fd437decaf0>
    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._trio_backend._NetworkBackend.__init__
    - <builtin>.super
    - dns.asyncresolver.Resolver
    linkageType: pythonLinkage
    raised: []
    returnType: 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.bind
    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: 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: s.close
    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: 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._trio_backend._maybe_timeout
    - trio.move_on_after
    - dns._asyncbackend.NullContext
    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:
    - int_parts.append
    - requirement.split
    - importlib.metadata.version
    - version.split
    - _cache.get
    - dns._features._version_check
    - <builtin>.int
    - itertools.takewhile
    - dns._features._tuple_from_text
    - dns._features.have
    - _requirements.get
    - <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: 78
    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 0x7fd4386ec490>
    - <ast.Constant object at 0x7fd4386ec970>
    - <ast.Constant object at 0x7fd4386ec220>
    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: 85
    functionName: dns.query._NetworkBackend.connect_tcp
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - socket.if_nametoindex
    - s.bind
    - addresses.append
    - sel.register
    - dns.query._compute_times
    - <builtin>.ord
    - dns.query._connect
    - canonical.append
    - dns.inet.low_level_address_tuple
    - time.time
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.query._wait_for
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - dns.query.make_socket
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - fd.pending
    - btext.endswith
    - <builtin>.min
    - dns.ipv6.inet_aton
    - <builtin>.range
    - btext.startswith
    - s.setblocking
    - dns.query._remaining
    - part.isdigit
    - sel.select
    - s.close
    - dns.query._expiration_for_this_attempt
    - selectors.DefaultSelector
    - answers.addresses
    - m.group
    - dns.query._wait_for_writable
    - dns.inet.is_address
    - address.find
    - s.getsockopt
    - _v4_ending.match
    - s.connect_ex
    - struct.pack
    - scope.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fd43829ec70>
    argNames:
    - af
    - type
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 325
    functionName: dns.query.make_socket
    functionSourceFile: dns.query
    functionUses: 11
    functionsReached:
    - s.close
    - s.setblocking
    - s.bind
    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: 1194
    functionName: dns.query._connect
    functionSourceFile: dns.query
    functionUses: 8
    functionsReached:
    - dns.query._wait_for_writable
    - dns.query._wait_for
    - <builtin>.isinstance
    - sel.register
    - s.getsockopt
    - sel.select
    - s.connect_ex
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    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 0x7fd437b5d310>
    - <ast.Constant object at 0x7fd437b5df10>
    argNames:
    - self
    - path
    - timeout
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 126
    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: 154
    functionName: dns.query._HTTPTransport.__init__
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - dns.resolver.Resolver
    - dns.query._NetworkBackend.__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.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: 165
    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: 3
    argDefaultValues: []
    argNames:
    - af
    - kind
    - proto
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: dns.query.default_socket_factory
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - socket.socket
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.socket
    functionSourceFile: socket
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    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: 217
    functionName: dns.query._wait_for
    functionSourceFile: dns.query
    functionUses: 22
    functionsReached:
    - <builtin>.isinstance
    - sel.register
    - sel.select
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 245
    functionName: dns.query._wait_for_readable
    functionSourceFile: dns.query
    functionUses: 16
    functionsReached:
    - dns.query._wait_for
    - <builtin>.isinstance
    - sel.register
    - sel.select
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    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: 249
    functionName: dns.query._wait_for_writable
    functionSourceFile: dns.query
    functionUses: 18
    functionsReached:
    - dns.query._wait_for
    - <builtin>.isinstance
    - sel.register
    - sel.select
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    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: 253
    functionName: dns.query._addresses_equal
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - dns.inet.inet_pton
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - m.group
    - _v4_ending.match
    - struct.pack
    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: 265
    functionName: dns.query._matches_destination
    functionSourceFile: dns.query
    functionUses: 8
    functionsReached:
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns.query._addresses_equal
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.is_multicast
    - btext.split
    - <builtin>.len
    - btext.endswith
    - dns.inet.inet_pton
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - m.group
    - _v4_ending.match
    - struct.pack
    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 0x7fd438491b50>
    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: 281
    functionName: dns.query._destination_and_source
    functionSourceFile: dns.query
    functionUses: 10
    functionsReached:
    - _colon_colon_start.match
    - socket.if_nametoindex
    - dns.inet.any_for_af
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - m.group
    - address.find
    - _v4_ending.match
    - struct.pack
    - scope.isdigit
    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: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fd43864c940>
    - <ast.Constant object at 0x7fd43864c520>
    argNames:
    - af
    - type
    - ssl_context
    - server_hostname
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 358
    functionName: dns.query.make_ssl_socket
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - server_hostname.to_text
    - <builtin>.isinstance
    - dns.query.make_socket
    - s.setblocking
    - s.bind
    - ssl_context.wrap_socket
    - s.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: server_hostname.to_text
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ssl_context.wrap_socket
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - af
    - type
    - source
    - ssl_context
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 401
    functionName: dns.query._make_socket
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - server_hostname.to_text
    - dns.query.make_ssl_socket
    - <builtin>.isinstance
    - dns.query.make_socket
    - s.setblocking
    - s.bind
    - ssl_context.wrap_socket
    - s.close
    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: 414
    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 0x7fd438ecd940>
    - <ast.Constant object at 0x7fd438ecdbb0>
    - <ast.Constant object at 0x7fd438ecd610>
    - <ast.Constant object at 0x7fd438ecdc70>
    - <ast.Constant object at 0x7fd438ecdf70>
    - <ast.Constant object at 0x7fd438ecd4c0>
    - <ast.Constant object at 0x7fd438ecdb80>
    - <ast.Constant object at 0x7fd438ecdaf0>
    - <ast.Constant object at 0x7fd438ecdeb0>
    - <ast.Constant object at 0x7fd438ecde80>
    - <ast.Constant object at 0x7fd438ecddf0>
    - <ast.Constant object at 0x7fd438ecdd30>
    - <ast.Attribute object at 0x7fd438ecd3a0>
    - <ast.Attribute object at 0x7fd438ecda90>
    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: 444
    functionName: dns.query.https
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.resolver.Resolver
    - dns.inet.low_level_address_tuple
    - session.post
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - headers.update
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - answers.addresses
    - dns.name._maybe_convert_to_binary
    - dns.query._NetworkBackend.__init__
    - _v4_ending.match
    - stream.headers
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - socket.if_nametoindex
    - dns.query._destination_and_source
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - random.choice
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - httpx.Client
    - stream.receive
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - base64.urlsafe_b64encode
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - stream.send_h3
    - r.update_ttl
    - dns.query._http3
    - _colon_colon_end.match
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.query._maybe_get_resolver
    - dns.query._find_header
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - wire.decode
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - address.find
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - response.elapsed.total_seconds
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - dns.query._check_status
    - time.time
    - label.encode
    - RdataType.to_text
    - socket.getaddrinfo
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.query._HTTPTransport.__init__
    - dns.rrset.RRset.__init__
    - dns.quic.SyncQuicManager
    - typing.cast
    - btext.startswith
    - resolver.resolve_name
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - session.get
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    - scope.isdigit
    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: 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 0x7fd43802a910>
    - <ast.Constant object at 0x7fd43802abe0>
    - <ast.Constant object at 0x7fd43802ac40>
    - <ast.Constant object at 0x7fd438480580>
    - <ast.Constant object at 0x7fd438480c40>
    - <ast.Constant object at 0x7fd438480610>
    - <ast.Constant object at 0x7fd438480160>
    - <ast.Constant object at 0x7fd438480c70>
    - <ast.Constant object at 0x7fd438480190>
    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: 677
    functionName: dns.query._http3
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - stream.headers
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - stream.receive
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - stream.send_h3
    - r.update_ttl
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.query._find_header
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - wire.decode
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - dns.query._check_status
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.quic.SyncQuicManager
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    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 0x7fd437dece20>
    - <ast.Constant object at 0x7fd437dec100>
    - <ast.Constant object at 0x7fd437dec1f0>
    - <ast.Constant object at 0x7fd437decbb0>
    - <ast.Constant object at 0x7fd437dec040>
    - <ast.Constant object at 0x7fd437decb80>
    - <ast.Constant object at 0x7fd437decd90>
    - <ast.Constant object at 0x7fd438f0f610>
    - <ast.Constant object at 0x7fd438f0fee0>
    - <ast.Constant object at 0x7fd438f0ff10>
    - <ast.Constant object at 0x7fd438f0f370>
    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: 1296
    functionName: dns.message.from_wire
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.message._maybe_import_update
    - dns.tsig.HMACTSig.update
    - dns.name.from_text
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    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: 651
    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: 660
    functionName: dns.query._check_status
    functionSourceFile: dns.query
    functionUses: 6
    functionsReached:
    - <builtin>.len
    - wire.decode
    - <builtin>.int
    - dns.query._find_header
    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: 738
    functionName: dns.query._udp_recv
    functionSourceFile: dns.query
    functionUses: 7
    functionsReached:
    - dns.query._wait_for
    - <builtin>.isinstance
    - sel.register
    - dns.query._wait_for_readable
    - sock.recvfrom
    - sel.select
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 750
    functionName: dns.query._udp_send
    functionSourceFile: dns.query
    functionUses: 7
    functionsReached:
    - sock.sendto
    - dns.query._wait_for_writable
    - dns.query._wait_for
    - <builtin>.isinstance
    - sel.register
    - sel.select
    - time.time
    - fd.pending
    - sock.send
    - selectors.DefaultSelector
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd4387cb130>
    argNames:
    - sock
    - what
    - destination
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 765
    functionName: dns.query.send_udp
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - sock.sendto
    - dns.query._wait_for_writable
    - dns.query._wait_for
    - <builtin>.isinstance
    - what.to_wire
    - sel.register
    - sel.select
    - dns.query._udp_send
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    - sock.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437b28400>
    - <ast.Constant object at 0x7fd437b28160>
    - <ast.Constant object at 0x7fd437b28370>
    - <ast.Constant object at 0x7fd437b28280>
    - <ast.Constant object at 0x7fd437b28850>
    - <ast.Constant object at 0x7fd437b28640>
    - <ast.Constant object at 0x7fd437b28190>
    - <ast.Constant object at 0x7fd437b282b0>
    - <ast.Constant object at 0x7fd437b28130>
    - <ast.Constant object at 0x7fd437b280a0>
    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: 794
    functionName: dns.query.receive_udp
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.query._udp_recv
    - dns.wire.Parser
    - dns.name._validate_labels
    - sel.register
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._wait_for_readable
    - dns.inet.is_multicast
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - e.message
    - dns.message._message_factory_from_opcode
    - sel.select
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - _v4_ending.match
    - sock.recvfrom
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.query._matches_destination
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - query.is_response
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - time.time
    - dns.query._addresses_equal
    - RdataType.to_text
    - label.encode
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.inet.inet_pton
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <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: 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 0x7fd4380cab20>
    - <ast.Constant object at 0x7fd4380cab50>
    - <ast.Constant object at 0x7fd4380cadf0>
    - <ast.Constant object at 0x7fd4380caa60>
    - <ast.Constant object at 0x7fd4380cafd0>
    - <ast.Constant object at 0x7fd4380ca130>
    - <ast.Constant object at 0x7fd4380caac0>
    - <ast.Constant object at 0x7fd4380cafa0>
    - <ast.Constant object at 0x7fd4380cac40>
    - <ast.Constant object at 0x7fd4380ca610>
    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: 900
    functionName: dns.query.udp
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.query._udp_recv
    - dns.wire.Parser
    - s.bind
    - dns.name._validate_labels
    - sel.register
    - dns.inet.low_level_address_tuple
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._wait_for_readable
    - dns.inet.is_multicast
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - e.message
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - _v4_ending.match
    - sock.recvfrom
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - socket.if_nametoindex
    - dns.query._compute_times
    - dns.query._destination_and_source
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.query._matches_destination
    - dns.inet.af_for_address
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - s.setblocking
    - dns.rdatatype.RdataType.make
    - query.is_response
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - s.close
    - dns.flags.Flag
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - dns.query.make_socket
    - what.to_wire
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - address.find
    - <builtin>.bytes
    - dns.query.send_udp
    - labels.append
    - dns.query._udp_send
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - sock.sendto
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - dns.query.receive_udp
    - dns.query._addresses_equal
    - time.time
    - socket.getaddrinfo
    - RdataType.to_text
    - label.encode
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.inet.inet_pton
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    - scope.isdigit
    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 0x7fd438053d30>
    - <ast.Constant object at 0x7fd438053f70>
    - <ast.Constant object at 0x7fd438053f40>
    - <ast.Constant object at 0x7fd438053fa0>
    - <ast.Constant object at 0x7fd4380535b0>
    - <ast.Constant object at 0x7fd4380534c0>
    - <ast.Constant object at 0x7fd438053370>
    - <ast.Constant object at 0x7fd438053bb0>
    - <ast.Constant object at 0x7fd4380531c0>
    - <ast.Constant object at 0x7fd438053eb0>
    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: 992
    functionName: dns.query.udp_with_fallback
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.query._udp_recv
    - dns.wire.Parser
    - s.bind
    - dns.name._validate_labels
    - sel.register
    - dns.inet.low_level_address_tuple
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._net_write
    - dns.query._wait_for_readable
    - dns.inet.is_multicast
    - dns.name.from_unicode
    - <builtin>.len
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.query.tcp
    - e.message
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - _v4_ending.match
    - sock.recvfrom
    - s.connect_ex
    - dns.name.is_all_ascii
    - dns.query.udp
    - rdtype_text.replace
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - socket.if_nametoindex
    - dns.query._destination_and_source
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.query._matches_destination
    - dns.inet.af_for_address
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - s.setblocking
    - dns.rdatatype.RdataType.make
    - query.is_response
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - s.close
    - dns.flags.Flag
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - s.getsockopt
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - q.is_response
    - sock.recv
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - dns.query._connect
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - dns.query.make_socket
    - text.encode
    - what.to_wire
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - address.find
    - <builtin>.bytes
    - dns.query.send_udp
    - labels.append
    - dns.query._udp_send
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - sock.sendto
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - dns.query._net_read
    - dns.query.receive_tcp
    - dns.query.receive_udp
    - time.time
    - dns.query._addresses_equal
    - socket.getaddrinfo
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - binascii.unhexlify
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.inet.inet_pton
    - typing.cast
    - btext.startswith
    - dns.query.send_tcp
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    - scope.isdigit
    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 0x7fd437ed54f0>
    - <ast.Constant object at 0x7fd437ed59a0>
    - <ast.Constant object at 0x7fd437ed5070>
    - <ast.Constant object at 0x7fd437ed5e20>
    - <ast.Constant object at 0x7fd437ed5c40>
    - <ast.Constant object at 0x7fd437ed58e0>
    - <ast.Constant object at 0x7fd437ed5580>
    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: 1205
    functionName: dns.query.tcp
    functionSourceFile: dns.query
    functionUses: 4
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - s.bind
    - dns.name._validate_labels
    - sel.register
    - dns.inet.low_level_address_tuple
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._net_write
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - _v4_ending.match
    - s.connect_ex
    - dns.name.is_all_ascii
    - rdtype_text.replace
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - socket.if_nametoindex
    - dns.query._compute_times
    - dns.query._destination_and_source
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - s.setblocking
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - s.close
    - dns.flags.Flag
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - s.getsockopt
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - q.is_response
    - sock.recv
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - dns.query._connect
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - dns.query.make_socket
    - what.to_wire
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - address.find
    - <builtin>.bytes
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - dns.query._net_read
    - dns.query.receive_tcp
    - time.time
    - label.encode
    - RdataType.to_text
    - socket.getaddrinfo
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - dns.query.send_tcp
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    - scope.isdigit
    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: 1080
    functionName: dns.query._net_read
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - dns.query._wait_for_writable
    - dns.query._wait_for
    - sock.recv
    - <builtin>.isinstance
    - dns.query._wait_for_readable
    - sel.register
    - sel.select
    - <builtin>.len
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    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: 1101
    functionName: dns.query._net_write
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - dns.query._wait_for_writable
    - dns.query._wait_for
    - <builtin>.isinstance
    - dns.query._wait_for_readable
    - sel.register
    - sel.select
    - <builtin>.len
    - time.time
    - fd.pending
    - sock.send
    - selectors.DefaultSelector
    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 0x7fd437ac4190>
    argNames:
    - sock
    - what
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1117
    functionName: dns.query.send_tcp
    functionSourceFile: dns.query
    functionUses: 5
    functionsReached:
    - dns.query._wait_for_writable
    - dns.query._wait_for
    - <builtin>.isinstance
    - dns.query._net_write
    - what.to_wire
    - dns.query._wait_for_readable
    - sel.register
    - sel.select
    - <builtin>.len
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    - sock.send
    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 0x7fd43822c5b0>
    - <ast.Constant object at 0x7fd43822ccd0>
    - <ast.Constant object at 0x7fd43822ca90>
    - <ast.Constant object at 0x7fd43822cf70>
    - <ast.Constant object at 0x7fd43822c1c0>
    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: 1147
    functionName: dns.query.receive_tcp
    functionSourceFile: dns.query
    functionUses: 5
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - sel.register
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - sel.select
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - selectors.DefaultSelector
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - sock.recv
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - dns.query._net_read
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <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.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: 1275
    functionName: dns.query._tls_handshake
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.query._wait_for_writable
    - dns.query._wait_for
    - <builtin>.isinstance
    - dns.query._wait_for_readable
    - sel.register
    - s.do_handshake
    - sel.select
    - fd.pending
    - time.time
    - selectors.DefaultSelector
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 2
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fd438d54cd0>
    - <ast.Constant object at 0x7fd438d54eb0>
    - <ast.Constant object at 0x7fd438d549a0>
    argNames:
    - verify
    - check_hostname
    - alpns
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1286
    functionName: dns.query.make_ssl_context
    functionSourceFile: dns.query
    functionUses: 5
    functionsReached:
    - ssl.create_default_context
    - os.path.isdir
    - <builtin>.isinstance
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - os.path.isfile
    - dns._no_ssl.create_default_context
    - ssl_context.set_alpn_protocols
    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: 6
    functionName: dns._tls_util.convert_verify_to_cafile_and_capath
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached:
    - os.path.isdir
    - <builtin>.isinstance
    - os.path.isfile
    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: 9
    functionsReached: []
    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: 60
    functionName: dns._no_ssl.create_default_context
    functionSourceFile: ''
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ssl_context.set_alpn_protocols
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - server_hostname
    - verify
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1320
    functionName: dns.query._make_dot_ssl_context
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - ssl.create_default_context
    - os.path.isdir
    - <builtin>.isinstance
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.query.make_ssl_context
    - os.path.isfile
    - dns._no_ssl.create_default_context
    - ssl_context.set_alpn_protocols
    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 0x7fd43849f9d0>
    - <ast.Constant object at 0x7fd43849fbe0>
    - <ast.Constant object at 0x7fd43849f820>
    - <ast.Constant object at 0x7fd43849ff70>
    - <ast.Constant object at 0x7fd43849fee0>
    - <ast.Constant object at 0x7fd43849fa60>
    - <ast.Constant object at 0x7fd43849f790>
    - <ast.Constant object at 0x7fd43849ffa0>
    - <ast.Constant object at 0x7fd43849f8b0>
    - <ast.Constant object at 0x7fd43849f9a0>
    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: 1326
    functionName: dns.query.tls
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - s.bind
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.name._validate_labels
    - sel.register
    - dns.inet.low_level_address_tuple
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._net_write
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.query.tcp
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - os.path.isdir
    - _v4_ending.match
    - dns._no_ssl.create_default_context
    - s.connect_ex
    - dns.name.is_all_ascii
    - rdtype_text.replace
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - server_hostname.to_text
    - dns.message._WireReader._add_error
    - system_random.randrange
    - labels.extend
    - dns.query.make_ssl_socket
    - socket.if_nametoindex
    - dns.query._destination_and_source
    - dns.query._compute_times
    - ssl_context.wrap_socket
    - canonical.append
    - dns.message.Message.__init__
    - ssl_context.set_alpn_protocols
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - dns.query.make_ssl_context
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - _rdata_classes.get
    - dns.ipv6.inet_aton
    - dns.name.IDNA2003Codec.encode
    - s.setblocking
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - s.close
    - dns.flags.Flag
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - s.getsockopt
    - r.read
    - hmac.compare_digest
    - struct.pack
    - dns.query._tls_handshake
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - q.is_response
    - sock.recv
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - dns.query._connect
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - dns.query.make_socket
    - text.encode
    - what.to_wire
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - os.path.isfile
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - address.find
    - <builtin>.bytes
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - ssl.create_default_context
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - s.do_handshake
    - dns.query._net_read
    - dns.query.receive_tcp
    - time.time
    - label.encode
    - RdataType.to_text
    - socket.getaddrinfo
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - binascii.unhexlify
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - dns.query.send_tcp
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    - scope.isdigit
    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 0x7fd4387278e0>
    - <ast.Constant object at 0x7fd438727610>
    - <ast.Constant object at 0x7fd438727550>
    - <ast.Constant object at 0x7fd438727f10>
    - <ast.Constant object at 0x7fd438727250>
    - <ast.Constant object at 0x7fd438727940>
    - <ast.Constant object at 0x7fd4387275b0>
    - <ast.Constant object at 0x7fd438727580>
    - <ast.Constant object at 0x7fd438727850>
    - <ast.Constant object at 0x7fd438727a60>
    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: 1434
    functionName: dns.query.quic
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - stream.send
    - dns.query._compute_times
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - stream.receive
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.quic.SyncQuicManager
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    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: 1544
    functionName: dns.query._inbound_xfr
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.query._udp_recv
    - dns.wire.Parser
    - dns.name._validate_labels
    - sel.register
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._net_write
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - inbound.process_message
    - sock.recvfrom
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.xfr.Inbound
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - txn_manager.from_wire_origin
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - sock.recv
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - query.to_wire
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.query._udp_send
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - sock.sendto
    - dns.entropy.EntropyPool.random_8
    - dns.query._net_read
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <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: 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 0x7fd437e909a0>
    - <ast.Attribute object at 0x7fd437e90ac0>
    - <ast.Constant object at 0x7fd437e90310>
    - <ast.Constant object at 0x7fd437e902e0>
    - <ast.Constant object at 0x7fd437e90490>
    - <ast.Constant object at 0x7fd437e90970>
    - <ast.Constant object at 0x7fd437e90220>
    - <ast.Constant object at 0x7fd437e90d00>
    - <ast.Constant object at 0x7fd437e907f0>
    - <ast.Constant object at 0x7fd437e90790>
    - <ast.Constant object at 0x7fd437e90c10>
    - <ast.Constant object at 0x7fd437e90b80>
    - <ast.Attribute object at 0x7fd437e905b0>
    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: 1596
    functionName: dns.query.xfr
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.rdata.from_text
    - dns.query._udp_recv
    - dns.wire.Parser
    - s.bind
    - parser.restrict_to
    - dns.name._validate_labels
    - sel.register
    - dns.message.Message.want_dnssec
    - dns.inet.low_level_address_tuple
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._net_write
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - q.find_rrset
    - inbound.process_message
    - dns.message.make_query
    - _v4_ending.match
    - sock.recvfrom
    - rdtype_text.replace
    - s.connect_ex
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.xfr.Inbound
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - socket.if_nametoindex
    - dns.query._destination_and_source
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - dns.rdtypes.ANY.OPT.OPT
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - txn_manager.from_wire_origin
    - _rdata_classes.get
    - dns.ipv6.inet_aton
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - s.setblocking
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - s.close
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - object.__setattr__
    - <builtin>.open
    - s.getsockopt
    - r.read
    - tok.concatenate_remaining_identifiers
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - tok.get
    - rdata.to_wire
    - sock.recv
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - dns.query._connect
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - dns.query.make_socket
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.message.Message._make_opt
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - tok.unget
    - dns.message._WireReader.__init__
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - query.to_wire
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - tok.get_int
    - address.find
    - <builtin>.bytes
    - dns.query.xfr.DummyTransactionManager.__init__
    - labels.append
    - dns.query._udp_send
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.query._inbound_xfr
    - sock.sendto
    - token.is_identifier
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - dns.query._net_read
    - time.time
    - label.encode
    - RdataType.to_text
    - socket.getaddrinfo
    - dns.tsig._maybe_start_digest
    - q.use_tsig
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - rrset.add
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - <builtin>.getattr
    - dns.rrset.RRset
    - dns.rdata.from_wire_parser
    - rd.covers
    - dns.tokenizer.Tokenizer
    - dns.message.Message.section_number
    - <builtin>.super
    - <builtin>.enumerate
    - scope.isdigit
    - dns.message.Message.use_edns
    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: 1666
    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: 1669
    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: 1672
    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: 1675
    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 0x7fd4381cedc0>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1678
    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: 1680
    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: 1683
    functionName: dns.query.xfr.DummyTransactionManager.writer.DummyTransaction.__getattr__
    functionSourceFile: dns.query
    functionUses: 0
    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 0x7fd4387651f0>
    - <ast.Constant object at 0x7fd438765820>
    - <ast.Constant object at 0x7fd4387658e0>
    - <ast.Constant object at 0x7fd4387659d0>
    - <ast.Constant object at 0x7fd438765790>
    - <ast.Constant object at 0x7fd438765640>
    - <ast.Constant object at 0x7fd438765d00>
    - <ast.Constant object at 0x7fd438765460>
    - <ast.Constant object at 0x7fd438765c40>
    - <ast.Attribute object at 0x7fd438765940>
    - <ast.Constant object at 0x7fd437bb06a0>
    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: 7
    functionLinenumber: 1740
    functionName: dns.message.make_query
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached:
    - labels.extend
    - <builtin>.list
    - system_random.randrange
    - os.getpid
    - os.urandom
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - dns.message.Message.want_dnssec
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.message.Message.__init__
    - dns.entropy.EntropyPool.random_16
    - r.update_ttl
    - time.time
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - dns.entropy.EntropyPool._stir
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.from_unicode
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - <builtin>.enumerate
    - dns.rrset.RRset.__init__
    - <builtin>.str
    - dns.entropy.random_16
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.bytearray
    - dns.rrset.from_rdata
    - r.add
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.message.Message.section_number
    - <builtin>.open
    - <builtin>.bytes
    - r.read
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - struct.pack
    - dns.message.Message.use_edns
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd4380bf5e0>
    - <ast.Constant object at 0x7fd4380bf820>
    - <ast.Constant object at 0x7fd4380bfd90>
    - <ast.Constant object at 0x7fd4380bf2b0>
    - <ast.Constant object at 0x7fd4380bf790>
    - <ast.Constant object at 0x7fd4380bfdf0>
    - <ast.Attribute object at 0x7fd4380bfdc0>
    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: 1714
    functionName: dns.query.inbound_xfr
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns.xfr.extract_serial_from_query
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.rdata.from_text
    - dns.query._udp_recv
    - dns.wire.Parser
    - s.bind
    - parser.restrict_to
    - dns.name._validate_labels
    - sel.register
    - dns.message.Message.want_dnssec
    - dns.inet.low_level_address_tuple
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._net_write
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - inbound.process_message
    - q.find_rrset
    - dns.message.make_query
    - _v4_ending.match
    - sock.recvfrom
    - s.connect_ex
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.xfr.Inbound
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - socket.if_nametoindex
    - dns.query._destination_and_source
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - dns.rdtypes.ANY.OPT.OPT
    - dns.xfr.make_query
    - <builtin>.abs
    - txn_manager.get_class
    - btext.endswith
    - <builtin>.str
    - txn_manager.from_wire_origin
    - _rdata_classes.get
    - dns.ipv6.inet_aton
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - s.setblocking
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - s.close
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - object.__setattr__
    - <builtin>.open
    - s.getsockopt
    - r.read
    - tok.concatenate_remaining_identifiers
    - hmac.compare_digest
    - struct.pack
    - txn_manager.reader
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - txn_manager.origin_information
    - _colon_colon_start.match
    - tok.get
    - rdata.to_wire
    - sock.recv
    - query.find_rrset
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - dns.query._connect
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - dns.query.make_socket
    - dns.opcode.from_flags
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - tok.unget
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - query.to_wire
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - tok.get_int
    - address.find
    - <builtin>.bytes
    - labels.append
    - dns.query._udp_send
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - txn.get
    - struct.unpack
    - importlib.import_module
    - dns.query._inbound_xfr
    - sock.sendto
    - token.is_identifier
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - dns.query._net_read
    - time.time
    - label.encode
    - RdataType.to_text
    - socket.getaddrinfo
    - dns.tsig._maybe_start_digest
    - q.use_tsig
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - rrset.add
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - <builtin>.getattr
    - dns.rrset.RRset
    - dns.rdata.from_wire_parser
    - rd.covers
    - dns.tokenizer.Tokenizer
    - dns.message.Message.section_number
    - <builtin>.super
    - <builtin>.enumerate
    - scope.isdigit
    - dns.message.Message.use_edns
    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 0x7fd4380c3190>
    - <ast.Constant object at 0x7fd4380c3a30>
    - <ast.Constant object at 0x7fd4380c3250>
    - <ast.Constant object at 0x7fd4380c3400>
    - <ast.Constant object at 0x7fd4380c3100>
    - <ast.Constant object at 0x7fd4380c3790>
    - <ast.Constant object at 0x7fd4380c3be0>
    - <ast.Constant object at 0x7fd4380c3640>
    - <ast.Attribute object at 0x7fd4380c3220>
    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: 8
    functionLinenumber: 267
    functionName: dns.xfr.make_query
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.rdata.from_text
    - parser.restrict_to
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.entropy.random_16
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - q.find_rrset
    - dns.message.make_query
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - system_random.randrange
    - dns.message.Message.__init__
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.entropy.EntropyPool._stir
    - dns.rdtypes.ANY.OPT.OPT
    - txn_manager.get_class
    - <builtin>.str
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - r.add
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - object.__setattr__
    - <builtin>.open
    - r.read
    - tok.concatenate_remaining_identifiers
    - struct.pack
    - txn_manager.reader
    - <builtin>.list
    - os.getpid
    - txn_manager.origin_information
    - tok.get
    - rdata.to_wire
    - <builtin>.ord
    - r.update_ttl
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - tok.unget
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - RdataClass.to_text
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - tok.get_int
    - <builtin>.bytes
    - labels.append
    - dns.name.from_text
    - txn.get
    - importlib.import_module
    - token.is_identifier
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - label.encode
    - time.time
    - RdataType.to_text
    - q.use_tsig
    - binascii.unhexlify
    - rrset.add
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - <builtin>.getattr
    - dns.rrset.RRset
    - dns.rdata.from_wire_parser
    - dns.tokenizer.Tokenizer
    - dns.message.Message.section_number
    - <builtin>.super
    - <builtin>.enumerate
    - dns.message.Message.use_edns
    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: 342
    functionName: dns.xfr.extract_serial_from_query
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - query.find_rrset
    - typing.cast
    - <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: 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: 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: os.path.isdir
    functionSourceFile: os
    functionUses: 8
    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: 65
    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 0x7fd438092190>
    argNames:
    - self
    - qnames
    - responses
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: dns.resolver.NXDOMAIN._check_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.isinstance
    - <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: 80
    functionName: dns.resolver.NXDOMAIN.__str__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.super
    - <builtin>.map
    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: 92
    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: 108
    functionName: dns.resolver.NXDOMAIN.__add__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.dict
    - e_nx.kwargs.get
    - dns.resolver.NXDOMAIN.__init__
    - <builtin>.super
    - 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: 120
    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: 127
    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: 135
    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: 156
    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: 173
    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: 176
    functionName: dns.resolver.LifetimeTimeout._fmt_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver._errors_to_text
    - <builtin>.super
    - texts.append
    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: 197
    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: 200
    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: 203
    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: 222
    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: 225
    functionName: dns.resolver.NoNameservers._fmt_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver._errors_to_text
    - <builtin>.super
    - texts.append
    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 0x7fd438531250>
    - <ast.Constant object at 0x7fd4385313d0>
    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: 264
    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: 286
    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: 301
    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: 304
    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: 307
    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: 312
    functionName: dns.resolver.Answer.__delitem__
    functionSourceFile: dns.resolver
    functionUses: 0
    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 0x7fd43886ca00>
    argNames:
    - self
    - family
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 347
    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 0x7fd438c49340>
    argNames:
    - self
    - family
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 366
    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: 370
    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 0x7fd437ef5d30>
    - <ast.Constant object at 0x7fd437ef5160>
    argNames:
    - self
    - hits
    - misses
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 380
    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: 384
    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: 388
    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: 393
    functionName: dns.resolver.CacheBase.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.CacheStatistics.__init__
    - threading.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 397
    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: 402
    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: 407
    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: 412
    functionName: dns.resolver.CacheBase.get_statistics_snapshot
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.CacheStatistics.__init__
    - dns.resolver.CacheStatistics.clone
    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 0x7fd4386b6310>
    argNames:
    - self
    - cleaning_interval
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 429
    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: 439
    functionName: dns.resolver.Cache._maybe_clean
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached:
    - time.time
    - keys_to_delete.append
    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: 453
    functionName: dns.resolver.Cache.get
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - keys_to_delete.append
    - time.time
    - dns.resolver.Cache._maybe_clean
    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: 473
    functionName: dns.resolver.Cache.put
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - time.time
    - keys_to_delete.append
    - dns.resolver.Cache._maybe_clean
    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 0x7fd437da67c0>
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 486
    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: 508
    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: 515
    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: 521
    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 0x7fd437ceae80>
    argNames:
    - self
    - max_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 536
    functionName: dns.resolver.LRUCache.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.resolver.LRUCacheNode.__init__
    - dns.resolver.LRUCache.set_max_size
    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: 548
    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: 553
    functionName: dns.resolver.LRUCache.get
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - time.time
    - node.link_after
    - node.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: 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: 581
    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: 590
    functionName: dns.resolver.LRUCache.put
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.LRUCacheNode.link_after
    - dns.resolver.LRUCacheNode.__init__
    - dns.resolver.LRUCacheNode.unlink
    - gnode.unlink
    - <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: 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 0x7fd437ea4760>
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 612
    functionName: dns.resolver.LRUCache.flush
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - node.unlink
    - gnode.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: 649
    functionName: dns.resolver._Resolution.__init__
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - dns.rdataclass.is_metaclass
    - <builtin>.list
    - labels.extend
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - qnames_to_try.insert
    - dns.rdatatype.is_metatype
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - qname.concatenate
    - encodings.idna.ToASCII
    - labels.append
    - qname.is_absolute
    - dns.name.from_text
    - dns.name.is_all_ascii
    - qnames_to_try.append
    - struct.pack
    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: 1089
    functionName: dns.resolver.BaseResolver._get_qnames_to_try
    functionSourceFile: dns.resolver
    functionUses: 8
    functionsReached:
    - qname.concatenate
    - qnames_to_try.insert
    - 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: 8
    functionLinenumber: 686
    functionName: dns.resolver._Resolution.next_request
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - os.urandom
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.entropy.random_16
    - <builtin>.range
    - nameserver_ports.get
    - dns.nameserver.DoHNameserver
    - dns.name._maybe_convert_to_binary
    - request.use_edns
    - dns.message.make_query
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool.random_16
    - labels.extend
    - system_random.randrange
    - canonical.append
    - dns.message.Message.__init__
    - answer.response.rcode
    - dns.entropy.EntropyPool._stir
    - dns.rdtypes.ANY.OPT.OPT
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - r.add
    - part.isdigit
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - <builtin>.open
    - r.read
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - _colon_colon_start.match
    - random.shuffle
    - <builtin>.ord
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.name.from_text
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - request.use_tsig
    - time.time
    - label.encode
    - binascii.unhexlify
    - btext.split
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - dns.message.Message.section_number
    - <builtin>.super
    - <builtin>.enumerate
    - dns.message.Message.use_edns
    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: 1188
    functionName: dns.resolver.BaseResolver._enrich_nameservers
    functionSourceFile: dns.resolver
    functionUses: 9
    functionsReached:
    - urllib.parse.urlparse
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - nameserver_ports.get
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.nameserver.DoHNameserver
    - part.isdigit
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - _v4_ending.match
    - dns.nameserver.Do53Nameserver
    - struct.pack
    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: 761
    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: 782
    functionName: dns.resolver._Resolution.query_result
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - dns.resolver.Answer.__init__
    - <builtin>.isinstance
    - response.rcode
    - dns.rcode.to_text
    - Rcode.to_text
    - response.resolve_chaining
    - time.time
    - <builtin>.str
    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 0x7fd437ed3490>
    - <ast.Constant object at 0x7fd437ed3b80>
    argNames:
    - self
    - filename
    - configure
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 935
    functionName: dns.resolver.BaseResolver.__init__
    functionSourceFile: dns.resolver
    functionUses: 13
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - labels.append
    - <builtin>.super
    - ctypes.c_ulong
    - dns.win32util.get_dns_info
    - dns.name.from_text
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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: 956
    functionName: dns.resolver.BaseResolver.reset
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - dns.name.Name
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 7
    functionLinenumber: 1054
    functionName: dns.resolver.BaseResolver.read_registry
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - dns.name._validate_labels
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.name.from_unicode
    - <builtin>.len
    - ctypes.POINTER
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - dns.win32util._WMIGetter.__init__
    - encodings.idna.ToASCII
    - dns.win32util._RegistryGetter.__init__
    - labels.append
    - <builtin>.super
    - ctypes.c_ulong
    - dns.win32util.get_dns_info
    - dns.name.from_text
    - dns.name.is_all_ascii
    - ctypes.create_string_buffer
    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: 982
    functionName: dns.resolver.BaseResolver.read_resolv_conf
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - nameservers.append
    - label.encode
    - dns.name.Name.__init__
    - contextlib.nullcontext
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - l.split
    - opt.split
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.open
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - dns.resolver.BaseResolver.use_edns
    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: <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: l.split
    functionSourceFile: <builtin>
    functionUses: 15
    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 0x7fd4384932b0>
    - <ast.Constant object at 0x7fd438493610>
    - <ast.Attribute object at 0x7fd438493520>
    - <ast.Constant object at 0x7fd438493f40>
    argNames:
    - self
    - edns
    - ednsflags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1146
    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: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 430
    functionName: dns.win32util.get_dns_info
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - dns.name._validate_labels
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.name.from_unicode
    - <builtin>.len
    - ctypes.POINTER
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - dns.win32util._WMIGetter.__init__
    - encodings.idna.ToASCII
    - dns.win32util._RegistryGetter.__init__
    - labels.append
    - <builtin>.super
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.is_all_ascii
    - ctypes.create_string_buffer
    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 0x7fd437fdee20>
    - <ast.Constant object at 0x7fd437fdeca0>
    argNames:
    - self
    - start
    - lifetime
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1065
    functionName: dns.resolver.BaseResolver._compute_timeout
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - time.time
    - <builtin>.min
    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 0x7fd438493070>
    - <ast.Attribute object at 0x7fd4384935e0>
    argNames:
    - self
    - keyring
    - keyname
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1130
    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: 1179
    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.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: 1230
    functionName: dns.resolver.BaseResolver.nameservers
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - nameserver_ports.get
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.nameserver.DoHNameserver
    - part.isdigit
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - struct.pack
    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 0x7fd43795d250>
    - <ast.Attribute object at 0x7fd43795d280>
    - <ast.Constant object at 0x7fd43795d5b0>
    - <ast.Constant object at 0x7fd43795ddf0>
    - <ast.Constant object at 0x7fd43795dac0>
    - <ast.Constant object at 0x7fd43795d610>
    - <ast.Constant object at 0x7fd43795d1c0>
    - <ast.Constant object at 0x7fd43795de20>
    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: 9
    functionLinenumber: 1248
    functionName: dns.resolver.Resolver.resolve
    functionSourceFile: dns.resolver
    functionUses: 6
    functionsReached:
    - os.urandom
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.entropy.random_16
    - <builtin>.min
    - time.sleep
    - nameserver_ports.get
    - dns.resolver.Answer.__init__
    - <builtin>.range
    - dns.nameserver.DoHNameserver
    - dns.name._maybe_convert_to_binary
    - request.use_edns
    - dns.message.make_query
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - nameserver.query
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool.random_16
    - labels.extend
    - system_random.randrange
    - dns.resolver.BaseResolver._get_qnames_to_try
    - canonical.append
    - dns.message.Message.__init__
    - dns.resolver.BaseResolver._compute_timeout
    - answer.response.rcode
    - dns.entropy.EntropyPool._stir
    - dns.rdtypes.ANY.OPT.OPT
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - dns.resolver._Resolution.__init__
    - dns.rdatatype.RdataType.make
    - response.rcode
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - part.isdigit
    - Rcode.to_text
    - dns.resolver._Resolution.query_result
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - <builtin>.open
    - r.read
    - dns.rcode.to_text
    - dns.resolver._Resolution.next_nameserver
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - _colon_colon_start.match
    - random.shuffle
    - <builtin>.ord
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.resolver._Resolution.next_request
    - response.resolve_chaining
    - qnames_to_try.insert
    - dns.rdatatype.is_metatype
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.name.from_text
    - dns.rdataclass.is_metaclass
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - request.use_tsig
    - time.time
    - label.encode
    - binascii.unhexlify
    - btext.split
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - qname.concatenate
    - dns.message.Message.section_number
    - <builtin>.super
    - qname.is_absolute
    - <builtin>.enumerate
    - qnames_to_try.append
    - dns.message.Message.use_edns
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437ce53d0>
    - <ast.Attribute object at 0x7fd437ce50d0>
    - <ast.Constant object at 0x7fd437ce5100>
    - <ast.Constant object at 0x7fd437ce5430>
    - <ast.Constant object at 0x7fd437ce5550>
    - <ast.Constant object at 0x7fd437ce5c70>
    - <ast.Constant object at 0x7fd437ce5ac0>
    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: 10
    functionLinenumber: 1350
    functionName: dns.resolver.Resolver.query
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - os.urandom
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.entropy.random_16
    - <builtin>.min
    - time.sleep
    - nameserver_ports.get
    - dns.resolver.Answer.__init__
    - <builtin>.range
    - dns.nameserver.DoHNameserver
    - dns.name._maybe_convert_to_binary
    - request.use_edns
    - dns.message.make_query
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - nameserver.query
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool.random_16
    - labels.extend
    - system_random.randrange
    - dns.resolver.BaseResolver._get_qnames_to_try
    - canonical.append
    - dns.message.Message.__init__
    - dns.resolver.BaseResolver._compute_timeout
    - answer.response.rcode
    - dns.entropy.EntropyPool._stir
    - dns.rdtypes.ANY.OPT.OPT
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - dns.resolver._Resolution.__init__
    - dns.rdatatype.RdataType.make
    - response.rcode
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - part.isdigit
    - Rcode.to_text
    - dns.resolver._Resolution.query_result
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - <builtin>.open
    - dns.resolver.Resolver.resolve
    - r.read
    - dns.rcode.to_text
    - dns.resolver._Resolution.next_nameserver
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - _colon_colon_start.match
    - random.shuffle
    - <builtin>.ord
    - warnings.warn
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.resolver._Resolution.next_request
    - response.resolve_chaining
    - qnames_to_try.insert
    - dns.rdatatype.is_metatype
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.name.from_text
    - dns.rdataclass.is_metaclass
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - request.use_tsig
    - time.time
    - label.encode
    - binascii.unhexlify
    - btext.split
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - qname.concatenate
    - dns.message.Message.section_number
    - <builtin>.super
    - qname.is_absolute
    - <builtin>.enumerate
    - qnames_to_try.append
    - dns.message.Message.use_edns
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 10
    functionLinenumber: 1385
    functionName: dns.resolver.Resolver.resolve_address
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - os.urandom
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.entropy.random_16
    - <builtin>.range
    - time.sleep
    - <builtin>.min
    - dns.resolver.Answer.__init__
    - nameserver_ports.get
    - dns.nameserver.DoHNameserver
    - dns.name._maybe_convert_to_binary
    - request.use_edns
    - dns.message.make_query
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - nameserver.query
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool.random_16
    - dns.reversename.from_address
    - labels.extend
    - system_random.randrange
    - <builtin>.reversed
    - dns.resolver.BaseResolver._get_qnames_to_try
    - canonical.append
    - dns.ipv6.is_mapped
    - address.startswith
    - dns.message.Message.__init__
    - dns.resolver.BaseResolver._compute_timeout
    - answer.response.rcode
    - dns.entropy.EntropyPool._stir
    - dns.rdtypes.ANY.OPT.OPT
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - dns.resolver._Resolution.__init__
    - dns.rdatatype.RdataType.make
    - response.rcode
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - part.isdigit
    - Rcode.to_text
    - dns.resolver._Resolution.query_result
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - <builtin>.open
    - dns.resolver.Resolver.resolve
    - r.read
    - dns.rcode.to_text
    - dns.resolver._Resolution.next_nameserver
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - _colon_colon_start.match
    - random.shuffle
    - <builtin>.ord
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.resolver._Resolution.next_request
    - response.resolve_chaining
    - qnames_to_try.insert
    - modified_kwargs.update
    - dns.rdatatype.is_metatype
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.name.from_text
    - dns.rdataclass.is_metaclass
    - binascii.hexlify
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - request.use_tsig
    - time.time
    - label.encode
    - binascii.unhexlify
    - btext.split
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - qname.concatenate
    - dns.message.Message.section_number
    - <builtin>.super
    - qname.is_absolute
    - <builtin>.enumerate
    - qnames_to_try.append
    - dns.message.Message.use_edns
    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 0x7fd4381b8490>
    argNames:
    - self
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1409
    functionName: dns.resolver.Resolver.resolve_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - os.urandom
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.entropy.random_16
    - <builtin>.min
    - time.sleep
    - nameserver_ports.get
    - dns.resolver.Answer.__init__
    - <builtin>.range
    - dns.nameserver.DoHNameserver
    - modified_kwargs.pop
    - dns.name._maybe_convert_to_binary
    - request.use_edns
    - dns.message.make_query
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - nameserver.query
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool.random_16
    - labels.extend
    - system_random.randrange
    - dns.resolver.BaseResolver._get_qnames_to_try
    - canonical.append
    - dns.message.Message.__init__
    - dns.resolver.BaseResolver._compute_timeout
    - answer.response.rcode
    - dns.entropy.EntropyPool._stir
    - dns.rdtypes.ANY.OPT.OPT
    - dns.resolver.HostAnswers.make
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - dns.resolver._Resolution.__init__
    - dns.rdatatype.RdataType.make
    - response.rcode
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - part.isdigit
    - Rcode.to_text
    - dns.resolver._Resolution.query_result
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - <builtin>.open
    - dns.resolver.Resolver.resolve
    - r.read
    - dns.rcode.to_text
    - dns.resolver._Resolution.next_nameserver
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - _colon_colon_start.match
    - random.shuffle
    - <builtin>.ord
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.resolver._Resolution.next_request
    - response.resolve_chaining
    - qnames_to_try.insert
    - modified_kwargs.update
    - dns.rdatatype.is_metatype
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.name.from_text
    - dns.rdataclass.is_metaclass
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - request.use_tsig
    - time.time
    - label.encode
    - binascii.unhexlify
    - btext.split
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - qname.concatenate
    - dns.message.Message.section_number
    - <builtin>.super
    - qname.is_absolute
    - <builtin>.enumerate
    - qnames_to_try.append
    - dns.message.Message.use_edns
    linkageType: pythonLinkage
    raised:
    - NoAnswer
    - NotImplementedError
    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: 10
    functionLinenumber: 1476
    functionName: dns.resolver.Resolver.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - os.urandom
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.entropy.random_16
    - <builtin>.min
    - time.sleep
    - nameserver_ports.get
    - dns.resolver.Answer.__init__
    - <builtin>.range
    - dns.nameserver.DoHNameserver
    - dns.name._maybe_convert_to_binary
    - request.use_edns
    - dns.message.make_query
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - nameserver.query
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool.random_16
    - labels.extend
    - system_random.randrange
    - dns.resolver.BaseResolver._get_qnames_to_try
    - canonical.append
    - dns.message.Message.__init__
    - dns.resolver.BaseResolver._compute_timeout
    - answer.response.rcode
    - dns.entropy.EntropyPool._stir
    - dns.rdtypes.ANY.OPT.OPT
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - dns.resolver._Resolution.__init__
    - dns.rdatatype.RdataType.make
    - response.rcode
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - part.isdigit
    - Rcode.to_text
    - dns.resolver._Resolution.query_result
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - <builtin>.open
    - dns.resolver.Resolver.resolve
    - r.read
    - dns.rcode.to_text
    - dns.resolver._Resolution.next_nameserver
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - _colon_colon_start.match
    - random.shuffle
    - <builtin>.ord
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.resolver._Resolution.next_request
    - response.resolve_chaining
    - qnames_to_try.insert
    - dns.rdatatype.is_metatype
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.name.from_text
    - dns.rdataclass.is_metaclass
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - request.use_tsig
    - time.time
    - label.encode
    - binascii.unhexlify
    - btext.split
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - qname.concatenate
    - dns.message.Message.section_number
    - <builtin>.super
    - qname.is_absolute
    - <builtin>.enumerate
    - qnames_to_try.append
    - dns.message.Message.use_edns
    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 0x7fd438053e80>
    argNames:
    - self
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1499
    functionName: dns.resolver.Resolver.try_ddr
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - os.urandom
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - nameservers.append
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - nameservers.extend
    - dns.name.from_unicode
    - <builtin>.len
    - dns.entropy.random_16
    - <builtin>.min
    - <builtin>.range
    - time.sleep
    - dns.resolver.Answer.__init__
    - nameserver_ports.get
    - dns.nameserver.DoHNameserver
    - rr.params.get
    - dns.name._maybe_convert_to_binary
    - request.use_edns
    - dns.message.make_query
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - nameserver.query
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool.random_16
    - labels.extend
    - system_random.randrange
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns._ddr._extract_nameservers_from_svcb
    - canonical.append
    - dns.message.Message.__init__
    - dns.resolver.BaseResolver._compute_timeout
    - answer.response.rcode
    - dns.entropy.EntropyPool._stir
    - answer.rrset.processing_order
    - dns.rdtypes.ANY.OPT.OPT
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - dns.resolver._Resolution.__init__
    - dns.rdatatype.RdataType.make
    - response.rcode
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - infos.append
    - part.isdigit
    - Rcode.to_text
    - dns.resolver._Resolution.query_result
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - <builtin>.open
    - dns.resolver.Resolver.resolve
    - r.read
    - dns.rcode.to_text
    - dns._ddr._SVCBInfo.__init__
    - dns.resolver._Resolution.next_nameserver
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - _colon_colon_start.match
    - <builtin>.set
    - random.shuffle
    - <builtin>.ord
    - r.update_ttl
    - _colon_colon_end.match
    - param.value.endswith
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.nameserver.DoTNameserver
    - dns.resolver._Resolution.next_request
    - response.resolve_chaining
    - dns._ddr._get_nameservers_sync
    - qnames_to_try.insert
    - dns.rdatatype.is_metatype
    - <builtin>.tuple
    - info.ddr_tls_check_sync
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.nameserver.DoQNameserver
    - dns.name.from_text
    - dns.rdataclass.is_metaclass
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - request.use_tsig
    - time.time
    - label.encode
    - binascii.unhexlify
    - rr.target.to_text
    - btext.split
    - dns.rrset.from_rdata_list
    - path.startswith
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - <builtin>.bytearray
    - dns.query._remaining
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - qname.concatenate
    - dns.message.Message.section_number
    - <builtin>.super
    - qname.is_absolute
    - <builtin>.enumerate
    - qnames_to_try.append
    - dns.message.Message.use_edns
    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:
    - urllib.parse.urlparse
    - _colon_colon_start.match
    - <builtin>.set
    - dns._ddr._extract_nameservers_from_svcb
    - <builtin>.ord
    - canonical.append
    - nameservers.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - param.value.endswith
    - <builtin>.isinstance
    - text.encode
    - answer.rrset.processing_order
    - <builtin>.int
    - nameservers.extend
    - dns.nameserver.DoTNameserver
    - rr.target.to_text
    - btext.split
    - <builtin>.len
    - btext.endswith
    - path.startswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.nameserver.DoHNameserver
    - infos.append
    - rr.params.get
    - part.isdigit
    - info.ddr_tls_check_sync
    - m.group
    - dns.inet.is_address
    - _v4_ending.match
    - dns.nameserver.DoQNameserver
    - dns._ddr._SVCBInfo.__init__
    - struct.pack
    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: 1535
    functionName: dns.resolver.get_default_resolver
    functionSourceFile: dns.resolver
    functionUses: 11
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - ctypes.c_ulong
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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: 1543
    functionName: dns.resolver.reset_default_resolver
    functionSourceFile: dns.resolver
    functionUses: 12
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - ctypes.c_ulong
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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 0x7fd438136a00>
    - <ast.Attribute object at 0x7fd438136490>
    - <ast.Constant object at 0x7fd438136e20>
    - <ast.Constant object at 0x7fd4381369a0>
    - <ast.Constant object at 0x7fd438136070>
    - <ast.Constant object at 0x7fd438136b50>
    - <ast.Constant object at 0x7fd4381368b0>
    - <ast.Constant object at 0x7fd438136d30>
    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: 1554
    functionName: dns.resolver.resolve
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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 0x7fd437b28190>
    - <ast.Attribute object at 0x7fd437b28280>
    - <ast.Constant object at 0x7fd437b28400>
    - <ast.Constant object at 0x7fd437b28430>
    - <ast.Constant object at 0x7fd437b28bb0>
    - <ast.Constant object at 0x7fd437b281f0>
    - <ast.Constant object at 0x7fd437b28550>
    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: 1587
    functionName: dns.resolver.query
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - warnings.warn
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.resolver.resolve
    - <builtin>.map
    - dns.name.Name.__init__
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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: 1620
    functionName: dns.resolver.resolve_address
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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 0x7fd4387cb940>
    argNames:
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1630
    functionName: dns.resolver.resolve_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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: 1642
    functionName: dns.resolver.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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 0x7fd437c56cd0>
    argNames:
    - lifetime
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1652
    functionName: dns.resolver.try_ddr
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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 0x7fd438ea42b0>
    - <ast.Constant object at 0x7fd438ea4430>
    - <ast.Constant object at 0x7fd438ea4be0>
    - <ast.Constant object at 0x7fd438ea4520>
    argNames:
    - name
    - rdclass
    - tcp
    - resolver
    - lifetime
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1662
    functionName: dns.resolver.zone_for_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - e.response
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - time.time
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - resolver.resolve
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.range
    - l.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - opt.split
    - name.is_absolute
    - e.responses
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - encodings.idna.ToASCII
    - rrs.name.fullcompare
    - <builtin>.open
    - name.parent
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - ctypes.create_string_buffer
    - dns.resolver.BaseResolver.read_resolv_conf
    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: 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: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fd43871c910>
    - <ast.Attribute object at 0x7fd43871c5e0>
    - <ast.Constant object at 0x7fd43871cb20>
    argNames:
    - where
    - port
    - family
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1747
    functionName: dns.resolver.make_resolver_at
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - _colon_colon_start.match
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - <builtin>.ord
    - dns.win32util._Win32Getter.get
    - ctypes.WinDLL
    - IPHLPAPI.GetAdaptersAddresses
    - canonical.append
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.ipv4.inet_aton
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - _colon_colon_end.match
    - binascii.unhexlify
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - btext.split
    - dns.name.from_unicode
    - <builtin>.len
    - btext.endswith
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.name.is_all_ascii
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - dns.win32util._Win32Getter.get.format_ipv6
    - resolver.resolve_name
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - l.split
    - opt.split
    - part.isdigit
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - m.group
    - <builtin>.chr
    - dns.inet.is_address
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - _v4_ending.match
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - dns.nameserver.Do53Nameserver
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - <builtin>.super
    - ctypes.c_ulong
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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 0x7fd438032d00>
    - <ast.Attribute object at 0x7fd438032850>
    - <ast.Constant object at 0x7fd438032dc0>
    - <ast.Constant object at 0x7fd4380322e0>
    - <ast.Constant object at 0x7fd438032e20>
    - <ast.Constant object at 0x7fd438032e80>
    - <ast.Constant object at 0x7fd438032700>
    - <ast.Constant object at 0x7fd438032100>
    - <ast.Constant object at 0x7fd438032f40>
    - <ast.Attribute object at 0x7fd438032250>
    - <ast.Constant object at 0x7fd438032d60>
    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: 1783
    functionName: dns.resolver.resolve_at
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - os.urandom
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name
    - ctypes.WinDLL
    - IPHLPAPI.GetAdaptersAddresses
    - nameservers.append
    - dns.name.Name.__init__
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.entropy.random_16
    - <builtin>.range
    - time.sleep
    - <builtin>.min
    - dns.resolver.Answer.__init__
    - nameserver_ports.get
    - opt.split
    - dns.nameserver.DoHNameserver
    - dns.name._maybe_convert_to_binary
    - request.use_edns
    - dns.message.make_query
    - socket.gethostname
    - _v4_ending.match
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.nameserver.Do53Nameserver
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - nameserver.query
    - dns.entropy.EntropyPool._maybe_seed
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - ctypes.create_string_buffer
    - dns.entropy.EntropyPool.random_16
    - labels.extend
    - system_random.randrange
    - <builtin>.print
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.win32util._Win32Getter.get
    - canonical.append
    - dns.message.Message.__init__
    - dns.win32util.DnsInfo.__init__
    - dns.resolver.BaseResolver._compute_timeout
    - answer.response.rcode
    - dns.win32util._WMIGetter.get
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - dns.entropy.EntropyPool._stir
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.rdtypes.ANY.OPT.OPT
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - dns.resolver._Resolution.__init__
    - dns.rdatatype.RdataType.make
    - response.rcode
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - part.isdigit
    - Rcode.to_text
    - dns.resolver._Resolution.query_result
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - enriched_nameservers.append
    - <builtin>.open
    - dns.resolver.Resolver.resolve
    - r.read
    - dns.rcode.to_text
    - dns.resolver._Resolution.next_nameserver
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - _colon_colon_start.match
    - random.shuffle
    - <builtin>.ord
    - r.update_ttl
    - _colon_colon_end.match
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - ctypes.cast
    - c.isdigit
    - dns.resolver._Resolution.next_request
    - response.resolve_chaining
    - dns.resolver.BaseResolver.reset
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - dns.resolver.BaseResolver.read_registry
    - qnames_to_try.insert
    - dns.rdatatype.is_metatype
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - ctypes.c_ulong
    - dns.resolver.BaseResolver.read_resolv_conf
    - dns.name.from_text
    - dns.resolver.BaseResolver.use_edns
    - dns.rdataclass.is_metaclass
    - dns.entropy.EntropyPool.random_8
    - dns.renderer._make_opt
    - request.use_tsig
    - time.time
    - label.encode
    - binascii.unhexlify
    - btext.split
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - ctypes.POINTER
    - typing.cast
    - btext.startswith
    - resolver.resolve_name
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - qname.concatenate
    - dns.message.Message.section_number
    - dns.win32util._RegistryGetter.__init__
    - dns.resolver.make_resolver_at
    - <builtin>.super
    - qname.is_absolute
    - dns.resolver.BaseResolver.__init__
    - <builtin>.enumerate
    - qnames_to_try.append
    - dns.message.Message.use_edns
    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 0x7fd438ecdf40>
    - <ast.Constant object at 0x7fd438ecd460>
    - <ast.Attribute object at 0x7fd438ecd7c0>
    - <ast.Constant object at 0x7fd438ecd430>
    - <ast.Constant object at 0x7fd438ecdd60>
    - <ast.Constant object at 0x7fd438ecddc0>
    argNames:
    - host
    - service
    - family
    - type
    - proto
    - flags
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1843
    functionName: dns.resolver._getaddrinfo
    functionSourceFile: dns.resolver
    functionUses: 5
    functionsReached:
    - _colon_colon_start.match
    - _resolver.resolve_name
    - tuples.append
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - answers.canonical_name
    - part.isdigit
    - socket.getservbyname
    - m.group
    - address.find
    - _v4_ending.match
    - answers.addresses_and_families
    - struct.pack
    - scope.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: _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 0x7fd43811a1c0>
    argNames:
    - sockaddr
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1929
    functionName: dns.resolver._getnameinfo
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached:
    - dns.reversename.from_address
    - <builtin>.list
    - labels.extend
    - _colon_colon_start.match
    - <builtin>.reversed
    - _resolver.resolve_name
    - binascii.hexlify
    - tuples.append
    - socket.if_nametoindex
    - dns.name._validate_labels
    - <builtin>.ord
    - canonical.append
    - dns.ipv6.is_mapped
    - address.startswith
    - dns.inet.low_level_address_tuple
    - label.encode
    - dns.name.Name.__init__
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - c.isdigit
    - btext.split
    - <builtin>.len
    - dns.name.from_unicode
    - btext.endswith
    - <builtin>.str
    - typing.cast
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.name.IDNA2003Codec.encode
    - answers.canonical_name
    - part.isdigit
    - socket.getservbyname
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - m.group
    - <builtin>.chr
    - socket.getservbyport
    - dns.resolver._getaddrinfo
    - encodings.idna.ToASCII
    - address.find
    - _v4_ending.match
    - labels.append
    - _resolver.resolve
    - dns.name.from_text
    - dns.name.is_all_ascii
    - answers.addresses_and_families
    - struct.pack
    - scope.isdigit
    - typing.cast.target.to_text
    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 0x7fd438491c70>
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1972
    functionName: dns.resolver._getfqdn
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.reversename.from_address
    - <builtin>.list
    - labels.extend
    - _colon_colon_start.match
    - <builtin>.reversed
    - _resolver.resolve_name
    - tuples.append
    - addresses.append
    - socket.if_nametoindex
    - binascii.hexlify
    - dns.name._validate_labels
    - <builtin>.ord
    - canonical.append
    - dns.ipv6.is_mapped
    - address.startswith
    - dns.inet.low_level_address_tuple
    - label.encode
    - dns.name.Name.__init__
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - c.isdigit
    - btext.split
    - dns.name.from_unicode
    - <builtin>.len
    - btext.endswith
    - <builtin>.str
    - dns.inet.inet_pton
    - typing.cast
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.name.IDNA2003Codec.encode
    - answers.canonical_name
    - part.isdigit
    - socket.getservbyname
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - m.group
    - <builtin>.chr
    - socket.getservbyport
    - socket.gethostname
    - dns.resolver._getaddrinfo
    - encodings.idna.ToASCII
    - address.find
    - _v4_ending.match
    - labels.append
    - dns.resolver._gethostbyaddr
    - _resolver.resolve
    - dns.name.from_text
    - dns.resolver._getnameinfo
    - dns.name.is_all_ascii
    - answers.addresses_and_families
    - struct.pack
    - scope.isdigit
    - typing.cast.target.to_text
    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: 2001
    functionName: dns.resolver._gethostbyaddr
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.reversename.from_address
    - <builtin>.list
    - labels.extend
    - _colon_colon_start.match
    - <builtin>.reversed
    - _resolver.resolve_name
    - tuples.append
    - addresses.append
    - socket.if_nametoindex
    - binascii.hexlify
    - dns.name._validate_labels
    - <builtin>.ord
    - canonical.append
    - dns.ipv6.is_mapped
    - address.startswith
    - dns.inet.low_level_address_tuple
    - label.encode
    - dns.name.Name.__init__
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - c.isdigit
    - btext.split
    - dns.name.from_unicode
    - <builtin>.len
    - btext.endswith
    - <builtin>.str
    - dns.inet.inet_pton
    - typing.cast
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - dns.name.IDNA2003Codec.encode
    - answers.canonical_name
    - part.isdigit
    - socket.getservbyname
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - m.group
    - <builtin>.chr
    - socket.getservbyport
    - dns.resolver._getaddrinfo
    - encodings.idna.ToASCII
    - address.find
    - _v4_ending.match
    - labels.append
    - _resolver.resolve
    - dns.name.from_text
    - dns.resolver._getnameinfo
    - dns.name.is_all_ascii
    - answers.addresses_and_families
    - struct.pack
    - scope.isdigit
    - typing.cast.target.to_text
    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: 1984
    functionName: dns.resolver._gethostbyname
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - dns.resolver._gethostbyname_ex
    - _resolver.resolve_name
    - tuples.append
    - addresses.append
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - answers.canonical_name
    - part.isdigit
    - socket.getservbyname
    - m.group
    - dns.resolver._getaddrinfo
    - address.find
    - _v4_ending.match
    - answers.addresses_and_families
    - struct.pack
    - scope.isdigit
    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: 1988
    functionName: dns.resolver._gethostbyname_ex
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - _colon_colon_start.match
    - _resolver.resolve_name
    - tuples.append
    - addresses.append
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - answers.canonical_name
    - part.isdigit
    - socket.getservbyname
    - m.group
    - dns.resolver._getaddrinfo
    - address.find
    - _v4_ending.match
    - answers.addresses_and_families
    - struct.pack
    - scope.isdigit
    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 0x7fd4380e63d0>
    argNames:
    - resolver
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 2034
    functionName: dns.resolver.override_system_resolver
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - opt.split
    - dns.resolver.BaseResolver.read_registry
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - dns.name.from_text
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.resolver.BaseResolver.__init__
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    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: 2060
    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:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd438810370>
    - <ast.Name object at 0x7fd438810a90>
    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:
    - <builtin>.list
    - name.is_subdomain
    - _colon_colon_start.match
    - <builtin>.reversed
    - binascii.hexlify
    - <builtin>.ord
    - canonical.append
    - name.relativize
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - parts.append
    - btext.endswith
    - chunks.append
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - dns.ipv6.inet_ntoa
    - m.group
    - _v4_ending.match
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: parts.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.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 0x7fd437c7dc10>
    - <ast.Constant object at 0x7fd437c7d5e0>
    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 0x7fd438545be0>
    - <ast.Constant object at 0x7fd4385455b0>
    - <ast.Constant object at 0x7fd438545760>
    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:
    - tok.get_name
    - <builtin>.super
    - dns.rdtypes.nsbase.NSBase.__init__
    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 0x7fd438545f10>
    - <ast.Constant object at 0x7fd438545d60>
    - <ast.Constant object at 0x7fd438545ee0>
    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 0x7fd43871e670>
    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:
    - <builtin>.super
    - dns.rdtypes.nsbase.NSBase.__init__
    - parser.get_name
    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 0x7fd437f3fca0>
    - <ast.Constant object at 0x7fd437f3f100>
    - <ast.Constant object at 0x7fd437f3f7c0>
    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: 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: 41
    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: 45
    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: 49
    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: 53
    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: 63
    functionName: dns.rdtypes.svcbbase._validate_key
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 5
    functionsReached:
    - key.replace
    - <builtin>.isinstance
    - key.lower
    - <builtin>.len
    - ParamKey.make
    - key.decode
    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: 79
    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: 88
    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: 100
    functionName: dns.rdtypes.svcbbase._unescape
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 4
    functionsReached:
    - c.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - c3.isdigit
    - c2.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: 134
    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: 162
    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: 170
    functionName: dns.rdtypes.svcbbase.GenericParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - dns.rdata.Rdata._as_bytes
    - <builtin>.isinstance
    - <builtin>.bytes
    - value.encode
    - <builtin>.len
    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: 174
    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: 178
    functionName: dns.rdtypes.svcbbase.GenericParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - c2.isdigit
    - dns.rdata.Rdata._as_bytes
    - c.encode
    - <builtin>.isinstance
    - <builtin>.bytes
    - <builtin>.int
    - c.isdigit
    - value.encode
    - <builtin>.len
    - c3.isdigit
    - dns.rdtypes.svcbbase.GenericParam.__init__
    - dns.rdtypes.svcbbase._unescape
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 184
    functionName: dns.rdtypes.svcbbase.GenericParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.rdata._escapify
    - qstring.encode
    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 0x7fd4380caa60>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 188
    functionName: dns.rdtypes.svcbbase.GenericParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdata.Rdata._as_bytes
    - parser.get_bytes
    - <builtin>.isinstance
    - <builtin>.bytes
    - value.encode
    - <builtin>.len
    - dns.rdtypes.svcbbase.GenericParam.__init__
    - parser.remaining
    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 0x7fd438727820>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 195
    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: 201
    functionName: dns.rdtypes.svcbbase.MandatoryParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - key.replace
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.isinstance
    - key.lower
    - <builtin>.sorted
    - <builtin>.len
    - key.decode
    - ParamKey.make
    - <builtin>.tuple
    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: 214
    functionName: dns.rdtypes.svcbbase.MandatoryParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - key.replace
    - value.split
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.isinstance
    - dns.rdtypes.svcbbase.MandatoryParam.__init__
    - key.lower
    - k.encode
    - <builtin>.sorted
    - <builtin>.len
    - key.decode
    - ParamKey.make
    - <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: 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: 218
    functionName: dns.rdtypes.svcbbase.MandatoryParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.svcbbase.key_to_text
    - ParamKey.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 0x7fd438053640>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 222
    functionName: dns.rdtypes.svcbbase.MandatoryParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - key.replace
    - dns.rdtypes.svcbbase._validate_key
    - parser.get_uint16
    - <builtin>.isinstance
    - dns.rdtypes.svcbbase.MandatoryParam.__init__
    - key.lower
    - <builtin>.sorted
    - <builtin>.len
    - parser.remaining
    - key.decode
    - ParamKey.make
    - keys.append
    - <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: 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 0x7fd438776d30>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 233
    functionName: dns.rdtypes.svcbbase.MandatoryParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - struct.pack
    - file.write
    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: 240
    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:
    - dns.rdata.Rdata._as_bytes
    - <builtin>.isinstance
    - <builtin>.bytes
    - value.encode
    - <builtin>.len
    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: 246
    functionName: dns.rdtypes.svcbbase.ALPNParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.svcbbase._split
    - items.append
    - dns.rdtypes.svcbbase.ALPNParam.__init__
    - dns.rdata.Rdata._as_tuple
    - c.encode
    - <builtin>.int
    - <builtin>.ord
    - c.isdigit
    - <builtin>.len
    - c3.isdigit
    - c2.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: 249
    functionName: dns.rdtypes.svcbbase.ALPNParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.chr
    - dns.rdtypes.svcbbase._escapify
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.rdata._escapify
    - value.encode
    - qstring.encode
    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 0x7fd438720a90>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 254
    functionName: dns.rdtypes.svcbbase.ALPNParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.get_counted_bytes
    - dns.rdtypes.svcbbase.ALPNParam.__init__
    - dns.rdata.Rdata._as_tuple
    - ids.append
    - parser.remaining
    - <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: 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 0x7fd438720ee0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 261
    functionName: dns.rdtypes.svcbbase.ALPNParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - struct.pack
    - 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: 274
    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: 278
    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: 284
    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 0x7fd437ce52e0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 288
    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 0x7fd43849f880>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 293
    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: 299
    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: 303
    functionName: dns.rdtypes.svcbbase.PortParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_uint16
    - dns.rdtypes.svcbbase.PortParam.__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: 307
    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 0x7fd43795d730>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 311
    functionName: dns.rdtypes.svcbbase.PortParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.get_uint16
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_uint16
    - dns.rdtypes.svcbbase.PortParam.__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 0x7fd43795d190>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 315
    functionName: dns.rdtypes.svcbbase.PortParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - struct.pack
    - file.write
    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: 321
    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: 327
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.svcbbase.IPv4HintParam.__init__
    - value.split
    - 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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 331
    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 0x7fd437c2da00>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 335
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_tuple
    - parser.get_bytes
    - addresses.append
    - dns.rdtypes.svcbbase.IPv4HintParam.__init__
    - <builtin>.len
    - parser.remaining
    - <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 0x7fd4387a94c0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 342
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - <builtin>.ord
    - part.isdigit
    - file.write
    - btext.split
    - <builtin>.len
    - 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: 349
    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: 355
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdata.Rdata._as_tuple
    - value.split
    - <builtin>.tuple
    - dns.rdtypes.svcbbase.IPv6HintParam.__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: 359
    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 0x7fd437e5b220>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 363
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - chunks.append
    - dns.ipv6.inet_ntoa
    - dns.ipv4.inet_ntoa
    - _leading_zero.match
    - m.group
    - <builtin>.range
    - dns.rdata.Rdata._as_tuple
    - parser.get_bytes
    - binascii.hexlify
    - addresses.append
    - dns.rdtypes.svcbbase.IPv6HintParam.__init__
    - <builtin>.len
    - parser.remaining
    - <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 0x7fd438c505b0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 370
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - file.write
    - m.group
    - _v4_ending.match
    - 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
    - ech
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 377
    functionName: dns.rdtypes.svcbbase.ECHParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - dns.rdata.Rdata._as_bytes
    - <builtin>.isinstance
    - <builtin>.bytes
    - value.encode
    - <builtin>.len
    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: 381
    functionName: dns.rdtypes.svcbbase.ECHParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.svcbbase.ECHParam.__init__
    - dns.rdata.Rdata._as_bytes
    - <builtin>.isinstance
    - <builtin>.bytes
    - value.encode
    - <builtin>.len
    - base64.b64decode
    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: 387
    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 0x7fd438493b50>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 392
    functionName: dns.rdtypes.svcbbase.ECHParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.svcbbase.ECHParam.__init__
    - dns.rdata.Rdata._as_bytes
    - parser.get_bytes
    - <builtin>.isinstance
    - <builtin>.bytes
    - value.encode
    - <builtin>.len
    - parser.remaining
    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 0x7fd438493430>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 396
    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: 407
    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: 411
    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: 417
    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 0x7fd4380f8c40>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 421
    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 0x7fd4380f87c0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 426
    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: 442
    functionName: dns.rdtypes.svcbbase._validate_and_define
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 1
    functionsReached:
    - key.replace
    - c.encode
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.isinstance
    - dns.wire.Parser
    - key.lower
    - <builtin>.int
    - c.isdigit
    - cls.from_wire_parser
    - cls.from_value
    - dns.rdtypes.svcbbase._unescape
    - <builtin>.len
    - c3.isdigit
    - c2.isdigit
    - ParamKey.make
    - cls.emptiness
    - _class_for_key.get
    - key.decode
    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: 468
    functionName: dns.rdtypes.svcbbase.SVCBBase.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - dns.immutable.Dict
    - params.get
    - <builtin>.super
    - params.items
    - ParamKey.make
    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 0x7fd4380bf790>
    - <ast.Constant object at 0x7fd4380bfd90>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 491
    functionName: dns.rdtypes.svcbbase.SVCBBase.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - value.to_text
    - ParamKey.to_text
    - <builtin>.sorted
    - <builtin>.len
    - dns.rdtypes.svcbbase.key_to_text
    - params.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: 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 0x7fd43815a190>
    - <ast.Constant object at 0x7fd43815a1c0>
    - <ast.Constant object at 0x7fd43815ac40>
    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: 508
    functionName: dns.rdtypes.svcbbase.SVCBBase.from_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - tok.get
    - dns.wire.Parser
    - params.get
    - c3.isdigit
    - _class_for_key.get
    - tok.get_name
    - key.replace
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.isinstance
    - <builtin>.int
    - c.isdigit
    - cls.from_wire_parser
    - cls.from_value
    - tok.unget
    - <builtin>.len
    - ParamKey.make
    - dns.rdtypes.svcbbase._unescape
    - token.is_eol_or_eof
    - c.encode
    - key.lower
    - dns.immutable.Dict
    - dns.rdtypes.svcbbase._validate_and_define
    - tok.get_uint16
    - c2.isdigit
    - dns.rdtypes.svcbbase.SVCBBase.__init__
    - token.value.find
    - <builtin>.super
    - params.items
    - cls.emptiness
    - key.decode
    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.is_eol_or_eof
    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: 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 0x7fd438138670>
    - <ast.Constant object at 0x7fd438138f10>
    - <ast.Constant object at 0x7fd438138400>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 549
    functionName: dns.rdtypes.svcbbase.SVCBBase._to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.renderer.prefixed_length
    - <builtin>.sorted
    - file.write
    - struct.pack
    - value.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: dns.renderer.prefixed_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: 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 0x7fd4387805e0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 561
    functionName: dns.rdtypes.svcbbase.SVCBBase.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.restrict_to
    - parser.get_uint16
    - pcls.from_wire_parser
    - <builtin>.isinstance
    - dns.immutable.Dict
    - params.get
    - <builtin>.super
    - params.items
    - parser.get_name
    - parser.remaining
    - dns.rdtypes.svcbbase.SVCBBase.__init__
    - ParamKey.make
    - _class_for_key.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: 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: 581
    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: 585
    functionName: dns.rdtypes.svcbbase.SVCBBase._processing_order
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - rdata._processing_priority
    - by_priority.keys
    - dns.rdtypes.util._priority_table
    - random.shuffle
    - <builtin>.sorted
    - dns.rdtypes.util.priority_processing_order
    - collections.defaultdict
    - <builtin>.len
    - ordered.extend
    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: 219
    functionName: dns.rdtypes.util.priority_processing_order
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - <builtin>.list
    - rdata._processing_priority
    - by_priority.keys
    - dns.rdtypes.util._priority_table
    - random.shuffle
    - <builtin>.sorted
    - collections.defaultdict
    - <builtin>.len
    - ordered.extend
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd4386e4970>
    argNames:
    - self
    - type
    - gateway
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 39
    functionName: dns.rdtypes.util.Gateway.__init__
    functionSourceFile: dns.rdtypes.util
    functionUses: 2
    functionsReached:
    - _colon_colon_start.match
    - dns.rdtypes.util.Gateway._check
    - <builtin>.ord
    - canonical.append
    - dns.rdata.Rdata._as_uint8
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - m.group
    - _v4_ending.match
    - struct.pack
    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: 48
    functionName: dns.rdtypes.util.Gateway._check
    functionSourceFile: dns.rdtypes.util
    functionUses: 3
    functionsReached:
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - m.group
    - _v4_ending.match
    - struct.pack
    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: 45
    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 0x7fd437da6dc0>
    - <ast.Constant object at 0x7fd437da6310>
    argNames:
    - self
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    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 0x7fd4386b6e50>
    - <ast.Constant object at 0x7fd4386b6070>
    - <ast.Constant object at 0x7fd4386b6280>
    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: 79
    functionName: dns.rdtypes.util.Gateway.from_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - dns.rdtypes.util.Gateway._check
    - <builtin>.ord
    - canonical.append
    - dns.rdata.Rdata._as_uint8
    - tok.get_name
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.rdtypes.util.Gateway.__init__
    - part.isdigit
    - m.group
    - _v4_ending.match
    - tok.get_string
    - struct.pack
    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 0x7fd438189280>
    - <ast.Constant object at 0x7fd438189730>
    - <ast.Constant object at 0x7fd438189670>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 93
    functionName: dns.rdtypes.util.Gateway.to_wire
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - file.write
    - m.group
    - _v4_ending.match
    - struct.pack
    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 0x7fd438780550>
    argNames:
    - cls
    - gateway_type
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 111
    functionName: dns.rdtypes.util.Gateway.from_wire_parser
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - binascii.hexlify
    - dns.rdtypes.util.Gateway._check
    - <builtin>.ord
    - parser.get_name
    - canonical.append
    - dns.rdata.Rdata._as_uint8
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - _colon_colon_end.match
    - binascii.unhexlify
    - parser.get_bytes
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - chunks.append
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.rdtypes.util.Gateway.__init__
    - part.isdigit
    - dns.ipv6.inet_ntoa
    - m.group
    - _v4_ending.match
    - struct.pack
    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 0x7fd438138af0>
    argNames:
    - self
    - windows
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 130
    functionName: dns.rdtypes.util.Bitmap.__init__
    functionSourceFile: dns.rdtypes.util
    functionUses: 3
    functionsReached:
    - <builtin>.len
    - <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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 148
    functionName: dns.rdtypes.util.Bitmap.to_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - dns.rdatatype.to_text
    - <builtin>.range
    - dns.rdatatype.RdataType.make
    - bits.append
    - <builtin>.enumerate
    - 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: <builtin>.enumerate
    functionSourceFile: <builtin>
    functionUses: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 161
    functionName: dns.rdtypes.util.Bitmap.from_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - token.unescape
    - rdtypes.append
    - dns.rdtypes.util.Bitmap.from_rdtypes
    - windows.append
    - <builtin>.isinstance
    - dns.rdatatype.from_text
    - <builtin>.bytearray
    - tok.get_remaining
    - <builtin>.bytes
    - RdataType.from_text
    - <builtin>.sorted
    - dns.rdtypes.util.Bitmap.__init__
    - <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: 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: 171
    functionName: dns.rdtypes.util.Bitmap.from_rdtypes
    functionSourceFile: dns.rdtypes.util
    functionUses: 1
    functionsReached:
    - windows.append
    - <builtin>.isinstance
    - <builtin>.bytearray
    - <builtin>.bytes
    - <builtin>.sorted
    - dns.rdtypes.util.Bitmap.__init__
    - <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: 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: 197
    functionName: dns.rdtypes.util.Bitmap.to_wire
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - struct.pack
    - file.write
    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: 203
    functionName: dns.rdtypes.util.Bitmap.from_wire_parser
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - parser.get_counted_bytes
    - windows.append
    - <builtin>.isinstance
    - parser.get_uint8
    - dns.rdtypes.util.Bitmap.__init__
    - <builtin>.len
    - parser.remaining
    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: 212
    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: 235
    functionName: dns.rdtypes.util.weighted_processing_order
    functionSourceFile: dns.rdtypes.util
    functionUses: 2
    functionsReached:
    - <builtin>.list
    - rdata._processing_priority
    - by_priority.keys
    - random.uniform
    - dns.rdtypes.util._priority_table
    - <builtin>.sum
    - ordered.append
    - <builtin>.sorted
    - collections.defaultdict
    - rdata._processing_weight
    - <builtin>.len
    - <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: 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: <builtin>.sum
    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: 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: 259
    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: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.win32util
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - int_parts.append
    - requirement.split
    - importlib.metadata.version
    - version.split
    - _cache.get
    - dns._features._version_check
    - <builtin>.int
    - itertools.takewhile
    - dns._features._tuple_from_text
    - dns._features.have
    - _requirements.get
    - <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: 27
    functionName: dns.win32util.DnsInfo.__init__
    functionSourceFile: dns.win32util
    functionUses: 19
    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: 45
    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: 49
    functionName: dns.win32util._WMIGetter.run
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - system.Win32_NetworkAdapterConfiguration
    - dns.name._validate_labels
    - pythoncom.CoUninitialize
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - wmi.WMI
    - pythoncom.CoInitialize
    - dns.name.IDNA2003Codec.encode
    - dns.win32util._config_domain
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - domain.startswith
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - domain
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 79
    functionName: dns.win32util._config_domain
    functionSourceFile: dns.win32util
    functionUses: 4
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - domain.startswith
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 67
    functionName: dns.win32util._WMIGetter.get
    functionSourceFile: dns.win32util
    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: 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: 1
    functionLinenumber: 88
    functionName: dns.win32util._RegistryGetter.__init__
    functionSourceFile: dns.win32util
    functionUses: 17
    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: 91
    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: 99
    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: 104
    functionName: dns.win32util._RegistryGetter._config_search
    functionSourceFile: dns.win32util
    functionUses: 2
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.win32util._config_domain
    - text.replace
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - domain.startswith
    - dns.name.from_text
    - dns.name.is_all_ascii
    - dns.win32util._RegistryGetter._split
    - struct.pack
    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: 110
    functionName: dns.win32util._RegistryGetter._config_fromkey
    functionSourceFile: dns.win32util
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.win32util._RegistryGetter._config_search
    - winreg.QueryValueEx
    - dns.name.IDNA2003Codec.encode
    - dns.win32util._config_domain
    - text.replace
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - domain.startswith
    - dns.name.from_text
    - dns.name.is_all_ascii
    - dns.win32util._RegistryGetter._split
    - dns.win32util._RegistryGetter._config_nameservers
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 149
    functionName: dns.win32util._RegistryGetter._is_nic_enabled
    functionSourceFile: dns.win32util
    functionUses: 1
    functionsReached:
    - winreg.OpenKey
    - device_key.Close
    - connection_key.Close
    - winreg.QueryValueEx
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 201
    functionName: dns.win32util._RegistryGetter.get
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - winreg.EnumKey
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.win32util._RegistryGetter._is_nic_enabled
    - winreg.OpenKey
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - device_key.Close
    - connection_key.Close
    - dns.win32util._RegistryGetter._config_search
    - winreg.QueryValueEx
    - winreg.ConnectRegistry
    - key.Close
    - dns.name.IDNA2003Codec.encode
    - dns.win32util._config_domain
    - tcp_params.Close
    - dns.win32util._RegistryGetter._config_fromkey
    - text.replace
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - lm.Close
    - labels.append
    - domain.startswith
    - dns.name.from_text
    - interfaces.Close
    - dns.name.is_all_ascii
    - dns.win32util._RegistryGetter._split
    - dns.win32util._RegistryGetter._config_nameservers
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 3
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 240
    functionName: dns.win32util._Win32Getter.get
    functionSourceFile: dns.win32util
    functionUses: 16
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - dns.name._validate_labels
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.name.Name.__init__
    - <builtin>.map
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.name.from_unicode
    - <builtin>.len
    - ctypes.POINTER
    - <builtin>.range
    - dns.win32util._Win32Getter.get.format_ipv6
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.win32util._RegistryGetter.__init__
    - labels.append
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.is_all_ascii
    - ctypes.create_string_buffer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.WinDLL
    functionSourceFile: ctypes
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.POINTER
    functionSourceFile: ctypes
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.win32util._Win32Getter.get.SOCKET_ADDRESS
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - ctypes.POINTER
    linkageType: 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.win32util._Win32Getter.get.IP_ADAPTER_DNS_SUFFIX
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - ctypes.POINTER
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - sockaddr_in
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 340
    functionName: dns.win32util._Win32Getter.get.format_ipv4
    functionSourceFile: dns.win32util
    functionUses: 17
    functionsReached:
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - sockaddr_in6
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 343
    functionName: dns.win32util._Win32Getter.get.format_ipv6
    functionSourceFile: dns.win32util
    functionUses: 17
    functionsReached:
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.c_ulong
    functionSourceFile: ctypes
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.create_string_buffer
    functionSourceFile: ctypes
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.byref
    functionSourceFile: ctypes
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPHLPAPI.GetAdaptersAddresses
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.print
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.cast
    functionSourceFile: ctypes
    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:
    - method
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 426
    functionName: dns.win32util.set_config_method
    functionSourceFile: dns.win32util
    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.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:
    - text_flags.append
    - enum_class.__members__.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 67
    functionName: dns.flags.from_text
    functionSourceFile: dns.flags
    functionUses: 4
    functionsReached:
    - text.split
    - t.upper
    - dns.flags._from_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: 77
    functionName: dns.flags.to_text
    functionSourceFile: dns.flags
    functionUses: 2
    functionsReached:
    - dns.flags._to_text
    - text_flags.append
    - enum_class.__members__.items
    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: dns.flags
    functionUses: 4
    functionsReached:
    - text.split
    - t.upper
    - dns.flags._from_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: dns.flags
    functionUses: 2
    functionsReached:
    - dns.flags._to_text
    - text_flags.append
    - enum_class.__members__.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 10
    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: 13
    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: 16
    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: 19
    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: 22
    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: 25
    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 0x7fd4388522e0>
    - <ast.Constant object at 0x7fd438852400>
    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: 28
    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 0x7fd438ecd310>
    - <ast.Constant object at 0x7fd438ecda90>
    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: 40
    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: 55
    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: 60
    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: 63
    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: 66
    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: 70
    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: 73
    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 0x7fd43864c700>
    argNames:
    - self
    - address
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 78
    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: 81
    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 0x7fd43829e310>
    - <ast.Constant object at 0x7fd43829e610>
    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: 84
    functionName: dns.nameserver.Do53Nameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.query._udp_recv
    - dns.wire.Parser
    - s.bind
    - dns.name._validate_labels
    - sel.register
    - dns.inet.low_level_address_tuple
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._net_write
    - dns.query._wait_for_readable
    - dns.inet.is_multicast
    - dns.name.from_unicode
    - <builtin>.len
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.query.tcp
    - e.message
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - _v4_ending.match
    - sock.recvfrom
    - s.connect_ex
    - dns.name.is_all_ascii
    - dns.query.udp
    - rdtype_text.replace
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - socket.if_nametoindex
    - dns.query._destination_and_source
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.query._matches_destination
    - dns.inet.af_for_address
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - s.setblocking
    - dns.rdatatype.RdataType.make
    - query.is_response
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - s.close
    - dns.flags.Flag
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - s.getsockopt
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - q.is_response
    - sock.recv
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - dns.query._connect
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - dns.query.make_socket
    - text.encode
    - what.to_wire
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - address.find
    - <builtin>.bytes
    - dns.query.send_udp
    - labels.append
    - dns.query._udp_send
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - sock.sendto
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - dns.query._net_read
    - dns.query.receive_tcp
    - dns.query.receive_udp
    - time.time
    - dns.query._addresses_equal
    - socket.getaddrinfo
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - binascii.unhexlify
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.inet.inet_pton
    - typing.cast
    - btext.startswith
    - dns.query.send_tcp
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    - scope.isdigit
    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 0x7fd43811ae50>
    - <ast.Constant object at 0x7fd43811ab50>
    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: 121
    functionName: dns.nameserver.Do53Nameserver.async_query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.asyncquery.send_tcp
    - asyncio.get_running_loop
    - dns.inet.is_multicast
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - e.message
    - dns.message._message_factory_from_opcode
    - sock.getpeername
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - backend.datagram_connection_required
    - dns.asyncquery.receive_udp
    - _v4_ending.match
    - sock.recvfrom
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.asyncquery.tcp
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.asyncquery.udp
    - dns.inet.af_for_address
    - dns.query._matches_destination
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - query.is_response
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - dns._asyncbackend.NullContext.__init__
    - r.update_ttl
    - dns.asyncquery.send_udp
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - what.to_wire
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - typing.cast.recv
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - backend.make_socket
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - _backends.get
    - struct.unpack
    - importlib.import_module
    - sock.sendto
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.query._addresses_equal
    - dns.asyncquery._read_exactly
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.inet.inet_pton
    - dns.asyncquery._source_tuple
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - sock.sendall
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - dns.asyncquery.receive_tcp
    - rd.covers
    - <builtin>.super
    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 0x7fd4385065e0>
    - <ast.Constant object at 0x7fd438506b20>
    - <ast.Constant object at 0x7fd4385060d0>
    - <ast.Constant object at 0x7fd438506ca0>
    - <ast.Constant object at 0x7fd4385060a0>
    - <ast.Constant object at 0x7fd438506070>
    - <ast.Constant object at 0x7fd438506430>
    - <ast.Constant object at 0x7fd4385069d0>
    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: 388
    functionName: dns.asyncquery.tcp
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.asyncquery.send_tcp
    - asyncio.get_running_loop
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - sock.getpeername
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - _v4_ending.match
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - dns._asyncbackend.NullContext.__init__
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - what.to_wire
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - typing.cast.recv
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - backend.make_socket
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - _backends.get
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.asyncquery._read_exactly
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.asyncquery._source_tuple
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - sock.sendall
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - dns.asyncquery.receive_tcp
    - rd.covers
    - <builtin>.super
    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 0x7fd4378e3b20>
    - <ast.Constant object at 0x7fd4378e38b0>
    - <ast.Constant object at 0x7fd4378e3340>
    - <ast.Constant object at 0x7fd4378e3880>
    - <ast.Constant object at 0x7fd4378e3f70>
    - <ast.Constant object at 0x7fd4378e34c0>
    - <ast.Constant object at 0x7fd4378e3f10>
    - <ast.Constant object at 0x7fd4378e3130>
    - <ast.Constant object at 0x7fd4378e3610>
    - <ast.Constant object at 0x7fd4378e3eb0>
    - <ast.Constant object at 0x7fd4378e39d0>
    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: 183
    functionName: dns.asyncquery.udp
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - asyncio.get_running_loop
    - dns.inet.is_multicast
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - e.message
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - backend.datagram_connection_required
    - dns.asyncquery.receive_udp
    - _v4_ending.match
    - sock.recvfrom
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - dns.query._matches_destination
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - query.is_response
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - dns._asyncbackend.NullContext.__init__
    - r.update_ttl
    - dns.asyncquery.send_udp
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - what.to_wire
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - backend.make_socket
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - _backends.get
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - sock.sendto
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.query._addresses_equal
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.inet.inet_pton
    - dns.asyncquery._source_tuple
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <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 0x7fd438744df0>
    - <ast.Constant object at 0x7fd438744ac0>
    - <ast.Constant object at 0x7fd4387446d0>
    - <ast.Attribute object at 0x7fd438744340>
    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: 163
    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: 178
    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: 181
    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: 184
    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: 187
    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: 190
    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 0x7fd438f07070>
    - <ast.Constant object at 0x7fd438f07220>
    - <ast.Constant object at 0x7fd438f07be0>
    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: 196
    functionName: dns.nameserver.DoHNameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.resolver.Resolver
    - dns.inet.low_level_address_tuple
    - session.post
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.query.https
    - byte_.isdigit
    - dns.tsig.get_context
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - headers.update
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - answers.addresses
    - dns.name._maybe_convert_to_binary
    - dns.query._NetworkBackend.__init__
    - _v4_ending.match
    - stream.headers
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - socket.if_nametoindex
    - dns.query._destination_and_source
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - random.choice
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - httpx.Client
    - stream.receive
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - base64.urlsafe_b64encode
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - stream.send_h3
    - r.update_ttl
    - dns.query._http3
    - _colon_colon_end.match
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.query._maybe_get_resolver
    - dns.query._find_header
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - wire.decode
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - address.find
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - response.elapsed.total_seconds
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - dns.query._check_status
    - time.time
    - label.encode
    - RdataType.to_text
    - socket.getaddrinfo
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.query._HTTPTransport.__init__
    - dns.rrset.RRset.__init__
    - dns.quic.SyncQuicManager
    - typing.cast
    - btext.startswith
    - resolver.resolve_name
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - session.get
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    - scope.isdigit
    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 0x7fd4380471f0>
    - <ast.Constant object at 0x7fd438047a90>
    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: 220
    functionName: dns.nameserver.DoHNameserver.async_query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - the_client.get
    - dns.tsig.get_context
    - dns.asyncresolver.Resolver
    - byte_.isdigit
    - asyncio.get_running_loop
    - dns.name.from_unicode
    - <builtin>.len
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - headers.update
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - answers.addresses
    - dns.name._maybe_convert_to_binary
    - _v4_ending.match
    - stream.headers
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - random.choice
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - stream.receive
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - base64.urlsafe_b64encode
    - <builtin>.abs
    - backend.get_transport_class
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - backend.name
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - q.is_response
    - dns.asyncquery.https
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - stream.send_h3
    - backend.wait_for
    - dns._asyncbackend.NullContext.__init__
    - r.update_ttl
    - _colon_colon_end.match
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - dns.query._find_header
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - wire.decode
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - _backends.get
    - struct.unpack
    - importlib.import_module
    - response.elapsed.total_seconds
    - dns.entropy.EntropyPool.random_8
    - dns.query._check_status
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - the_client.post
    - dns.tsig._digest
    - binascii.unhexlify
    - key.algorithm.to_digestable
    - dns.quic.factories_for_backend
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - resolver.resolve_name
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.asyncquery._maybe_get_resolver
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - dns.asyncquery._http3
    - <builtin>.super
    - httpx.AsyncClient
    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 0x7fd437e98400>
    - <ast.Constant object at 0x7fd437e98be0>
    - <ast.Constant object at 0x7fd437e98fa0>
    - <ast.Constant object at 0x7fd437e98ac0>
    - <ast.Constant object at 0x7fd437e98220>
    - <ast.Constant object at 0x7fd437e98e20>
    - <ast.Constant object at 0x7fd437e98bb0>
    - <ast.Constant object at 0x7fd437e98cd0>
    - <ast.Constant object at 0x7fd437e98e80>
    - <ast.Constant object at 0x7fd437e984f0>
    - <ast.Constant object at 0x7fd437e98fd0>
    - <ast.Constant object at 0x7fd437e98640>
    - <ast.Attribute object at 0x7fd437e98580>
    - <ast.Attribute object at 0x7fd437e98a90>
    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: 533
    functionName: dns.asyncquery.https
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - the_client.get
    - dns.tsig.get_context
    - dns.asyncresolver.Resolver
    - byte_.isdigit
    - asyncio.get_running_loop
    - dns.name.from_unicode
    - <builtin>.len
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - headers.update
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - answers.addresses
    - dns.name._maybe_convert_to_binary
    - _v4_ending.match
    - stream.headers
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - random.choice
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - stream.receive
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - base64.urlsafe_b64encode
    - <builtin>.abs
    - backend.get_transport_class
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - backend.name
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - dns.inet.is_address
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - stream.send_h3
    - backend.wait_for
    - dns._asyncbackend.NullContext.__init__
    - r.update_ttl
    - _colon_colon_end.match
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - dns.query._find_header
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - wire.decode
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - _backends.get
    - struct.unpack
    - importlib.import_module
    - response.elapsed.total_seconds
    - dns.entropy.EntropyPool.random_8
    - dns.query._check_status
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - the_client.post
    - dns.tsig._digest
    - binascii.unhexlify
    - key.algorithm.to_digestable
    - dns.quic.factories_for_backend
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - resolver.resolve_name
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.asyncquery._maybe_get_resolver
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - dns.asyncquery._http3
    - <builtin>.super
    - httpx.AsyncClient
    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 0x7fd4384f94f0>
    - <ast.Constant object at 0x7fd4384f9760>
    - <ast.Constant object at 0x7fd4384f91c0>
    argNames:
    - self
    - address
    - port
    - hostname
    - verify
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 247
    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: 258
    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 0x7fd4384f9850>
    - <ast.Constant object at 0x7fd4384f9f70>
    - <ast.Constant object at 0x7fd4384f9fa0>
    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: 261
    functionName: dns.nameserver.DoTNameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - s.bind
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.name._validate_labels
    - sel.register
    - dns.inet.low_level_address_tuple
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - dns.ipv4.inet_aton
    - byte_.isdigit
    - dns.query._wait_for
    - dns.query._net_write
    - dns.query._wait_for_readable
    - <builtin>.len
    - dns.name.from_unicode
    - fd.pending
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.query.tcp
    - dns.message._message_factory_from_opcode
    - sel.select
    - sock.send
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - os.path.isdir
    - _v4_ending.match
    - dns._no_ssl.create_default_context
    - s.connect_ex
    - dns.name.is_all_ascii
    - rdtype_text.replace
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - server_hostname.to_text
    - dns.message._WireReader._add_error
    - system_random.randrange
    - labels.extend
    - dns.query.make_ssl_socket
    - socket.if_nametoindex
    - dns.query._destination_and_source
    - dns.query._compute_times
    - ssl_context.wrap_socket
    - canonical.append
    - dns.message.Message.__init__
    - ssl_context.set_alpn_protocols
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - dns.query.make_ssl_context
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - _rdata_classes.get
    - dns.ipv6.inet_aton
    - dns.name.IDNA2003Codec.encode
    - s.setblocking
    - dns.rdatatype.RdataType.make
    - dns.query.tls
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - s.close
    - dns.flags.Flag
    - selectors.DefaultSelector
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - s.getsockopt
    - r.read
    - hmac.compare_digest
    - struct.pack
    - dns.query._tls_handshake
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - q.is_response
    - sock.recv
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - dns.query._connect
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - dns.query.make_socket
    - text.encode
    - what.to_wire
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - os.path.isfile
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - dns.query._wait_for_writable
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - address.find
    - <builtin>.bytes
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - ssl.create_default_context
    - dns.entropy.EntropyPool.random_8
    - dns.inet.any_for_af
    - s.do_handshake
    - dns.query._net_read
    - dns.query.receive_tcp
    - time.time
    - label.encode
    - RdataType.to_text
    - socket.getaddrinfo
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - binascii.unhexlify
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - btext.startswith
    - dns.query.send_tcp
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    - scope.isdigit
    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 0x7fd437c889d0>
    - <ast.Constant object at 0x7fd437c88520>
    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: 282
    functionName: dns.nameserver.DoTNameserver.async_query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.asyncquery.send_tcp
    - asyncio.get_running_loop
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - sock.getpeername
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - os.path.isdir
    - _v4_ending.match
    - dns._no_ssl.create_default_context
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.asyncquery.tcp
    - dns.message.Message.__init__
    - ssl_context.set_alpn_protocols
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - dns.query.make_ssl_context
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - dns._asyncbackend.NullContext.__init__
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - what.to_wire
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - typing.cast.recv
    - RdataClass.to_text
    - absolute_name.relativize
    - os.path.isfile
    - dns.rdata.GenericRdata.__init__
    - dns.asyncquery.tls
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - backend.make_socket
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - _backends.get
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - ssl.create_default_context
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.asyncquery._read_exactly
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.asyncquery._source_tuple
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - sock.sendall
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - dns.asyncquery.receive_tcp
    - rd.covers
    - <builtin>.super
    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 0x7fd437bb06a0>
    - <ast.Constant object at 0x7fd437bb0460>
    - <ast.Constant object at 0x7fd437bb0580>
    - <ast.Constant object at 0x7fd437bb0370>
    - <ast.Constant object at 0x7fd437bb05e0>
    - <ast.Constant object at 0x7fd437bb0310>
    - <ast.Constant object at 0x7fd437bb0a00>
    - <ast.Constant object at 0x7fd437bb0880>
    - <ast.Constant object at 0x7fd437bb05b0>
    - <ast.Constant object at 0x7fd437bb0220>
    - <ast.Constant object at 0x7fd437bb04f0>
    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: 449
    functionName: dns.asyncquery.tls
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.asyncquery.send_tcp
    - asyncio.get_running_loop
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - sock.getpeername
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - os.path.isdir
    - _v4_ending.match
    - dns._no_ssl.create_default_context
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.asyncquery.tcp
    - dns.message.Message.__init__
    - ssl_context.set_alpn_protocols
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - dns.query.make_ssl_context
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - dns._asyncbackend.NullContext.__init__
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - what.to_wire
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - typing.cast.recv
    - RdataClass.to_text
    - absolute_name.relativize
    - os.path.isfile
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - backend.make_socket
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - _backends.get
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - ssl.create_default_context
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.asyncquery._read_exactly
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.asyncquery._source_tuple
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - sock.sendall
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - dns.asyncquery.receive_tcp
    - rd.covers
    - <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 0x7fd437c886a0>
    - <ast.Constant object at 0x7fd437c886d0>
    - <ast.Constant object at 0x7fd437c88820>
    argNames:
    - self
    - address
    - port
    - verify
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 306
    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: 317
    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 0x7fd438531fd0>
    - <ast.Constant object at 0x7fd438531b50>
    - <ast.Constant object at 0x7fd438531ac0>
    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: 320
    functionName: dns.nameserver.DoQNameserver.query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - stream.send
    - dns.query._compute_times
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - stream.receive
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.quic.SyncQuicManager
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - dns.query.quic
    - rd.covers
    - <builtin>.super
    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 0x7fd43871cb50>
    - <ast.Constant object at 0x7fd43871c100>
    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: 341
    functionName: dns.nameserver.DoQNameserver.async_query
    functionSourceFile: dns.nameserver
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - asyncio.get_running_loop
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - stream.send
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - stream.receive
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - backend.name
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - dns.asyncquery.quic
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - _backends.get
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.quic.factories_for_backend
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    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 0x7fd438518e20>
    - <ast.Constant object at 0x7fd4385183d0>
    - <ast.Constant object at 0x7fd438518940>
    - <ast.Constant object at 0x7fd438518d60>
    - <ast.Constant object at 0x7fd438518cd0>
    - <ast.Constant object at 0x7fd438518370>
    - <ast.Constant object at 0x7fd438518dc0>
    - <ast.Constant object at 0x7fd438518be0>
    - <ast.Constant object at 0x7fd438518c10>
    - <ast.Constant object at 0x7fd438158100>
    - <ast.Constant object at 0x7fd438158730>
    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: 773
    functionName: dns.asyncquery.quic
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - asyncio.get_running_loop
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - stream.send
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - stream.receive
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - backend.name
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - _backends.get
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.quic.factories_for_backend
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    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: 66
    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 0x7fd4384be070>
    argNames:
    - expiration
    - now
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    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 0x7fd4384be310>
    argNames:
    - sock
    - what
    - destination
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 91
    functionName: dns.asyncquery.send_udp
    functionSourceFile: dns.asyncquery
    functionUses: 3
    functionsReached:
    - dns.asyncquery._timeout
    - sock.sendto
    - <builtin>.isinstance
    - what.to_wire
    - <builtin>.max
    - time.time
    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 0x7fd4380c36a0>
    - <ast.Constant object at 0x7fd4380c3550>
    - <ast.Constant object at 0x7fd4380c3e20>
    - <ast.Constant object at 0x7fd4380c3ac0>
    - <ast.Constant object at 0x7fd4380c3d30>
    - <ast.Constant object at 0x7fd4380c3070>
    - <ast.Constant object at 0x7fd4380c3700>
    - <ast.Constant object at 0x7fd4380c38e0>
    - <ast.Constant object at 0x7fd4380c3850>
    - <ast.Constant object at 0x7fd4380c3b20>
    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: 121
    functionName: dns.asyncquery.receive_udp
    functionSourceFile: dns.asyncquery
    functionUses: 3
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.inet.is_multicast
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - e.message
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - _v4_ending.match
    - sock.recvfrom
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - dns.query._matches_destination
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - query.is_response
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - _colon_colon_start.match
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - time.time
    - dns.query._addresses_equal
    - RdataType.to_text
    - label.encode
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.inet.inet_pton
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <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.datagram_connection_required
    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: backend.make_socket
    functionSourceFile: <builtin>
    functionUses: 10
    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 0x7fd437da5760>
    - <ast.Constant object at 0x7fd437da5c40>
    - <ast.Constant object at 0x7fd437da55e0>
    - <ast.Constant object at 0x7fd437da5670>
    - <ast.Constant object at 0x7fd437da55b0>
    - <ast.Constant object at 0x7fd437da5910>
    - <ast.Constant object at 0x7fd437da54f0>
    - <ast.Constant object at 0x7fd437da5220>
    - <ast.Constant object at 0x7fd437da5250>
    - <ast.Constant object at 0x7fd437da56d0>
    - <ast.Constant object at 0x7fd437da5c10>
    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: 249
    functionName: dns.asyncquery.udp_with_fallback
    functionSourceFile: dns.asyncquery
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - dns.asyncquery.send_tcp
    - asyncio.get_running_loop
    - dns.inet.is_multicast
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - e.message
    - dns.message._message_factory_from_opcode
    - sock.getpeername
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - backend.datagram_connection_required
    - dns.asyncquery.receive_udp
    - _v4_ending.match
    - sock.recvfrom
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.asyncquery.tcp
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.asyncquery.udp
    - dns.inet.af_for_address
    - dns.query._matches_destination
    - key.name.to_digestable
    - <builtin>.abs
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - dns.ipv6.inet_aton
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - query.is_response
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - dns._asyncbackend.NullContext.__init__
    - r.update_ttl
    - dns.asyncquery.send_udp
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - what.to_wire
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - typing.cast.recv
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - backend.make_socket
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - _backends.get
    - struct.unpack
    - importlib.import_module
    - sock.sendto
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.query._addresses_equal
    - dns.asyncquery._read_exactly
    - dns.tsig._maybe_start_digest
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - dns.inet.inet_pton
    - dns.asyncquery._source_tuple
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - sock.sendall
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - dns.asyncquery.receive_tcp
    - rd.covers
    - <builtin>.super
    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 0x7fd4381bc550>
    argNames:
    - sock
    - what
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 317
    functionName: dns.asyncquery.send_tcp
    functionSourceFile: dns.asyncquery
    functionUses: 5
    functionsReached:
    - dns.asyncquery._timeout
    - sock.sendall
    - <builtin>.isinstance
    - what.to_wire
    - <builtin>.max
    - <builtin>.len
    - 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: 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: 342
    functionName: dns.asyncquery._read_exactly
    functionSourceFile: dns.asyncquery
    functionUses: 8
    functionsReached:
    - dns.asyncquery._timeout
    - typing.cast.recv
    - <builtin>.max
    - <builtin>.len
    - time.time
    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: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fd438709580>
    - <ast.Constant object at 0x7fd438709790>
    - <ast.Constant object at 0x7fd438709ac0>
    - <ast.Constant object at 0x7fd438709be0>
    - <ast.Constant object at 0x7fd4387098e0>
    - <ast.Constant object at 0x7fd438709220>
    argNames:
    - sock
    - expiration
    - one_rr_per_rrset
    - keyring
    - request_mac
    - ignore_trailing
    - ignore_errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 356
    functionName: dns.asyncquery.receive_tcp
    functionSourceFile: dns.asyncquery
    functionUses: 5
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - typing.cast.recv
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.tsig.HMACTSig.update
    - dns.name.from_text
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.asyncquery._read_exactly
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <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: 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: 519
    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 0x7fd437ac4be0>
    - <ast.Constant object at 0x7fd437ac4910>
    - <ast.Constant object at 0x7fd437ac41f0>
    - <ast.Constant object at 0x7fd437ac44c0>
    - <ast.Constant object at 0x7fd437ac4250>
    - <ast.Constant object at 0x7fd437ac4b80>
    - <ast.Constant object at 0x7fd4381d5700>
    - <ast.Constant object at 0x7fd4381d5f40>
    - <ast.Constant object at 0x7fd4381d56d0>
    - <ast.Constant object at 0x7fd4381d5490>
    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: 709
    functionName: dns.asyncquery._http3
    functionSourceFile: dns.asyncquery
    functionUses: 2
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - asyncio.get_running_loop
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - stream.headers
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - the_manager.connect
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - sniffio.current_async_library
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - stream.receive
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - backend.name
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - urllib.parse.urlparse
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - q.is_response
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - stream.send_h3
    - r.update_ttl
    - the_connection.make_stream
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - dns.asyncbackend.get_default_backend
    - dns.query._find_header
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - wire.decode
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - q.to_wire
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - _backends.get
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - dns.query._check_status
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.quic.factories_for_backend
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.query._remaining
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <builtin>.super
    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 0x7fd438780460>
    argNames:
    - backend
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 55
    functionName: dns.quic.factories_for_backend
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached:
    - dns.asyncbackend.get_backend
    - backend.name
    - dns._trio_backend.Backend
    - asyncio.get_running_loop
    - dns.asyncbackend.sniff
    - _backends.get
    - dns.asyncbackend.get_default_backend
    - dns._asyncio_backend.Backend
    - sniffio.current_async_library
    - dns.asyncbackend.set_default_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: 843
    functionName: dns.asyncquery._inbound_xfr
    functionSourceFile: dns.asyncquery
    functionUses: 1
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - typing.cast.sendall
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - inbound.process_message
    - typing.cast.recvfrom
    - typing.cast.sendto
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.xfr.Inbound
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - txn_manager.from_wire_origin
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - typing.cast.recv
    - query.to_wire
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.asyncquery._read_exactly
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <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: 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 0x7fd4381381c0>
    - <ast.Constant object at 0x7fd438138fa0>
    - <ast.Constant object at 0x7fd438138940>
    - <ast.Constant object at 0x7fd4381383a0>
    - <ast.Constant object at 0x7fd438138310>
    - <ast.Constant object at 0x7fd4381382b0>
    - <ast.Attribute object at 0x7fd438138d00>
    - <ast.Constant object at 0x7fd4381387f0>
    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: 898
    functionName: dns.asyncquery.inbound_xfr
    functionSourceFile: dns.asyncquery
    functionUses: 0
    functionsReached:
    - dns.xfr.extract_serial_from_query
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.rdata.from_text
    - dns.wire.Parser
    - parser.restrict_to
    - dns.name._validate_labels
    - dns.message.Message.want_dnssec
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.ipv4.inet_aton
    - dns.tsig.get_context
    - byte_.isdigit
    - asyncio.get_running_loop
    - <builtin>.len
    - dns.name.from_unicode
    - typing.cast.sendall
    - dns.entropy.random_16
    - dns.tsig.Key
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.asyncquery._timeout
    - inbound.process_message
    - q.find_rrset
    - typing.cast.recvfrom
    - dns.message.make_query
    - _v4_ending.match
    - rdtype_text.replace
    - typing.cast.sendto
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.xfr.Inbound
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.query._compute_times
    - canonical.append
    - dns.message.Message.__init__
    - dns.message._WireReader.read
    - dns.rdata.GenericRdata.from_text
    - sniffio.current_async_library
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns._trio_backend.Backend
    - dns.entropy.EntropyPool._stir
    - dns.inet.af_for_address
    - key.name.to_digestable
    - dns.rdtypes.ANY.OPT.OPT
    - dns.xfr.make_query
    - <builtin>.abs
    - txn_manager.get_class
    - btext.endswith
    - <builtin>.str
    - dns.asyncbackend.set_default_backend
    - txn_manager.from_wire_origin
    - _rdata_classes.get
    - dns.ipv6.inet_aton
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.message.from_wire
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - part.isdigit
    - dns.flags.Flag
    - dns.message.Message.find_rrset
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - m.group
    - object.__setattr__
    - <builtin>.open
    - r.read
    - tok.concatenate_remaining_identifiers
    - hmac.compare_digest
    - struct.pack
    - txn_manager.reader
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - dns.asyncbackend.get_backend
    - txn_manager.origin_information
    - _colon_colon_start.match
    - tok.get
    - rdata.to_wire
    - query.find_rrset
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - _colon_colon_end.match
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.message.Message._make_opt
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - dns.message._WireReader.__init__
    - tok.unget
    - dns.asyncbackend.get_default_backend
    - dns.rdata.from_wire
    - typing.cast.recv
    - tok.get_eol_as_token
    - query.to_wire
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - tok.get_int
    - <builtin>.bytes
    - backend.make_socket
    - <builtin>.max
    - labels.append
    - dns.message._maybe_import_update
    - _backends.get
    - dns.name.from_text
    - dns.tsig.HMACTSig.update
    - txn.get
    - struct.unpack
    - importlib.import_module
    - token.is_identifier
    - dns.renderer._make_opt
    - dns.entropy.EntropyPool.random_8
    - dns._asyncio_backend.Backend
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.asyncquery._read_exactly
    - dns.tsig._maybe_start_digest
    - q.use_tsig
    - binascii.unhexlify
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.asyncbackend.sniff
    - dns.message.from_wire.initialize_message
    - btext.split
    - rrset.add
    - dns.rrset.from_rdata_list
    - dns.rrset.RRset.__init__
    - dns.asyncquery._source_tuple
    - typing.cast
    - btext.startswith
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - dns.message.Message.section_from_number
    - <builtin>.getattr
    - dns.rrset.RRset
    - dns.rdata.from_wire_parser
    - rd.covers
    - dns.tokenizer.Tokenizer
    - dns.message.Message.section_number
    - dns.asyncquery._inbound_xfr
    - <builtin>.super
    - <builtin>.enumerate
    - dns.message.Message.use_edns
    linkageType: pythonLinkage
    raised: []
    returnType: N/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._no_ssl
    functionSourceFile: dns._no_ssl
    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: 28
    functionName: dns._no_ssl.SSLContext.__init__
    functionSourceFile: dns._no_ssl
    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
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: dns._no_ssl.SSLContext.wrap_socket
    functionSourceFile: dns._no_ssl
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: dns._no_ssl.SSLContext.set_alpn_protocols
    functionSourceFile: dns._no_ssl
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: 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: 41
    functionName: dns._no_ssl.SSLSocket.pending
    functionSourceFile: dns._no_ssl
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: 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: 44
    functionName: dns._no_ssl.SSLSocket.do_handshake
    functionSourceFile: dns._no_ssl
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - Exception
    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: 47
    functionName: dns._no_ssl.SSLSocket.settimeout
    functionSourceFile: dns._no_ssl
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: dns._no_ssl.SSLSocket.getpeercert
    functionSourceFile: dns._no_ssl
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: 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: 53
    functionName: dns._no_ssl.SSLSocket.__enter__
    functionSourceFile: dns._no_ssl
    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_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 56
    functionName: dns._no_ssl.SSLSocket.__exit__
    functionSourceFile: dns._no_ssl
    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.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: 20
    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 0x7fd438c50e20>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 24
    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: 34
    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: 61
    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: 65
    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: 86
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdataset.ImmutableRdataset
    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:
    - node
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 92
    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 0x7fd437e5bb50>
    - <ast.Constant object at 0x7fd437e5bd30>
    argNames:
    - self
    - manager
    - replacement
    - read_only
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 109
    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 0x7fd437b59490>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 130
    functionName: dns.transaction.Transaction.get
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._get_rdataset
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.transaction.Transaction._check_ended
    - dns.transaction._ensure_immutable_rdataset
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataset.ImmutableRdataset
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 529
    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: 575
    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: 149
    functionName: dns.transaction.Transaction.get_node
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - node.is_immutable
    - dns.transaction.Transaction._get_node
    - dns.node.ImmutableNode
    - dns.transaction._ensure_immutable_node
    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: 638
    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: 156
    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: 6
    functionLinenumber: 160
    functionName: dns.transaction.Transaction.add
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._add
    - dns.transaction.Transaction._get_rdataset
    - <builtin>.list
    - labels.extend
    - dns.transaction.Transaction._checked_put_rdataset
    - collections.deque
    - dns.transaction.Transaction._put_rdataset
    - dns.transaction.Transaction._raise_if_not_empty
    - arg.to_rdataset
    - args.popleft
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.rdataset.Rdataset
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - dns.rdataset.from_rdata
    - existing.union
    - dns.name.from_unicode
    - <builtin>.len
    - rrset.to_rdataset
    - dns.rdataset.from_rdata_list
    - dns.rdataset.ImmutableRdataset.update_ttl
    - trds.update
    - typing.cast
    - dns.rdataset.ImmutableRdataset.add
    - dns.transaction.Transaction._check_read_only
    - dns.name.IDNA2003Codec.encode
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.Rdataset.__init__
    - dns.transaction.Transaction._origin_information
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - dns.transaction.Transaction._rdataset_from_args
    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: 5
    functionLinenumber: 420
    functionName: dns.transaction.Transaction._add
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.transaction.Transaction._get_rdataset
    - <builtin>.list
    - labels.extend
    - dns.transaction.Transaction._checked_put_rdataset
    - dns.transaction.Transaction._put_rdataset
    - collections.deque
    - dns.transaction.Transaction._raise_if_not_empty
    - arg.to_rdataset
    - args.popleft
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.rdataset.Rdataset
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - dns.rdataset.from_rdata
    - existing.union
    - dns.name.from_unicode
    - <builtin>.len
    - rrset.to_rdataset
    - dns.rdataset.from_rdata_list
    - dns.rdataset.ImmutableRdataset.update_ttl
    - trds.update
    - typing.cast
    - dns.rdataset.ImmutableRdataset.add
    - dns.name.IDNA2003Codec.encode
    - dns.rdataset.Rdataset.__init__
    - dns.transaction.Transaction._origin_information
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - dns.transaction.Transaction._rdataset_from_args
    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: 6
    functionLinenumber: 175
    functionName: dns.transaction.Transaction.replace
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.transaction.Transaction._add
    - dns.transaction.Transaction._get_rdataset
    - <builtin>.list
    - labels.extend
    - dns.transaction.Transaction._checked_put_rdataset
    - collections.deque
    - dns.transaction.Transaction._put_rdataset
    - dns.transaction.Transaction._raise_if_not_empty
    - arg.to_rdataset
    - args.popleft
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.rdataset.Rdataset
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - dns.rdataset.from_rdata
    - existing.union
    - dns.name.from_unicode
    - <builtin>.len
    - rrset.to_rdataset
    - dns.rdataset.from_rdata_list
    - dns.rdataset.ImmutableRdataset.update_ttl
    - trds.update
    - typing.cast
    - dns.rdataset.ImmutableRdataset.add
    - dns.transaction.Transaction._check_read_only
    - dns.name.IDNA2003Codec.encode
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.Rdataset.__init__
    - dns.transaction.Transaction._origin_information
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - dns.transaction.Transaction._rdataset_from_args
    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: 6
    functionLinenumber: 196
    functionName: dns.transaction.Transaction.delete
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._get_rdataset
    - <builtin>.list
    - labels.extend
    - dns.transaction.Transaction._checked_put_rdataset
    - collections.deque
    - dns.transaction.Transaction._put_rdataset
    - dns.transaction.Transaction._delete
    - arg.to_rdataset
    - args.popleft
    - dns.name._validate_labels
    - dns.transaction.Transaction._delete_rdataset
    - <builtin>.ord
    - dns.transaction.Transaction._checked_delete_name
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - existing.intersection
    - existing.difference
    - dns.rdataset.from_rdata
    - c.isdigit
    - dns.transaction.Transaction._name_exists
    - dns.transaction.Transaction._delete_name
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rdataset.from_rdata_list
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.name.is_all_ascii
    - typing.cast
    - dns.rdataset.ImmutableRdataset.add
    - dns.transaction.Transaction._check_read_only
    - dns.transaction.Transaction._checked_delete_rdataset
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.transaction.Transaction._rdataset_from_args
    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: 5
    functionLinenumber: 465
    functionName: dns.transaction.Transaction._delete
    functionSourceFile: dns.transaction
    functionUses: 2
    functionsReached:
    - dns.transaction.Transaction._get_rdataset
    - <builtin>.list
    - labels.extend
    - dns.transaction.Transaction._checked_put_rdataset
    - dns.transaction.Transaction._put_rdataset
    - collections.deque
    - arg.to_rdataset
    - args.popleft
    - dns.name._validate_labels
    - dns.transaction.Transaction._delete_rdataset
    - <builtin>.ord
    - dns.transaction.Transaction._checked_delete_name
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - existing.intersection
    - existing.difference
    - dns.rdataset.from_rdata
    - c.isdigit
    - dns.transaction.Transaction._name_exists
    - dns.transaction.Transaction._delete_name
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rdataset.from_rdata_list
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.name.is_all_ascii
    - typing.cast
    - dns.rdataset.ImmutableRdataset.add
    - dns.transaction.Transaction._checked_delete_rdataset
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.transaction.Transaction._rdataset_from_args
    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: 6
    functionLinenumber: 218
    functionName: dns.transaction.Transaction.delete_exact
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._get_rdataset
    - <builtin>.list
    - labels.extend
    - dns.transaction.Transaction._checked_put_rdataset
    - collections.deque
    - dns.transaction.Transaction._put_rdataset
    - dns.transaction.Transaction._delete
    - arg.to_rdataset
    - args.popleft
    - dns.name._validate_labels
    - dns.transaction.Transaction._delete_rdataset
    - <builtin>.ord
    - dns.transaction.Transaction._checked_delete_name
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - existing.intersection
    - existing.difference
    - dns.rdataset.from_rdata
    - c.isdigit
    - dns.transaction.Transaction._name_exists
    - dns.transaction.Transaction._delete_name
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rdataset.from_rdata_list
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.name.is_all_ascii
    - typing.cast
    - dns.rdataset.ImmutableRdataset.add
    - dns.transaction.Transaction._check_read_only
    - dns.transaction.Transaction._checked_delete_rdataset
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.transaction.Transaction._rdataset_from_args
    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: 241
    functionName: dns.transaction.Transaction.name_exists
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.transaction.Transaction._name_exists
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.transaction.Transaction._check_ended
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 599
    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 0x7fd4380bf5b0>
    - <ast.Constant object at 0x7fd4380bfeb0>
    - <ast.Attribute object at 0x7fd4380bf1f0>
    argNames:
    - self
    - value
    - relative
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 248
    functionName: dns.transaction.Transaction.update_serial
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._add
    - dns.transaction.Transaction._get_rdataset
    - <builtin>.list
    - labels.extend
    - dns.transaction.Transaction._checked_put_rdataset
    - collections.deque
    - dns.transaction.Transaction._put_rdataset
    - dns.transaction.Transaction._raise_if_not_empty
    - arg.to_rdataset
    - args.popleft
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.rdataset.Rdataset
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - dns.rdataset.from_rdata
    - dns.rdataset.from_rdata_list
    - existing.union
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    - rrset.to_rdataset
    - dns.name.from_unicode
    - typing.cast
    - dns.serial.Serial
    - trds.update
    - dns.rdataset.ImmutableRdataset.add
    - dns.transaction.Transaction._check_read_only
    - dns.name.IDNA2003Codec.encode
    - dns.transaction.Transaction.replace
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.Rdataset.__init__
    - dns.transaction.Transaction._origin_information
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - dns.transaction.Transaction._rdataset_from_args
    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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 284
    functionName: dns.transaction.Transaction.__iter__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._iterate_rdatasets
    - dns.transaction.Transaction._check_ended
    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: 630
    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: 288
    functionName: dns.transaction.Transaction.changed
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._changed
    - dns.transaction.Transaction._check_ended
    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: 606
    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: 299
    functionName: dns.transaction.Transaction.commit
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.transaction.Transaction._end
    - 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: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 533
    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: 312
    functionName: dns.transaction.Transaction.rollback
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.transaction.Transaction._end
    - 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: 2
    argDefaultValues: []
    argNames:
    - self
    - check
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 324
    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: 336
    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: 349
    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: 361
    functionName: dns.transaction.Transaction.iterate_rdatasets
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._iterate_rdatasets
    - dns.transaction.Transaction._check_ended
    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: 373
    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: 634
    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: 386
    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: 4
    functionLinenumber: 390
    functionName: dns.transaction.Transaction._rdataset_from_args
    functionSourceFile: dns.transaction
    functionUses: 7
    functionsReached:
    - typing.cast
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - arg.to_rdataset
    - args.popleft
    - dns.rdataset.Rdataset.__init__
    - dns.rdataset.from_rdata
    - <builtin>.super
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    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: 650
    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: 0
    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: 540
    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: 545
    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: 550
    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: 610
    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: 581
    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: 592
    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: 585
    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: 559
    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: 562
    functionName: dns.transaction.Transaction.__exit__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction.commit
    - dns.transaction.Transaction._end
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction.rollback
    - dns.transaction.Transaction._end_transaction
    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: 621
    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.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: 43
    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: 56
    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: 67
    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: 89
    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: 93
    functionName: dns.node.Node.to_text
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - rds.to_text
    - s.write
    - <builtin>.len
    - io.StringIO
    - s.getvalue
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 113
    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: 3
    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: 116
    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: 128
    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: 131
    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: 134
    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: 137
    functionName: dns.node.Node._append_rdataset
    functionSourceFile: dns.node
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - dns.node._matches_type_or_its_signature
    - dns.node.NodeKind.classify
    - dns.node.NodeKind.classify_rdataset
    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 0x7fd4381ce760>
    - <ast.Constant object at 0x7fd4381ce790>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 165
    functionName: dns.node.Node.find_rdataset
    functionSourceFile: dns.node
    functionUses: 3
    functionsReached:
    - dns.node.NodeKind.classify_rdataset
    - dns.node.NodeKind.classify
    - dns.rdataset.Rdataset
    - dns.node.Node._append_rdataset
    - <builtin>.len
    - dns.node._matches_type_or_its_signature
    - 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 0x7fd4380caee0>
    - <ast.Constant object at 0x7fd4380ca5b0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 206
    functionName: dns.node.Node.get_rdataset
    functionSourceFile: dns.node
    functionUses: 2
    functionsReached:
    - dns.node.NodeKind.classify_rdataset
    - dns.node._matches_type_or_its_signature
    - dns.node.NodeKind.classify
    - dns.rdataset.Rdataset
    - dns.node.Node._append_rdataset
    - <builtin>.len
    - dns.node.Node.find_rdataset
    - rds.match
    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 0x7fd4380ca7f0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 243
    functionName: dns.node.Node.delete_rdataset
    functionSourceFile: dns.node
    functionUses: 1
    functionsReached:
    - dns.node.NodeKind.classify_rdataset
    - dns.node._matches_type_or_its_signature
    - dns.node.NodeKind.classify
    - dns.rdataset.Rdataset
    - dns.node.Node.get_rdataset
    - dns.node.Node._append_rdataset
    - <builtin>.len
    - dns.node.Node.find_rdataset
    - rds.match
    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: 265
    functionName: dns.node.Node.replace_rdataset
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - dns.node.NodeKind.classify_rdataset
    - dns.node.Node.find_rdataset
    - dns.node.NodeKind.classify
    - dns.rdataset.Rdataset
    - <builtin>.isinstance
    - dns.node.Node.get_rdataset
    - dns.node.Node._append_rdataset
    - dns.node.Node.delete_rdataset
    - replacement.to_rdataset
    - <builtin>.len
    - dns.node._matches_type_or_its_signature
    - rds.match
    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: 291
    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: 312
    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: 318
    functionName: dns.node.ImmutableNode.__init__
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    - <builtin>.tuple
    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 0x7fd438780520>
    - <ast.Constant object at 0x7fd4387805e0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 324
    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 0x7fd437f00d30>
    - <ast.Constant object at 0x7fd437f00130>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 335
    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 0x7fd43873f220>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 346
    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: 354
    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: 357
    functionName: dns.node.ImmutableNode.is_immutable
    functionSourceFile: dns.node
    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:
    - int_parts.append
    - requirement.split
    - importlib.metadata.version
    - version.split
    - _cache.get
    - dns._features._version_check
    - <builtin>.int
    - itertools.takewhile
    - dns._features._tuple_from_text
    - dns._features.have
    - _requirements.get
    - <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: 21
    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: 27
    functionName: dns.quic._asyncio_manager_factory
    functionSourceFile: dns.quic
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.quic._asyncio.AsyncioQuicManager.__init__
    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 0x7fd438081a60>
    - <ast.Attribute object at 0x7fd4380810a0>
    - <ast.Constant object at 0x7fd4380818e0>
    - <ast.Constant object at 0x7fd438081430>
    argNames:
    - self
    - conf
    - verify_mode
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 249
    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: 47
    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: 50
    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 0x7fd437b595e0>
    - <ast.Attribute object at 0x7fd437b59970>
    - <ast.Constant object at 0x7fd437b596d0>
    - <ast.Constant object at 0x7fd437b59c70>
    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: 217
    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: 67
    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: 74
    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._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: 25
    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: 29
    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: 33
    functionName: dns.quic._asyncio.AsyncioQuicStream.wait_for
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.have
    - <builtin>.max
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - asyncio.wait_for
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.len
    - 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: 90
    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: 42
    functionName: dns.quic._common.Buffer.have
    functionSourceFile: dns.quic._common
    functionUses: 11
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 45
    functionName: dns.quic._asyncio.AsyncioQuicStream.wait_for_end
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    - <builtin>.max
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - asyncio.wait_for
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - 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: 0
    functionLinenumber: 49
    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 0x7fd437fde790>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 55
    functionName: dns.quic._asyncio.AsyncioQuicStream.receive
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    - dns.quic._common.Buffer.get
    - dns.quic._common.Buffer.get_all
    - dns.quic._common.Buffer.have
    - <builtin>.max
    - dns.quic._asyncio.AsyncioQuicStream.wait_for_end
    - asyncio.wait_for
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - dns.quic._asyncio.AsyncioQuicStream.wait_for
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.len
    - struct.unpack
    - time.time
    - dns.quic._common.BaseQuicStream._expiration_from_timeout
    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: 83
    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: 58
    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: 52
    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 0x7fd437e90820>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 66
    functionName: dns.quic._asyncio.AsyncioQuicStream.send
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._encapsulate
    - 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: 131
    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: 70
    functionName: dns.quic._asyncio.AsyncioQuicStream._add_input
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._common_add_input
    - dns.quic._common.Buffer.have
    - dns.quic._common.Buffer.put
    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: 137
    functionName: dns.quic._common.BaseQuicStream._common_add_input
    functionSourceFile: dns.quic._common
    functionUses: 3
    functionsReached:
    - <builtin>.len
    - dns.quic._common.Buffer.have
    - dns.quic._common.Buffer.put
    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: 75
    functionName: dns.quic._asyncio.AsyncioQuicStream.close
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._common.BaseQuicStream._close
    - dns.quic._common.Buffer.put
    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: 146
    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: 80
    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: 83
    functionName: dns.quic._asyncio.AsyncioQuicStream.__aexit__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicStream.close
    - dns.quic._common.BaseQuicStream._close
    - dns.quic._common.Buffer.put
    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 0x7fd438897b80>
    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: 91
    functionName: dns.quic._asyncio.AsyncioQuicConnection.__init__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - asyncio.Condition
    - <builtin>.super
    - asyncio.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: 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: 101
    functionName: dns.quic._asyncio.AsyncioQuicConnection._receiver
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns._asyncio_backend.Backend
    - time.time
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - dns._trio_backend.Backend
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    - m.group
    - _v4_ending.match
    - backend.make_socket
    - _backends.get
    - struct.pack
    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: 129
    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: 134
    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: 140
    functionName: dns.quic._asyncio.AsyncioQuicConnection._sender
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - stream._add_input
    - dns.quic._common.BaseQuicConnection._handle_timer
    - <builtin>.min
    - dns.quic._asyncio.AsyncioQuicConnection._handle_events
    - asyncio.sleep
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - <builtin>.isinstance
    - <builtin>.max
    - asyncio.wait_for
    - dns.quic._common.BaseQuicConnection.is_h3
    - time.time
    - dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer
    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 0x7fd438750580>
    argNames:
    - self
    - closed_is_special
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 200
    functionName: dns.quic._common.BaseQuicConnection._get_timer_values
    functionSourceFile: dns.quic._common
    functionUses: 4
    functionsReached:
    - <builtin>.max
    - time.time
    - <builtin>.min
    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: 213
    functionName: dns.quic._common.BaseQuicConnection._handle_timer
    functionSourceFile: dns.quic._common
    functionUses: 4
    functionsReached:
    - time.time
    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: 156
    functionName: dns.quic._asyncio.AsyncioQuicConnection._handle_events
    functionSourceFile: dns.quic._asyncio
    functionUses: 2
    functionsReached:
    - dns.quic._common.BaseQuicConnection.is_h3
    - stream._add_input
    - <builtin>.isinstance
    - asyncio.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: 186
    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 0x7fd4380e6040>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 203
    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: 207
    functionName: dns.quic._asyncio.AsyncioQuicConnection.run
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.asyncbackend.get_backend
    - _colon_colon_start.match
    - dns.quic._asyncio.AsyncioQuicConnection._handle_events
    - asyncio.sleep
    - <builtin>.ord
    - asyncio.wait_for
    - canonical.append
    - dns.quic._common.BaseQuicConnection.is_h3
    - dns._asyncio_backend.Backend
    - time.time
    - stream._add_input
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - dns._trio_backend.Backend
    - <builtin>.isinstance
    - binascii.unhexlify
    - text.encode
    - <builtin>.int
    - dns.quic._asyncio.AsyncioQuicConnection._sender
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.min
    - dns.ipv6.inet_aton
    - <builtin>.range
    - btext.startswith
    - asyncio.Task
    - part.isdigit
    - dns.quic._asyncio.AsyncioQuicConnection._receiver
    - dns.quic._common.BaseQuicConnection._handle_timer
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    - m.group
    - _v4_ending.match
    - backend.make_socket
    - <builtin>.max
    - _backends.get
    - struct.pack
    - dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437f3f370>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 213
    functionName: dns.quic._asyncio.AsyncioQuicConnection.make_stream
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - asyncio.Condition
    - dns.quic._asyncio.AsyncioQuicStream.__init__
    - <builtin>.super
    - asyncio.wait_for
    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: 225
    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 0x7fd438081d30>
    - <ast.Constant object at 0x7fd43873f580>
    - <ast.Constant object at 0x7fd43873fd00>
    - <ast.Constant object at 0x7fd43873f2b0>
    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: 254
    functionName: dns.quic._asyncio.AsyncioQuicManager.connect
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - time.time
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - copy.copy
    - aioquic.quic.connection.QuicConnection
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - functools.partial
    - dns.quic._common.BaseQuicManager._connect
    - part.isdigit
    - qconn.connect
    - m.group
    - address.find
    - _v4_ending.match
    - connection.run
    - struct.pack
    - scope.isdigit
    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 0x7fd438531a90>
    - <ast.Constant object at 0x7fd438531fa0>
    - <ast.Constant object at 0x7fd438531eb0>
    - <ast.Constant object at 0x7fd438531160>
    - <ast.Constant object at 0x7fd438531ee0>
    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: 254
    functionName: dns.quic._common.BaseQuicManager._connect
    functionSourceFile: dns.quic._common
    functionUses: 3
    functionsReached:
    - _colon_colon_start.match
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - time.time
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - copy.copy
    - aioquic.quic.connection.QuicConnection
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - functools.partial
    - part.isdigit
    - qconn.connect
    - m.group
    - address.find
    - _v4_ending.match
    - struct.pack
    - scope.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: connection.run
    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: 264
    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: 267
    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: 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: 31
    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: 35
    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: 66
    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: 74
    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: 77
    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: 80
    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 0x7fd438ee0970>
    argNames:
    - self
    - url
    - datagram
    - post
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: dns.quic._common.BaseQuicStream.send_h3
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse
    - headers.extend
    - url_parts.scheme.encode
    - base64.urlsafe_b64encode
    - url_parts.path.encode
    - url_parts.netloc.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 0x7fd437c7d100>
    - <ast.Constant object at 0x7fd437c7da00>
    - <ast.Constant object at 0x7fd437c7db20>
    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: 152
    functionName: dns.quic._common.BaseQuicConnection.__init__
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - manager.is_h3
    - part.isdigit
    - aioquic.h3.connection.H3Connection
    - m.group
    - address.find
    - _v4_ending.match
    - struct.pack
    - scope.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: 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: 189
    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 0x7fd4387ced30>
    argNames:
    - self
    - stream_id
    - headers
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 192
    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 0x7fd4387cec70>
    argNames:
    - self
    - stream_id
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 196
    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 0x7fd43873fb50>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 220
    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 0x7fd43873faf0>
    - <ast.Constant object at 0x7fd43873f9d0>
    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: 225
    functionName: dns.quic._common.BaseQuicManager.__init__
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - conf.load_verify_locations
    - os.path.isdir
    - <builtin>.isinstance
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - os.path.isfile
    - aioquic.quic.configuration.QuicConfiguration
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 310
    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: 316
    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: 319
    functionName: dns.quic._common.BaseQuicManager.save_session_ticket
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.list
    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: 330
    functionName: dns.quic._common.BaseQuicManager.save_token
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.list
    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 0x7fd438081b50>
    - <ast.Constant object at 0x7fd438081970>
    - <ast.Constant object at 0x7fd4380812b0>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 343
    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: 25
    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: 29
    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: 38
    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 0x7fd438518fd0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 45
    functionName: dns.quic._trio.TrioQuicStream.receive
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    - dns.quic._trio.TrioQuicStream.wait_for_end
    - struct.unpack
    - dns.quic._common.Buffer.get_all
    - dns.quic._trio.TrioQuicStream.wait_for
    - dns.quic._common.Buffer.have
    - trio.move_on_after
    - <builtin>.len
    - 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 0x7fd43851a9d0>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 61
    functionName: dns.quic._trio.TrioQuicStream.send
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._encapsulate
    - 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: 65
    functionName: dns.quic._trio.TrioQuicStream._add_input
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._common_add_input
    - dns.quic._common.Buffer.have
    - dns.quic._common.Buffer.put
    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: 70
    functionName: dns.quic._trio.TrioQuicStream.close
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - dns.quic._common.BaseQuicStream._close
    - 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: 75
    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: 78
    functionName: dns.quic._trio.TrioQuicStream.__aexit__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._close
    - dns.quic._trio.TrioQuicStream.close
    - dns.quic._common.Buffer.put
    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 0x7fd437db1700>
    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: 86
    functionName: dns.quic._trio.TrioQuicConnection.__init__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - trio.socket.socket
    - <builtin>.super
    - trio.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: 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: 94
    functionName: dns.quic._trio.TrioQuicConnection._worker
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - trio.current_time
    - _colon_colon_start.match
    - socket.if_nametoindex
    - trio.sleep
    - <builtin>.ord
    - canonical.append
    - dns.quic._common.BaseQuicConnection.is_h3
    - dns.inet.low_level_address_tuple
    - time.time
    - socket.getaddrinfo
    - stream._add_input
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - dns.quic._trio.TrioQuicConnection._handle_events
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.min
    - dns.ipv6.inet_aton
    - <builtin>.range
    - btext.startswith
    - part.isdigit
    - trio.CancelScope
    - dns.quic._common.BaseQuicConnection._handle_timer
    - m.group
    - address.find
    - _v4_ending.match
    - <builtin>.max
    - struct.pack
    - scope.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: 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: 131
    functionName: dns.quic._trio.TrioQuicConnection._handle_events
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - dns.quic._common.BaseQuicConnection.is_h3
    - stream._add_input
    - <builtin>.isinstance
    - trio.sleep
    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 0x7fd437f00910>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 176
    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: 182
    functionName: dns.quic._trio.TrioQuicConnection.run
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - nursery.start_soon
    - 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: 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 0x7fd437f00280>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 189
    functionName: dns.quic._trio.TrioQuicConnection.make_stream
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._trio.TrioQuicStream.__init__
    - trio.Condition
    - <builtin>.super
    - trio.move_on_after
    - 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: 204
    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 0x7fd43871cd60>
    - <ast.Constant object at 0x7fd43871cc70>
    - <ast.Constant object at 0x7fd43871cdc0>
    - <ast.Constant object at 0x7fd43871ca60>
    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: 228
    functionName: dns.quic._trio.TrioQuicManager.connect
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - time.time
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - copy.copy
    - aioquic.quic.connection.QuicConnection
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - functools.partial
    - dns.quic._common.BaseQuicManager._connect
    - part.isdigit
    - qconn.connect
    - m.group
    - address.find
    - _v4_ending.match
    - struct.pack
    - scope.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 238
    functionName: 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: 241
    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._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: 29
    functionName: dns.quic._sync.SyncQuicStream.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - threading.Condition
    - <builtin>.super
    - threading.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 34
    functionName: dns.quic._sync.SyncQuicStream.wait_for
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.have
    - <builtin>.max
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.len
    - 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
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 46
    functionName: dns.quic._sync.SyncQuicStream.wait_for_end
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.max
    - dns.quic._common.Buffer.seen_end
    - 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 0x7fd4384bea00>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 56
    functionName: dns.quic._sync.SyncQuicStream.receive
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    - dns.quic._sync.SyncQuicStream.wait_for
    - dns.quic._common.Buffer.get_all
    - dns.quic._common.Buffer.have
    - <builtin>.max
    - dns.quic._sync.SyncQuicStream.wait_for_end
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.len
    - dns.quic._common.Buffer.get
    - struct.unpack
    - time.time
    - 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 0x7fd437f0b730>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 70
    functionName: dns.quic._sync.SyncQuicStream.send
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._encapsulate
    - 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: 74
    functionName: dns.quic._sync.SyncQuicStream._add_input
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._common_add_input
    - dns.quic._common.Buffer.have
    - dns.quic._common.Buffer.put
    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: 79
    functionName: dns.quic._sync.SyncQuicStream.close
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - dns.quic._common.BaseQuicStream._close
    - 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: 83
    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: 86
    functionName: dns.quic._sync.SyncQuicStream.__exit__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._close
    - dns.quic._common.Buffer.put
    - dns.quic._sync.SyncQuicStream.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: 94
    functionName: dns.quic._sync.SyncQuicConnection.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - socket.if_nametoindex
    - <builtin>.ord
    - socket.socketpair
    - canonical.append
    - dns.inet.low_level_address_tuple
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - threading.Event
    - threading.Lock
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - part.isdigit
    - m.group
    - address.find
    - _v4_ending.match
    - <builtin>.super
    - struct.pack
    - scope.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: 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: 113
    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: 124
    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: 131
    functionName: dns.quic._sync.SyncQuicConnection._worker
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - stream._add_input
    - dns.quic._common.BaseQuicConnection._handle_timer
    - <builtin>.min
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - <builtin>.isinstance
    - key.data
    - sel.register
    - <builtin>.max
    - sel.select
    - dns.quic._common.BaseQuicConnection.is_h3
    - time.time
    - selectors.DefaultSelector
    - dns.quic._sync.SyncQuicConnection._handle_events
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 5
    IfCount: 15
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 165
    functionName: dns.quic._sync.SyncQuicConnection._handle_events
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - dns.quic._common.BaseQuicConnection.is_h3
    - stream._add_input
    - <builtin>.isinstance
    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 0x7fd438898250>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 207
    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 0x7fd438084130>
    argNames:
    - self
    - stream_id
    - headers
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 212
    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 0x7fd438084eb0>
    argNames:
    - self
    - stream_id
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 218
    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: 224
    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 0x7fd437bb0430>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 230
    functionName: dns.quic._sync.SyncQuicConnection.make_stream
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._sync.SyncQuicStream.__init__
    - threading.Condition
    - <builtin>.super
    - threading.Lock
    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: 241
    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: 245
    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 0x7fd43870fbb0>
    - <ast.Attribute object at 0x7fd43870fc10>
    - <ast.Constant object at 0x7fd43870fa30>
    - <ast.Constant object at 0x7fd43870f250>
    argNames:
    - self
    - conf
    - verify_mode
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 259
    functionName: dns.quic._sync.SyncQuicManager.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - threading.Lock
    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 0x7fd43870f3a0>
    - <ast.Constant object at 0x7fd43870fa90>
    - <ast.Constant object at 0x7fd43870f9a0>
    - <ast.Constant object at 0x7fd43870fb80>
    - <ast.Constant object at 0x7fd43870f0a0>
    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: 265
    functionName: dns.quic._sync.SyncQuicManager.connect
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - _colon_colon_start.match
    - socket.if_nametoindex
    - <builtin>.ord
    - canonical.append
    - dns.inet.low_level_address_tuple
    - time.time
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.inet.af_for_address
    - btext.split
    - <builtin>.len
    - btext.endswith
    - copy.copy
    - aioquic.quic.connection.QuicConnection
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - functools.partial
    - dns.quic._common.BaseQuicManager._connect
    - part.isdigit
    - qconn.connect
    - m.group
    - address.find
    - _v4_ending.match
    - connection.run
    - struct.pack
    - scope.isdigit
    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: 282
    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: 286
    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: 290
    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: 294
    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: 297
    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: 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: 39
    functionName: dns.xfr.TransferError.__init__
    functionSourceFile: dns.xfr
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - Rcode.to_text
    - dns.rcode.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fd4386e4550>
    - <ast.Constant object at 0x7fd4386e4970>
    - <ast.Constant object at 0x7fd4386e4640>
    argNames:
    - self
    - txn_manager
    - rdtype
    - serial
    - is_udp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    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: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 36
    ICount: 7
    IfCount: 25
    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:
    - typing.cast
    - dns.serial.Serial
    - name.is_subdomain
    - rdataset.copy
    - message.rcode
    - <builtin>.len
    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: 258
    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: 261
    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: 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 0x7fd4380f4e80>
    - <ast.Constant object at 0x7fd4380f4bb0>
    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 0x7fd4387c8730>
    - <ast.Constant object at 0x7fd4387c89d0>
    - <ast.Constant object at 0x7fd4387c86d0>
    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:
    - tok.get_uint32
    - tok.get_name
    - dns.rdtypes.ANY.SOA.SOA.__init__
    - tok.get_ttl
    - <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: 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_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 0x7fd438741760>
    - <ast.Constant object at 0x7fd4387419a0>
    - <ast.Constant object at 0x7fd438741160>
    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:
    - struct.pack
    - 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 0x7fd437ac4f10>
    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:
    - parser.get_struct
    - dns.rdtypes.ANY.SOA.SOA.__init__
    - <builtin>.super
    - parser.get_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.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 0x7fd43811a460>
    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.random_16
    - system_random.randrange
    - os.getpid
    - os.urandom
    - dns.entropy.EntropyPool.random_8
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - <builtin>.bytearray
    - <builtin>.bytes
    - r.read
    - dns.entropy.EntropyPool._maybe_seed
    - time.time
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    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:
    - os.getpid
    - system_random.randrange
    - os.urandom
    - dns.entropy.EntropyPool.random_8
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - <builtin>.bytearray
    - <builtin>.bytes
    - r.read
    - dns.entropy.EntropyPool._maybe_seed
    - time.time
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    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: 176
    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: 185
    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: 194
    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: 203
    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: 206
    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: 209
    functionName: dns.message.Message.__str__
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - text_flags.append
    - enum_class.__members__.items
    - dns.message.Message.opcode
    - dns.rcode.from_flags
    - Rcode.make
    - dns.message.Message.to_text
    - Opcode.to_text
    - rrset.to_text
    - dns.opcode.to_text
    - dns.message.Message.rcode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.flags.to_text
    - s.write
    - dns.message.Message.section_from_number
    - Rcode.to_text
    - s.getvalue
    - dns.flags.edns_to_text
    - dns.flags._to_text
    - dns.rcode.to_text
    - io.StringIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 14
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fd4384f9490>
    - <ast.Constant object at 0x7fd4384f9550>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 212
    functionName: dns.message.Message.to_text
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - text_flags.append
    - enum_class.__members__.items
    - dns.message.Message.opcode
    - dns.rcode.from_flags
    - Rcode.make
    - Opcode.to_text
    - rrset.to_text
    - dns.opcode.to_text
    - dns.message.Message.rcode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.flags.to_text
    - s.write
    - dns.message.Message.section_from_number
    - Rcode.to_text
    - s.getvalue
    - dns.flags.edns_to_text
    - dns.flags._to_text
    - dns.rcode.to_text
    - io.StringIO
    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: 904
    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: 85
    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: 886
    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: 2
    argDefaultValues: []
    argNames:
    - self
    - number
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 333
    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: 253
    functionName: dns.message.Message.__eq__
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - <builtin>.enumerate
    - <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: 2
    functionLinenumber: 276
    functionName: dns.message.Message.__ne__
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.message.Message.__eq__
    - <builtin>.enumerate
    - <builtin>.isinstance
    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: 279
    functionName: dns.message.Message.is_response
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - dns.opcode.is_update
    - dns.opcode.from_flags
    - 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: 62
    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: 98
    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: 317
    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 0x7fd438113a30>
    - <ast.Constant object at 0x7fd4381135e0>
    - <ast.Constant object at 0x7fd438113ac0>
    - <ast.Constant object at 0x7fd438113b80>
    - <ast.Constant object at 0x7fd438113e50>
    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: 348
    functionName: dns.message.Message.find_rrset
    functionSourceFile: dns.message
    functionUses: 16
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - <builtin>.enumerate
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.message.Message.section_number
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    IfCount: 0
    argCount: 10
    argDefaultValues:
    - <ast.Attribute object at 0x7fd437c56f10>
    - <ast.Constant object at 0x7fd437c56280>
    - <ast.Constant object at 0x7fd437c56070>
    - <ast.Constant object at 0x7fd437c56640>
    - <ast.Constant object at 0x7fd437c562b0>
    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: 433
    functionName: dns.message.Message.get_rrset
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - <builtin>.enumerate
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - dns.message.Message.find_rrset
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.message.Message.section_number
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 500
    functionName: dns.message.Message.section_count
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.message.Message.section_number
    - <builtin>.sum
    - <builtin>.max
    - dns.message.Message.section_from_number
    - <builtin>.len
    - <builtin>.enumerate
    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: 528
    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: 548
    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: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 14
    IfCount: 12
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fd4382a4190>
    - <ast.Constant object at 0x7fd4382a4fa0>
    - <ast.Constant object at 0x7fd4382a4af0>
    - <ast.Constant object at 0x7fd4382a47c0>
    - <ast.Constant object at 0x7fd4382a4bb0>
    - <ast.Constant object at 0x7fd4382a42b0>
    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: 561
    functionName: dns.message.Message.to_wire
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.message.Message._compute_opt_reserve
    - contextlib.contextmanager
    - f.getvalue
    - hmac.new
    - r.release_reserved
    - time.time
    - dns.message.Message._compute_tsig_reserve
    - r.add_question
    - dns.tsig.get_context
    - dns.tsig.HMACTSig.__init__
    - r.add_rrset
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - <builtin>.isinstance
    - r.add_opt
    - <builtin>.int
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.__init__
    - key.name.to_digestable
    - <builtin>.len
    - typing.cast
    - dns.renderer.Renderer
    - r.get_wire
    - dns.tsig.sign
    - dns.tsig.GSSTSig.update
    - io.BytesIO
    - dns.tsig.GSSTSig.sign
    - rdata.replace
    - r.write_header
    - dns.tsig.HMACTSig.update
    - struct.pack
    - typing.cast.options.to_wire
    - 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: 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: 8
    functionLinenumber: 664
    functionName: dns.message.Message._make_tsig
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - dns.rdtypes.ANY.TSIG.TSIG
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.renderer._make_tsig
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd437c4ff70>
    - <ast.Constant object at 0x7fd437c4f820>
    - <ast.Constant object at 0x7fd437c4f610>
    - <ast.Constant object at 0x7fd437c4feb0>
    - <ast.Constant object at 0x7fd437c4fe20>
    - <ast.Attribute object at 0x7fd437c4fd90>
    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: 6
    functionLinenumber: 671
    functionName: dns.message.Message.use_tsig
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.rdtypes.ANY.TSIG.TSIG
    - <builtin>.list
    - <builtin>.callable
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.renderer._make_tsig
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - <builtin>.next
    - c.isdigit
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - dns.tsig.Key
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.message.Message._make_tsig
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - <builtin>.iter
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 744
    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: 751
    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: 759
    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: 767
    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: 775
    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: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fd437e8a1f0>
    - <ast.Name object at 0x7fd437e8a0a0>
    - <ast.Constant object at 0x7fd437e8afa0>
    argNames:
    - flags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 779
    functionName: dns.message.Message._make_opt
    functionSourceFile: dns.message
    functionUses: 15
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.renderer._make_opt
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.from_unicode
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd43886c970>
    - <ast.Constant object at 0x7fd43886c4c0>
    - <ast.Name object at 0x7fd43886c0d0>
    - <ast.Constant object at 0x7fd43886c580>
    - <ast.Constant object at 0x7fd43886c160>
    - <ast.Constant object at 0x7fd43886c850>
    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: 9
    functionLinenumber: 782
    functionName: dns.message.Message.use_edns
    functionSourceFile: dns.message
    functionUses: 13
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.renderer._make_opt
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.from_unicode
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 836
    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: 9
    functionLinenumber: 850
    functionName: dns.message.Message.ednsflags
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.renderer._make_opt
    - dns.name._validate_labels
    - <builtin>.ord
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.message.Message._make_opt
    - c.isdigit
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.from_unicode
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rrset.from_rdata
    - r.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 857
    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: 865
    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 0x7fd4385184c0>
    argNames:
    - self
    - wanted
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 872
    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: 893
    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: 911
    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: 73
    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: 919
    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: 923
    functionName: dns.message.Message.extended_errors
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - typing.cast
    - dns.message.Message.get_options
    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: 927
    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: 933
    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: 938
    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: 975
    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: 989
    functionName: dns.message.QueryMessage.resolve_chaining
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.rcode.from_flags
    - auname.parent
    - dns.name._validate_labels
    - Rcode.make
    - <builtin>.ord
    - cnames.append
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.message.Message.rcode
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - <builtin>.enumerate
    - typing.cast
    - <builtin>.min
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - dns.message.Message.find_rrset
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.message.Message.section_number
    - dns.message.ChainingResult.__init__
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1065
    functionName: dns.message.QueryMessage.canonical_name
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.rcode.from_flags
    - auname.parent
    - dns.name._validate_labels
    - Rcode.make
    - <builtin>.ord
    - dns.message.QueryMessage.resolve_chaining
    - cnames.append
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - dns.message.Message.rcode
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - <builtin>.enumerate
    - typing.cast
    - <builtin>.min
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.message.Message.section_from_number
    - dns.rrset.RRset
    - dns.message.Message.find_rrset
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.message.Message.section_number
    - dns.message.ChainingResult.__init__
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1082
    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: 1091
    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 0x7fd4385456a0>
    - <ast.Constant object at 0x7fd4385454f0>
    - <ast.Constant object at 0x7fd4385458b0>
    - <ast.Constant object at 0x7fd438545fd0>
    - <ast.Constant object at 0x7fd438545760>
    - <ast.Constant object at 0x7fd438545f70>
    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: 1
    functionLinenumber: 1118
    functionName: dns.message._WireReader.__init__
    functionSourceFile: dns.message
    functionUses: 32
    functionsReached:
    - 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: 1140
    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: 1156
    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: 1159
    functionName: dns.message._WireReader._get_section
    functionSourceFile: dns.message
    functionUses: 33
    functionsReached:
    - dns.rdata.get_rdata_class
    - dns.tsig.HMACTSig.sign
    - dns.message._WireReader._add_error
    - <builtin>.callable
    - dns.exception.ExceptionWrapper
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - time.time
    - RdataType.to_text
    - parser.get_remaining
    - dns.name.Name.__init__
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.get_context
    - dns.tsig.HMACTSig.__init__
    - dns.rdatatype.to_text
    - dns.tsig._maybe_start_digest
    - byte_.isdigit
    - dns.tsig._digest
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.__init__
    - key.name.to_digestable
    - c.isdigit
    - struct.pack
    - dns.message.MessageError.__init__
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - rrset.add
    - <builtin>.abs
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - dns.tsig.HMACTSig.update
    - dns.tsig.Key
    - typing.cast
    - <builtin>.range
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - absolute_name.relativize
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - dns.rdata.from_wire_parser
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - rd.covers
    - encodings.idna.ToASCII
    - hmac.compare_digest
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - struct.unpack
    - importlib.import_module
    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: 1260
    functionName: dns.message._WireReader.read
    functionSourceFile: dns.message
    functionUses: 32
    functionsReached:
    - dns.tsig.HMACTSig.sign
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.tsig.get_context
    - byte_.isdigit
    - <builtin>.len
    - dns.name.from_unicode
    - dns.tsig.Key
    - dns.entropy.random_16
    - <builtin>.range
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - labels.extend
    - dns.message._WireReader._add_error
    - system_random.randrange
    - dns.message.Message.__init__
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.EntropyPool._stir
    - key.name.to_digestable
    - <builtin>.abs
    - <builtin>.str
    - _rdata_classes.get
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.from_rdata
    - dns.tsig.validate
    - r.add
    - dns.tsig.GSSTSig.update
    - dns.flags.Flag
    - dns.tsig.GSSTSig.verify
    - dns.rdataclass.RdataClass.make
    - <builtin>.open
    - r.read
    - hmac.compare_digest
    - struct.pack
    - <builtin>.list
    - os.getpid
    - <builtin>.callable
    - <builtin>.ord
    - dns.tsig.HMACTSig.verify
    - hmac.new
    - r.update_ttl
    - <builtin>.isinstance
    - text.encode
    - dns.opcode.from_flags
    - <builtin>.int
    - dns.tsig.GSSTSig.__init__
    - c.isdigit
    - dns.message.MessageError.__init__
    - RdataClass.to_text
    - absolute_name.relativize
    - dns.rdata.GenericRdata.__init__
    - <builtin>.tuple
    - <builtin>.chr
    - dns.message._WireReader._get_section
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.message._maybe_import_update
    - dns.tsig.HMACTSig.update
    - dns.name.from_text
    - struct.unpack
    - importlib.import_module
    - dns.entropy.EntropyPool.random_8
    - time.time
    - label.encode
    - RdataType.to_text
    - dns.tsig._maybe_start_digest
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.message.from_wire.initialize_message
    - dns.rrset.from_rdata_list
    - rrset.add
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.message._WireReader._get_question
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - <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.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: 1371
    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 0x7fd437f183d0>
    - <ast.Constant object at 0x7fd437f18250>
    - <ast.Constant object at 0x7fd437f18a90>
    - <ast.Constant object at 0x7fd437f18520>
    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: 1421
    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: 1445
    functionName: dns.message._TextReader._header_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - dns.rcode.from_text
    - dns.flags.edns_from_text
    - t.upper
    - token.is_identifier
    - Opcode.from_text
    - dns.flags.from_text
    - text.split
    - dns.opcode.to_flags
    - Rcode.from_text
    - dns.opcode.from_text
    - dns.flags._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: 1
    functionLinenumber: 49
    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: 1486
    functionName: dns.message._TextReader._question_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - dns.rdataclass.from_text
    - token.is_identifier
    - dns.rdatatype.from_text
    - RdataClass.from_text
    - RdataType.from_text
    - token.is_whitespace
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 1522
    functionName: dns.message._TextReader._rr_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - dns.rdata.get_rdata_class
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - parser.restrict_to
    - dns.wire.Parser
    - dns.rdata.GenericRdata.from_text
    - RdataType.to_text
    - parser.get_remaining
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdataclass.from_text
    - binascii.unhexlify
    - <builtin>.isinstance
    - <builtin>.int
    - RdataType.from_text
    - tok.unget
    - rrset.add
    - <builtin>.len
    - token.is_whitespace
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - token.is_eol_or_eof
    - _rdata_classes.get
    - RdataClass.to_text
    - RdataClass.from_text
    - dns.rdatatype.from_text
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.rdataclass.RdataClass.make
    - rd.covers
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - rdtype_text.replace
    - importlib.import_module
    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: 1598
    functionName: dns.message._TextReader._make_message
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - os.getpid
    - system_random.randrange
    - os.urandom
    - dns.entropy.EntropyPool.random_8
    - message.set_rcode
    - dns.message.Message.__init__
    - time.time
    - message.use_edns
    - dns.entropy.EntropyPool._stir
    - <builtin>.str
    - dns.entropy.random_16
    - <builtin>.bytearray
    - dns.message._message_factory_from_opcode
    - <builtin>.open
    - <builtin>.bytes
    - r.read
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.entropy.EntropyPool.random_16
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1610
    functionName: dns.message._TextReader.read
    functionSourceFile: dns.message
    functionUses: 2
    functionsReached:
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.rdata.from_text
    - parser.restrict_to
    - dns.wire.Parser
    - dns.message._TextReader._question_line
    - dns.rdatatype.to_text
    - dns.rdataclass.from_text
    - <builtin>.len
    - token.is_eol_or_eof
    - dns.message._TextReader._make_message
    - dns.entropy.random_16
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.flags.edns_from_text
    - token.value.upper
    - dns.entropy.EntropyPool._maybe_seed
    - rdtype_text.replace
    - dns.opcode.from_text
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - system_random.randrange
    - message._get_one_rr_per_rrset
    - dns.message.Message.__init__
    - Rcode.from_text
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.flags._from_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.entropy.EntropyPool._stir
    - RdataType.from_text
    - <builtin>.str
    - _rdata_classes.get
    - RdataClass.from_text
    - dns.rdatatype.RdataType.make
    - text.split
    - message._section_enum.from_text
    - dns.rdataclass.RdataClass.make
    - object.__setattr__
    - <builtin>.open
    - dns.message._TextReader._rr_line
    - r.read
    - tok.concatenate_remaining_identifiers
    - os.getpid
    - tok.get
    - rdata.to_wire
    - Opcode.from_text
    - message.set_rcode
    - <builtin>.isinstance
    - <builtin>.int
    - dns.message._TextReader._header_line
    - tok.unget
    - token.is_whitespace
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - dns.rcode.from_text
    - RdataClass.to_text
    - dns.rdatatype.from_text
    - dns.rdata.GenericRdata.__init__
    - tok.get_int
    - <builtin>.bytes
    - dns.message._maybe_import_update
    - dns.opcode.to_flags
    - importlib.import_module
    - token.is_identifier
    - dns.entropy.EntropyPool.random_8
    - time.time
    - RdataType.to_text
    - binascii.unhexlify
    - message.use_edns
    - dns.flags.from_text
    - rrset.add
    - t.upper
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - dns.tokenizer.Tokenizer
    - token.is_comment
    - <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: 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: 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 0x7fd438130040>
    - <ast.Constant object at 0x7fd438130880>
    - <ast.Constant object at 0x7fd438130700>
    - <ast.Constant object at 0x7fd438130760>
    - <ast.Constant object at 0x7fd438130190>
    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: 1656
    functionName: dns.message.from_text
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.rdata.from_text
    - parser.restrict_to
    - dns.wire.Parser
    - dns.message._TextReader._question_line
    - dns.rdatatype.to_text
    - dns.rdataclass.from_text
    - <builtin>.len
    - token.is_eol_or_eof
    - dns.message._TextReader._make_message
    - dns.entropy.random_16
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.flags.edns_from_text
    - dns.message._TextReader.__init__
    - token.value.upper
    - dns.entropy.EntropyPool._maybe_seed
    - rdtype_text.replace
    - dns.opcode.from_text
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - system_random.randrange
    - message._get_one_rr_per_rrset
    - dns.message.Message.__init__
    - Rcode.from_text
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.flags._from_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.entropy.EntropyPool._stir
    - RdataType.from_text
    - <builtin>.str
    - _rdata_classes.get
    - RdataClass.from_text
    - dns.rdatatype.RdataType.make
    - dns.message._TextReader.read
    - text.split
    - message._section_enum.from_text
    - dns.rdataclass.RdataClass.make
    - object.__setattr__
    - <builtin>.open
    - dns.message._TextReader._rr_line
    - r.read
    - tok.concatenate_remaining_identifiers
    - os.getpid
    - tok.get
    - rdata.to_wire
    - Opcode.from_text
    - message.set_rcode
    - <builtin>.isinstance
    - <builtin>.int
    - dns.message._TextReader._header_line
    - tok.unget
    - token.is_whitespace
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - dns.rcode.from_text
    - RdataClass.to_text
    - dns.rdatatype.from_text
    - dns.rdata.GenericRdata.__init__
    - tok.get_int
    - <builtin>.bytes
    - dns.message._maybe_import_update
    - dns.opcode.to_flags
    - importlib.import_module
    - token.is_identifier
    - dns.entropy.EntropyPool.random_8
    - time.time
    - RdataType.to_text
    - binascii.unhexlify
    - message.use_edns
    - dns.flags.from_text
    - rrset.add
    - t.upper
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - dns.tokenizer.Tokenizer
    - token.is_comment
    - <builtin>.super
    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 0x7fd438130c10>
    - <ast.Constant object at 0x7fd438c5f7c0>
    argNames:
    - f
    - idna_codec
    - one_rr_per_rrset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1704
    functionName: dns.message.from_file
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.exception.ExceptionWrapper
    - os.urandom
    - dns.rdata.from_text
    - parser.restrict_to
    - dns.wire.Parser
    - dns.message._TextReader._question_line
    - dns.rdatatype.to_text
    - dns.rdataclass.from_text
    - <builtin>.len
    - token.is_eol_or_eof
    - dns.message._TextReader._make_message
    - dns.entropy.random_16
    - dns.message._message_factory_from_opcode
    - dns.rdataclass.to_text
    - dns.flags.edns_from_text
    - dns.message._TextReader.__init__
    - token.value.upper
    - dns.entropy.EntropyPool._maybe_seed
    - rdtype_text.replace
    - dns.opcode.from_text
    - dns.entropy.EntropyPool.random_16
    - dns.rdata.get_rdata_class
    - system_random.randrange
    - message._get_one_rr_per_rrset
    - dns.message.Message.__init__
    - Rcode.from_text
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.flags._from_text
    - contextlib.nullcontext
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.entropy.EntropyPool._stir
    - RdataType.from_text
    - <builtin>.str
    - _rdata_classes.get
    - RdataClass.from_text
    - dns.rdatatype.RdataType.make
    - dns.message._TextReader.read
    - text.split
    - message._section_enum.from_text
    - dns.rdataclass.RdataClass.make
    - object.__setattr__
    - <builtin>.open
    - dns.message._TextReader._rr_line
    - r.read
    - tok.concatenate_remaining_identifiers
    - os.getpid
    - tok.get
    - rdata.to_wire
    - Opcode.from_text
    - message.set_rcode
    - <builtin>.isinstance
    - <builtin>.int
    - dns.message._TextReader._header_line
    - tok.unget
    - token.is_whitespace
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - dns.rcode.from_text
    - RdataClass.to_text
    - dns.rdatatype.from_text
    - dns.rdata.GenericRdata.__init__
    - tok.get_int
    - <builtin>.bytes
    - dns.message._maybe_import_update
    - dns.opcode.to_flags
    - importlib.import_module
    - token.is_identifier
    - dns.entropy.EntropyPool.random_8
    - time.time
    - RdataType.to_text
    - binascii.unhexlify
    - message.use_edns
    - dns.flags.from_text
    - rrset.add
    - t.upper
    - <builtin>.bytearray
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - rd.covers
    - dns.tokenizer.Tokenizer
    - token.is_comment
    - <builtin>.super
    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 0x7fd437b7a100>
    - <ast.Constant object at 0x7fd437b7a970>
    - <ast.Constant object at 0x7fd437b7a070>
    - <ast.Constant object at 0x7fd437b7afd0>
    - <ast.Constant object at 0x7fd437b7ad60>
    - <ast.Constant object at 0x7fd437b7aa90>
    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: 1849
    functionName: dns.message.make_response
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - system_random.randrange
    - os.getpid
    - os.urandom
    - dns.entropy.EntropyPool.random_8
    - dns.message.Message.__init__
    - time.time
    - dns.entropy.EntropyPool._stir
    - response.use_tsig
    - <builtin>.str
    - dns.entropy.random_16
    - <builtin>.bytearray
    - dns.message._message_factory_from_opcode
    - response.set_opcode
    - response.use_edns
    - <builtin>.open
    - <builtin>.bytes
    - r.read
    - dns.message._maybe_import_update
    - dns.entropy.EntropyPool._maybe_seed
    - query.opcode
    - dns.entropy.EntropyPool.random_16
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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 0x7fd43851aa30>
    - <ast.Attribute object at 0x7fd43851a760>
    - <ast.Constant object at 0x7fd43851af70>
    - <ast.Constant object at 0x7fd43851a8e0>
    - <ast.Attribute object at 0x7fd43851ad90>
    - <ast.Constant object at 0x7fd43851a850>
    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:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.opcode.to_flags
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - 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
    - 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 0x7fd43873fd00>
    - <ast.Constant object at 0x7fd43873f520>
    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:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - dns.wire.Parser
    - dns.name._validate_labels
    - parser.restrict_to
    - <builtin>.ord
    - dns.update.UpdateMessage._add_rr
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.name.Name.__init__
    - dns.update.UpdateMessage.delete
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - label.encode
    - byte_.isdigit
    - RdataType.to_text
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - largs.pop
    - tok.unget
    - <builtin>.len
    - rrset.add
    - args.pop
    - dns.rdata.from_wire
    - dns.name.from_unicode
    - tok.get_eol_as_token
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - rd.covers
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - encodings.idna.ToASCII
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - struct.pack
    - importlib.import_module
    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:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - parser.restrict_to
    - dns.name._validate_labels
    - dns.wire.Parser
    - <builtin>.ord
    - dns.update.UpdateMessage._add_rr
    - dns.rdata.GenericRdata.from_text
    - label.encode
    - dns.name.Name.__init__
    - parser.get_remaining
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - byte_.isdigit
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - largs.pop
    - tok.unget
    - rrset.add
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - rd.covers
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - encodings.idna.ToASCII
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - struct.pack
    - importlib.import_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - dns.wire.Parser
    - dns.name._validate_labels
    - parser.restrict_to
    - <builtin>.ord
    - dns.update.UpdateMessage._add_rr
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.name.Name.__init__
    - dns.update.UpdateMessage.delete
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - label.encode
    - byte_.isdigit
    - RdataType.to_text
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - largs.pop
    - tok.unget
    - <builtin>.len
    - rrset.add
    - args.pop
    - dns.rdata.from_wire
    - dns.name.from_unicode
    - tok.get_eol_as_token
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - rd.covers
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - encodings.idna.ToASCII
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.update.UpdateMessage._add
    - importlib.import_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - dns.wire.Parser
    - dns.name._validate_labels
    - parser.restrict_to
    - <builtin>.ord
    - dns.update.UpdateMessage._add_rr
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.name.Name.__init__
    - dns.update.UpdateMessage.delete
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - label.encode
    - byte_.isdigit
    - RdataType.to_text
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - largs.pop
    - tok.unget
    - <builtin>.len
    - rrset.add
    - args.pop
    - dns.rdata.from_wire
    - dns.name.from_unicode
    - tok.get_eol_as_token
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - rd.covers
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - encodings.idna.ToASCII
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.update.UpdateMessage._add
    - importlib.import_module
    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:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - dns.wire.Parser
    - dns.name._validate_labels
    - parser.restrict_to
    - <builtin>.ord
    - dns.update.UpdateMessage._add_rr
    - dns.rdata.GenericRdata.from_text
    - label.encode
    - dns.update.UpdateMessage.delete
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - RdataType.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - byte_.isdigit
    - parser.get_remaining
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - struct.pack
    - c.isdigit
    - largs.pop
    - tok.unget
    - dns.name.from_unicode
    - rrset.add
    - args.pop
    - <builtin>.len
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - _rdata_classes.get
    - RdataClass.to_text
    - largs.insert
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - dns.rdataclass.RdataClass.make
    - <builtin>.chr
    - rd.covers
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - encodings.idna.ToASCII
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - dns.update.UpdateMessage._add
    - importlib.import_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437e571f0>
    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:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - 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
    - 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: 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: 37
    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: 41
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: dns.entropy
    functionSourceFile: dns.entropy
    functionUses: 0
    functionsReached:
    - os.getpid
    - dns.entropy.EntropyPool.__init__
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - threading.Lock
    - hashlib.sha1
    - random.SystemRandom
    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 0x7fd4386c3760>
    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
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - hashlib.sha1
    - threading.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.bytearray
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - r.read
    - time.time
    - <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: 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:
    - os.getpid
    - os.urandom
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - <builtin>.open
    - <builtin>.bytes
    - r.read
    - dns.entropy.EntropyPool._maybe_seed
    - time.time
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 88
    functionName: dns.entropy.EntropyPool.random_16
    functionSourceFile: dns.entropy
    functionUses: 53
    functionsReached:
    - os.getpid
    - os.urandom
    - dns.entropy.EntropyPool.random_8
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - <builtin>.bytearray
    - <builtin>.bytes
    - r.read
    - dns.entropy.EntropyPool._maybe_seed
    - time.time
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 91
    functionName: dns.entropy.EntropyPool.random_32
    functionSourceFile: dns.entropy
    functionUses: 2
    functionsReached:
    - os.getpid
    - os.urandom
    - dns.entropy.EntropyPool.random_8
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - <builtin>.bytearray
    - <builtin>.bytes
    - r.read
    - dns.entropy.EntropyPool._maybe_seed
    - time.time
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    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: 5
    functionLinenumber: 94
    functionName: dns.entropy.EntropyPool.random_between
    functionSourceFile: dns.entropy
    functionUses: 1
    functionsReached:
    - os.getpid
    - os.urandom
    - dns.entropy.EntropyPool.random_32
    - dns.entropy.EntropyPool.random_8
    - <builtin>.bytearray
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - <builtin>.bytes
    - r.read
    - dns.entropy.EntropyPool._maybe_seed
    - time.time
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    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: 6
    functionLinenumber: 126
    functionName: dns.entropy.between
    functionSourceFile: dns.entropy
    functionUses: 0
    functionsReached:
    - os.getpid
    - system_random.randrange
    - os.urandom
    - dns.entropy.EntropyPool.random_32
    - dns.entropy.EntropyPool.random_8
    - <builtin>.bytearray
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.entropy.EntropyPool.random_between
    - <builtin>.bytes
    - r.read
    - dns.entropy.EntropyPool._maybe_seed
    - time.time
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    linkageType: 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:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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:
    - ssl.create_default_context
    - dns._ddr._SVCBInfo.make_tls_context
    - ts.do_handshake
    - ctx.wrap_socket
    - socket.create_connection
    - dns.query._remaining
    - ts.getpeercert
    - dns._ddr._SVCBInfo.ddr_check_certificate
    - ts.settimeout
    - 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: 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 0x7fd438518b50>
    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:
    - dns.asyncbackend.get_backend
    - ssl.create_default_context
    - _colon_colon_start.match
    - <builtin>.ord
    - canonical.append
    - dns._asyncio_backend.Backend
    - time.time
    - sniffio.current_async_library
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - dns._trio_backend.Backend
    - <builtin>.isinstance
    - text.encode
    - asyncio.get_running_loop
    - <builtin>.int
    - dns.inet.af_for_address
    - dns.asyncbackend.sniff
    - dns._ddr._SVCBInfo.ddr_check_certificate
    - btext.split
    - <builtin>.len
    - dns.asyncbackend.get_default_backend
    - btext.endswith
    - dns.asyncbackend.set_default_backend
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.query._remaining
    - part.isdigit
    - m.group
    - dns._ddr._SVCBInfo.make_tls_context
    - _v4_ending.match
    - backend.make_socket
    - ts.getpeercert
    - _backends.get
    - struct.pack
    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:
    - urllib.parse.urlparse
    - _colon_colon_start.match
    - <builtin>.set
    - <builtin>.ord
    - canonical.append
    - nameservers.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - param.value.endswith
    - <builtin>.isinstance
    - text.encode
    - answer.rrset.processing_order
    - <builtin>.int
    - dns.nameserver.DoTNameserver
    - rr.target.to_text
    - btext.split
    - <builtin>.len
    - btext.endswith
    - path.startswith
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - dns.nameserver.DoHNameserver
    - infos.append
    - rr.params.get
    - part.isdigit
    - m.group
    - dns.inet.is_address
    - _v4_ending.match
    - dns.nameserver.DoQNameserver
    - dns._ddr._SVCBInfo.__init__
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 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: 76
    functionName: dns.zone._validate_name
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - name.relativize
    - name.is_subdomain
    - name.is_absolute
    - name.derelativize
    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.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 0x7fd437fd2790>
    - <ast.Constant object at 0x7fd437fd2a30>
    argNames:
    - self
    - origin
    - rdclass
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 128
    functionName: dns.zone.Zone.__init__
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - origin.is_absolute
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 158
    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: 175
    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: 183
    functionName: dns.zone.Zone._validate_name
    functionSourceFile: dns.zone
    functionUses: 18
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 192
    functionName: dns.zone.Zone.__getitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 196
    functionName: dns.zone.Zone.__setitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - 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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 200
    functionName: dns.zone.Zone.__delitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 204
    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: 207
    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: 210
    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: 213
    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: 216
    functionName: dns.zone.Zone.get
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - 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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 220
    functionName: dns.zone.Zone.__contains__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd4381d5880>
    argNames:
    - self
    - name
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 224
    functionName: dns.zone.Zone.find_node
    functionSourceFile: dns.zone
    functionUses: 9
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd4386e4a60>
    argNames:
    - self
    - name
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 252
    functionName: dns.zone.Zone.get_node
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.zone.Zone.find_node
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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: 278
    functionName: dns.zone.Zone.delete_node
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd438810610>
    - <ast.Constant object at 0x7fd4388102b0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 293
    functionName: dns.zone.Zone.find_rdataset
    functionSourceFile: dns.zone
    functionUses: 5
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - node.find_rdataset
    - dns.name.from_unicode
    - <builtin>.len
    - dns.zone.Zone.find_node
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd4380a9940>
    - <ast.Constant object at 0x7fd4380a9550>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 340
    functionName: dns.zone.Zone.get_rdataset
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.zone.Zone.find_rdataset
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - node.find_rdataset
    - dns.name.from_unicode
    - <builtin>.len
    - dns.zone.Zone.find_node
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd43855d610>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 388
    functionName: dns.zone.Zone.delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.zone.Zone.get_node
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - node.delete_rdataset
    - <builtin>.len
    - dns.name.from_unicode
    - dns.zone.Zone.find_node
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    - dns.zone.Zone.delete_node
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 426
    functionName: dns.zone.Zone.replace_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - node.replace_rdataset
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.zone.Zone.find_node
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd4380e3bb0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 452
    functionName: dns.zone.Zone.find_rrset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - rrset.update
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.RRset
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd43870f520>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 504
    functionName: dns.zone.Zone.get_rrset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - rrset.update
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rrset.RRset
    - dns.zone.Zone.find_rrset
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd43876c0a0>
    - <ast.Attribute object at 0x7fd43876c310>
    argNames:
    - self
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 550
    functionName: dns.zone.Zone.iterate_rdatasets
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.rdatatype.RdataType.make
    - dns.zone.Zone.items
    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 0x7fd437e85670>
    - <ast.Attribute object at 0x7fd437e85430>
    argNames:
    - self
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 582
    functionName: dns.zone.Zone.iterate_rdatas
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.rdatatype.RdataType.make
    - dns.zone.Zone.items
    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 0x7fd4384e87c0>
    - <ast.Constant object at 0x7fd4384e8730>
    - <ast.Constant object at 0x7fd4384e8550>
    - <ast.Constant object at 0x7fd4384e8b20>
    - <ast.Constant object at 0x7fd4384e8850>
    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: 615
    functionName: dns.zone.Zone.to_file
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - contextlib.nullcontext
    - <builtin>.list
    - <builtin>.isinstance
    - <builtin>.open
    - dns.zone.Zone.keys
    - <builtin>.getattr
    - nl.decode
    - os.linesep.encode
    - nl.encode
    - l.encode
    - names.sort
    - f.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: 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 0x7fd4381b8fa0>
    - <ast.Constant object at 0x7fd4381b8700>
    - <ast.Constant object at 0x7fd4381b8400>
    - <ast.Constant object at 0x7fd4381b8460>
    - <ast.Constant object at 0x7fd4381b8cd0>
    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: 705
    functionName: dns.zone.Zone.to_text
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - contextlib.nullcontext
    - <builtin>.list
    - os.linesep.encode
    - <builtin>.isinstance
    - <builtin>.open
    - dns.zone.Zone.keys
    - temp_buffer.close
    - dns.zone.Zone.to_file
    - temp_buffer.getvalue
    - <builtin>.getattr
    - nl.decode
    - io.StringIO
    - nl.encode
    - l.encode
    - names.sort
    - f.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: 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: 744
    functionName: dns.zone.Zone.check_origin
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.zone.Zone.find_rdataset
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - node.find_rdataset
    - dns.name.from_unicode
    - <builtin>.len
    - dns.zone.Zone.find_node
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.zone.Zone.get_rdataset
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd438776550>
    argNames:
    - self
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 763
    functionName: dns.zone.Zone.get_soa
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.zone.Zone.find_rdataset
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - node.find_rdataset
    - dns.name.from_unicode
    - <builtin>.len
    - dns.zone.Zone.find_node
    - dns.name.is_all_ascii
    - typing.cast
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.zone.Zone.get_rdataset
    - labels.append
    - dns.name.from_text
    - txn.get
    - struct.pack
    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 0x7fd437ce5820>
    argNames:
    - self
    - hash_algorithm
    - scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 791
    functionName: dns.zone.Zone._compute_digest
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - rdata.to_digestable
    - dns.zone.Zone.items
    - hasher.digest
    - _digest_hashers.get
    - name.to_digestable
    - <builtin>.sorted
    - <builtin>.len
    - struct.pack
    - hasher.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: _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 0x7fd4387a9610>
    argNames:
    - self
    - hash_algorithm
    - scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 825
    functionName: dns.zone.Zone.compute_digest
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.zone.Zone._compute_digest
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.zone.Zone.find_rdataset
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - rdata.to_digestable
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.sorted
    - node.find_rdataset
    - <builtin>.len
    - dns.name.from_unicode
    - hasher.update
    - dns.zone.Zone.find_node
    - dns.name.is_all_ascii
    - typing.cast
    - dns.zone.Zone.items
    - hasher.digest
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - _digest_hashers.get
    - name.to_digestable
    - dns.rdtypes.ANY.ZONEMD.ZONEMD
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.zone.Zone.get_rdataset
    - labels.append
    - dns.name.from_text
    - txn.get
    - dns.zone.Zone.get_soa
    - struct.pack
    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 0x7fd438032fa0>
    argNames:
    - self
    - zonemd
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 836
    functionName: dns.zone.Zone.verify_digest
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.zone.Zone._compute_digest
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.zone.Zone.find_rdataset
    - label.encode
    - dns.name.Name.__init__
    - dns.zone.Zone._validate_name
    - rdata.to_digestable
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.sorted
    - node.find_rdataset
    - <builtin>.len
    - dns.name.from_unicode
    - hasher.update
    - dns.zone.Zone.find_node
    - dns.zone.Zone.items
    - hasher.digest
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - _digest_hashers.get
    - name.to_digestable
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.zone.Zone.get_rdataset
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 859
    functionName: dns.zone.Zone.reader
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.zone.Version.__init__
    - dns.zone.Transaction.__init__
    - zone.map_factory
    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 0x7fd437bb0250>
    - <ast.Constant object at 0x7fd437bb0730>
    argNames:
    - self
    - zone
    - id
    - nodes
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 962
    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 0x7fd4381bcf10>
    - <ast.Constant object at 0x7fd4381bcb50>
    argNames:
    - self
    - zone
    - replacement
    - version
    - make_immutable
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1099
    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 0x7fd4378e3430>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 862
    functionName: dns.zone.Zone.writer
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - dns.zone.Transaction.__init__
    - <builtin>.super
    - dns.zone.Transaction._setup_version
    - 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: 2
    functionLinenumber: 1115
    functionName: dns.zone.Transaction._setup_version
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.set
    - <builtin>.super
    - 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: 867
    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: 877
    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: 882
    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: 885
    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: 888
    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: 893
    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: 909
    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: 917
    functionName: dns.zone.ImmutableVersionedNode.__init__
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    - <builtin>.tuple
    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 0x7fd438092070>
    - <ast.Constant object at 0x7fd438092be0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 924
    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 0x7fd438084dc0>
    - <ast.Constant object at 0x7fd438084fd0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 935
    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 0x7fd438084850>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 946
    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: 954
    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: 957
    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: 977
    functionName: dns.zone.Version._validate_name
    functionSourceFile: dns.zone
    functionUses: 10
    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: 980
    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: 984
    functionName: dns.zone.Version.get_rdataset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - node.get_rdataset
    - dns.zone.Version.get_node
    - 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: 995
    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: 998
    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 0x7fd438130820>
    argNames:
    - self
    - zone
    - replacement
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1003
    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: 1019
    functionName: dns.zone.WritableVersion._maybe_cow_with_name
    functionSourceFile: dns.zone
    functionUses: 3
    functionsReached:
    - <builtin>.hasattr
    - new_node.rdatasets.extend
    - 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: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1043
    functionName: dns.zone.WritableVersion._maybe_cow
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - <builtin>.hasattr
    - new_node.rdatasets.extend
    - dns.zone.WritableVersion._maybe_cow_with_name
    - dns.zone.Version._validate_name
    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: 1046
    functionName: dns.zone.WritableVersion.delete_node
    functionSourceFile: dns.zone
    functionUses: 0
    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: 4
    functionLinenumber: 1052
    functionName: dns.zone.WritableVersion.put_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version._validate_name
    - <builtin>.hasattr
    - new_node.rdatasets.extend
    - node.replace_rdataset
    - dns.zone.WritableVersion._maybe_cow
    - dns.zone.WritableVersion._maybe_cow_with_name
    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: 4
    functionLinenumber: 1058
    functionName: dns.zone.WritableVersion.delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version._validate_name
    - <builtin>.hasattr
    - node.delete_rdataset
    - new_node.rdatasets.extend
    - <builtin>.len
    - dns.zone.WritableVersion._maybe_cow
    - dns.zone.WritableVersion._maybe_cow_with_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - version
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1072
    functionName: dns.zone.ImmutableVersion.__init__
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.rdataset.ImmutableRdataset
    - <builtin>.isinstance
    - dns.immutable.Dict
    - dns.zone.ImmutableVersionedNode.__init__
    - <builtin>.super
    - version.nodes.get
    - <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: version.nodes.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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1112
    functionName: dns.zone.Transaction.zone
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - typing.cast
    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: 1122
    functionName: dns.zone.Transaction._get_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version.get_rdataset
    - node.get_rdataset
    - dns.zone.Version.get_node
    - 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: 1
    functionLinenumber: 1126
    functionName: dns.zone.Transaction._put_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - typing.cast
    - typing.cast.put_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: typing.cast.put_rdataset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1132
    functionName: dns.zone.Transaction._delete_name
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - typing.cast
    - typing.cast.delete_node
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.delete_node
    functionSourceFile: typing
    functionUses: 1
    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: 1
    functionLinenumber: 1138
    functionName: dns.zone.Transaction._delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - typing.cast
    - typing.cast.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: typing.cast.delete_rdataset
    functionSourceFile: typing
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1144
    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: 1148
    functionName: dns.zone.Transaction._changed
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - typing.cast
    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: 1156
    functionName: dns.zone.Transaction._end_transaction
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - typing.cast
    - dns.rdataset.ImmutableRdataset
    - <builtin>.isinstance
    - dns.immutable.Dict
    - dns.zone.ImmutableVersionedNode.__init__
    - <builtin>.super
    - <builtin>.len
    - dns.zone.ImmutableVersion.__init__
    - version.nodes.get
    - <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: 1177
    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: 1182
    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: 1188
    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: 1192
    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: 1196
    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 0x7fd438c49490>
    - <ast.Attribute object at 0x7fd438c49ac0>
    - <ast.Constant object at 0x7fd438c49a60>
    - <ast.Name object at 0x7fd438c49a90>
    - <ast.Constant object at 0x7fd438c49430>
    - <ast.Constant object at 0x7fd438c49d60>
    - <ast.Constant object at 0x7fd438c49640>
    - <ast.Constant object at 0x7fd438c49190>
    - <ast.Constant object at 0x7fd438c498e0>
    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: 1212
    functionName: dns.zone._from_text
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - zone.check_origin
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.zonefile.Reader
    - dns.name.from_unicode
    - <builtin>.len
    - origin.is_absolute
    - reader.read
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - dns.tokenizer.Tokenizer
    - encodings.idna.ToASCII
    - labels.append
    - dns.zone.Zone.__init__
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    - zone.writer
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437f18c40>
    - <ast.Attribute object at 0x7fd437f185b0>
    - <ast.Constant object at 0x7fd437f18af0>
    - <ast.Name object at 0x7fd437f18d60>
    - <ast.Constant object at 0x7fd437f18580>
    - <ast.Constant object at 0x7fd437f189a0>
    - <ast.Constant object at 0x7fd437f189d0>
    - <ast.Constant object at 0x7fd437ed3eb0>
    - <ast.Constant object at 0x7fd437ed3520>
    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: 1254
    functionName: dns.zone.from_text
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - dns.zone._from_text
    - byte_.isdigit
    - zone.check_origin
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.zonefile.Reader
    - dns.name.from_unicode
    - <builtin>.len
    - origin.is_absolute
    - reader.read
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - dns.tokenizer.Tokenizer
    - encodings.idna.ToASCII
    - labels.append
    - dns.zone.Zone.__init__
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    - zone.writer
    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 0x7fd437dec790>
    - <ast.Attribute object at 0x7fd437dec9d0>
    - <ast.Constant object at 0x7fd437dec4c0>
    - <ast.Name object at 0x7fd437dec580>
    - <ast.Constant object at 0x7fd437decaf0>
    - <ast.Constant object at 0x7fd437decbe0>
    - <ast.Constant object at 0x7fd437dec6a0>
    - <ast.Constant object at 0x7fd437dec310>
    - <ast.Constant object at 0x7fd437dec400>
    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: 1328
    functionName: dns.zone.from_file
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - contextlib.nullcontext
    - dns.zone._from_text
    - byte_.isdigit
    - <builtin>.isinstance
    - zone.check_origin
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.zonefile.Reader
    - <builtin>.len
    - dns.name.from_unicode
    - origin.is_absolute
    - reader.read
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - dns.tokenizer.Tokenizer
    - encodings.idna.ToASCII
    - <builtin>.open
    - labels.append
    - dns.zone.Zone.__init__
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    - zone.writer
    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 0x7fd438f0fa60>
    - <ast.Constant object at 0x7fd438f0f460>
    - <ast.Constant object at 0x7fd438f0f730>
    argNames:
    - xfr
    - zone_factory
    - relativize
    - check_origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1411
    functionName: dns.zone.from_xfr
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - z.check_origin
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - z.node_factory
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - origin.is_absolute
    - zrds.update_ttl
    - znode.find_rdataset
    - dns.name.IDNA2003Codec.encode
    - zrds.add
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.zone.Zone.__init__
    - dns.name.from_text
    - dns.name.is_all_ascii
    - z.nodes.get
    - struct.pack
    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:
    - <builtin>.super
    - dns.zonetypes.DigestHashAlgorithm.make
    - <builtin>.len
    - dns.zonetypes.DigestScheme.make
    - dns.zonetypes._digest_hashers.get
    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 0x7fd4381d51c0>
    - <ast.Constant object at 0x7fd4381d5880>
    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:
    - separator.join
    - <builtin>.range
    - kw.pop
    - dns.rdata._wordbreak
    - kw.copy
    - binascii.hexlify
    - dns.rdata._hexify
    - <builtin>.len
    - 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 0x7fd4381d56d0>
    - <ast.Constant object at 0x7fd4381d5490>
    - <ast.Constant object at 0x7fd4381d54f0>
    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_uint32
    - binascii.unhexlify
    - tok.get_uint8
    - dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - dns.zonetypes.DigestHashAlgorithm.make
    - <builtin>.len
    - dns.zonetypes.DigestScheme.make
    - dns.zonetypes._digest_hashers.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: 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 0x7fd437ac4460>
    - <ast.Constant object at 0x7fd437ac4640>
    - <ast.Constant object at 0x7fd437ac44c0>
    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:
    - struct.pack
    - 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 0x7fd43822ce80>
    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:
    - parser.get_struct
    - dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__
    - <builtin>.super
    - dns.zonetypes.DigestHashAlgorithm.make
    - <builtin>.len
    - dns.zonetypes.DigestScheme.make
    - dns.zonetypes._digest_hashers.get
    - parser.get_remaining
    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.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: 47
    functionName: dns.zonefile._check_cname_and_other_data
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - dns.node.NodeKind.classify
    - txn.get_node
    - node.classify
    - dns.node.NodeKind.classify_rdataset
    - dns.node._matches_type_or_its_signature
    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: 82
    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 0x7fd438c50d90>
    - <ast.Constant object at 0x7fd438c507c0>
    - <ast.Constant object at 0x7fd438c50ac0>
    - <ast.Constant object at 0x7fd438c509d0>
    - <ast.Constant object at 0x7fd438c50970>
    - <ast.Constant object at 0x7fd438c50f10>
    - <ast.Constant object at 0x7fd438c50730>
    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: 92
    functionName: dns.zonefile.Reader.__init__
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - txn.manager.origin_information
    - s.startswith
    - <builtin>.set
    - dns.zonefile._upper_dollarize
    - s.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: 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: 142
    functionName: dns.zonefile.Reader._eat_line
    functionSourceFile: dns.zonefile
    functionUses: 4
    functionsReached:
    - token.is_eol_or_eof
    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: 148
    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: 154
    functionName: dns.zonefile.Reader._rr_line
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - dns.rdata.get_rdata_class
    - name.is_subdomain
    - sys.exc_info
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - tok.get
    - rdata.to_wire
    - token.is_identifier
    - parser.restrict_to
    - dns.wire.Parser
    - name.relativize
    - dns.rdata.GenericRdata.from_text
    - RdataType.to_text
    - parser.get_remaining
    - dns.rdatatype.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdataclass.from_text
    - binascii.unhexlify
    - <builtin>.isinstance
    - <builtin>.int
    - RdataType.from_text
    - c.isdigit
    - dns.ttl.from_text
    - tok.unget
    - <builtin>.len
    - token.is_whitespace
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - token.is_eol_or_eof
    - typing.cast
    - _rdata_classes.get
    - dns.zonefile.Reader._get_identifier
    - RdataClass.to_text
    - RdataClass.from_text
    - dns.rdatatype.from_text
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.rdataclass.to_text
    - c.lower
    - dns.rdataclass.RdataClass.make
    - dns.tokenizer.Tokenizer
    - object.__setattr__
    - dns.zonefile.Reader._eat_line
    - tok.get_int
    - tok.concatenate_remaining_identifiers
    - text.isdigit
    - <builtin>.super
    - rdtype_text.replace
    - importlib.import_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 276
    functionName: dns.zonefile.Reader._parse_modify
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached:
    - is_generate2.match
    - g3.groups
    - g1.groups
    - <builtin>.int
    - re.compile
    - is_generate1.match
    - g2.groups
    - is_generate3.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: 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: 321
    functionName: dns.zonefile.Reader._generate_line
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - name.is_subdomain
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - parser.restrict_to
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.rdataclass.from_text
    - byte_.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - is_generate1.match
    - nibbles.upper
    - token.is_eol_or_eof
    - <builtin>.range
    - g3.groups
    - dns.zonefile.Reader._generate_line._format_index
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.zonefile.Reader._eat_line
    - rhs.replace
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - is_generate3.match
    - dns.rdata.get_rdata_class
    - labels.extend
    - sys.exc_info
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.from_text
    - _rdata_classes.get
    - RdataClass.from_text
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - c.lower
    - dns.rdataclass.RdataClass.make
    - object.__setattr__
    - tok.concatenate_remaining_identifiers
    - text.isdigit
    - struct.pack
    - <builtin>.list
    - tok.get
    - rdata.to_wire
    - <builtin>.ord
    - g2.groups
    - dns.zonefile.Reader._generate_line._calculate_index
    - <builtin>.isinstance
    - is_generate2.match
    - text.encode
    - <builtin>.int
    - re.compile
    - c.isdigit
    - dns.ttl.from_text
    - tok.unget
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - dns.grange.from_text
    - RdataClass.to_text
    - dns.rdatatype.from_text
    - dns.rdata.GenericRdata.__init__
    - g1.groups
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - tok.get_int
    - labels.append
    - dns.name.from_text
    - <builtin>.format
    - importlib.import_module
    - token.is_identifier
    - name.relativize
    - label.encode
    - RdataType.to_text
    - lhs.replace
    - binascii.unhexlify
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - dns.tokenizer.Tokenizer
    - dns.zonefile.Reader._parse_modify
    - <builtin>.super
    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: 23
    functionName: dns.grange.from_text
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached:
    - c.isdigit
    - <builtin>.int
    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: 392
    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: 398
    functionName: dns.zonefile.Reader._generate_line._format_index
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached:
    - nibbles.upper
    - <builtin>.format
    - dns.zonefile.Reader._generate_line._format_index
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <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: 461
    functionName: dns.zonefile.Reader.read
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - name.is_subdomain
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - parser.restrict_to
    - dns.wire.Parser
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.rdataclass.from_text
    - byte_.isdigit
    - dns.name.from_unicode
    - nibbles.upper
    - is_generate1.match
    - <builtin>.len
    - token.is_eol_or_eof
    - <builtin>.range
    - dns.zonefile.Reader._get_identifier
    - g3.groups
    - dns.zonefile.Reader._rr_line
    - dns.zonefile.Reader._generate_line._format_index
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.zonefile.Reader._eat_line
    - rhs.replace
    - token.value.upper
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - is_generate3.match
    - dns.rdata.get_rdata_class
    - labels.extend
    - sys.exc_info
    - token.is_eof
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.from_text
    - _rdata_classes.get
    - RdataClass.from_text
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - c.lower
    - dns.rdataclass.RdataClass.make
    - object.__setattr__
    - <builtin>.open
    - tok.concatenate_remaining_identifiers
    - text.isdigit
    - struct.pack
    - dns.zonefile.Reader._generate_line
    - <builtin>.list
    - tok.get
    - rdata.to_wire
    - dns.exception.SyntaxError
    - <builtin>.ord
    - g2.groups
    - dns.zonefile.Reader._generate_line._calculate_index
    - <builtin>.isinstance
    - is_generate2.match
    - text.encode
    - <builtin>.int
    - re.compile
    - c.isdigit
    - dns.ttl.from_text
    - tok.unget
    - token.is_whitespace
    - dns.rdata.from_wire
    - tok.get_eol_as_token
    - dns.grange.from_text
    - RdataClass.to_text
    - dns.rdatatype.from_text
    - dns.rdata.GenericRdata.__init__
    - g1.groups
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - tok.get_int
    - labels.append
    - dns.name.from_text
    - <builtin>.format
    - importlib.import_module
    - token.is_identifier
    - name.relativize
    - label.encode
    - RdataType.to_text
    - lhs.replace
    - binascii.unhexlify
    - typing.cast
    - <builtin>.getattr
    - token.is_eol
    - dns.rdata.from_wire_parser
    - dns.tokenizer.Tokenizer
    - token.is_comment
    - dns.zonefile.Reader._parse_modify
    - <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: 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: 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: 561
    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: 566
    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: 569
    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: 580
    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: 583
    functionName: dns.zonefile.RRsetsReaderTransaction._delete_name
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - remove.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: 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: 593
    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: 599
    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: 605
    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: 608
    functionName: dns.zonefile.RRsetsReaderTransaction._end_transaction
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - rrsets.append
    - rrset.update
    - dns.rrset.RRset
    - <builtin>.len
    - dns.zonefile.RRsetsReaderTransaction._changed
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 619
    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: 622
    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: 625
    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 0x7fd4381365b0>
    - <ast.Constant object at 0x7fd437e90af0>
    - <ast.Attribute object at 0x7fd437e90a90>
    argNames:
    - self
    - origin
    - relativize
    - rdclass
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 630
    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: 641
    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 0x7fd437e90640>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 644
    functionName: dns.zonefile.RRSetsReaderManager.writer
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - dns.zonefile.RRsetsReaderTransaction.__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: 648
    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: 651
    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: 658
    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 0x7fd438158d90>
    - <ast.Constant object at 0x7fd438158280>
    - <ast.Attribute object at 0x7fd4381581f0>
    - <ast.Attribute object at 0x7fd438158970>
    - <ast.Constant object at 0x7fd438158610>
    - <ast.Constant object at 0x7fd438158b50>
    - <ast.Constant object at 0x7fd438158100>
    - <ast.Attribute object at 0x7fd438158f10>
    - <ast.Constant object at 0x7fd438158c40>
    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: 662
    functionName: dns.zonefile.read_rrsets
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - name.is_subdomain
    - dns.exception.ExceptionWrapper
    - dns.rdata.from_text
    - dns.wire.Parser
    - parser.restrict_to
    - dns.name._validate_labels
    - dns.name.Name.__init__
    - dns.rdatatype.to_text
    - dns.rdataclass.from_text
    - byte_.isdigit
    - <builtin>.len
    - nibbles.upper
    - dns.name.from_unicode
    - is_generate1.match
    - token.is_eol_or_eof
    - <builtin>.range
    - dns.zonefile.Reader._get_identifier
    - g3.groups
    - dns.zonefile.Reader._rr_line
    - dns.zonefile.Reader.read
    - dns.zonefile.Reader._generate_line._format_index
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - dns.zonefile.Reader._eat_line
    - rhs.replace
    - token.value.upper
    - rdtype_text.replace
    - dns.name.is_all_ascii
    - is_generate3.match
    - dns.rdata.get_rdata_class
    - txn.manager.origin_information
    - labels.extend
    - sys.exc_info
    - token.is_eof
    - dns.rdata.GenericRdata.from_text
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.from_text
    - _rdata_classes.get
    - RdataClass.from_text
    - dns.rdatatype.RdataType.make
    - dns.name.IDNA2003Codec.encode
    - c.lower
    - dns.rdataclass.RdataClass.make
    - object.__setattr__
    - <builtin>.open
    - tok.concatenate_remaining_identifiers
    - text.isdigit
    - struct.pack
    - dns.zonefile.Reader._generate_line
    - <builtin>.list
    - tok.get
    - rdata.to_wire
    - <builtin>.set
    - dns.exception.SyntaxError
    - <builtin>.ord
    - dns.zonefile.RRSetsReaderManager.writer
    - g2.groups
    - dns.zonefile.Reader._generate_line._calculate_index
    - <builtin>.isinstance
    - is_generate2.match
    - s.startswith
    - text.encode
    - <builtin>.int
    - re.compile
    - c.isdigit
    - dns.ttl.from_text
    - dns.zonefile._upper_dollarize
    - tok.unget
    - token.is_whitespace
    - dns.rdata.from_wire
    - dns.grange.from_text
    - tok.get_eol_as_token
    - RdataClass.to_text
    - dns.rdatatype.from_text
    - dns.rdata.GenericRdata.__init__
    - g1.groups
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - tok.get_int
    - dns.zonefile.Reader.__init__
    - labels.append
    - dns.name.from_text
    - <builtin>.format
    - importlib.import_module
    - token.is_identifier
    - name.relativize
    - label.encode
    - RdataType.to_text
    - lhs.replace
    - binascii.unhexlify
    - typing.cast
    - <builtin>.getattr
    - token.is_eol
    - dns.rdata.from_wire_parser
    - dns.tokenizer.Tokenizer
    - token.is_comment
    - dns.zonefile.RRSetsReaderManager.__init__
    - dns.zonefile.RRsetsReaderTransaction.__init__
    - dns.zonefile.Reader._parse_modify
    - <builtin>.super
    - s.upper
    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: 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:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd437db13a0>
    argNames:
    - text
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 30
    functionName: dns.e164.from_e164
    functionSourceFile: dns.e164
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - parts.reverse
    - text.encode
    - d.isdigit
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd43815a310>
    - <ast.Constant object at 0x7fd43815a3d0>
    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:
    - dlabels.reverse
    - text.decode
    - d.isdigit
    - <builtin>.len
    - name.relativize
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd4387c2280>
    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:
    - <builtin>.list
    - labels.extend
    - <builtin>.print
    - ctypes.create_string_buffer
    - dns.name._validate_labels
    - dns.name.Name
    - ctypes.WinDLL
    - dns.win32util._Win32Getter.get
    - IPHLPAPI.GetAdaptersAddresses
    - <builtin>.ord
    - nameservers.append
    - dns.win32util.DnsInfo.__init__
    - label.encode
    - dns.win32util._WMIGetter.get
    - dns.name.Name.__init__
    - <builtin>.map
    - contextlib.nullcontext
    - dns.resolver.NXDOMAIN
    - dns.resolver.reset_default_resolver
    - byte_.isdigit
    - ctypes.byref
    - <builtin>.isinstance
    - parts.reverse
    - text.encode
    - d.isdigit
    - <builtin>.int
    - struct.pack
    - ctypes.cast
    - c.isdigit
    - dns.win32util._Win32Getter.get.format_ipv4
    - <builtin>.len
    - dns.name.from_unicode
    - dns.resolver.BaseResolver.reset
    - ctypes.POINTER
    - dns.resolver.BaseResolver.use_edns
    - resolver.resolve
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.range
    - l.split
    - dns.resolver.BaseResolver.read_registry
    - dns.e164.from_e164
    - dns.name.IDNA2003Codec.encode
    - opt.split
    - dns.resolver.BaseResolver.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - socket.gethostname
    - <builtin>.open
    - dns.win32util._RegistryGetter.__init__
    - labels.append
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.win32util.get_dns_info
    - dns.name.from_text
    - ctypes.c_ulong
    - dns.name.is_all_ascii
    - dns.win32util._WMIGetter.__init__
    - dns.resolver.BaseResolver.read_resolv_conf
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd438eab0a0>
    - <ast.Constant object at 0x7fd438eab940>
    - <ast.Constant object at 0x7fd438eab160>
    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:
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - collections.deque
    - dns.versioned.Zone.set_max_versions.policy
    - <builtin>.set
    - dns.versioned.Zone._prune_versions_unlocked
    - <builtin>.super
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    - <builtin>.len
    - dns.versioned.Zone._commit_version_unlocked
    - threading.Lock
    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:
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._prune_versions_unlocked
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    - <builtin>.len
    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 0x7fd437d95580>
    - <ast.Constant object at 0x7fd437d95b20>
    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:
    - typing.cast
    - n.get_rdataset
    - v.nodes.get
    - <builtin>.reversed
    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 0x7fd4384f94f0>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: dns.versioned.Zone.writer
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - threading.Event
    - event.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.len
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - dns.versioned.Zone.set_max_versions.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:
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone.set_pruning_policy
    - dns.versioned.Zone._prune_versions_unlocked
    - <builtin>.len
    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:
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._prune_versions_unlocked
    - <builtin>.len
    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:
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._prune_versions_unlocked
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - 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:
    - dns.versioned.Zone._end_write_unlocked
    - <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: 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:
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._prune_versions_unlocked
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    - <builtin>.len
    - dns.versioned.Zone._commit_version_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 0x7fd43802a310>
    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 0x7fd4380f83d0>
    - <ast.Constant object at 0x7fd4380f82e0>
    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 0x7fd437ea4070>
    - <ast.Constant object at 0x7fd437ea4340>
    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 0x7fd438051c70>
    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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.btree
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    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: 20
    functionName: dns.btree.Element.key
    functionSourceFile: dns.btree
    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:
    - t
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 28
    functionName: dns.btree._MIN
    functionSourceFile: dns.btree
    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:
    - t
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 35
    functionName: dns.btree._MAX
    functionSourceFile: dns.btree
    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: 48
    functionName: dns.btree._Creator.__str__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - <builtin>.id
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - t
    - creator
    - is_leaf
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 60
    functionName: dns.btree._Node.__init__
    functionSourceFile: dns.btree
    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: 1
    functionLinenumber: 68
    functionName: dns.btree._Node.is_maximal
    functionSourceFile: dns.btree
    functionUses: 5
    functionsReached:
    - <builtin>.len
    - dns.btree._MAX
    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: 73
    functionName: dns.btree._Node.is_minimal
    functionSourceFile: dns.btree
    functionUses: 5
    functionsReached:
    - <builtin>.len
    - dns.btree._MIN
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 78
    functionName: dns.btree._Node.search_in_node
    functionSourceFile: dns.btree
    functionUses: 17
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 107
    functionName: dns.btree._Node.maybe_cow_child
    functionSourceFile: dns.btree
    functionUses: 10
    functionsReached:
    - child.maybe_cow
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: child.maybe_cow
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 117
    functionName: dns.btree._Node._get_node
    functionSourceFile: dns.btree
    functionUses: 5
    functionsReached:
    - child.maybe_cow
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.search_in_node
    - <builtin>.len
    - child._get_node
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: child._get_node
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 133
    functionName: dns.btree._Node.get
    functionSourceFile: dns.btree
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - dns.btree._Node.search_in_node
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 143
    functionName: dns.btree._Node.optimize_in_order_insertion
    functionSourceFile: dns.btree
    functionUses: 3
    functionsReached:
    - child.maybe_cow
    - left.try_right_steal
    - dns.btree._Node.maybe_cow_child
    - dns.btree._MAX
    - <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: left.try_right_steal
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - element
    - in_order
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 161
    functionName: dns.btree._Node.insert_nonfull
    functionSourceFile: dns.btree
    functionUses: 2
    functionsReached:
    - child.is_maximal
    - dns.btree._Node.optimize_in_order_insertion
    - child.maybe_cow
    - left.try_right_steal
    - middle.key
    - child.insert_nonfull
    - dns.btree._Node.maybe_cow_child
    - child.split
    - dns.btree._MAX
    - dns.btree._Node.search_in_node
    - dns.btree._Node.is_maximal
    - <builtin>.len
    - dns.btree.Member.key
    - dns.btree._Node.adopt
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 822
    functionName: dns.btree.Member.key
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: child.is_maximal
    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: child.split
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - left
    - middle
    - right
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 236
    functionName: dns.btree._Node.adopt
    functionSourceFile: dns.btree
    functionUses: 3
    functionsReached:
    - middle.key
    - dns.btree._MAX
    - dns.btree._Node.search_in_node
    - dns.btree._Node.is_maximal
    - <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: child.insert_nonfull
    functionSourceFile: <builtin>
    functionUses: 3
    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: 186
    functionName: dns.btree._Node.split
    functionSourceFile: dns.btree
    functionUses: 2
    functionsReached:
    - <builtin>.list
    - dns.btree._MIN
    - dns.btree._MAX
    - dns.btree._Node.is_maximal
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parent
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 198
    functionName: dns.btree._Node.try_left_steal
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - left.is_minimal
    - parent.maybe_cow_child
    - left.elts.pop
    - left.children.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.is_minimal
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parent.maybe_cow_child
    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: left.elts.pop
    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: left.children.pop
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parent
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 217
    functionName: dns.btree._Node.try_right_steal
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - right.is_minimal
    - parent.maybe_cow_child
    - <builtin>.len
    - right.children.pop
    - right.elts.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.is_minimal
    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: right.elts.pop
    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: right.children.pop
    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: middle.key
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parent
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 253
    functionName: dns.btree._Node.merge
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - parent.elts.pop
    - parent.children.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parent.children.pop
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parent.elts.pop
    functionSourceFile: <builtin>
    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: 0
    functionLinenumber: 261
    functionName: dns.btree._Node.minimum
    functionSourceFile: dns.btree
    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: 0
    functionLinenumber: 268
    functionName: dns.btree._Node.maximum
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parent
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 275
    functionName: dns.btree._Node.balance
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree._Node.merge
    - dns.btree._Node.try_right_steal
    - left.is_minimal
    - right.is_minimal
    - left.children.pop
    - parent.maybe_cow_child
    - dns.btree._Node.try_left_steal
    - parent.elts.pop
    - parent.children.pop
    - left.elts.pop
    - left.merge
    - <builtin>.len
    - right.children.pop
    - right.elts.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.merge
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 2
    IfCount: 7
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - key
    - parent
    - exact
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 294
    functionName: dns.btree._Node.delete
    functionSourceFile: dns.btree
    functionUses: 4
    functionsReached:
    - child.delete
    - child.maybe_cow
    - dns.btree._Node._get_node
    - dns.btree._MIN
    - least_successor.key
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.search_in_node
    - <builtin>.len
    - child._get_node
    - child.is_minimal
    - dns.btree._Node.is_minimal
    - child.balance
    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: least_successor.key
    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: child.is_minimal
    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: child.balance
    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: child.delete
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - visit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 341
    functionName: dns.btree._Node.visit_in_order
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - visit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 350
    functionName: dns.btree._Node._visit_preorder_by_node
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - child._visit_preorder_by_node
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: child._visit_preorder_by_node
    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
    - creator
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 357
    functionName: dns.btree._Node.maybe_cow
    functionSourceFile: dns.btree
    functionUses: 6
    functionsReached:
    - cloned.elts.extend
    - cloned.children.extend
    - dns.btree._Node.clone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - creator
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 365
    functionName: dns.btree._Node.clone
    functionSourceFile: dns.btree
    functionUses: 7
    functionsReached:
    - cloned.elts.extend
    - cloned.children.extend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cloned.elts.extend
    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: cloned.children.extend
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 373
    functionName: dns.btree._Node.__str__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - <builtin>.id
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - btree
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 389
    functionName: dns.btree.Cursor.__init__
    functionSourceFile: dns.btree
    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: 0
    functionLinenumber: 403
    functionName: dns.btree.Cursor._seek_least
    functionSourceFile: dns.btree
    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: 1
    functionLinenumber: 413
    functionName: dns.btree.Cursor._seek_greatest
    functionSourceFile: dns.btree
    functionUses: 4
    functionsReached:
    - <builtin>.len
    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: 423
    functionName: dns.btree.Cursor.park
    functionSourceFile: dns.btree
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 435
    functionName: dns.btree.Cursor._maybe_unpark
    functionSourceFile: dns.btree
    functionUses: 2
    functionsReached:
    - dns.btree.Cursor._seek_greatest
    - dns.btree.Cursor.seek
    - dns.btree._Node.search_in_node
    - dns.btree.Cursor._seek_least
    - <builtin>.len
    - dns.btree.Cursor._adjust_for_before
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fd437ed56d0>
    argNames:
    - self
    - key
    - before
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 540
    functionName: dns.btree.Cursor.seek
    functionSourceFile: dns.btree
    functionUses: 3
    functionsReached:
    - dns.btree.Cursor._seek_greatest
    - dns.btree._Node.search_in_node
    - dns.btree.Cursor._seek_least
    - <builtin>.len
    - dns.btree.Cursor._adjust_for_before
    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: 4
    functionLinenumber: 454
    functionName: dns.btree.Cursor.prev
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree.Cursor._seek_greatest
    - elt.key
    - dns.btree.Cursor.seek
    - dns.btree.Cursor._seek_least
    - dns.btree._Node.search_in_node
    - <builtin>.len
    - dns.btree.Cursor._maybe_unpark
    - dns.btree.Cursor._adjust_for_before
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: elt.key
    functionSourceFile: <builtin>
    functionUses: 7
    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: 4
    functionLinenumber: 494
    functionName: dns.btree.Cursor.next
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree.Cursor._seek_greatest
    - elt.key
    - dns.btree.Cursor.seek
    - dns.btree._Node.search_in_node
    - dns.btree.Cursor._seek_least
    - dns.btree.Cursor._maybe_unpark
    - <builtin>.len
    - dns.btree.Cursor._adjust_for_before
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - before
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 534
    functionName: dns.btree.Cursor._adjust_for_before
    functionSourceFile: dns.btree
    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: 575
    functionName: dns.btree.Cursor.seek_first
    functionSourceFile: dns.btree
    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: 587
    functionName: dns.btree.Cursor.seek_last
    functionSourceFile: dns.btree
    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: 600
    functionName: dns.btree.Cursor.__enter__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree.BTree.register_cursor
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cursor
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 741
    functionName: dns.btree.BTree.register_cursor
    functionSourceFile: ''
    functionUses: 1
    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: 604
    functionName: dns.btree.Cursor.__exit__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree.BTree.deregister_cursor
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cursor
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 745
    functionName: dns.btree.BTree.deregister_cursor
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - t
    - original
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 616
    functionName: dns.btree.BTree.__init__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - dns.btree._Node.__init__
    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: 0
    functionLinenumber: 646
    functionName: dns.btree.BTree.make_immutable
    functionSourceFile: dns.btree
    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: 655
    functionName: dns.btree.BTree._check_mutable_and_park
    functionSourceFile: dns.btree
    functionUses: 6
    functionsReached:
    - cursor.park
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cursor.park
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fd438ecd0a0>
    argNames:
    - self
    - elt
    - in_order
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 665
    functionName: dns.btree.BTree.insert_element
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - dns.btree._Node.insert_nonfull
    - dns.btree._Node.optimize_in_order_insertion
    - <builtin>.list
    - cloned.elts.extend
    - dns.btree._MAX
    - dns.btree._Node.maybe_cow
    - dns.btree.Member.key
    - dns.btree._Node.adopt
    - child.is_maximal
    - child.maybe_cow
    - dns.btree.BTree._check_mutable_and_park
    - middle.key
    - dns.btree._Node.split
    - <builtin>.len
    - dns.btree._Node.is_maximal
    - dns.btree._Node.__init__
    - left.try_right_steal
    - dns.btree._MIN
    - cloned.children.extend
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.search_in_node
    - cursor.park
    - child.insert_nonfull
    - child.split
    - dns.btree._Node.clone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 688
    functionName: dns.btree.BTree.get_element
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - dns.btree._Node.get
    - <builtin>.len
    - dns.btree._Node.search_in_node
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - exact
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 694
    functionName: dns.btree.BTree._delete
    functionSourceFile: dns.btree
    functionUses: 3
    functionsReached:
    - least_successor.key
    - cloned.elts.extend
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.delete
    - child.maybe_cow
    - dns.btree.BTree._check_mutable_and_park
    - <builtin>.len
    - child.balance
    - dns.btree._Node._get_node
    - dns.btree._MIN
    - cloned.children.extend
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.search_in_node
    - child._get_node
    - dns.btree._Node.is_minimal
    - child.delete
    - cursor.park
    - child.is_minimal
    - dns.btree._Node.clone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 711
    functionName: dns.btree.BTree.delete_key
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - least_successor.key
    - cloned.elts.extend
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.delete
    - dns.btree.BTree._delete
    - child.maybe_cow
    - dns.btree.BTree._check_mutable_and_park
    - <builtin>.len
    - child.balance
    - dns.btree._Node._get_node
    - dns.btree._MIN
    - cloned.children.extend
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.search_in_node
    - child._get_node
    - dns.btree._Node.is_minimal
    - child.delete
    - cursor.park
    - child.is_minimal
    - dns.btree._Node.clone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 718
    functionName: dns.btree.BTree.delete_exact
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - least_successor.key
    - cloned.elts.extend
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.delete
    - dns.btree.BTree._delete
    - child.maybe_cow
    - dns.btree.BTree._check_mutable_and_park
    - <builtin>.len
    - child.balance
    - dns.btree._Node._get_node
    - dns.btree._MIN
    - cloned.children.extend
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.search_in_node
    - child._get_node
    - dns.btree._Node.is_minimal
    - child.delete
    - cursor.park
    - element.key
    - child.is_minimal
    - dns.btree._Node.clone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: element.key
    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: 727
    functionName: dns.btree.BTree.__len__
    functionSourceFile: dns.btree
    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
    - visit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 730
    functionName: dns.btree.BTree.visit_in_order
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - <builtin>.enumerate
    - dns.btree._Node.visit_in_order
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - visit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 734
    functionName: dns.btree.BTree._visit_preorder_by_node
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree._Node._visit_preorder_by_node
    - child._visit_preorder_by_node
    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: 737
    functionName: dns.btree.BTree.cursor
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached:
    - dns.btree.Cursor.__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: 749
    functionName: dns.btree.BTree.__copy__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 752
    functionName: dns.btree.BTree.__iter__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - elt.key
    - dns.btree.Cursor.__init__
    - dns.btree.BTree.cursor
    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: 767
    functionName: dns.btree.KV.__init__
    functionSourceFile: dns.btree
    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: 771
    functionName: dns.btree.KV.key
    functionSourceFile: dns.btree
    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: 774
    functionName: dns.btree.KV.value
    functionSourceFile: dns.btree
    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: 777
    functionName: dns.btree.KV.__str__
    functionSourceFile: dns.btree
    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: 780
    functionName: dns.btree.KV.__repr__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - t
    - original
    - in_order
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 790
    functionName: dns.btree.BTreeDict.__init__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - <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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 800
    functionName: dns.btree.BTreeDict.__getitem__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - typing.cast
    - typing.cast.value
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.value
    functionSourceFile: typing
    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
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 807
    functionName: dns.btree.BTreeDict.__setitem__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree.KV.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 811
    functionName: dns.btree.BTreeDict.__delitem__
    functionSourceFile: dns.btree
    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: 819
    functionName: dns.btree.Member.__init__
    functionSourceFile: dns.btree
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - t
    - original
    - in_order
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 832
    functionName: dns.btree.BTreeSet.__init__
    functionSourceFile: dns.btree
    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
    - x
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 842
    functionName: dns.btree.BTreeSet.__contains__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree._Node.get
    - <builtin>.len
    - dns.btree.BTree.get_element
    - dns.btree._Node.search_in_node
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 845
    functionName: dns.btree.BTreeSet.add
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree._Node.insert_nonfull
    - dns.btree._Node.optimize_in_order_insertion
    - <builtin>.list
    - cloned.elts.extend
    - dns.btree._MAX
    - dns.btree._Node.maybe_cow
    - dns.btree.Member.key
    - dns.btree._Node.adopt
    - child.is_maximal
    - child.maybe_cow
    - dns.btree.BTree._check_mutable_and_park
    - middle.key
    - dns.btree._Node.split
    - dns.btree._Node.is_maximal
    - <builtin>.len
    - dns.btree._Node.__init__
    - left.try_right_steal
    - dns.btree._MIN
    - dns.btree.BTree.insert_element
    - cloned.children.extend
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.search_in_node
    - dns.btree.Member.__init__
    - cursor.park
    - child.insert_nonfull
    - child.split
    - dns.btree._Node.clone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 849
    functionName: dns.btree.BTreeSet.discard
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - least_successor.key
    - cloned.elts.extend
    - dns.btree._Node.maybe_cow
    - dns.btree.BTree.delete_key
    - dns.btree._Node.delete
    - dns.btree.BTree._delete
    - child.maybe_cow
    - dns.btree.BTree._check_mutable_and_park
    - <builtin>.len
    - child.balance
    - dns.btree._Node._get_node
    - dns.btree._MIN
    - cloned.children.extend
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.search_in_node
    - child._get_node
    - dns.btree._Node.is_minimal
    - child.delete
    - cursor.park
    - child.is_minimal
    - dns.btree._Node.clone
    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:
    - int_parts.append
    - requirement.split
    - dns.dnssec.SimpleDeny.__init__
    - importlib.metadata.version
    - <builtin>.set
    - version.split
    - _cache.get
    - dns._features._version_check
    - itertools.takewhile
    - <builtin>.int
    - dns._features._tuple_from_text
    - dns._features.have
    - <builtin>.super
    - _requirements.get
    - <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: 73
    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: 84
    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: 95
    functionName: dns.dnssec.to_timestamp
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - calendar.timegm
    - value.timestamp
    - <builtin>.isinstance
    - dns.rdtypes.rrsigbase.sigtime_to_posixtime
    - <builtin>.int
    - what.isdigit
    - <builtin>.len
    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.rrsigbase.sigtime_to_posixtime
    functionSourceFile: dns.rdtypes.rrsigbase
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - calendar.timegm
    - what.isdigit
    - <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: 109
    functionName: dns.dnssec.key_id
    functionSourceFile: dns.dnssec
    functionUses: 9
    functionsReached:
    - <builtin>.len
    - key.to_wire
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 132
    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: 135
    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: 138
    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: 141
    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: 144
    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: 149
    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: 156
    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: 159
    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: 162
    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: 165
    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 0x7fd438480820>
    - <ast.Constant object at 0x7fd4384801c0>
    - <ast.Constant object at 0x7fd438480bb0>
    argNames:
    - name
    - key
    - algorithm
    - origin
    - policy
    - validating
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 182
    functionName: dns.dnssec.make_ds
    functionSourceFile: dns.dnssec
    functionUses: 3
    functionsReached:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.wire.Parser
    - parser.restrict_to
    - dns.name._validate_labels
    - rdtype_text.replace
    - <builtin>.ord
    - name.canonicalize
    - hashlib.sha1
    - label.encode
    - RdataType.to_text
    - dns.name.Name.__init__
    - hashlib.sha256
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdatatype.to_text
    - parser.get_remaining
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - key.to_wire
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - <builtin>.len
    - dns.name.from_unicode
    - algorithm.upper
    - dns.rdata.from_wire
    - dns.name.is_all_ascii
    - typing.cast
    - <builtin>.range
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - hashlib.sha384
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - dshash.update
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.dnssec.key_id
    - dshash.digest
    - struct.pack
    - importlib.import_module
    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 0x7fd4380f8cd0>
    argNames:
    - name
    - key
    - algorithm
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 259
    functionName: dns.dnssec.make_cds
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.wire.Parser
    - parser.restrict_to
    - rdtype_text.replace
    - dns.name._validate_labels
    - <builtin>.ord
    - name.canonicalize
    - hashlib.sha1
    - label.encode
    - RdataType.to_text
    - hashlib.sha256
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdatatype.to_text
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - key.to_wire
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - <builtin>.len
    - dns.name.from_unicode
    - algorithm.upper
    - dns.rdata.from_wire
    - dns.name.is_all_ascii
    - typing.cast
    - <builtin>.range
    - _rdata_classes.get
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - <builtin>.getattr
    - hashlib.sha384
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - dshash.update
    - dns.dnssec.make_ds
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.dnssec.key_id
    - dshash.digest
    - struct.pack
    - importlib.import_module
    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: 295
    functionName: dns.dnssec._find_candidate_keys
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - keys.get
    - typing.cast
    - <builtin>.range
    - value.get_rdataset
    - <builtin>.isinstance
    - key.to_wire
    - dns.dnssec.key_id
    - <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: 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: 315
    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: 324
    functionName: dns.dnssec._validate_signature
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls
    - algorithms.get
    - parser.seek
    - contextlib.contextmanager
    - dns.name._validate_labels
    - dns.name.from_wire
    - label.encode
    - dns.name.Name.__init__
    - public_key.verify
    - public_cls.from_dnskey
    - parser.restore_furthest
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - parser.get_bytes
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.len
    - dns.name.from_wire_parser
    - dns.wirebase.Parser
    - parser.get_uint8
    - Algorithm.make
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - labels.append
    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: 68
    functionName: dns.dnssecalgs.get_algorithm_cls_from_dnskey
    functionSourceFile: dns.dnssecalgs
    functionUses: 5
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls
    - algorithms.get
    - parser.seek
    - contextlib.contextmanager
    - dns.name._validate_labels
    - dns.name.from_wire
    - label.encode
    - dns.name.Name.__init__
    - parser.restore_furthest
    - parser.get_bytes
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.len
    - dns.name.from_wire_parser
    - dns.wirebase.Parser
    - parser.get_uint8
    - Algorithm.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - labels.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: 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 0x7fd438113f70>
    - <ast.Constant object at 0x7fd438113b20>
    - <ast.Constant object at 0x7fd438113d60>
    argNames:
    - rrset
    - rrsig
    - keys
    - origin
    - now
    - policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 334
    functionName: dns.dnssec._validate_rrsig
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls
    - algorithms.get
    - rrname.is_absolute
    - <builtin>.list
    - rrsig.to_wire
    - labels.extend
    - parser.seek
    - value.get_rdataset
    - contextlib.contextmanager
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.name.from_wire
    - time.time
    - label.encode
    - dns.name.Name.__init__
    - public_key.verify
    - public_cls.from_dnskey
    - rdata.to_digestable
    - parser.restore_furthest
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - signer.is_absolute
    - byte_.isdigit
    - <builtin>.isinstance
    - parser.get_bytes
    - text.encode
    - <builtin>.int
    - dns.dnssec._get_rrname_rdataset
    - rrname.is_wild
    - key.to_wire
    - <builtin>.sorted
    - rrsig.signer.to_digestable
    - c.isdigit
    - dns.dnssec._find_candidate_keys
    - <builtin>.len
    - dns.dnssec._make_rrsig_signature_data
    - dns.name.from_wire_parser
    - dns.dnssec.SimpleDeny.ok_to_validate
    - dns.name.from_unicode
    - dns.wirebase.Parser
    - typing.cast
    - <builtin>.range
    - dns.name.IDNA2003Codec.encode
    - dns.dnssec._validate_signature
    - rrname.to_digestable
    - parser.get_uint8
    - Algorithm.make
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - keys.get
    - signer.derelativize
    - <builtin>.chr
    - rrname.derelativize
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.dnssec.key_id
    - dns.name.is_all_ascii
    - struct.pack
    - rrname.split
    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 0x7fd437c567c0>
    argNames:
    - rrset
    - rrsig
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 604
    functionName: dns.dnssec._make_rrsig_signature_data
    functionSourceFile: dns.dnssec
    functionUses: 4
    functionsReached:
    - rrname.is_absolute
    - <builtin>.list
    - labels.extend
    - rrsig.to_wire
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - rdata.to_digestable
    - byte_.isdigit
    - signer.is_absolute
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.dnssec._get_rrname_rdataset
    - rrname.is_wild
    - <builtin>.sorted
    - c.isdigit
    - rrsig.signer.to_digestable
    - <builtin>.len
    - dns.name.from_unicode
    - dns.name.IDNA2003Codec.encode
    - rrname.to_digestable
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - signer.derelativize
    - <builtin>.chr
    - rrname.derelativize
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    - rrname.split
    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 0x7fd438720880>
    - <ast.Constant object at 0x7fd438720940>
    - <ast.Constant object at 0x7fd438720df0>
    argNames:
    - rrset
    - rrsigset
    - keys
    - origin
    - now
    - policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 404
    functionName: dns.dnssec._validate
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls
    - <builtin>.list
    - labels.extend
    - algorithms.get
    - rrname.is_absolute
    - rrsig.to_wire
    - parser.seek
    - value.get_rdataset
    - contextlib.contextmanager
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.name.from_wire
    - dns.dnssec._validate_rrsig
    - rrname.choose_relativity
    - time.time
    - label.encode
    - dns.name.Name.__init__
    - public_key.verify
    - public_cls.from_dnskey
    - parser.restore_furthest
    - byte_.isdigit
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - rdata.to_digestable
    - signer.is_absolute
    - <builtin>.isinstance
    - text.encode
    - parser.get_bytes
    - <builtin>.int
    - c.isdigit
    - dns.dnssec._get_rrname_rdataset
    - key.to_wire
    - rrname.is_wild
    - <builtin>.sorted
    - rrsig.signer.to_digestable
    - <builtin>.len
    - dns.dnssec.SimpleDeny.ok_to_validate
    - dns.name.from_unicode
    - dns.name.from_wire_parser
    - dns.dnssec._find_candidate_keys
    - dns.dnssec._make_rrsig_signature_data
    - dns.wirebase.Parser
    - typing.cast
    - <builtin>.range
    - dns.name.IDNA2003Codec.encode
    - dns.dnssec._validate_signature
    - rrname.to_digestable
    - parser.get_uint8
    - Algorithm.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - keys.get
    - signer.derelativize
    - <builtin>.chr
    - rrname.derelativize
    - encodings.idna.ToASCII
    - rrsigname.choose_relativity
    - labels.append
    - dns.name.from_text
    - dns.dnssec.key_id
    - dns.name.is_all_ascii
    - struct.pack
    - rrname.split
    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 0x7fd4387cb580>
    - <ast.Constant object at 0x7fd4387cba60>
    - <ast.Constant object at 0x7fd4387cb250>
    - <ast.Constant object at 0x7fd4387cb4f0>
    - <ast.Constant object at 0x7fd4387cb160>
    - <ast.Constant object at 0x7fd4387cba90>
    - <ast.Constant object at 0x7fd4387cb910>
    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: 477
    functionName: dns.dnssec._sign
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls
    - algorithms.get
    - rrname.is_absolute
    - <builtin>.list
    - rrsig.to_wire
    - labels.extend
    - parser.seek
    - contextlib.contextmanager
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.name.from_wire
    - dns.dnssec.SimpleDeny.ok_to_sign
    - time.time
    - label.encode
    - rrsig_template.replace
    - dns.name.Name.__init__
    - signing_key.sign
    - rdata.to_digestable
    - parser.restore_furthest
    - byte_.isdigit
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - signer.is_absolute
    - <builtin>.isinstance
    - parser.get_bytes
    - text.encode
    - <builtin>.int
    - dns.dnssec._get_rrname_rdataset
    - rrname.is_wild
    - key.to_wire
    - <builtin>.sorted
    - rrsig.signer.to_digestable
    - c.isdigit
    - <builtin>.len
    - dns.dnssec._make_rrsig_signature_data
    - dns.name.from_unicode
    - dns.name.from_wire_parser
    - typing.cast
    - value.timestamp
    - dns.wirebase.Parser
    - <builtin>.range
    - dns.name.IDNA2003Codec.encode
    - dns.dnssec.to_timestamp
    - rrname.to_digestable
    - parser.get_uint8
    - Algorithm.make
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - calendar.timegm
    - signer.derelativize
    - <builtin>.chr
    - rrname.derelativize
    - encodings.idna.ToASCII
    - dns.rdtypes.rrsigbase.sigtime_to_posixtime
    - labels.append
    - what.isdigit
    - dns.name.from_text
    - dns.dnssec.key_id
    - dns.name.is_all_ascii
    - struct.pack
    - rrname.split
    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: 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 0x7fd43889b910>
    - <ast.Constant object at 0x7fd43889b370>
    argNames:
    - public_key
    - algorithm
    - flags
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 671
    functionName: dns.dnssec._make_dnskey
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls
    - algorithms.get
    - <builtin>.isinstance
    - public_key.to_dnskey
    - 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: 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 0x7fd438130070>
    argNames:
    - algorithm
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    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 0x7fd437ceaeb0>
    - <ast.Constant object at 0x7fd437ceab50>
    argNames:
    - public_key
    - algorithm
    - flags
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 706
    functionName: dns.dnssec._make_cdnskey
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls
    - algorithms.get
    - <builtin>.isinstance
    - dns.dnssec._make_dnskey
    - public_key.to_dnskey
    - Algorithm.make
    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: 744
    functionName: dns.dnssec.nsec3_hash
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - hashlib.sha1
    - str.maketrans
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - base64.b32encode
    - <builtin>.int
    - bytes.fromhex
    - c.isdigit
    - dns.name.from_unicode
    - algorithm.upper
    - <builtin>.len
    - domain.canonicalize
    - <builtin>.range
    - dns.name.IDNA2003Codec.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    - output.translate
    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 0x7fd4380bf310>
    argNames:
    - rrset
    - algorithms
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 805
    functionName: dns.dnssec.make_ds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.wire.Parser
    - parser.restrict_to
    - <builtin>.set
    - dns.name._validate_labels
    - rdtype_text.replace
    - <builtin>.ord
    - name.canonicalize
    - hashlib.sha1
    - label.encode
    - RdataType.to_text
    - hashlib.sha256
    - dns.name.Name.__init__
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdatatype.to_text
    - parser.get_remaining
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - dns.dnssec._get_rrname_rdataset
    - c.isdigit
    - key.to_wire
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.name.from_unicode
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    - algorithm.upper
    - dns.rdata.from_wire
    - typing.cast
    - <builtin>.range
    - _rdata_classes.get
    - dns.rdataset.ImmutableRdataset.add
    - dns.dnssec.dnskey_rdataset_to_cds_rdataset
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - _algorithms.add
    - dns.rdataset.Rdataset.__init__
    - dns.dnssec.make_cds
    - <builtin>.getattr
    - hashlib.sha384
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - dns.rdataclass.to_text
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - dns.rdataclass.RdataClass.make
    - dshash.update
    - dns.dnssec.make_ds
    - <builtin>.chr
    - encodings.idna.ToASCII
    - res.append
    - labels.append
    - dns.dnssec.cds_rdataset_to_ds_rdataset
    - res.extend
    - <builtin>.super
    - dns.name.from_text
    - dns.dnssec.key_id
    - dns.name.is_all_ascii
    - struct.pack
    - dshash.digest
    - importlib.import_module
    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: 3
    functionLinenumber: 863
    functionName: dns.dnssec.cds_rdataset_to_ds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.rdataset.ImmutableRdataset.add
    - res.append
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    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 0x7fd438744910>
    argNames:
    - name
    - rdataset
    - algorithm
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 892
    functionName: dns.dnssec.dnskey_rdataset_to_cds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.rdata.get_rdata_class
    - <builtin>.list
    - labels.extend
    - dns.exception.ExceptionWrapper
    - dns.wire.Parser
    - parser.restrict_to
    - dns.name._validate_labels
    - rdtype_text.replace
    - <builtin>.ord
    - name.canonicalize
    - hashlib.sha1
    - label.encode
    - RdataType.to_text
    - dns.name.Name.__init__
    - hashlib.sha256
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdatatype.to_text
    - parser.get_remaining
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - key.to_wire
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rdataset.ImmutableRdataset.update_ttl
    - dns.rdata.from_wire
    - algorithm.upper
    - dns.name.is_all_ascii
    - typing.cast
    - <builtin>.range
    - _rdata_classes.get
    - dns.rdataset.ImmutableRdataset.add
    - RdataClass.to_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - dns.dnssec.make_cds
    - <builtin>.getattr
    - hashlib.sha384
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.from_wire_parser
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - dns.rdataclass.to_text
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - dns.rdataclass.RdataClass.make
    - dshash.update
    - dns.dnssec.make_ds
    - <builtin>.chr
    - encodings.idna.ToASCII
    - res.append
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.dnssec.key_id
    - dshash.digest
    - struct.pack
    - importlib.import_module
    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: 3
    functionLinenumber: 925
    functionName: dns.dnssec.dnskey_rdataset_to_cdnskey_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.rdataset.ImmutableRdataset.add
    - res.append
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.rdataset.ImmutableRdataset.update_ttl
    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 0x7fd438047700>
    - <ast.Constant object at 0x7fd4380470d0>
    - <ast.Constant object at 0x7fd438047b80>
    - <ast.Constant object at 0x7fd438047eb0>
    - <ast.Constant object at 0x7fd438047280>
    - <ast.Constant object at 0x7fd438047370>
    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: 952
    functionName: dns.dnssec.default_rrset_signer
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls
    - algorithms.get
    - rrname.is_absolute
    - <builtin>.list
    - rrsig.to_wire
    - labels.extend
    - parser.seek
    - contextlib.contextmanager
    - <builtin>.set
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.name.from_wire
    - txn.add
    - dns.dnssec.SimpleDeny.ok_to_sign
    - time.time
    - label.encode
    - rrsig_template.replace
    - dns.name.Name.__init__
    - signing_key.sign
    - rdata.to_digestable
    - parser.restore_furthest
    - byte_.isdigit
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - signer.is_absolute
    - dns.dnssec._need_pyca
    - <builtin>.isinstance
    - parser.get_bytes
    - text.encode
    - <builtin>.int
    - dns.dnssec._get_rrname_rdataset
    - rrname.is_wild
    - key.to_wire
    - <builtin>.sorted
    - rrsig.signer.to_digestable
    - c.isdigit
    - <builtin>.len
    - dns.dnssec._make_rrsig_signature_data
    - dns.name.from_unicode
    - dns.name.from_wire_parser
    - dns.dnssec._sign
    - typing.cast
    - value.timestamp
    - dns.wirebase.Parser
    - <builtin>.range
    - dns.name.IDNA2003Codec.encode
    - dns.dnssec.to_timestamp
    - rrname.to_digestable
    - parser.get_uint8
    - Algorithm.make
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - calendar.timegm
    - signer.derelativize
    - <builtin>.chr
    - rrname.derelativize
    - encodings.idna.ToASCII
    - dns.rdtypes.rrsigbase.sigtime_to_posixtime
    - labels.append
    - what.isdigit
    - dns.name.from_text
    - dns.dnssec.key_id
    - dns.name.is_all_ascii
    - struct.pack
    - rrname.split
    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: 1188
    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 0x7fd4381a2be0>
    - <ast.Constant object at 0x7fd4381a28b0>
    - <ast.Constant object at 0x7fd4381a29d0>
    - <ast.Constant object at 0x7fd4381a2760>
    - <ast.Constant object at 0x7fd4381a2b80>
    - <ast.Constant object at 0x7fd4381a2880>
    - <ast.Constant object at 0x7fd4381a2e50>
    - <ast.Constant object at 0x7fd4381a25b0>
    - <ast.Constant object at 0x7fd4381a2a30>
    - <ast.Constant object at 0x7fd4381a2460>
    - <ast.Constant object at 0x7fd4381a24c0>
    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: 994
    functionName: dns.dnssec.sign_zone
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - name.is_subdomain
    - zsks.append
    - <builtin>.set
    - dns.name._validate_labels
    - <builtin>.ord
    - txn.add
    - txn.get
    - label.encode
    - r.update_ttl
    - dns.name.Name.__init__
    - contextlib.nullcontext
    - byte_.isdigit
    - Bitmap.from_rdtypes
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.sorted
    - dns.rrset.from_rdata_list
    - dns.dnssec._sign_zone_nsec._txn_add_nsec
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.dnssec._sign_zone_nsec
    - txn.iterate_names
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - dns.name.IDNA2003Codec.encode
    - txn.get_node
    - dns.rrset.from_rdata
    - functools.partial
    - r.add
    - zone.get_soa
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - ksks.append
    - <builtin>.chr
    - encodings.idna.ToASCII
    - _txn.get
    - _txn.add
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    - zone.writer
    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 0x7fd4385319d0>
    argNames:
    - zone
    - txn
    - rrset_signer
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1109
    functionName: dns.dnssec._sign_zone_nsec
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - labels.extend
    - name.is_subdomain
    - <builtin>.set
    - dns.name._validate_labels
    - <builtin>.ord
    - txn.add
    - txn.get
    - label.encode
    - r.update_ttl
    - dns.name.Name.__init__
    - byte_.isdigit
    - Bitmap.from_rdtypes
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.sorted
    - dns.dnssec._sign_zone_nsec._txn_add_nsec
    - dns.rrset.from_rdata_list
    - dns.name.from_unicode
    - <builtin>.len
    - dns.rrset.RRset.__init__
    - typing.cast
    - txn.iterate_names
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - dns.name.IDNA2003Codec.encode
    - txn.get_node
    - dns.rrset.from_rdata
    - r.add
    - zone.get_soa
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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 0x7fd4381bc250>
    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: 1116
    functionName: dns.dnssec._sign_zone_nsec._txn_add_nsec
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - <builtin>.list
    - labels.extend
    - <builtin>.set
    - dns.name._validate_labels
    - <builtin>.ord
    - txn.add
    - r.update_ttl
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - Bitmap.from_rdtypes
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - dns.rrset.from_rdata_list
    - <builtin>.len
    - dns.name.from_unicode
    - dns.rrset.RRset.__init__
    - typing.cast
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - dns.name.IDNA2003Codec.encode
    - txn.get_node
    - dns.rrset.from_rdata
    - r.add
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - <builtin>.super
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.super
    - <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: 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: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.dnssecalgs
    functionSourceFile: dns.dnssecalgs
    functionUses: 0
    functionsReached:
    - int_parts.append
    - requirement.split
    - algorithms.update
    - importlib.metadata.version
    - version.split
    - _cache.get
    - dns._features._version_check
    - <builtin>.int
    - itertools.takewhile
    - dns._features._tuple_from_text
    - dns._features.have
    - _requirements.get
    - <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 0x7fd4381d74c0>
    - <ast.Constant object at 0x7fd4381d7910>
    argNames:
    - algorithm
    - algorithm_cls
    - name
    - oid
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 86
    functionName: dns.dnssecalgs.register_algorithm_cls
    functionSourceFile: dns.dnssecalgs
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - c.isdigit
    - <builtin>.issubclass
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - Algorithm.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - <builtin>.bytes
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    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.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 0x7fd4380f8f70>
    - <ast.Constant object at 0x7fd4380f82e0>
    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.dsa.PublicDSA.encode_key_bytes
    - pn.n.to_bytes
    - pn.x.to_bytes
    - dns.dnssecalgs.ecdsa.PublicECDSA.encode_key_bytes
    - pn.parameter_numbers.q.to_bytes
    - pn.n.bit_length
    - pn.y.to_bytes
    - int.to_bytes
    - pn.parameter_numbers.g.to_bytes
    - pn.parameter_numbers.p.to_bytes
    - math.ceil
    - int.bit_length
    - dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes
    - struct.pack
    - dns.dnssecalgs.rsa.PublicRSA.encode_key_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: 13
    functionName: dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes
    functionSourceFile: ''
    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: 26
    functionName: dns.dnssecalgs.dsa.PublicDSA.encode_key_bytes
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 1
    functionsReached:
    - pn.parameter_numbers.q.to_bytes
    - pn.y.to_bytes
    - pn.parameter_numbers.g.to_bytes
    - pn.parameter_numbers.p.to_bytes
    - struct.pack
    linkageType: pythonLinkage
    raised:
    - ValueError
    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:
    - pn.n.to_bytes
    - pn.n.bit_length
    - int.to_bytes
    - int.bit_length
    - math.ceil
    - struct.pack
    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: 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 0x7fd437ea40a0>
    - <ast.Constant object at 0x7fd437ea4880>
    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 0x7fd438158af0>
    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 0x7fd4381588b0>
    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.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.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:
    - dns.dnssectypes.Algorithm.make
    - <builtin>.super
    - enum.IntFlag.__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: enum.IntFlag.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssectypes.Algorithm.make
    functionSourceFile: <builtin>
    functionUses: 9
    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 0x7fd438113e80>
    - <ast.Constant object at 0x7fd438113370>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - <builtin>.len
    - dns.rdata._base64ify
    - 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 0x7fd4381139d0>
    - <ast.Constant object at 0x7fd438113cd0>
    - <ast.Constant object at 0x7fd4381138b0>
    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__
    - tok.get_string
    - enum.IntFlag.__init__
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - tok.get_uint16
    - dns.dnssectypes.Algorithm.make
    - base64.b64decode
    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 0x7fd4381d7940>
    - <ast.Constant object at 0x7fd4381d75b0>
    - <ast.Constant object at 0x7fd4381d74f0>
    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:
    - struct.pack
    - 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 0x7fd4381d70a0>
    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_struct
    - dns.rdtypes.dnskeybase.DNSKEYBase.__init__
    - enum.IntFlag.__init__
    - <builtin>.super
    - dns.dnssectypes.Algorithm.make
    - parser.get_remaining
    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.ecdsa
    functionSourceFile: dns.dnssecalgs.ecdsa
    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: 1
    functionLinenumber: 18
    functionName: dns.dnssecalgs.ecdsa.PublicECDSA.verify
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 4
    functionsReached:
    - int.from_bytes
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    linkageType: pythonLinkage
    raised: []
    returnType: N/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__
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    - <builtin>.isinstance
    - cryptography.hazmat.backends.default_backend
    - int.from_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: 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: 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 0x7fd438136e80>
    - <ast.Constant object at 0x7fd4381365b0>
    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:
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    - cryptography.hazmat.primitives.asymmetric.utils.decode_dss_signature
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - int.to_bytes
    - int.from_bytes
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - dns.dnssecalgs.rsa.PublicRSA.verify
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 4
    functionsReached:
    - <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: 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: 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: 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: 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: 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.asymmetric.ec.SECP256R1
    - 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.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.hashes.SHA384
    - cryptography.hazmat.primitives.asymmetric.ec.SECP384R1
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.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:
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.serialization.load_pem_public_key
    - 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: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fd437c7da00>
    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:
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - cryptography.hazmat.primitives.serialization.load_pem_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.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 0x7fd437c7d760>
    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.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:
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    - <builtin>.isinstance
    - cryptography.hazmat.backends.default_backend
    - int.from_bytes
    - struct.unpack
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicNumbers
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd43811d520>
    - <ast.Constant object at 0x7fd43811d160>
    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:
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - int.from_bytes
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - dns.dnssecalgs.rsa.PublicRSA.verify
    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:
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - cryptography.hazmat.primitives.asymmetric.rsa.generate_private_key
    - 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:
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAParameterNumbers
    - cryptography.hazmat.backends.default_backend
    - int.from_bytes
    - struct.unpack
    - 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 0x7fd4381367c0>
    - <ast.Constant object at 0x7fd4381369a0>
    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:
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    - cryptography.hazmat.primitives.asymmetric.utils.decode_dss_signature
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - int.to_bytes
    - int.from_bytes
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - struct.pack
    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: 95
    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: 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: 10
    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: 20
    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__
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey.from_public_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: 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: cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey.from_public_bytes
    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 0x7fd438eab4c0>
    - <ast.Constant object at 0x7fd438eabc70>
    argNames:
    - self
    - data
    - verify
    - deterministic
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 30
    functionName: dns.dnssecalgs.eddsa.PrivateEDDSA.sign
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached:
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - int.from_bytes
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - dns.dnssecalgs.rsa.PublicRSA.verify
    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: 43
    functionName: dns.dnssecalgs.eddsa.PrivateEDDSA.generate
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey.generate
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAPrivateKey.generate
    - cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey.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: 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: 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 0x7fd438897a90>
    - <ast.Constant object at 0x7fd4388978e0>
    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 0x7fd4384f9b50>
    - <ast.Constant object at 0x7fd4384f9eb0>
    - <ast.Constant object at 0x7fd4384f9a60>
    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:
    - salt.encode
    - binascii.unhexlify
    - tok.get_uint8
    - dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.__init__
    - <builtin>.super
    - tok.get_uint16
    - 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 0x7fd437c88f70>
    - <ast.Constant object at 0x7fd437c88850>
    - <ast.Constant object at 0x7fd437c88790>
    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:
    - <builtin>.len
    - struct.pack
    - 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 0x7fd438136ca0>
    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:
    - parser.get_struct
    - parser.get_counted_bytes
    - <builtin>.super
    - dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.__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.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.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.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:
    - dns.dnssectypes.Algorithm.make
    - <builtin>.len
    - <builtin>.super
    - dns.dnssectypes.DSDigest.make
    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 0x7fd4384be610>
    - <ast.Constant object at 0x7fd4384be3a0>
    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:
    - separator.join
    - <builtin>.range
    - kw.pop
    - dns.rdata._wordbreak
    - kw.copy
    - binascii.hexlify
    - dns.rdata._hexify
    - <builtin>.len
    - 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 0x7fd437c7d1c0>
    - <ast.Constant object at 0x7fd437c7deb0>
    - <ast.Constant object at 0x7fd437c7da90>
    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:
    - binascii.unhexlify
    - dns.rdtypes.dsbase.DSBase.__init__
    - tok.get_uint8
    - dns.dnssectypes.Algorithm.make
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - tok.get_uint16
    - dns.dnssectypes.DSDigest.make
    - <builtin>.len
    - 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 0x7fd437c7d8e0>
    - <ast.Constant object at 0x7fd437c7de80>
    - <ast.Constant object at 0x7fd437c7d400>
    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:
    - struct.pack
    - 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 0x7fd438136760>
    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_struct
    - dns.rdtypes.dsbase.DSBase.__init__
    - dns.dnssectypes.Algorithm.make
    - <builtin>.super
    - dns.dnssectypes.DSDigest.make
    - <builtin>.len
    - parser.get_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: 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.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 0x7fd4380f8b20>
    - <ast.Constant object at 0x7fd4380f8250>
    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 0x7fd4380f8850>
    - <ast.Constant object at 0x7fd4380f8700>
    - <ast.Constant object at 0x7fd4380f88b0>
    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>.isinstance
    - <builtin>.super
    - Bitmap.from_text
    - <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 0x7fd438136610>
    - <ast.Constant object at 0x7fd438136d90>
    - <ast.Constant object at 0x7fd4381363a0>
    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 0x7fd438136c10>
    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:
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    - <builtin>.isinstance
    - Bitmap.from_wire_parser
    - <builtin>.super
    - parser.get_name
    - <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: 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: dns.rdtypes.rrsigbase
    functionSourceFile: dns.rdtypes.rrsigbase
    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.rrsigbase.posixtime_to_sigtime
    functionSourceFile: dns.rdtypes.rrsigbase
    functionUses: 1
    functionsReached:
    - time.gmtime
    - time.strftime
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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.rrsigbase.RRSIGBase.__init__
    functionSourceFile: dns.rdtypes.rrsigbase
    functionUses: 2
    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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 93
    functionName: dns.rdtypes.rrsigbase.RRSIGBase.covers
    functionSourceFile: dns.rdtypes.rrsigbase
    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 0x7fd437ea4a00>
    - <ast.Constant object at 0x7fd437ea4bb0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 96
    functionName: dns.rdtypes.rrsigbase.RRSIGBase.to_text
    functionSourceFile: dns.rdtypes.rrsigbase
    functionUses: 0
    functionsReached:
    - dns.rdatatype.to_text
    - separator.join
    - <builtin>.range
    - time.gmtime
    - dns.rdata._wordbreak
    - dns.rdtypes.rrsigbase.posixtime_to_sigtime
    - time.strftime
    - <builtin>.len
    - dns.rdata._base64ify
    - base64.b64encode
    - data.decode
    - RdataType.to_text
    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 0x7fd437f00af0>
    - <ast.Constant object at 0x7fd437f00610>
    - <ast.Constant object at 0x7fd437f00460>
    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.rrsigbase.RRSIGBase.from_text
    functionSourceFile: dns.rdtypes.rrsigbase
    functionUses: 0
    functionsReached:
    - calendar.timegm
    - tok.get_name
    - dns.rdatatype.from_text
    - tok.get_int
    - dns.rdtypes.rrsigbase.sigtime_to_posixtime
    - <builtin>.int
    - dns.rdtypes.rrsigbase.RRSIGBase.__init__
    - RdataType.from_text
    - tok.concatenate_remaining_identifiers
    - tok.get_ttl
    - dns.dnssectypes.Algorithm.from_text
    - what.isdigit
    - <builtin>.super
    - dns.dnssectypes.Algorithm.make
    - tok.get_string
    - <builtin>.len
    - base64.b64decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd438780760>
    - <ast.Constant object at 0x7fd438780880>
    - <ast.Constant object at 0x7fd438780820>
    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.rrsigbase.RRSIGBase._to_wire
    functionSourceFile: dns.rdtypes.rrsigbase
    functionUses: 0
    functionsReached:
    - struct.pack
    - 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 0x7fd4381586a0>
    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.rrsigbase.RRSIGBase.from_wire_parser
    functionSourceFile: dns.rdtypes.rrsigbase
    functionUses: 0
    functionsReached:
    - parser.get_struct
    - dns.rdtypes.rrsigbase.RRSIGBase.__init__
    - <builtin>.super
    - parser.get_name
    - dns.dnssectypes.Algorithm.make
    - parser.get_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: dns.btreezone
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fd4386ec340>
    argNames:
    - self
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: dns.btreezone.Node.__init__
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - enum.IntFlag.__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: 49
    functionName: dns.btreezone.Node.is_delegation
    functionSourceFile: dns.btreezone
    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: 52
    functionName: dns.btreezone.Node.is_glue
    functionSourceFile: dns.btreezone
    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.btreezone.Node.is_origin
    functionSourceFile: dns.btreezone
    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.btreezone.Node.is_origin_or_glue
    functionSourceFile: dns.btreezone
    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: 64
    functionName: dns.btreezone.ImmutableNode.__init__
    functionSourceFile: dns.btreezone
    functionUses: 1
    functionsReached:
    - dns.rdataset.ImmutableRdataset
    - <builtin>.super
    - <builtin>.tuple
    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 0x7fd437f0d3d0>
    - <ast.Constant object at 0x7fd437f0d160>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: dns.btreezone.ImmutableNode.find_rdataset
    functionSourceFile: dns.btreezone
    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 0x7fd437f3f520>
    - <ast.Constant object at 0x7fd437f3f250>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 83
    functionName: dns.btreezone.ImmutableNode.get_rdataset
    functionSourceFile: dns.btreezone
    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 0x7fd438f0feb0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 94
    functionName: dns.btreezone.ImmutableNode.delete_rdataset
    functionSourceFile: dns.btreezone
    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: 102
    functionName: dns.btreezone.ImmutableNode.replace_rdataset
    functionSourceFile: dns.btreezone
    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: 105
    functionName: dns.btreezone.ImmutableNode.is_immutable
    functionSourceFile: dns.btreezone
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 110
    functionName: dns.btreezone.Delegations.get_delegation
    functionSourceFile: dns.btreezone
    functionUses: 4
    functionsReached:
    - prev.key
    - cursor.seek
    - cursor.prev
    - name.fullcompare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cursor.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: cursor.prev
    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: prev.key
    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: name.fullcompare
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 131
    functionName: dns.btreezone.Delegations.is_glue
    functionSourceFile: dns.btreezone
    functionUses: 3
    functionsReached:
    - name.fullcompare
    - cursor.seek
    - prev.key
    - dns.btreezone.Delegations.get_delegation
    - cursor.prev
    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 0x7fd4385180a0>
    argNames:
    - self
    - zone
    - replacement
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 142
    functionName: dns.btreezone.WritableVersion.__init__
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.super
    - dns.btree.BTreeDict
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.btree.BTreeDict
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 154
    functionName: dns.btreezone.WritableVersion._is_origin
    functionSourceFile: dns.btreezone
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 162
    functionName: dns.btreezone.WritableVersion._maybe_cow_with_name
    functionSourceFile: dns.btreezone
    functionUses: 2
    functionsReached:
    - typing.cast
    - dns.btreezone.Delegations.is_glue
    - dns.btreezone.WritableVersion._is_origin
    - name.fullcompare
    - cursor.seek
    - prev.key
    - <builtin>.super
    - dns.btreezone.Delegations.get_delegation
    - cursor.prev
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - is_glue
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 173
    functionName: dns.btreezone.WritableVersion.update_glue_flag
    functionSourceFile: dns.btreezone
    functionUses: 3
    functionsReached:
    - elt.value
    - typing.cast
    - cursor.next
    - elt.key
    - <builtin>.isinstance
    - cursor.seek
    - new_node.rdatasets.extend
    - updates.append
    - ename.is_subdomain
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cursor.next
    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: ename.is_subdomain
    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: elt.value
    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: updates.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 204
    functionName: dns.btreezone.WritableVersion.delete_node
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - elt.value
    - typing.cast
    - cursor.next
    - dns.btreezone.WritableVersion.update_glue_flag
    - node.is_delegation
    - elt.key
    - <builtin>.isinstance
    - cursor.seek
    - new_node.rdatasets.extend
    - updates.append
    - ename.is_subdomain
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_delegation
    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: []
    argNames:
    - self
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 214
    functionName: dns.btreezone.WritableVersion.put_rdataset
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - dns.btreezone.Delegations.is_glue
    - cursor.next
    - cursor.seek
    - prev.key
    - new_node.rdatasets.extend
    - elt.value
    - <builtin>.isinstance
    - dns.btreezone.Delegations.get_delegation
    - cursor.prev
    - typing.cast
    - dns.btreezone.WritableVersion._is_origin
    - name.fullcompare
    - dns.btreezone.WritableVersion.update_glue_flag
    - elt.key
    - dns.btreezone.WritableVersion._maybe_cow_with_name
    - ename.is_subdomain
    - node.is_origin_or_glue
    - <builtin>.super
    - updates.append
    - node.replace_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: node.is_origin_or_glue
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 227
    functionName: dns.btreezone.WritableVersion.delete_rdataset
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - dns.btreezone.Delegations.is_glue
    - cursor.next
    - cursor.seek
    - prev.key
    - new_node.rdatasets.extend
    - elt.value
    - <builtin>.isinstance
    - node.delete_rdataset
    - dns.btreezone.Delegations.get_delegation
    - <builtin>.len
    - cursor.prev
    - typing.cast
    - dns.btreezone.WritableVersion._is_origin
    - name.fullcompare
    - dns.btreezone.WritableVersion.update_glue_flag
    - elt.key
    - dns.btreezone.WritableVersion._maybe_cow_with_name
    - ename.is_subdomain
    - <builtin>.super
    - updates.append
    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: 252
    functionName: dns.btreezone.Bounds.__str__
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - version
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 269
    functionName: dns.btreezone.ImmutableVersion.__init__
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - typing.cast
    - dns.btreezone.ImmutableNode.__init__
    - typing.cast.make_immutable
    - dns.rdataset.ImmutableRdataset
    - <builtin>.isinstance
    - <builtin>.super
    - version.nodes.get
    - <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: typing.cast.make_immutable
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 288
    functionName: dns.btreezone.ImmutableVersion.bounds
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - c.next
    - typing.cast
    - c.seek
    - right_key.fullcompare
    - dns.name.Name
    - <builtin>.max
    - right.value
    - right.key
    - left.key
    - <builtin>.len
    - c.prev
    - typing.cast.cursor
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.cursor
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: c.seek
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: c.prev
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: c.next
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: right.value
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: left.key
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: right.key
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: right_key.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: 1
    functionLinenumber: -1
    functionName: dns.btreezone.Zone
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - typing.cast
    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 0x7fd43873f820>
    - <ast.Constant object at 0x7fd43873f4f0>
    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 0x7fd43873f9a0>
    - <ast.Constant object at 0x7fd43873f040>
    - <ast.Constant object at 0x7fd43873f4c0>
    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
    - <builtin>.super
    - dns.rdtypes.mxbase.MXBase.__init__
    - tok.get_uint16
    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 0x7fd437e8afa0>
    - <ast.Constant object at 0x7fd437e8a610>
    - <ast.Constant object at 0x7fd437e8ad00>
    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:
    - struct.pack
    - 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 0x7fd437e8abe0>
    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_uint16
    - <builtin>.super
    - dns.rdtypes.mxbase.MXBase.__init__
    - parser.get_name
    linkageType: pythonLinkage
    raised: []
    returnType: 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>.list
    - rdata._processing_priority
    - by_priority.keys
    - dns.rdtypes.util._priority_table
    - random.shuffle
    - <builtin>.sorted
    - dns.rdtypes.util.priority_processing_order
    - collections.defaultdict
    - <builtin>.len
    - ordered.extend
    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 0x7fd4385186d0>
    - <ast.Constant object at 0x7fd438518a60>
    - <ast.Constant object at 0x7fd4385188e0>
    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 0x7fd437e5bc40>
    - <ast.Constant object at 0x7fd437e5ba90>
    - <ast.Constant object at 0x7fd437e5b730>
    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 0x7fd437f0d700>
    - <ast.Constant object at 0x7fd437f0d1c0>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - binascii.hexlify
    - dns.rdata._hexify
    - <builtin>.len
    - 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 0x7fd437f3fcd0>
    - <ast.Constant object at 0x7fd437f3f730>
    - <ast.Constant object at 0x7fd437f3fb80>
    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>.range
    - binascii.unhexlify
    - text.encode
    - <builtin>.super
    - <builtin>.len
    - 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 0x7fd437e5bdf0>
    - <ast.Constant object at 0x7fd437e5be80>
    - <ast.Constant object at 0x7fd437e5b220>
    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 0x7fd437e5be50>
    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:
    - <builtin>.len
    - parser.get_bytes
    - dns.rdtypes.euibase.EUIBase.__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.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: 39
    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 0x7fd438e97160>
    - <ast.Constant object at 0x7fd438e974f0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 60
    functionName: dns.rdtypes.txtbase.TXTBase.to_text
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.rdata._escapify
    - qstring.encode
    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 0x7fd4380cab20>
    - <ast.Constant object at 0x7fd4380ca130>
    - <ast.Constant object at 0x7fd4380cafd0>
    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: 74
    functionName: dns.rdtypes.txtbase.TXTBase.from_text
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - strings.append
    - token.unescape_to_bytes
    - token.is_identifier
    - tok.get_remaining
    - token.is_quoted_string
    - <builtin>.super
    - <builtin>.len
    - dns.rdtypes.txtbase.TXTBase.__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.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 0x7fd438727b50>
    - <ast.Constant object at 0x7fd438727c40>
    - <ast.Constant object at 0x7fd438727af0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 99
    functionName: dns.rdtypes.txtbase.TXTBase._to_wire
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - dns.renderer.prefixed_length
    - file.write
    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 0x7fd437f0bc40>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 105
    functionName: dns.rdtypes.txtbase.TXTBase.from_wire_parser
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - parser.get_counted_bytes
    - strings.append
    - <builtin>.super
    - <builtin>.len
    - dns.rdtypes.txtbase.TXTBase.__init__
    - 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: 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 0x7fd438750460>
    - <ast.Constant object at 0x7fd437da5d90>
    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:
    - separator.join
    - <builtin>.range
    - kw.pop
    - dns.rdata._wordbreak
    - kw.copy
    - binascii.hexlify
    - dns.rdata._hexify
    - <builtin>.len
    - 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 0x7fd437da5af0>
    - <ast.Constant object at 0x7fd437da5460>
    - <ast.Constant object at 0x7fd437da5940>
    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.tlsabase.TLSABase.from_text
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - binascii.unhexlify
    - dns.rdtypes.tlsabase.TLSABase.__init__
    - tok.get_uint8
    - tok.concatenate_remaining_identifiers
    - <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 0x7fd437decbe0>
    - <ast.Constant object at 0x7fd437dec9d0>
    - <ast.Constant object at 0x7fd437decd90>
    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.tlsabase.TLSABase._to_wire
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - struct.pack
    - 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 0x7fd437f0b970>
    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.tlsabase.TLSABase.from_wire_parser
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - parser.get_struct
    - dns.rdtypes.tlsabase.TLSABase.__init__
    - <builtin>.super
    - parser.get_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: 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 0x7fd4380caa60>
    - <ast.Constant object at 0x7fd4380caf40>
    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 0x7fd43825d3d0>
    - <ast.Constant object at 0x7fd438727c10>
    - <ast.Constant object at 0x7fd438727a60>
    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:
    - dns.rdtypes.ANY.URI.URI.__init__
    - tok.get
    - target.is_quoted_string
    - <builtin>.super
    - tok.get_uint16
    - <builtin>.len
    - target.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: 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 0x7fd4387274c0>
    - <ast.Constant object at 0x7fd4387272e0>
    - <ast.Constant object at 0x7fd438727100>
    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:
    - struct.pack
    - file.write
    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 0x7fd43851a220>
    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_struct
    - dns.rdtypes.ANY.URI.URI.__init__
    - <builtin>.super
    - <builtin>.len
    - parser.get_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: 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>.list
    - rdata._processing_priority
    - by_priority.keys
    - random.uniform
    - dns.rdtypes.util._priority_table
    - <builtin>.sum
    - ordered.append
    - dns.rdtypes.util.weighted_processing_order
    - <builtin>.sorted
    - collections.defaultdict
    - rdata._processing_weight
    - <builtin>.len
    - <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: 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 0x7fd438727b80>
    - <ast.Constant object at 0x7fd438727f10>
    - <ast.Constant object at 0x7fd438727a60>
    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:
    - what.isdigit
    - left.decode
    - <builtin>.len
    - what.split
    - right.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: 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:
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - <builtin>.str
    - <builtin>.isinstance
    - what.isdigit
    - <builtin>.super
    - left.decode
    - <builtin>.len
    - what.split
    - right.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 0x7fd437e5b4c0>
    - <ast.Constant object at 0x7fd4386ecac0>
    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 0x7fd4386ecb80>
    - <ast.Constant object at 0x7fd4386ec220>
    - <ast.Constant object at 0x7fd4386ece20>
    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:
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - <builtin>.str
    - <builtin>.isinstance
    - what.isdigit
    - <builtin>.super
    - left.decode
    - dns.rdtypes.ANY.GPOS.GPOS.__init__
    - tok.get_string
    - <builtin>.len
    - what.split
    - right.decode
    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 0x7fd4386ec790>
    - <ast.Constant object at 0x7fd4386ec3d0>
    - <ast.Constant object at 0x7fd4386ec4f0>
    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:
    - <builtin>.len
    - struct.pack
    - 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 0x7fd438c50760>
    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:
    - parser.get_counted_bytes
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - <builtin>.str
    - <builtin>.isinstance
    - what.isdigit
    - <builtin>.super
    - left.decode
    - dns.rdtypes.ANY.GPOS.GPOS.__init__
    - <builtin>.len
    - what.split
    - right.decode
    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 0x7fd437e8aa00>
    - <ast.Constant object at 0x7fd437e8abb0>
    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:
    - separator.join
    - <builtin>.range
    - kw.pop
    - dns.rdata._wordbreak
    - kw.copy
    - binascii.hexlify
    - dns.rdata._hexify
    - <builtin>.len
    - 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 0x7fd437e8afa0>
    - <ast.Constant object at 0x7fd437e8a580>
    - <ast.Constant object at 0x7fd437e8a970>
    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:
    - dns.rdtypes.ANY.SSHFP.SSHFP.__init__
    - binascii.unhexlify
    - tok.get_uint8
    - tok.concatenate_remaining_identifiers
    - <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 0x7fd437f3ffa0>
    - <ast.Constant object at 0x7fd437f3f3d0>
    - <ast.Constant object at 0x7fd437f3f490>
    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:
    - struct.pack
    - 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 0x7fd437f3f9d0>
    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:
    - parser.get_struct
    - <builtin>.super
    - dns.rdtypes.ANY.SSHFP.SSHFP.__init__
    - parser.get_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: 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 0x7fd4386c3f10>
    - <ast.Constant object at 0x7fd4386c36d0>
    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 0x7fd438ea71f0>
    - <ast.Constant object at 0x7fd438ea77f0>
    - <ast.Constant object at 0x7fd438ea7d30>
    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:
    - <builtin>.bool
    - dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__
    - tok.get_uint8
    - <builtin>.super
    - 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 0x7fd438f0f1f0>
    - <ast.Constant object at 0x7fd438f0f070>
    - <ast.Constant object at 0x7fd438f0f880>
    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:
    - struct.pack
    - 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 0x7fd4386ec880>
    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:
    - parser.get_struct
    - <builtin>.bool
    - dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__
    - <builtin>.super
    - Relay.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: 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 0x7fd437f3f220>
    - <ast.Constant object at 0x7fd437f3fbe0>
    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:
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.rdata._escapify
    - qstring.encode
    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 0x7fd4385186d0>
    - <ast.Constant object at 0x7fd438518370>
    - <ast.Constant object at 0x7fd438518b50>
    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
    - <builtin>.super
    - dns.rdtypes.ANY.HINFO.HINFO.__init__
    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 0x7fd438518850>
    - <ast.Constant object at 0x7fd438518fa0>
    - <ast.Constant object at 0x7fd4385185e0>
    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:
    - <builtin>.len
    - struct.pack
    - 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 0x7fd438c50e80>
    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:
    - <builtin>.super
    - parser.get_counted_bytes
    - dns.rdtypes.ANY.HINFO.HINFO.__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.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:
    - <builtin>.super
    - tag.isalnum
    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 0x7fd438ea7b80>
    - <ast.Constant object at 0x7fd438ea7880>
    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:
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.rdata._escapify
    - qstring.encode
    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 0x7fd437e5bbe0>
    - <ast.Constant object at 0x7fd437e5bb50>
    - <ast.Constant object at 0x7fd437e5bd30>
    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:
    - tok.get_uint8
    - dns.rdtypes.ANY.CAA.CAA.__init__
    - <builtin>.super
    - tag.isalnum
    - 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 0x7fd437f0d2b0>
    - <ast.Constant object at 0x7fd437f0d460>
    - <ast.Constant object at 0x7fd437f0d5b0>
    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:
    - <builtin>.len
    - struct.pack
    - 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 0x7fd4386ec9d0>
    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:
    - parser.get_counted_bytes
    - dns.rdtypes.ANY.CAA.CAA.__init__
    - <builtin>.super
    - tag.isalnum
    - parser.get_uint8
    - parser.get_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: 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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.isinstance
    - binascii.hexlify
    - <builtin>.int
    - dns.rdata._hexify
    - <builtin>.super
    - <builtin>.len
    - 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 0x7fd438c502e0>
    - <ast.Constant object at 0x7fd438c50820>
    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 0x7fd437e8a3d0>
    - <ast.Constant object at 0x7fd437e8a550>
    - <ast.Constant object at 0x7fd437e8a2e0>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.isinstance
    - binascii.hexlify
    - <builtin>.int
    - dns.rdata._hexify
    - <builtin>.super
    - tok.get_uint16
    - <builtin>.len
    - data.decode
    - tok.get_identifier
    - dns.rdtypes.ANY.NID.NID.__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: 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 0x7fd437e8ac70>
    - <ast.Constant object at 0x7fd437e8a0d0>
    - <ast.Constant object at 0x7fd437e8a4c0>
    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:
    - <builtin>.range
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.int
    - 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 0x7fd43871c6a0>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - parser.get_uint16
    - <builtin>.isinstance
    - binascii.hexlify
    - <builtin>.int
    - dns.rdata._hexify
    - <builtin>.super
    - <builtin>.len
    - data.decode
    - parser.get_remaining
    - dns.rdtypes.ANY.NID.NID.__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.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.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.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 0x7fd437e5bb20>
    - <ast.Constant object at 0x7fd437e5b670>
    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 0x7fd437e5b4c0>
    - <ast.Constant object at 0x7fd437e5b580>
    - <ast.Constant object at 0x7fd437e5b850>
    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:
    - dns.rdtypes.ANY.RP.RP.__init__
    - tok.get_name
    - <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 0x7fd437f0d460>
    - <ast.Constant object at 0x7fd437f0d5b0>
    - <ast.Constant object at 0x7fd437f0d250>
    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 0x7fd4386c3430>
    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:
    - dns.rdtypes.ANY.RP.RP.__init__
    - <builtin>.super
    - parser.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: 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 0x7fd4386ece20>
    - <ast.Constant object at 0x7fd4386ecc70>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - <builtin>.len
    - dns.rdata._base64ify
    - 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 0x7fd4386ec4f0>
    - <ast.Constant object at 0x7fd4386ec7c0>
    - <ast.Constant object at 0x7fd4386ec940>
    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:
    - dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.__init__
    - tok.concatenate_remaining_identifiers
    - base64.b64decode
    - <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 0x7fd4386ec520>
    - <ast.Constant object at 0x7fd4386ecfd0>
    - <ast.Constant object at 0x7fd4386ec3a0>
    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 0x7fd4386c37c0>
    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:
    - dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.__init__
    - <builtin>.super
    - parser.get_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: 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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.isinstance
    - binascii.hexlify
    - <builtin>.int
    - dns.rdata._hexify
    - <builtin>.super
    - <builtin>.len
    - 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 0x7fd437e8a190>
    - <ast.Constant object at 0x7fd437e8a880>
    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 0x7fd4385184f0>
    - <ast.Constant object at 0x7fd4385183d0>
    - <ast.Constant object at 0x7fd4385189d0>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.isinstance
    - dns.rdtypes.ANY.L64.L64.__init__
    - binascii.hexlify
    - <builtin>.int
    - dns.rdata._hexify
    - <builtin>.super
    - tok.get_uint16
    - <builtin>.len
    - data.decode
    - tok.get_identifier
    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 0x7fd438518a00>
    - <ast.Constant object at 0x7fd438518100>
    - <ast.Constant object at 0x7fd438518130>
    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:
    - <builtin>.range
    - dns.rdtypes.util.parse_formatted_hex
    - <builtin>.int
    - 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 0x7fd43871cb20>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - dns.rdtypes.util.parse_formatted_hex
    - parser.get_uint16
    - dns.rdtypes.ANY.L64.L64.__init__
    - <builtin>.isinstance
    - binascii.hexlify
    - <builtin>.int
    - dns.rdata._hexify
    - <builtin>.super
    - <builtin>.len
    - data.decode
    - parser.get_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: 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 0x7fd4386ec130>
    - <ast.Constant object at 0x7fd4386ec640>
    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:
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.rdata._escapify
    - qstring.encode
    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 0x7fd437c4fa00>
    - <ast.Constant object at 0x7fd437c4f4f0>
    - <ast.Constant object at 0x7fd437c4fd90>
    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
    - dns.rdtypes.ANY.ISDN.ISDN.__init__
    - <builtin>.super
    - <builtin>.len
    - 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 0x7fd4386c3820>
    - <ast.Constant object at 0x7fd4386c3be0>
    - <ast.Constant object at 0x7fd4386c3bb0>
    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:
    - <builtin>.len
    - struct.pack
    - file.write
    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 0x7fd437e5bfa0>
    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:
    - <builtin>.super
    - parser.get_counted_bytes
    - parser.remaining
    - dns.rdtypes.ANY.ISDN.ISDN.__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.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 0x7fd437e8a8e0>
    - <ast.Constant object at 0x7fd437e8adc0>
    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 0x7fd438518580>
    - <ast.Constant object at 0x7fd438518d60>
    - <ast.Constant object at 0x7fd4385188e0>
    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__
    - <builtin>.super
    - tok.get_uint16
    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 0x7fd4385183d0>
    - <ast.Constant object at 0x7fd4385184f0>
    - <ast.Constant object at 0x7fd438518ee0>
    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:
    - struct.pack
    - 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 0x7fd438c50850>
    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_uint16
    - dns.rdtypes.ANY.LP.LP.__init__
    - <builtin>.super
    - parser.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: 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 0x7fd43851ad60>
    - <ast.Constant object at 0x7fd43851a700>
    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:
    - binascii.hexlify
    - servers.append
    - x.to_unicode
    - server.choose_relativity
    - <builtin>.len
    - base64.b64encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7fd4387ce190>
    - <ast.Constant object at 0x7fd4387ceee0>
    - <ast.Constant object at 0x7fd4387ce820>
    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.as_name
    - binascii.unhexlify
    - tok.get_uint8
    - servers.append
    - tok.get_remaining
    - tok.get_string
    - <builtin>.super
    - dns.rdtypes.ANY.HIP.HIP.__init__
    - base64.b64decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437f0ba00>
    - <ast.Constant object at 0x7fd437f0b610>
    - <ast.Constant object at 0x7fd437f0b7c0>
    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:
    - <builtin>.len
    - struct.pack
    - file.write
    - 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 0x7fd43873fe50>
    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.get_struct
    - parser.get_bytes
    - servers.append
    - <builtin>.super
    - dns.rdtypes.ANY.HIP.HIP.__init__
    - parser.get_name
    - 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: 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 0x7fd437da5430>
    - <ast.Constant object at 0x7fd437da5a00>
    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 0x7fd437da58b0>
    - <ast.Constant object at 0x7fd437da55b0>
    - <ast.Constant object at 0x7fd437da5ac0>
    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:
    - dns.rdtypes.ANY.L32.L32.__init__
    - <builtin>.super
    - tok.get_uint16
    - tok.get_identifier
    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 0x7fd437dec1f0>
    - <ast.Constant object at 0x7fd437decc70>
    - <ast.Constant object at 0x7fd437dece50>
    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:
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - <builtin>.ord
    - part.isdigit
    - file.write
    - btext.split
    - <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 0x7fd437decf10>
    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_uint16
    - dns.rdtypes.ANY.L32.L32.__init__
    - <builtin>.super
    - parser.get_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: 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 0x7fd437eda6d0>
    - <ast.Constant object at 0x7fd437eda610>
    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:
    - dns.rdatatype.to_text
    - Scheme.to_text
    - 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 0x7fd4387ce730>
    - <ast.Constant object at 0x7fd4387ce610>
    - <ast.Constant object at 0x7fd4387cebb0>
    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:
    - tok.get_name
    - dns.rdtypes.ANY.DSYNC.DSYNC.__init__
    - Scheme.make
    - dns.rdatatype.from_text
    - RdataType.from_text
    - <builtin>.super
    - tok.get_uint16
    - 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 0x7fd437f0b460>
    - <ast.Constant object at 0x7fd437f0bc40>
    - <ast.Constant object at 0x7fd437f0bcd0>
    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:
    - struct.pack
    - 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 0x7fd4380ca280>
    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_struct
    - Scheme.make
    - dns.rdtypes.ANY.DSYNC.DSYNC.__init__
    - <builtin>.super
    - parser.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: 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:
    - <builtin>.str
    - _ctype_by_value.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: _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 0x7fd43871c940>
    - <ast.Constant object at 0x7fd43871c370>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._base64ify
    - dns.rdata._wordbreak
    - <builtin>.len
    - dns.dnssectypes.Algorithm.to_text
    - base64.b64encode
    - data.decode
    - <builtin>.str
    - _ctype_by_value.get
    - 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 0x7fd43871ca00>
    - <ast.Constant object at 0x7fd43871cb50>
    - <ast.Constant object at 0x7fd43871ca90>
    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:
    - <builtin>.int
    - tok.concatenate_remaining_identifiers
    - dns.dnssectypes.Algorithm.from_text
    - <builtin>.super
    - tok.get_uint16
    - dns.rdtypes.ANY.CERT._ctype_from_text
    - dns.rdtypes.ANY.CERT.CERT.__init__
    - tok.get_string
    - base64.b64decode
    - _ctype_by_name.get
    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 0x7fd438f0fa30>
    - <ast.Constant object at 0x7fd438f0f610>
    - <ast.Constant object at 0x7fd438f0fca0>
    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:
    - struct.pack
    - 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 0x7fd437e5b640>
    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:
    - parser.get_struct
    - <builtin>.super
    - dns.rdtypes.ANY.CERT.CERT.__init__
    - parser.get_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: 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>.round
    - <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: <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:
    - dns.rdtypes.ANY.LOC._exponent_of
    - <builtin>.pow
    - <builtin>.enumerate
    - <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: <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 0x7fd437d0ca90>
    - <ast.Name object at 0x7fd437d0c0a0>
    - <ast.Name object at 0x7fd437d0c910>
    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>.round
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.super
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - <builtin>.float
    - <builtin>.tuple
    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 0x7fd437c7d850>
    - <ast.Constant object at 0x7fd437c7d1f0>
    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 0x7fd437e90cd0>
    - <ast.Constant object at 0x7fd437e906a0>
    - <ast.Constant object at 0x7fd437e907c0>
    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:
    - t.isdigit
    - tok.get_remaining
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - <builtin>.isinstance
    - <builtin>.pow
    - <builtin>.int
    - t.split
    - <builtin>.len
    - seconds.isdigit
    - <builtin>.enumerate
    - <builtin>.round
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - dns.rdtypes.ANY.LOC._exponent_of
    - <builtin>.float
    - <builtin>.tuple
    - milliseconds.isdigit
    - dns.rdtypes.ANY.LOC.LOC.__init__
    - tok.get_int
    - <builtin>.super
    - dns.rdtypes.ANY.LOC._encode_size
    - 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: 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 0x7fd437c56850>
    - <ast.Constant object at 0x7fd437c566a0>
    - <ast.Constant object at 0x7fd437c567c0>
    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:
    - <builtin>.pow
    - <builtin>.int
    - dns.rdtypes.ANY.LOC._exponent_of
    - dns.rdtypes.ANY.LOC._encode_size
    - file.write
    - <builtin>.enumerate
    - struct.pack
    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 0x7fd43889ba60>
    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:
    - parser.get_struct
    - <builtin>.round
    - dns.rdtypes.ANY.LOC.LOC.__init__
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - <builtin>.isinstance
    - <builtin>.pow
    - <builtin>.int
    - <builtin>.super
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - <builtin>.float
    - dns.rdtypes.ANY.LOC._decode_size
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 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>.super
    - <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: 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 0x7fd4382a42b0>
    - <ast.Constant object at 0x7fd4382a4700>
    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 0x7fd4380e6e20>
    - <ast.Constant object at 0x7fd4380e69a0>
    - <ast.Constant object at 0x7fd4380e6a60>
    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:
    - salt.encode
    - binascii.unhexlify
    - tok.get_uint8
    - <builtin>.isinstance
    - tok.get_string
    - dns.rdtypes.ANY.NSEC3.NSEC3.__init__
    - <builtin>.super
    - tok.get_uint16
    - base64.b32decode
    - <builtin>.len
    - Bitmap.from_text
    - <builtin>.tuple
    - next.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd4384f9940>
    - <ast.Constant object at 0x7fd4384f9100>
    - <ast.Constant object at 0x7fd4384f99a0>
    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:
    - <builtin>.len
    - struct.pack
    - 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 0x7fd437c88910>
    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:
    - parser.get_struct
    - parser.get_counted_bytes
    - <builtin>.isinstance
    - dns.rdtypes.ANY.NSEC3.NSEC3.__init__
    - <builtin>.super
    - <builtin>.tuple
    - Bitmap.from_wire_parser
    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 0x7fd438136be0>
    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:
    - <builtin>.list
    - labels.extend
    - dns.name._validate_labels
    - <builtin>.ord
    - dns.rdtypes.ANY.NSEC3.NSEC3._next_text
    - label.encode
    - dns.name.Name.__init__
    - byte_.isdigit
    - <builtin>.isinstance
    - text.encode
    - base64.b32encode
    - <builtin>.int
    - c.isdigit
    - dns.name.from_unicode
    - <builtin>.len
    - dns.name.IDNA2003Codec.encode
    - next.rstrip
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - labels.append
    - dns.name.from_text
    - dns.name.is_all_ascii
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.super
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fd43802a070>
    - <ast.Constant object at 0x7fd43802adc0>
    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 0x7fd437c567f0>
    - <ast.Constant object at 0x7fd437c56d90>
    - <ast.Constant object at 0x7fd437c56160>
    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:
    - tok.get_uint32
    - <builtin>.isinstance
    - <builtin>.super
    - tok.get_uint16
    - Bitmap.from_text
    - dns.rdtypes.ANY.CSYNC.CSYNC.__init__
    - <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 0x7fd437c569d0>
    - <ast.Constant object at 0x7fd437c56700>
    - <ast.Constant object at 0x7fd437c56e80>
    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:
    - struct.pack
    - 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 0x7fd437e57e50>
    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:
    - parser.get_struct
    - <builtin>.isinstance
    - Bitmap.from_wire_parser
    - <builtin>.super
    - dns.rdtypes.ANY.CSYNC.CSYNC.__init__
    - <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.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 0x7fd438780940>
    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 0x7fd437f008e0>
    - <ast.Constant object at 0x7fd437f00520>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - <builtin>.len
    - dns.rdata._base64ify
    - 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 0x7fd438491490>
    - <ast.Constant object at 0x7fd438491640>
    - <ast.Constant object at 0x7fd438491190>
    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:
    - tok.get_uint32
    - tok.get_name
    - dns.rdtypes.ANY.TKEY.TKEY.__init__
    - tok.get_string
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - tok.get_uint16
    - base64.b64decode
    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 0x7fd438158fa0>
    - <ast.Constant object at 0x7fd438158490>
    - <ast.Constant object at 0x7fd438158d30>
    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:
    - <builtin>.len
    - struct.pack
    - 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 0x7fd437d95400>
    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_struct
    - dns.rdtypes.ANY.TKEY.TKEY.__init__
    - parser.get_counted_bytes
    - <builtin>.super
    - parser.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: dns.rdtypes.ANY.SIG
    functionSourceFile: dns.rdtypes.ANY.SIG
    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.KEY
    functionSourceFile: dns.rdtypes.ANY.KEY
    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: 36
    functionName: dns.rdtypes.ANY.KEY.Protocol._maximum
    functionSourceFile: dns.rdtypes.ANY.KEY
    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 0x7fd437d0c280>
    - <ast.Constant object at 0x7fd437d0cac0>
    - <ast.Constant object at 0x7fd437d0c670>
    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: 1
    functionLinenumber: 82
    functionName: dns.rdtypes.ANY.KEY.KEY.from_text
    functionSourceFile: dns.rdtypes.ANY.KEY
    functionUses: 0
    functionsReached:
    - tok.get
    - tok.as_uint16
    - tok.as_uint8
    - flags_str.split
    - tok.concatenate_remaining_identifiers
    - tok.as_string
    - tok.get_string
    - base64.b64decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_uint16
    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.as_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: flags_str.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: tok.as_uint8
    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.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 0x7fd438158970>
    - <ast.Constant object at 0x7fd438158e80>
    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:
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.rdata._escapify
    - qstring.encode
    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 0x7fd438158760>
    - <ast.Constant object at 0x7fd438158ca0>
    - <ast.Constant object at 0x7fd438158f40>
    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:
    - tok.get_string
    - dns.rdtypes.ANY.X25.X25.__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 0x7fd4381580a0>
    - <ast.Constant object at 0x7fd437d95670>
    - <ast.Constant object at 0x7fd437d95c10>
    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:
    - <builtin>.len
    - struct.pack
    - 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 0x7fd437d95220>
    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 0x7fd437ceac40>
    - <ast.Constant object at 0x7fd437ceaf40>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - <builtin>.len
    - dns.rdata._base64ify
    - 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 0x7fd437e573a0>
    - <ast.Constant object at 0x7fd437e57580>
    - <ast.Constant object at 0x7fd437e57040>
    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:
    - dns.rdtypes.IN.IPSECKEY.IPSECKEY.__init__
    - tok.get_uint8
    - tok.concatenate_remaining_identifiers
    - Gateway.from_text
    - <builtin>.super
    - base64.b64decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437c88cd0>
    - <ast.Constant object at 0x7fd437c886a0>
    - <ast.Constant object at 0x7fd437c88a90>
    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:
    - struct.pack
    - 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 0x7fd4384f9c70>
    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_struct
    - dns.rdtypes.IN.IPSECKEY.IPSECKEY.__init__
    - Gateway.from_wire_parser
    - <builtin>.super
    - parser.get_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: 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 0x7fd4384f9d30>
    - <ast.Constant object at 0x7fd4384f99d0>
    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:
    - separator.join
    - <builtin>.range
    - dns.rdata._wordbreak
    - <builtin>.len
    - dns.rdata._base64ify
    - 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 0x7fd4384f9dc0>
    - <ast.Constant object at 0x7fd4384f93d0>
    - <ast.Constant object at 0x7fd4384f94f0>
    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:
    - tok.concatenate_remaining_identifiers
    - base64.b64decode
    - <builtin>.super
    - dns.rdtypes.IN.DHCID.DHCID.__init__
    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 0x7fd437c88c40>
    - <ast.Constant object at 0x7fd437c88880>
    - <ast.Constant object at 0x7fd437c88b80>
    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 0x7fd437c88fd0>
    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:
    - <builtin>.super
    - parser.get_remaining
    - dns.rdtypes.IN.DHCID.DHCID.__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.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 0x7fd4382a4100>
    - <ast.Constant object at 0x7fd4382a4a90>
    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 0x7fd4382a4340>
    - <ast.Constant object at 0x7fd4382a47c0>
    - <ast.Constant object at 0x7fd4382a4a00>
    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:
    - tok.get_name
    - <builtin>.super
    - dns.rdtypes.IN.SRV.SRV.__init__
    - tok.get_uint16
    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 0x7fd4387cb910>
    - <ast.Constant object at 0x7fd4387cb340>
    - <ast.Constant object at 0x7fd4387cb0d0>
    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:
    - struct.pack
    - 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 0x7fd4380e62b0>
    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:
    - parser.get_struct
    - <builtin>.super
    - dns.rdtypes.IN.SRV.SRV.__init__
    - parser.get_name
    linkageType: pythonLinkage
    raised: []
    returnType: 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>.list
    - rdata._processing_priority
    - by_priority.keys
    - random.uniform
    - dns.rdtypes.util._priority_table
    - <builtin>.sum
    - ordered.append
    - dns.rdtypes.util.weighted_processing_order
    - <builtin>.sorted
    - collections.defaultdict
    - rdata._processing_weight
    - <builtin>.len
    - <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: 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:
    - dns.ipv6.canonicalize
    - _colon_colon_start.match
    - binascii.hexlify
    - <builtin>.ord
    - canonical.append
    - dns.rdata.Rdata._as_ipv4_address
    - dns.rdata.Rdata._as_uint8
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - dns.rdata.Rdata._as_bytes
    - _colon_colon_end.match
    - binascii.unhexlify
    - dns.rdata.Rdata._as_bool
    - <builtin>.isinstance
    - text.encode
    - dns.rdata.Rdata._as_uint16
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - chunks.append
    - dns.rdata.Rdata._as_int
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - value.encode
    - part.isdigit
    - dns.ipv6.inet_ntoa
    - m.group
    - dns.ipv4.canonicalize
    - <builtin>.bytes
    - _v4_ending.match
    - dns.rdata.Rdata._as_ipv6_address
    - struct.pack
    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
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - file.write
    - m.group
    - _v4_ending.match
    - struct.pack
    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>.super
    - <builtin>.tuple
    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 0x7fd438780760>
    - <ast.Constant object at 0x7fd438780820>
    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 0x7fd438780790>
    - <ast.Constant object at 0x7fd438780610>
    - <ast.Constant object at 0x7fd4387808e0>
    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:
    - dns.ipv6.canonicalize
    - _colon_colon_start.match
    - items.append
    - dns.rdtypes.IN.APL.APLItem.__init__
    - binascii.hexlify
    - tok.get_remaining
    - <builtin>.ord
    - dns.rdtypes.IN.APL.APL.__init__
    - canonical.append
    - dns.rdata.Rdata._as_ipv4_address
    - dns.rdata.Rdata._as_uint8
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - dns.rdata.Rdata._as_bytes
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - dns.rdata.Rdata._as_bool
    - text.encode
    - dns.rdata.Rdata._as_uint16
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - dns.rdata.Rdata._as_int
    - item.split
    - chunks.append
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - value.encode
    - rest.split
    - part.isdigit
    - <builtin>.tuple
    - token.unescape
    - dns.ipv6.inet_ntoa
    - m.group
    - dns.ipv4.canonicalize
    - <builtin>.bytes
    - _v4_ending.match
    - <builtin>.super
    - dns.rdata.Rdata._as_ipv6_address
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd438480160>
    - <ast.Constant object at 0x7fd438480bb0>
    - <ast.Constant object at 0x7fd438480460>
    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 0x7fd437c7d2b0>
    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:
    - dns.ipv6.canonicalize
    - codecs.encode
    - _colon_colon_start.match
    - items.append
    - dns.rdtypes.IN.APL.APLItem.__init__
    - binascii.hexlify
    - <builtin>.ord
    - dns.rdtypes.IN.APL.APL.__init__
    - canonical.append
    - dns.rdata.Rdata._as_ipv4_address
    - dns.rdata.Rdata._as_uint8
    - parser.get_struct
    - dns.ipv4.inet_aton
    - _leading_zero.match
    - dns.rdata.Rdata._as_bytes
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - parser.get_bytes
    - dns.rdata.Rdata._as_bool
    - dns.rdata.Rdata._as_uint16
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - parser.remaining
    - dns.rdata.Rdata._as_int
    - chunks.append
    - dns.ipv4.inet_ntoa
    - <builtin>.range
    - dns.ipv6.inet_aton
    - btext.startswith
    - value.encode
    - part.isdigit
    - <builtin>.tuple
    - dns.ipv6.inet_ntoa
    - m.group
    - dns.ipv4.canonicalize
    - <builtin>.bytes
    - _v4_ending.match
    - <builtin>.super
    - dns.rdata.Rdata._as_ipv6_address
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd4384be610>
    - <ast.Constant object at 0x7fd4384beee0>
    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 0x7fd4384be070>
    - <ast.Constant object at 0x7fd4384be7c0>
    - <ast.Constant object at 0x7fd4384bef40>
    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:
    - <builtin>.super
    - dns.rdtypes.IN.AAAA.AAAA.__init__
    - tok.get_identifier
    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 0x7fd438491490>
    - <ast.Constant object at 0x7fd438491d30>
    - <ast.Constant object at 0x7fd4384912b0>
    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
    - <builtin>.ord
    - canonical.append
    - dns.ipv4.inet_aton
    - _colon_colon_end.match
    - binascii.unhexlify
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - btext.split
    - <builtin>.len
    - btext.endswith
    - <builtin>.range
    - btext.startswith
    - dns.ipv6.inet_aton
    - part.isdigit
    - file.write
    - m.group
    - _v4_ending.match
    - 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 0x7fd438491670>
    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:
    - <builtin>.super
    - dns.rdtypes.IN.AAAA.AAAA.__init__
    - parser.get_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: 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:
    - <builtin>.len
    - struct.pack
    - file.write
    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 0x7fd437f00370>
    - <ast.Constant object at 0x7fd437f00e50>
    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:
    - <builtin>.chr
    - <builtin>.isinstance
    - <builtin>.bytearray
    - dns.rdata._escapify
    - qstring.encode
    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 0x7fd438eab910>
    - <ast.Constant object at 0x7fd438eabe20>
    - <ast.Constant object at 0x7fd438eab7c0>
    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:
    - tok.get_name
    - dns.rdtypes.IN.NAPTR.NAPTR.__init__
    - <builtin>.super
    - tok.get_uint16
    - 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 0x7fd437ceaa60>
    - <ast.Constant object at 0x7fd437cea220>
    - <ast.Constant object at 0x7fd437cea670>
    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:
    - <builtin>.len
    - struct.pack
    - dns.rdtypes.IN.NAPTR._write_string
    - file.write
    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 0x7fd437cea640>
    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_struct
    - parser.get_counted_bytes
    - <builtin>.range
    - strings.append
    - dns.rdtypes.IN.NAPTR.NAPTR.__init__
    - <builtin>.super
    - parser.get_name
    linkageType: pythonLinkage
    raised: []
    returnType: 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>.list
    - rdata._processing_priority
    - by_priority.keys
    - dns.rdtypes.util._priority_table
    - random.shuffle
    - <builtin>.sorted
    - dns.rdtypes.util.priority_processing_order
    - collections.defaultdict
    - <builtin>.len
    - ordered.extend
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437ceae50>
    - <ast.Constant object at 0x7fd437cea7c0>
    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 0x7fd438eab2b0>
    - <ast.Constant object at 0x7fd438eabb50>
    - <ast.Constant object at 0x7fd438eabca0>
    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:
    - <builtin>.super
    - dns.rdtypes.IN.A.A.__init__
    - tok.get_identifier
    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 0x7fd438eab460>
    - <ast.Constant object at 0x7fd438eab640>
    - <ast.Constant object at 0x7fd438eab400>
    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:
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - <builtin>.ord
    - part.isdigit
    - file.write
    - btext.split
    - <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 0x7fd438eabac0>
    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:
    - <builtin>.super
    - dns.rdtypes.IN.A.A.__init__
    - parser.get_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: 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 0x7fd4387800a0>
    - <ast.Constant object at 0x7fd438780850>
    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>.enumerate
    - <builtin>.range
    - <builtin>.str
    - 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 0x7fd437e90b80>
    - <ast.Constant object at 0x7fd437e90760>
    - <ast.Constant object at 0x7fd437e90c10>
    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:
    - token.unescape
    - protocol.isdigit
    - dns.rdata._truncate_bitmap
    - <builtin>.range
    - bitmap.append
    - dns.rdtypes.IN.WKS.WKS.__init__
    - <builtin>.bytearray
    - tok.get_remaining
    - <builtin>.int
    - socket.getprotobyname
    - <builtin>.super
    - socket.getservbyname
    - value.isdigit
    - tok.get_string
    - <builtin>.len
    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 0x7fd4381580a0>
    - <ast.Constant object at 0x7fd438158850>
    - <ast.Constant object at 0x7fd4381586a0>
    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:
    - dns.ipv4.inet_aton
    - <builtin>.isinstance
    - text.encode
    - <builtin>.int
    - <builtin>.ord
    - part.isdigit
    - file.write
    - btext.split
    - <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 0x7fd438136b20>
    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:
    - dns.rdtypes.IN.WKS.WKS.__init__
    - parser.get_bytes
    - <builtin>.super
    - parser.get_uint8
    - parser.get_remaining
    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 0x7fd437c88940>
    - <ast.Constant object at 0x7fd437c88d90>
    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 0x7fd437c884f0>
    - <ast.Constant object at 0x7fd437c88970>
    - <ast.Constant object at 0x7fd437c88910>
    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
    - <builtin>.super
    - tok.get_uint16
    - dns.rdtypes.IN.PX.PX.__init__
    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 0x7fd438136d30>
    - <ast.Constant object at 0x7fd438136490>
    - <ast.Constant object at 0x7fd438136460>
    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:
    - struct.pack
    - 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 0x7fd4381367f0>
    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_uint16
    - <builtin>.super
    - dns.rdtypes.IN.PX.PX.__init__
    - parser.get_name
    linkageType: pythonLinkage
    raised: []
    returnType: 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>.list
    - rdata._processing_priority
    - by_priority.keys
    - dns.rdtypes.util._priority_table
    - random.shuffle
    - <builtin>.sorted
    - dns.rdtypes.util.priority_processing_order
    - collections.defaultdict
    - <builtin>.len
    - ordered.extend
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7fd437d95b20>
    - <ast.Constant object at 0x7fd437d95bb0>
    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 0x7fd437d95550>
    - <ast.Constant object at 0x7fd437d95df0>
    - <ast.Constant object at 0x7fd437d953d0>
    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:
    - dns.rdtypes.IN.NSAP.NSAP.__init__
    - binascii.unhexlify
    - address.encode
    - <builtin>.super
    - <builtin>.len
    - 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 0x7fd437e90970>
    - <ast.Constant object at 0x7fd437e90310>
    - <ast.Constant object at 0x7fd437e90460>
    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 0x7fd438158520>
    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:
    - parser.get_remaining
    - <builtin>.super
    - dns.rdtypes.IN.NSAP.NSAP.__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.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 0x7fd437c88430>
    - <ast.Constant object at 0x7fd437c88d60>
    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 0x7fd438136580>
    - <ast.Constant object at 0x7fd438136fa0>
    - <ast.Constant object at 0x7fd4381361c0>
    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:
    - tok.get_name
    - <builtin>.super
    - 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 0x7fd438136730>
    - <ast.Constant object at 0x7fd4381365e0>
    - <ast.Constant object at 0x7fd438136cd0>
    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:
    - struct.pack
    - 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 0x7fd438136670>
    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:
    - parser.get_uint16
    - <builtin>.super
    - dns.rdtypes.CH.A.A.__init__
    - parser.get_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.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
  - 116
  dns._asyncio_backend.Backend.make_socket:
  - 224
  - 225
  - 232
  - 233
  - 234
  - 238
  - 239
  - 250
  - 219
  - 220
  - 221
  dns._asyncio_backend.Backend.sleep:
  - 256
  dns._asyncio_backend.Backend.wait_for:
  - 265
  dns._asyncio_backend._DatagramProtocol.__init__:
  - 27
  dns._asyncio_backend._DatagramProtocol.close:
  - 45
  - 46
  dns._asyncio_backend._DatagramProtocol.connection_lost:
  - 40
  - 42
  - 39
  dns._asyncio_backend._DatagramProtocol.datagram_received:
  - 33
  dns._asyncio_backend._DatagramProtocol.error_received:
  - 36
  dns._asyncio_backend._DatagramSocket.__init__:
  - 61
  dns._asyncio_backend._DatagramSocket.close:
  - 78
  dns._asyncio_backend._DatagramSocket.getpeername:
  - 81
  dns._asyncio_backend._DatagramSocket.getsockname:
  - 84
  dns._asyncio_backend._DatagramSocket.recvfrom:
  - 72
  - 73
  dns._asyncio_backend._DatagramSocket.sendto:
  - 67
  - 68
  dns._asyncio_backend._HTTPTransport.__init__:
  - 194
  - 195
  - 196
  - 190
  dns._asyncio_backend._NetworkBackend.__init__:
  - 129
  - 134
  dns._asyncio_backend._NetworkBackend.connect_tcp:
  - 160
  - 161
  - 162
  - 167
  - 143
  - 144
  - 145
  - 146
  - 147
  - 149
  - 151
  - 152
  - 153
  - 156
  - 157
  - 159
  dns._asyncio_backend._NetworkBackend.sleep:
  - 178
  dns._asyncio_backend._StreamSocket.__init__:
  - 92
  dns._asyncio_backend._StreamSocket.close:
  - 104
  dns._asyncio_backend._StreamSocket.getpeercert:
  - 113
  dns._asyncio_backend._StreamSocket.getpeername:
  - 107
  dns._asyncio_backend._StreamSocket.getsockname:
  - 110
  dns._asyncio_backend._StreamSocket.recv:
  - 101
  dns._asyncio_backend._StreamSocket.sendall:
  - 97
  - 98
  dns._asyncio_backend._get_running_loop:
  - 19
  - 21
  dns._asyncio_backend._maybe_wait_for:
  - 50
  - 52
  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:
  - 9
  - 11
  - 12
  - 13
  - 16
  - 19
  dns._features._version_check:
  - 33
  - 35
  - 39
  - 40
  - 41
  - 25
  - 31
  dns._features.force:
  - 77
  dns._features.have:
  - 68
  - 69
  - 50
  - 59
  - 60
  - 62
  - 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._render_util.prefixed_length:
  - 8
  - 9
  - 10
  - 11
  - 13
  - 15
  - 17
  - 21
  dns._tls_util.convert_verify_to_cafile_and_capath:
  - 11
  - 12
  - 14
  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:
  - 36
  - 37
  - 39
  - 42
  - 43
  - 46
  - 28
  dns.asyncbackend.get_default_backend:
  - 81
  - 82
  - 85
  dns.asyncbackend.set_default_backend:
  - 89
  - 98
  dns.asyncbackend.sniff:
  - 62
  - 74
  - 67
  - 54
  dns.asyncquery:
  - 18
  - 59
  dns.asyncquery._http3:
  - 768
  - 724
  - 727
  - 730
  - 734
  - 736
  - 740
  - 742
  - 743
  - 746
  - 749
  - 752
  - 753
  - 756
  - 757
  - 758
  - 759
  - 760
  - 767
  dns.asyncquery._inbound_xfr:
  - 851
  - 854
  - 855
  - 857
  - 858
  - 859
  - 861
  - 862
  - 863
  - 864
  - 869
  - 870
  - 874
  - 875
  - 876
  - 878
  - 879
  - 880
  - 881
  - 891
  - 892
  - 894
  dns.asyncquery._maybe_get_resolver:
  - 529
  - 525
  dns.asyncquery._read_exactly:
  - 348
  - 349
  - 351
  - 343
  dns.asyncquery._source_tuple:
  - 73
  - 69
  - 70
  - 71
  dns.asyncquery._timeout:
  - 83
  - 84
  - 85
  - 86
  dns.asyncquery.https:
  - 640
  - 642
  - 653
  - 660
  - 661
  - 667
  - 668
  - 677
  - 678
  - 551
  - 679
  - 680
  - 691
  - 564
  - 696
  - 569
  - 570
  - 572
  - 703
  - 576
  - 704
  - 578
  - 579
  - 581
  - 584
  - 587
  - 590
  - 591
  - 593
  - 596
  - 597
  - 601
  - 602
  - 617
  - 620
  - 624
  - 630
  - 632
  - 639
  dns.asyncquery.inbound_xfr:
  - 928
  - 929
  - 930
  - 931
  - 935
  - 910
  - 946
  - 949
  - 950
  - 919
  - 920
  - 953
  - 922
  - 923
  - 924
  - 926
  - 927
  dns.asyncquery.quic:
  - 801
  - 805
  - 837
  - 807
  - 838
  - 812
  - 814
  - 815
  - 830
  - 788
  - 820
  - 821
  - 824
  - 825
  - 827
  - 828
  - 829
  - 798
  dns.asyncquery.receive_tcp:
  - 365
  - 373
  - 374
  - 375
  - 376
  - 377
  dns.asyncquery.receive_udp:
  - 165
  - 134
  - 168
  - 174
  - 178
  - 147
  - 148
  - 152
  - 154
  dns.asyncquery.send_tcp:
  - 322
  - 330
  - 331
  - 336
  - 337
  - 338
  - 339
  dns.asyncquery.send_udp:
  - 97
  - 114
  - 115
  - 116
  - 117
  dns.asyncquery.tcp:
  - 416
  - 420
  - 421
  - 425
  - 426
  - 428
  - 429
  - 430
  - 400
  - 434
  - 435
  - 444
  - 414
  - 415
  dns.asyncquery.tls:
  - 480
  - 481
  - 514
  - 483
  - 484
  - 485
  - 486
  - 488
  - 489
  - 490
  - 464
  - 501
  - 502
  - 479
  dns.asyncquery.udp:
  - 225
  - 227
  - 228
  - 198
  - 211
  - 212
  - 213
  - 214
  - 215
  - 216
  - 244
  - 218
  - 219
  - 220
  - 221
  dns.asyncquery.udp_with_fallback:
  - 264
  - 285
  - 302
  dns.asyncresolver:
  - 18
  dns.asyncresolver.Resolver:
  - 45
  dns.asyncresolver.Resolver.canonical_name:
  - 224
  - 210
  dns.asyncresolver.Resolver.resolve:
  - 70
  - 102
  - 104
  - 73
  - 74
  - 75
  - 77
  - 109
  - 82
  - 88
  - 89
  - 90
  - 91
  - 60
  - 93
  dns.asyncresolver.Resolver.resolve_address:
  - 136
  - 137
  - 115
  - 133
  dns.asyncresolver.Resolver.resolve_name:
  - 146
  - 164
  - 165
  - 168
  - 169
  - 170
  - 171
  - 172
  - 173
  - 174
  - 177
  - 178
  - 179
  - 180
  - 184
  - 193
  - 197
  - 200
  - 203
  dns.asyncresolver.Resolver.try_ddr:
  - 256
  - 231
  - 250
  - 251
  - 254
  - 255
  dns.asyncresolver.canonical_name:
  - 344
  - 350
  dns.asyncresolver.get_default_resolver:
  - 266
  - 267
  - 268
  dns.asyncresolver.make_resolver_at:
  - 422
  - 423
  - 425
  - 426
  - 428
  - 429
  - 430
  - 431
  - 405
  dns.asyncresolver.reset_default_resolver:
  - 281
  - 274
  dns.asyncresolver.resolve:
  - 296
  - 305
  dns.asyncresolver.resolve_address:
  - 328
  - 322
  dns.asyncresolver.resolve_at:
  - 465
  - 466
  - 452
  dns.asyncresolver.resolve_name:
  - 340
  - 334
  dns.asyncresolver.try_ddr:
  - 360
  - 354
  dns.asyncresolver.zone_for_name:
  - 384
  - 388
  - 394
  - 370
  - 376
  - 377
  - 378
  - 379
  - 380
  dns.btree:
  - 25
  - 3
  - 761
  - 14
  dns.btree.BTree:
  - 614
  dns.btree.BTree.__copy__:
  - 750
  dns.btree.BTree.__init__:
  - 640
  - 643
  - 617
  - 627
  - 632
  - 633
  - 634
  dns.btree.BTree.__iter__:
  - 753
  - 755
  - 756
  - 758
  dns.btree.BTree._check_mutable_and_park:
  - 656
  - 658
  - 659
  dns.btree.BTree._delete:
  - 706
  - 707
  - 695
  - 696
  - 697
  - 699
  - 700
  - 703
  dns.btree.BTree._visit_preorder_by_node:
  - 735
  dns.btree.BTree.cursor:
  - 738
  - 739
  dns.btree.BTree.delete_exact:
  - 723
  - 719
  dns.btree.BTree.delete_key:
  - 712
  - 716
  dns.btree.BTree.deregister_cursor:
  - 746
  - 747
  dns.btree.BTree.get_element:
  - 689
  - 692
  dns.btree.BTree.insert_element:
  - 674
  - 675
  - 676
  - 678
  - 680
  - 681
  - 682
  - 683
  - 666
  dns.btree.BTree.make_immutable:
  - 652
  - 647
  dns.btree.BTree.register_cursor:
  - 742
  - 743
  dns.btree.BTree.visit_in_order:
  - 731
  - 732
  dns.btree.BTreeDict:
  - 785
  dns.btree.BTreeDict.__delitem__:
  - 812
  dns.btree.BTreeDict.__getitem__:
  - 801
  - 802
  - 805
  dns.btree.BTreeDict.__init__:
  - 797
  dns.btree.BTreeDict.__setitem__:
  - 808
  - 809
  dns.btree.BTreeSet:
  - 827
  dns.btree.BTreeSet.__contains__:
  - 843
  dns.btree.BTreeSet.__init__:
  - 839
  dns.btree.BTreeSet.add:
  - 846
  - 847
  dns.btree.BTreeSet.discard:
  - 850
  dns.btree.Cursor:
  - 382
  dns.btree.Cursor.__enter__:
  - 601
  dns.btree.Cursor.__exit__:
  - 605
  dns.btree.Cursor._adjust_for_before:
  - 535
  dns.btree.Cursor._maybe_unpark:
  - 440
  - 449
  - 436
  - 437
  dns.btree.Cursor._seek_greatest:
  - 418
  - 421
  dns.btree.Cursor._seek_least:
  - 408
  dns.btree.Cursor.next:
  - 512
  - 515
  - 518
  - 521
  - 523
  - 495
  - 496
  - 527
  - 498
  - 528
  - 500
  - 509
  - 511
  dns.btree.Cursor.park:
  - 424
  - 432
  dns.btree.Cursor.prev:
  - 481
  - 483
  - 455
  - 456
  - 487
  - 458
  - 488
  - 460
  - 468
  - 469
  - 471
  - 472
  - 475
  - 479
  dns.btree.Cursor.seek:
  - 558
  - 559
  - 560
  - 561
  - 562
  - 564
  - 566
  - 569
  - 570
  - 571
  - 541
  dns.btree.Cursor.seek_first:
  - 576
  dns.btree.Cursor.seek_last:
  - 588
  dns.btree.Element:
  - 18
  dns.btree.Element.key:
  - 21
  dns.btree.Immutable:
  - 610
  dns.btree.KV:
  - 765
  dns.btree.Member:
  - 817
  dns.btree._Creator:
  - 41
  dns.btree._Creator.__str__:
  - 49
  dns.btree._MAX:
  - 36
  dns.btree._MIN:
  - 29
  dns.btree._Node:
  - 53
  dns.btree._Node.__str__:
  - 378
  - 374
  - 375
  dns.btree._Node._get_node:
  - 130
  - 131
  - 118
  - 124
  - 125
  - 127
  dns.btree._Node._visit_preorder_by_node:
  - 352
  - 353
  - 354
  - 355
  - 351
  dns.btree._Node.adopt:
  - 237
  - 240
  - 242
  - 243
  - 245
  - 246
  - 251
  dns.btree._Node.balance:
  - 291
  - 292
  - 276
  - 280
  - 282
  - 285
  - 287
  dns.btree._Node.clone:
  - 366
  - 367
  - 368
  - 369
  - 370
  dns.btree._Node.delete:
  - 297
  - 300
  - 301
  - 303
  - 305
  - 307
  - 308
  - 314
  - 315
  - 317
  - 319
  - 323
  - 324
  - 325
  - 327
  - 330
  - 331
  - 332
  - 333
  dns.btree._Node.get:
  - 134
  - 135
  - 136
  - 138
  - 141
  dns.btree._Node.insert_nonfull:
  - 162
  - 164
  - 165
  - 166
  - 171
  - 172
  - 175
  - 176
  - 177
  - 181
  - 182
  - 183
  dns.btree._Node.is_maximal:
  - 69
  - 70
  - 71
  dns.btree._Node.is_minimal:
  - 74
  - 75
  - 76
  dns.btree._Node.maximum:
  - 273
  - 269
  - 270
  dns.btree._Node.maybe_cow:
  - 360
  - 361
  - 358
  dns.btree._Node.maybe_cow_child:
  - 110
  - 111
  dns.btree._Node.merge:
  - 256
  - 257
  - 258
  - 259
  - 254
  - 255
  dns.btree._Node.minimum:
  - 266
  - 262
  - 263
  dns.btree._Node.optimize_in_order_insertion:
  - 144
  - 151
  - 154
  - 156
  - 157
  - 158
  dns.btree._Node.search_in_node:
  - 96
  - 100
  - 79
  - 85
  - 86
  - 90
  - 95
  dns.btree._Node.split:
  - 192
  - 193
  - 194
  - 195
  - 187
  - 188
  - 189
  - 190
  - 191
  dns.btree._Node.try_left_steal:
  - 199
  - 203
  - 205
  - 206
  - 208
  - 209
  - 210
  - 212
  - 213
  dns.btree._Node.try_right_steal:
  - 224
  - 225
  - 227
  - 228
  - 229
  - 231
  - 232
  - 218
  - 222
  dns.btree._Node.visit_in_order:
  - 342
  - 343
  - 344
  - 345
  - 346
  - 347
  - 348
  dns.btreezone.Bounds.__str__:
  - 257
  - 253
  dns.btreezone.Delegations.get_delegation:
  - 111
  - 118
  - 119
  - 120
  - 121
  - 123
  - 124
  - 126
  dns.btreezone.Delegations.is_glue:
  - 132
  - 133
  - 134
  - 135
  - 136
  dns.btreezone.ImmutableNode.__init__:
  - 65
  - 67
  - 68
  dns.btreezone.ImmutableNode.find_rdataset:
  - 81
  - 79
  dns.btreezone.ImmutableNode.get_rdataset:
  - 90
  - 92
  dns.btreezone.ImmutableVersion.__init__:
  - 270
  - 275
  - 278
  - 279
  - 280
  - 281
  - 283
  - 284
  - 286
  dns.btreezone.ImmutableVersion.bounds:
  - 289
  - 315
  - 316
  - 317
  - 318
  - 324
  - 325
  - 326
  - 328
  - 330
  - 331
  - 333
  - 334
  - 335
  - 336
  - 341
  - 344
  - 345
  - 347
  - 349
  dns.btreezone.Node.__init__:
  - 40
  - 41
  - 45
  dns.btreezone.WritableVersion.__init__:
  - 143
  - 144
  - 145
  - 147
  - 150
  - 152
  dns.btreezone.WritableVersion._is_origin:
  - 157
  dns.btreezone.WritableVersion._maybe_cow_with_name:
  - 169
  - 165
  - 166
  - 167
  dns.btreezone.WritableVersion.delete_node:
  - 205
  - 206
  - 207
  - 208
  - 209
  - 210
  - 212
  dns.btreezone.WritableVersion.delete_rdataset:
  - 233
  - 234
  - 236
  - 237
  - 238
  - 239
  dns.btreezone.WritableVersion.put_rdataset:
  - 224
  - 225
  - 217
  - 218
  - 219
  - 222
  - 223
  dns.btreezone.WritableVersion.update_glue_flag:
  - 192
  - 200
  - 201
  - 174
  - 175
  - 178
  - 179
  - 181
  - 182
  - 184
  - 185
  - 186
  - 188
  - 189
  - 191
  dns.btreezone.Zone:
  - 359
  dns.dnssec:
  - 176
  - 169
  - 18
  - 1194
  dns.dnssec.SimpleDeny.__init__:
  - 150
  dns.dnssec._find_candidate_keys:
  - 298
  - 299
  - 300
  - 303
  - 306
  - 309
  dns.dnssec._get_rrname_rdataset:
  - 318
  dns.dnssec._make_cdnskey:
  - 712
  - 732
  - 734
  dns.dnssec._make_dnskey:
  - 677
  - 696
  - 699
  - 700
  - 702
  - 703
  dns.dnssec._make_rrsig_signature_data:
  - 642
  - 645
  - 646
  - 648
  - 650
  - 651
  - 653
  - 655
  - 656
  - 657
  - 658
  - 659
  - 660
  - 661
  - 664
  - 609
  - 625
  - 626
  - 629
  - 630
  - 632
  - 636
  - 639
  dns.dnssec._sign:
  - 535
  - 537
  - 540
  - 551
  - 552
  - 554
  - 556
  - 557
  - 558
  - 565
  - 566
  - 567
  - 570
  - 573
  - 582
  - 587
  - 590
  - 594
  - 595
  - 599
  - 601
  - 490
  dns.dnssec._sign_zone_nsec:
  - 1152
  - 1153
  - 1156
  - 1178
  - 1163
  - 1164
  - 1165
  - 1166
  - 1167
  - 1170
  - 1174
  - 1175
  - 1114
  - 1179
  - 1148
  - 1182
  - 1183
  dns.dnssec._sign_zone_nsec._txn_add_nsec:
  - 1124
  - 1125
  - 1128
  - 1129
  - 1131
  - 1133
  - 1134
  - 1137
  - 1144
  - 1145
  - 1146
  dns.dnssec._validate:
  - 449
  - 454
  - 461
  - 462
  - 463
  - 466
  - 467
  - 470
  - 443
  - 412
  - 446
  - 447
  dns.dnssec._validate_rrsig:
  - 385
  - 388
  - 391
  - 392
  - 395
  - 374
  - 342
  - 377
  - 378
  - 381
  - 382
  - 383
  dns.dnssec._validate_signature:
  - 328
  - 331
  - 326
  dns.dnssec.algorithm_from_text:
  - 81
  - 74
  dns.dnssec.algorithm_to_text:
  - 92
  - 85
  dns.dnssec.cds_rdataset_to_ds_rdataset:
  - 866
  - 875
  - 878
  - 879
  - 880
  - 889
  dns.dnssec.default_rrset_signer:
  - 965
  - 967
  - 978
  - 979
  - 991
  dns.dnssec.dnskey_rdataset_to_cdnskey_rdataset:
  - 928
  - 935
  - 938
  - 939
  - 940
  - 949
  dns.dnssec.dnskey_rdataset_to_cds_rdataset:
  - 898
  - 917
  - 920
  - 921
  - 922
  dns.dnssec.key_id:
  - 110
  - 117
  - 119
  - 123
  - 125
  - 126
  dns.dnssec.make_cds:
  - 265
  - 284
  - 285
  dns.dnssec.make_ds:
  - 256
  - 190
  - 219
  - 222
  - 223
  - 226
  - 230
  - 232
  - 234
  - 235
  - 236
  - 237
  - 238
  - 239
  - 243
  - 244
  - 245
  - 246
  - 248
  - 249
  - 250
  - 252
  - 253
  - 254
  dns.dnssec.make_ds_rdataset:
  - 832
  - 839
  - 840
  - 810
  - 842
  - 843
  - 846
  - 848
  - 850
  - 851
  - 852
  - 853
  - 855
  - 858
  - 859
  - 860
  - 830
  dns.dnssec.nsec3_hash:
  - 800
  - 772
  - 773
  - 777
  - 780
  - 750
  - 782
  - 783
  - 784
  - 799
  - 790
  - 791
  - 792
  - 795
  - 796
  - 797
  - 767
  dns.dnssec.sign_zone:
  - 1058
  - 1059
  - 1060
  - 1061
  - 1063
  - 1064
  - 1066
  - 1071
  - 1072
  - 1074
  - 1076
  - 1080
  - 1081
  - 1082
  - 1083
  - 1086
  - 1088
  - 1089
  - 1091
  - 1094
  - 1106
  - 1008
  dns.dnssec.to_timestamp:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 103
  dns.dnssecalgs:
  - 10
  - 29
  - 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:
  - 96
  - 97
  dns.dnssecalgs.dsa.PrivateDSA.sign:
  - 77
  - 78
  - 79
  - 81
  - 82
  - 86
  - 87
  - 88
  - 90
  - 91
  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:
  - 44
  dns.dnssecalgs.eddsa.PrivateEDDSA.sign:
  - 36
  - 37
  - 38
  - 39
  dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes:
  - 14
  - 15
  dns.dnssecalgs.eddsa.PublicEDDSA.from_dnskey:
  - 21
  - 22
  - 23
  dns.dnssecalgs.eddsa.PublicEDDSA.verify:
  - 11
  dns.dnssecalgs.get_algorithm_cls:
  - 59
  - 51
  - 60
  - 61
  dns.dnssecalgs.get_algorithm_cls_from_dnskey:
  - 69
  - 78
  - 79
  - 80
  - 81
  - 83
  dns.dnssecalgs.register_algorithm_cls:
  - 104
  - 106
  - 108
  - 109
  - 111
  - 112
  - 114
  - 115
  - 117
  - 118
  - 120
  - 92
  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:
  - 145
  dns.exception.DNSException:
  - 49
  - 26
  dns.exception.DNSException.__init__:
  - 64
  - 66
  - 53
  - 54
  - 56
  - 57
  - 59
  - 60
  - 63
  dns.exception.DNSException.__str__:
  - 105
  - 106
  - 109
  - 103
  dns.exception.DNSException._check_kwargs:
  - 80
  - 78
  dns.exception.DNSException._check_params:
  - 72
  - 73
  - 69
  dns.exception.DNSException._fmt_kwargs:
  - 97
  - 85
  - 91
  - 92
  - 94
  - 95
  dns.exception.DeniedByPolicy:
  - 153
  dns.exception.ExceptionWrapper.__exit__:
  - 164
  dns.exception.FormError:
  - 113
  dns.exception.SyntaxError:
  - 117
  dns.exception.Timeout:
  - 129
  dns.exception.Timeout.__init__:
  - 137
  dns.exception.TooBig:
  - 125
  dns.exception.UnexpectedEnd:
  - 121
  dns.exception.UnsupportedAlgorithm:
  - 141
  dns.exception.ValidationFailure:
  - 149
  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:
  - 67
  - 40
  - 43
  - 44
  - 45
  - 48
  - 49
  - 52
  - 24
  - 57
  - 59
  - 60
  - 63
  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
  - 173
  - 174
  dns.inet.canonicalize:
  - 193
  - 190
  - 182
  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:
  - 160
  - 161
  - 163
  - 166
  - 139
  - 148
  - 149
  - 150
  - 152
  - 153
  - 154
  dns.ipv4:
  - 18
  dns.ipv4.canonicalize:
  - 67
  - 76
  dns.ipv4.inet_aton:
  - 39
  - 46
  - 47
  - 50
  - 51
  - 53
  - 54
  - 56
  - 60
  - 61
  dns.ipv4.inet_ntoa:
  - 33
  - 26
  dns.ipv6:
  - 98
  - 99
  - 100
  - 18
  - 26
  dns.ipv6.canonicalize:
  - 216
  - 209
  dns.ipv6.inet_aton:
  - 130
  - 132
  - 134
  - 136
  - 141
  - 142
  - 143
  - 144
  - 145
  - 151
  - 152
  - 155
  - 156
  - 161
  - 162
  - 163
  - 167
  - 168
  - 169
  - 172
  - 173
  - 175
  - 176
  - 178
  - 180
  - 181
  - 183
  - 189
  - 104
  - 117
  - 118
  - 122
  - 123
  - 124
  - 125
  - 127
  dns.ipv6.inet_ntoa:
  - 30
  - 38
  - 40
  - 43
  - 45
  - 49
  - 50
  - 51
  - 52
  - 61
  - 62
  - 63
  - 66
  - 70
  - 73
  - 76
  - 79
  - 80
  - 82
  - 86
  - 89
  - 91
  - 94
  dns.ipv6.is_mapped:
  - 205
  - 198
  dns.message:
  - 18
  dns.message.AnswerForNXDOMAIN:
  - 102
  dns.message.BadEDNS:
  - 62
  dns.message.BadTSIG:
  - 67
  dns.message.ChainTooLong:
  - 98
  dns.message.ChainingResult:
  - 957
  dns.message.CopyMode:
  - 1840
  dns.message.Message:
  - 144
  dns.message.Message.__eq__:
  - 260
  - 262
  - 264
  - 266
  - 268
  - 269
  - 271
  - 272
  - 254
  dns.message.Message.__init__:
  - 149
  - 150
  dns.message.Message.__ne__:
  - 277
  dns.message.Message.__repr__:
  - 207
  dns.message.Message.__str__:
  - 210
  dns.message.Message._compute_opt_reserve:
  - 529
  - 530
  - 538
  - 539
  - 540
  - 542
  - 543
  dns.message.Message._compute_tsig_reserve:
  - 549
  - 555
  - 557
  - 558
  - 559
  dns.message.Message._make_opt:
  - 780
  dns.message.Message._make_tsig:
  - 667
  dns.message.Message._parse_special_rr_header:
  - 946
  - 939
  - 940
  - 947
  dns.message.Message.additional:
  - 199
  dns.message.Message.answer:
  - 181
  dns.message.Message.authority:
  - 190
  dns.message.Message.edns:
  - 837
  dns.message.Message.ednsflags:
  - 851
  - 844
  - 853
  - 854
  dns.message.Message.extended_errors:
  - 924
  - 925
  dns.message.Message.find_rrset:
  - 400
  - 402
  - 403
  - 404
  - 405
  - 407
  - 408
  - 409
  - 410
  - 411
  - 412
  - 413
  - 414
  - 416
  - 417
  - 418
  - 419
  - 422
  - 423
  - 425
  - 427
  - 428
  - 429
  - 360
  dns.message.Message.get_options:
  - 920
  dns.message.Message.get_rrset:
  - 485
  - 445
  dns.message.Message.had_tsig:
  - 776
  dns.message.Message.is_response:
  - 289
  - 312
  - 292
  - 301
  - 303
  - 309
  - 310
  - 280
  - 313
  - 286
  dns.message.Message.keyalgorithm:
  - 752
  - 753
  dns.message.Message.keyname:
  - 745
  dns.message.Message.mac:
  - 760
  - 761
  dns.message.Message.opcode:
  - 905
  - 909
  dns.message.Message.options:
  - 866
  - 867
  dns.message.Message.payload:
  - 858
  - 859
  dns.message.Message.question:
  - 172
  dns.message.Message.rcode:
  - 891
  - 887
  dns.message.Message.section_count:
  - 512
  - 514
  - 515
  - 516
  - 517
  - 519
  - 520
  - 521
  - 522
  - 524
  - 501
  dns.message.Message.section_from_number:
  - 345
  - 334
  dns.message.Message.section_number:
  - 328
  - 329
  - 330
  - 318
  dns.message.Message.set_opcode:
  - 912
  - 917
  dns.message.Message.set_rcode:
  - 898
  - 894
  dns.message.Message.to_text:
  - 218
  - 226
  - 227
  - 228
  - 229
  - 230
  - 231
  - 232
  - 233
  - 234
  - 235
  - 236
  - 237
  - 238
  - 239
  - 240
  - 241
  - 242
  - 243
  - 244
  - 245
  - 251
  dns.message.Message.to_wire:
  - 640
  - 641
  - 642
  - 643
  - 646
  - 651
  - 652
  - 653
  - 655
  - 656
  - 657
  - 659
  - 660
  - 571
  - 605
  - 607
  - 608
  - 612
  - 614
  - 616
  - 617
  - 618
  - 619
  - 620
  - 622
  - 623
  - 624
  - 625
  - 626
  - 627
  - 628
  - 629
  - 631
  - 632
  - 636
  - 637
  - 638
  - 639
  dns.message.Message.tsig_error:
  - 768
  - 769
  dns.message.Message.use_edns:
  - 814
  - 816
  - 818
  - 791
  - 825
  - 827
  - 828
  - 831
  dns.message.Message.use_tsig:
  - 681
  - 715
  - 718
  - 719
  - 721
  - 722
  - 723
  - 724
  - 726
  - 727
  - 729
  - 731
  dns.message.Message.want_dnssec:
  - 873
  - 883
  - 884
  - 881
  dns.message.MessageSection:
  - 110
  dns.message.NoPreviousName:
  - 106
  dns.message.NotQueryResponse:
  - 94
  dns.message.QueryMessage.canonical_name:
  - 1066
  - 1079
  dns.message.QueryMessage.resolve_chaining:
  - 1056
  - 1025
  - 1028
  - 1029
  - 1030
  - 1060
  - 1063
  - 1005
  - 1052
  - 1007
  - 1055
  - 1041
  - 1043
  - 1045
  - 1017
  - 1020
  - 990
  - 1023
  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:
  - 1409
  dns.message._TextReader.__init__:
  - 1431
  dns.message._TextReader._header_line:
  - 1446
  - 1448
  - 1450
  - 1451
  - 1452
  - 1454
  - 1455
  - 1456
  - 1458
  - 1459
  - 1460
  - 1462
  - 1463
  - 1466
  - 1467
  - 1468
  - 1470
  - 1471
  - 1472
  - 1473
  - 1475
  - 1476
  - 1477
  - 1478
  - 1479
  - 1480
  - 1481
  - 1484
  dns.message._TextReader._make_message:
  - 1600
  - 1602
  - 1603
  - 1604
  - 1605
  - 1606
  - 1599
  dns.message._TextReader._question_line:
  - 1504
  - 1505
  - 1506
  - 1513
  - 1514
  - 1517
  - 1487
  - 1520
  - 1491
  - 1492
  - 1493
  - 1497
  - 1499
  - 1500
  dns.message._TextReader._rr_line:
  - 1536
  - 1538
  - 1539
  - 1543
  - 1544
  - 1545
  - 1553
  - 1554
  - 1555
  - 1562
  - 1563
  - 1566
  - 1567
  - 1569
  - 1571
  - 1572
  - 1573
  - 1581
  - 1585
  - 1595
  - 1596
  - 1523
  - 1530
  - 1531
  - 1532
  dns.message._TextReader.read:
  - 1632
  - 1635
  - 1637
  - 1640
  - 1611
  - 1647
  - 1617
  - 1618
  - 1649
  - 1620
  - 1621
  - 1622
  - 1650
  - 1651
  - 1625
  - 1652
  - 1630
  dns.message._WireReader:
  - 1102
  dns.message._WireReader.__init__:
  - 1129
  dns.message._WireReader._add_error:
  - 1157
  dns.message._WireReader._get_question:
  - 1152
  - 1141
  - 1146
  - 1147
  - 1148
  - 1149
  dns.message._WireReader._get_section:
  - 1160
  - 1169
  - 1171
  - 1172
  - 1173
  - 1176
  - 1177
  - 1183
  - 1187
  - 1192
  - 1193
  - 1198
  - 1199
  - 1205
  - 1206
  - 1208
  - 1209
  - 1210
  - 1211
  - 1212
  - 1214
  - 1215
  - 1216
  - 1217
  - 1218
  - 1219
  - 1222
  - 1224
  - 1226
  - 1231
  - 1237
  - 1239
  - 1249
  - 1250
  - 1252
  - 1254
  - 1255
  - 1256
  dns.message._WireReader.read:
  - 1281
  - 1282
  - 1283
  - 1284
  - 1286
  - 1287
  - 1289
  - 1290
  - 1261
  - 1264
  - 1266
  - 1269
  - 1270
  - 1271
  - 1273
  - 1274
  - 1278
  - 1279
  dns.message._message_factory_from_opcode:
  - 1092
  - 1094
  - 1095
  dns.message.from_file:
  - 1730
  - 1731
  - 1733
  - 1735
  - 1736
  - 1709
  dns.message.from_text:
  - 1664
  - 1698
  - 1701
  dns.message.from_wire:
  - 1377
  - 1400
  - 1388
  - 1390
  - 1368
  - 1402
  - 1310
  dns.message.make_query:
  - 1825
  - 1827
  - 1829
  - 1833
  - 1834
  - 1835
  - 1810
  - 1811
  - 1812
  - 1813
  - 1814
  - 1815
  - 1816
  - 1755
  - 1821
  - 1823
  dns.message.make_response:
  - 1921
  - 1922
  - 1925
  - 1858
  - 1897
  - 1899
  - 1900
  - 1901
  - 1903
  - 1905
  - 1906
  - 1908
  - 1909
  - 1910
  - 1911
  - 1912
  - 1913
  - 1914
  - 1915
  - 1918
  - 1919
  dns.name:
  - 898
  - 1124
  - 1125
  - 38
  - 1127
  - 1128
  - 1129
  - 18
  - 311
  - 312
  - 314
  - 315
  - 316
  - 317
  - 895
  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:
  - 365
  dns.name.Name.__add__:
  - 749
  dns.name.Name.__copy__:
  - 382
  dns.name.Name.__deepcopy__:
  - 385
  dns.name.Name.__eq__:
  - 536
  - 535
  dns.name.Name.__ge__:
  - 560
  - 559
  dns.name.Name.__gt__:
  - 565
  - 566
  dns.name.Name.__hash__:
  - 418
  - 419
  - 412
  dns.name.Name.__init__:
  - 377
  - 378
  - 379
  - 375
  dns.name.Name.__le__:
  - 553
  - 554
  dns.name.Name.__len__:
  - 738
  - 743
  dns.name.Name.__lt__:
  - 547
  - 548
  dns.name.Name.__ne__:
  - 541
  - 542
  dns.name.Name.__repr__:
  - 571
  dns.name.Name.__setstate__:
  - 392
  - 393
  dns.name.Name.__str__:
  - 574
  dns.name.Name.__sub__:
  - 752
  dns.name.Name.canonicalize:
  - 528
  - 532
  dns.name.Name.choose_relativity:
  - 834
  - 835
  - 836
  - 838
  - 824
  dns.name.Name.concatenate:
  - 775
  - 783
  - 785
  - 786
  - 787
  dns.name.Name.derelativize:
  - 816
  - 817
  - 806
  dns.name.Name.fullcompare:
  - 481
  - 484
  - 486
  - 455
  - 424
  - 457
  - 458
  - 456
  - 491
  - 493
  - 462
  - 463
  - 465
  - 477
  - 478
  - 479
  dns.name.Name.is_absolute:
  - 401
  - 396
  dns.name.Name.is_subdomain:
  - 509
  - 500
  - 508
  dns.name.Name.is_superdomain:
  - 523
  - 514
  - 522
  dns.name.Name.is_wild:
  - 409
  - 404
  dns.name.Name.parent:
  - 843
  - 853
  - 855
  dns.name.Name.predecessor:
  - 858
  - 871
  dns.name.Name.relativize:
  - 800
  - 801
  - 790
  dns.name.Name.split:
  - 768
  - 770
  - 772
  - 755
  - 765
  - 766
  dns.name.Name.successor:
  - 891
  - 876
  dns.name.Name.to_digestable:
  - 646
  - 630
  dns.name.Name.to_text:
  - 577
  - 586
  - 588
  - 590
  - 594
  dns.name.Name.to_unicode:
  - 617
  - 619
  - 621
  - 625
  - 627
  - 600
  dns.name.Name.to_wire:
  - 657
  - 683
  - 684
  - 685
  - 686
  - 687
  - 688
  - 691
  - 692
  - 694
  - 695
  - 696
  - 697
  - 700
  - 703
  - 704
  - 706
  - 707
  - 711
  - 712
  - 714
  - 715
  - 718
  - 720
  - 721
  - 724
  - 725
  - 726
  - 728
  - 729
  - 730
  - 731
  - 732
  - 734
  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:
  - 1186
  - 1187
  - 1188
  - 1189
  - 1190
  - 1191
  - 1169
  - 1170
  - 1172
  - 1173
  - 1176
  - 1179
  - 1181
  dns.name._absolute_successor:
  - 1216
  - 1248
  - 1218
  - 1251
  - 1223
  - 1227
  - 1229
  - 1202
  - 1205
  - 1238
  - 1211
  - 1244
  - 1245
  dns.name._escapify:
  - 166
  - 167
  - 169
  - 170
  - 148
  - 151
  - 155
  - 156
  - 157
  - 158
  - 159
  dns.name._handle_relativity_and_call:
  - 1266
  - 1268
  - 1269
  - 1270
  - 1271
  - 1273
  - 1274
  - 1275
  dns.name._maybe_convert_to_binary:
  - 352
  - 360
  - 357
  dns.name._pad_to_max_label:
  - 1153
  - 1155
  - 1156
  - 1159
  dns.name._pad_to_max_name:
  - 1137
  - 1140
  - 1142
  - 1143
  - 1147
  - 1148
  - 1149
  dns.name._validate_labels:
  - 322
  - 333
  - 337
  - 338
  - 340
  - 342
  - 345
  - 347
  dns.name._wire_length:
  - 1133
  dns.name._wire_length.<lambda1>:
  - 1133
  dns.name.from_text:
  - 1024
  - 1025
  - 1026
  - 1027
  - 1028
  - 1034
  - 1037
  - 1039
  - 1041
  - 1042
  - 1043
  - 1045
  - 1047
  - 1053
  - 1055
  - 1056
  - 1058
  - 1059
  - 1060
  - 1061
  - 986
  - 1000
  - 1001
  - 1003
  - 1012
  - 1018
  - 1020
  - 1021
  - 1022
  - 1023
  dns.name.from_unicode:
  - 904
  - 926
  - 928
  - 930
  - 931
  - 932
  - 933
  - 934
  - 935
  - 936
  - 937
  - 943
  - 946
  - 948
  - 950
  - 951
  - 952
  - 954
  - 956
  - 962
  - 964
  - 965
  - 967
  - 969
  - 970
  - 971
  dns.name.from_wire:
  - 1098
  - 1116
  - 1117
  dns.name.from_wire_parser:
  - 1089
  - 1092
  - 1093
  - 1094
  - 1065
  - 1079
  - 1080
  - 1082
  - 1083
  - 1084
  - 1085
  - 1086
  dns.name.is_all_ascii:
  - 976
  - 975
  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__:
  - 56
  dns.nameserver.AddressAndPortNameserver.__str__:
  - 67
  dns.nameserver.Do53Nameserver.__init__:
  - 79
  dns.nameserver.Do53Nameserver.async_query:
  - 145
  - 132
  - 133
  dns.nameserver.Do53Nameserver.query:
  - 106
  - 94
  - 95
  dns.nameserver.DoHNameserver.__init__:
  - 171
  dns.nameserver.DoHNameserver.answer_port:
  - 192
  - 191
  dns.nameserver.DoHNameserver.async_query:
  - 231
  dns.nameserver.DoHNameserver.query:
  - 206
  dns.nameserver.DoQNameserver.__init__:
  - 313
  dns.nameserver.DoQNameserver.async_query:
  - 352
  dns.nameserver.DoQNameserver.query:
  - 330
  dns.nameserver.DoTNameserver.__init__:
  - 254
  dns.nameserver.DoTNameserver.async_query:
  - 293
  dns.nameserver.DoTNameserver.query:
  - 271
  dns.node:
  - 18
  dns.node.ImmutableNode.__init__:
  - 320
  - 321
  - 319
  dns.node.ImmutableNode.find_rdataset:
  - 331
  - 333
  dns.node.ImmutableNode.get_rdataset:
  - 344
  - 342
  dns.node.Node:
  - 72
  dns.node.Node.__eq__:
  - 120
  - 121
  - 123
  - 124
  dns.node.Node.__iter__:
  - 135
  dns.node.Node.__len__:
  - 132
  dns.node.Node.__ne__:
  - 129
  dns.node.Node.__repr__:
  - 114
  dns.node.Node._append_rdataset:
  - 163
  - 138
  - 147
  - 148
  - 149
  - 153
  - 155
  - 159
  dns.node.Node.classify:
  - 306
  - 307
  - 292
  - 308
  dns.node.Node.delete_rdataset:
  - 249
  - 261
  - 262
  - 263
  dns.node.Node.find_rdataset:
  - 197
  - 198
  - 200
  - 202
  - 203
  - 172
  dns.node.Node.get_rdataset:
  - 213
  - 238
  dns.node.Node.replace_rdataset:
  - 289
  - 266
  - 280
  - 282
  - 285
  - 286
  dns.node.Node.to_text:
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 94
  dns.node.NodeKind:
  - 49
  dns.node.NodeKind.classify:
  - 59
  - 61
  dns.node.NodeKind.classify_rdataset:
  - 68
  dns.opcode:
  - 18
  dns.opcode.UnknownOpcode:
  - 46
  dns.opcode.from_flags:
  - 70
  - 63
  dns.opcode.from_text:
  - 50
  - 59
  dns.opcode.is_update:
  - 106
  - 99
  dns.opcode.to_flags:
  - 74
  dns.opcode.to_text:
  - 86
  - 95
  dns.query:
  - 18
  - 69
  - 70
  dns.query.BadResponse:
  - 192
  dns.query.HTTPVersion:
  - 429
  dns.query.NoDOH:
  - 196
  dns.query.NoDOQ:
  - 201
  dns.query.UDPMode:
  - 1532
  dns.query.UnexpectedSource:
  - 188
  dns.query._HTTPTransport.__init__:
  - 145
  - 146
  - 147
  - 141
  dns.query._NetworkBackend.__init__:
  - 79
  dns.query._NetworkBackend.connect_tcp:
  - 89
  - 90
  - 91
  - 92
  - 93
  - 95
  - 97
  - 98
  - 99
  - 102
  - 103
  - 104
  - 105
  - 106
  - 108
  - 114
  - 115
  - 116
  - 118
  - 121
  dns.query._addresses_equal:
  - 258
  - 259
  dns.query._check_status:
  - 661
  - 662
  - 664
  - 665
  - 667
  - 669
  - 671
  dns.query._compute_times:
  - 210
  - 211
  dns.query._connect:
  - 1195
  - 1196
  - 1198
  - 1199
  - 1200
  - 1201
  dns.query._destination_and_source:
  - 320
  - 289
  - 321
  - 292
  - 295
  - 296
  - 297
  - 299
  - 307
  - 312
  - 318
  - 319
  dns.query._expiration_for_this_attempt:
  - 64
  - 66
  dns.query._find_header:
  - 652
  - 654
  - 655
  dns.query._http3:
  - 704
  - 705
  - 707
  - 733
  - 713
  - 716
  - 719
  - 720
  - 721
  - 722
  - 691
  - 723
  - 724
  - 694
  - 725
  - 697
  - 732
  - 701
  dns.query._inbound_xfr:
  - 1552
  - 1555
  - 1556
  - 1557
  - 1558
  - 1559
  - 1561
  - 1562
  - 1563
  - 1568
  - 1569
  - 1573
  - 1574
  - 1576
  - 1577
  - 1578
  - 1579
  - 1589
  - 1590
  - 1592
  dns.query._make_dot_ssl_context:
  - 1323
  dns.query._make_socket:
  - 408
  - 409
  - 411
  dns.query._matches_destination:
  - 274
  - 268
  - 270
  - 271
  dns.query._maybe_get_resolver:
  - 424
  - 420
  dns.query._net_read:
  - 1089
  - 1090
  - 1092
  - 1095
  - 1097
  - 1081
  dns.query._net_write:
  - 1102
  - 1107
  - 1110
  - 1112
  - 1114
  dns.query._remaining:
  - 57
  - 58
  - 55
  dns.query._tls_handshake:
  - 1281
  - 1283
  - 1278
  dns.query._udp_recv:
  - 745
  - 739
  - 747
  dns.query._udp_send:
  - 751
  - 757
  - 758
  - 760
  - 762
  dns.query._wait_for:
  - 225
  - 227
  - 229
  - 231
  - 233
  - 234
  - 235
  - 238
  - 239
  - 241
  dns.query._wait_for_readable:
  - 246
  dns.query._wait_for_writable:
  - 250
  dns.query.default_socket_factory:
  - 177
  dns.query.https:
  - 515
  - 645
  - 646
  - 520
  - 521
  - 523
  - 527
  - 529
  - 530
  - 532
  - 535
  - 538
  - 541
  - 542
  - 544
  - 545
  - 546
  - 550
  - 565
  - 567
  - 570
  - 578
  - 585
  - 586
  - 588
  - 462
  - 599
  - 606
  - 607
  - 613
  - 621
  - 622
  - 623
  - 633
  - 638
  dns.query.inbound_xfr:
  - 1761
  - 1762
  - 1764
  - 1766
  - 1770
  - 1771
  - 1772
  - 1773
  - 1775
  - 1781
  - 1784
  - 1785
  - 1786
  - 1725
  dns.query.make_socket:
  - 354
  - 330
  - 347
  - 349
  - 350
  - 351
  dns.query.make_ssl_context:
  - 1312
  - 1314
  - 1315
  - 1291
  - 1306
  - 1307
  dns.query.make_ssl_socket:
  - 389
  - 390
  - 391
  - 393
  - 365
  dns.query.quic:
  - 1509
  - 1510
  - 1448
  - 1513
  - 1514
  - 1515
  - 1516
  - 1517
  - 1518
  - 1489
  - 1492
  - 1525
  - 1526
  - 1496
  - 1499
  - 1500
  - 1503
  dns.query.receive_tcp:
  - 1184
  - 1155
  - 1180
  - 1181
  - 1182
  - 1183
  dns.query.receive_udp:
  - 865
  - 807
  - 879
  - 882
  - 888
  - 858
  - 859
  - 892
  - 894
  - 863
  dns.query.send_tcp:
  - 1122
  - 1135
  - 1136
  - 1141
  - 1142
  - 1143
  - 1144
  dns.query.send_udp:
  - 771
  - 787
  - 788
  - 789
  - 790
  dns.query.tcp:
  - 1216
  - 1249
  - 1248
  - 1251
  - 1250
  - 1253
  - 1257
  - 1259
  - 1261
  - 1262
  - 1263
  - 1267
  dns.query.tls:
  - 1409
  - 1410
  - 1412
  - 1387
  - 1419
  - 1420
  - 1421
  - 1391
  - 1422
  - 1426
  - 1340
  - 1403
  - 1404
  - 1405
  dns.query.udp:
  - 960
  - 961
  - 962
  - 965
  - 967
  - 968
  - 914
  - 984
  - 956
  - 957
  dns.query.udp_with_fallback:
  - 1050
  - 1066
  - 1006
  dns.query.xfr:
  - 1696
  - 1697
  - 1698
  - 1699
  - 1700
  - 1704
  - 1705
  - 1706
  - 1613
  - 1709
  - 1710
  - 1711
  - 1688
  - 1689
  - 1690
  - 1691
  - 1692
  - 1693
  dns.query.xfr.DummyTransactionManager.writer:
  - 1686
  dns.quic:
  - 8
  - 39
  dns.quic._asyncio.AsyncioQuicConnection.__init__:
  - 96
  - 92
  - 94
  - 95
  dns.quic._asyncio.AsyncioQuicConnection._handle_events:
  - 159
  - 160
  - 162
  - 163
  - 165
  - 166
  - 167
  - 168
  - 169
  - 170
  - 172
  - 174
  - 175
  - 176
  - 177
  - 178
  - 179
  - 183
  - 184
  - 185
  - 186
  - 187
  - 188
  - 190
  - 191
  - 192
  - 193
  - 194
  - 195
  - 198
  - 201
  dns.quic._asyncio.AsyncioQuicConnection._receiver:
  - 103
  - 104
  - 107
  - 110
  - 113
  - 116
  - 118
  - 121
  - 126
  - 127
  dns.quic._asyncio.AsyncioQuicConnection._sender:
  - 141
  - 143
  - 144
  - 147
  - 148
  - 150
  - 153
  - 154
  dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer:
  - 136
  - 137
  dns.quic._asyncio.AsyncioQuicConnection._wakeup:
  - 132
  dns.quic._asyncio.AsyncioQuicConnection.close:
  - 226
  - 227
  - 228
  - 230
  - 232
  - 233
  - 235
  - 236
  - 240
  - 241
  - 244
  - 245
  dns.quic._asyncio.AsyncioQuicConnection.make_stream:
  - 218
  - 220
  - 221
  - 215
  dns.quic._asyncio.AsyncioQuicConnection.run:
  - 208
  - 210
  - 211
  dns.quic._asyncio.AsyncioQuicConnection.write:
  - 204
  - 205
  dns.quic._asyncio.AsyncioQuicManager.__aexit__:
  - 272
  - 270
  - 271
  dns.quic._asyncio.AsyncioQuicManager.__init__:
  - 252
  dns.quic._asyncio.AsyncioQuicManager.connect:
  - 257
  - 260
  - 261
  dns.quic._asyncio.AsyncioQuicStream.__aexit__:
  - 84
  - 86
  dns.quic._asyncio.AsyncioQuicStream.__init__:
  - 26
  - 27
  dns.quic._asyncio.AsyncioQuicStream._add_input:
  - 73
  - 71
  dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up:
  - 31
  dns.quic._asyncio.AsyncioQuicStream.close:
  - 76
  dns.quic._asyncio.AsyncioQuicStream.receive:
  - 64
  - 56
  - 57
  - 58
  - 59
  - 61
  - 62
  - 63
  dns.quic._asyncio.AsyncioQuicStream.send:
  - 67
  - 68
  dns.quic._asyncio.AsyncioQuicStream.wait_for:
  - 40
  - 35
  - 36
  dns.quic._asyncio.AsyncioQuicStream.wait_for_end:
  - 48
  - 51
  - 47
  dns.quic._asyncio_manager_factory:
  - 30
  dns.quic._common.BaseQuicConnection.__init__:
  - 168
  - 169
  - 172
  - 173
  - 174
  - 175
  - 177
  - 181
  dns.quic._common.BaseQuicConnection._get_timer_values:
  - 201
  - 202
  - 203
  - 205
  - 206
  - 210
  dns.quic._common.BaseQuicConnection._handle_timer:
  - 216
  - 214
  - 215
  dns.quic._common.BaseQuicConnection.send_data:
  - 198
  dns.quic._common.BaseQuicConnection.send_headers:
  - 194
  dns.quic._common.BaseQuicManager.__init__:
  - 233
  - 235
  - 238
  - 242
  - 247
  - 248
  - 251
  dns.quic._common.BaseQuicManager._connect:
  - 293
  - 263
  - 264
  - 297
  - 267
  - 269
  - 302
  - 271
  - 303
  - 304
  - 278
  - 283
  - 285
  - 287
  dns.quic._common.BaseQuicManager.save_session_ticket:
  - 323
  - 324
  - 325
  - 326
  dns.quic._common.BaseQuicManager.save_token:
  - 336
  - 337
  - 334
  - 335
  dns.quic._common.BaseQuicStream.__init__:
  - 69
  dns.quic._common.BaseQuicStream._close:
  - 147
  - 148
  dns.quic._common.BaseQuicStream._common_add_input:
  - 138
  - 141
  dns.quic._common.BaseQuicStream._encapsulate:
  - 132
  - 134
  - 135
  dns.quic._common.BaseQuicStream._expiration_from_timeout:
  - 84
  - 85
  dns.quic._common.BaseQuicStream._timeout_from_expiration:
  - 91
  - 92
  dns.quic._common.BaseQuicStream.send_h3:
  - 128
  - 129
  - 104
  - 106
  - 107
  - 108
  - 112
  - 115
  - 116
  - 120
  - 121
  - 127
  dns.quic._common.Buffer.get:
  - 53
  dns.quic._common.Buffer.get_all:
  - 59
  dns.quic._common.Buffer.have:
  - 43
  - 45
  dns.quic._common.Buffer.put:
  - 36
  - 39
  dns.quic._sync.SyncQuicConnection.__init__:
  - 96
  - 97
  - 99
  - 100
  - 103
  - 105
  - 106
  - 107
  - 108
  - 109
  - 111
  - 95
  dns.quic._sync.SyncQuicConnection._drain_wakeup:
  - 127
  dns.quic._sync.SyncQuicConnection._handle_events:
  - 168
  - 169
  - 171
  - 172
  - 174
  - 175
  - 176
  - 178
  - 179
  - 180
  - 182
  - 184
  - 185
  - 186
  - 188
  - 189
  - 190
  - 193
  - 194
  - 195
  - 196
  - 197
  - 198
  - 201
  - 203
  - 204
  - 205
  dns.quic._sync.SyncQuicConnection._read:
  - 122
  - 118
  dns.quic._sync.SyncQuicConnection._worker:
  - 161
  - 163
  - 133
  - 134
  - 135
  - 139
  - 140
  - 141
  - 142
  - 144
  - 145
  - 147
  - 148
  - 150
  dns.quic._sync.SyncQuicConnection.close:
  - 247
  - 249
  - 250
  - 252
  - 253
  - 254
  - 255
  dns.quic._sync.SyncQuicConnection.close_stream:
  - 243
  dns.quic._sync.SyncQuicConnection.make_stream:
  - 234
  - 236
  - 237
  - 231
  dns.quic._sync.SyncQuicConnection.run:
  - 225
  - 227
  - 228
  dns.quic._sync.SyncQuicConnection.send_data:
  - 220
  - 221
  - 222
  dns.quic._sync.SyncQuicConnection.send_headers:
  - 216
  - 214
  - 215
  dns.quic._sync.SyncQuicConnection.write:
  - 209
  - 210
  dns.quic._sync.SyncQuicManager.__exit__:
  - 300
  - 301
  - 302
  dns.quic._sync.SyncQuicManager.__init__:
  - 262
  - 263
  dns.quic._sync.SyncQuicManager.closed:
  - 284
  dns.quic._sync.SyncQuicManager.connect:
  - 275
  - 278
  - 279
  dns.quic._sync.SyncQuicManager.save_session_ticket:
  - 288
  dns.quic._sync.SyncQuicManager.save_token:
  - 292
  dns.quic._sync.SyncQuicStream.__exit__:
  - 89
  - 87
  dns.quic._sync.SyncQuicStream.__init__:
  - 32
  - 30
  - 31
  dns.quic._sync.SyncQuicStream._add_input:
  - 75
  - 77
  dns.quic._sync.SyncQuicStream.close:
  - 81
  dns.quic._sync.SyncQuicStream.receive:
  - 65
  - 66
  - 68
  - 57
  - 58
  - 59
  - 61
  - 63
  dns.quic._sync.SyncQuicStream.send:
  - 72
  - 71
  dns.quic._sync.SyncQuicStream.wait_for:
  - 42
  - 36
  - 38
  dns.quic._sync.SyncQuicStream.wait_for_end:
  - 48
  - 50
  - 53
  dns.quic._trio.TrioQuicConnection.__init__:
  - 88
  - 89
  - 90
  - 87
  dns.quic._trio.TrioQuicConnection._handle_events:
  - 134
  - 135
  - 137
  - 138
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 147
  - 149
  - 150
  - 151
  - 152
  - 153
  - 154
  - 158
  - 159
  - 160
  - 161
  - 162
  - 163
  - 165
  - 166
  - 167
  - 168
  - 169
  - 171
  - 174
  dns.quic._trio.TrioQuicConnection._worker:
  - 96
  - 97
  - 98
  - 128
  - 100
  - 129
  - 102
  - 103
  - 111
  - 112
  - 114
  - 115
  - 117
  - 118
  - 123
  - 124
  - 125
  dns.quic._trio.TrioQuicConnection.close:
  - 205
  - 206
  - 207
  - 209
  - 211
  - 212
  - 213
  dns.quic._trio.TrioQuicConnection.make_stream:
  - 193
  - 195
  - 196
  - 198
  - 199
  - 190
  - 191
  dns.quic._trio.TrioQuicConnection.run:
  - 185
  - 186
  - 187
  - 183
  dns.quic._trio.TrioQuicConnection.write:
  - 177
  - 179
  - 180
  dns.quic._trio.TrioQuicManager.__aexit__:
  - 244
  - 245
  - 246
  dns.quic._trio.TrioQuicManager.__init__:
  - 225
  dns.quic._trio.TrioQuicManager.connect:
  - 234
  - 235
  - 231
  dns.quic._trio.TrioQuicStream.__aexit__:
  - 81
  - 79
  dns.quic._trio.TrioQuicStream.__init__:
  - 26
  - 27
  dns.quic._trio.TrioQuicStream._add_input:
  - 66
  - 68
  dns.quic._trio.TrioQuicStream.close:
  - 71
  dns.quic._trio.TrioQuicStream.receive:
  - 46
  - 47
  - 49
  - 51
  - 52
  - 53
  - 55
  - 56
  - 57
  - 58
  dns.quic._trio.TrioQuicStream.send:
  - 62
  - 63
  dns.quic._trio.TrioQuicStream.wait_for:
  - 35
  - 31
  dns.quic._trio.TrioQuicStream.wait_for_end:
  - 40
  - 43
  dns.quic._trio_context_factory:
  - 48
  dns.quic._trio_manager_factory:
  - 51
  dns.quic.factories_for_backend:
  - 56
  - 57
  - 58
  dns.quic.null_factory:
  - 25
  dns.rcode:
  - 18
  dns.rcode.UnknownRcode:
  - 78
  dns.rcode.from_flags:
  - 107
  - 95
  dns.rcode.from_text:
  - 82
  - 91
  dns.rcode.to_flags:
  - 120
  - 111
  dns.rcode.to_text:
  - 128
  - 137
  - 139
  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:
  - 41
  dns.rdataset.ImmutableRdataset:
  - 358
  dns.rdataset.ImmutableRdataset.__copy__:
  - 408
  dns.rdataset.ImmutableRdataset.__init__:
  - 368
  - 363
  - 365
  dns.rdataset.ImmutableRdataset.copy:
  - 411
  dns.rdataset.ImmutableRdataset.difference:
  - 420
  dns.rdataset.ImmutableRdataset.intersection:
  - 417
  dns.rdataset.ImmutableRdataset.symmetric_difference:
  - 423
  dns.rdataset.ImmutableRdataset.union:
  - 414
  dns.rdataset.IncompatibleTypes:
  - 46
  dns.rdataset.Rdataset:
  - 50
  dns.rdataset.Rdataset.__eq__:
  - 185
  - 187
  - 193
  dns.rdataset.Rdataset.__init__:
  - 72
  - 61
  dns.rdataset.Rdataset.__ne__:
  - 196
  dns.rdataset.Rdataset.__repr__:
  - 166
  - 169
  - 172
  - 174
  - 177
  dns.rdataset.Rdataset.__str__:
  - 182
  dns.rdataset.Rdataset._clone:
  - 79
  dns.rdataset.Rdataset._rdata_repr:
  - 163
  dns.rdataset.Rdataset._rdata_repr.maybe_truncate:
  - 159
  dns.rdataset.Rdataset.add:
  - 128
  - 129
  - 130
  - 131
  - 133
  - 103
  - 135
  - 136
  - 137
  - 125
  - 127
  dns.rdataset.Rdataset.intersection_update:
  - 144
  - 145
  dns.rdataset.Rdataset.match:
  - 337
  - 334
  dns.rdataset.Rdataset.processing_order:
  - 350
  - 342
  - 353
  dns.rdataset.Rdataset.to_text:
  - 257
  - 258
  - 260
  - 262
  - 263
  - 232
  - 233
  - 234
  - 264
  - 270
  - 239
  - 207
  - 240
  - 244
  - 250
  - 251
  - 252
  - 255
  dns.rdataset.Rdataset.to_wire:
  - 321
  - 322
  - 323
  - 324
  - 325
  - 326
  - 305
  - 310
  - 311
  - 312
  - 281
  - 316
  - 317
  - 318
  dns.rdataset.Rdataset.union_update:
  - 140
  - 141
  dns.rdataset.Rdataset.update:
  - 154
  - 155
  - 148
  dns.rdataset.Rdataset.update_ttl:
  - 96
  - 98
  - 95
  - 87
  dns.rdataset.from_rdata:
  - 507
  - 501
  dns.rdataset.from_rdata_list:
  - 482
  - 488
  - 491
  - 492
  - 493
  - 494
  - 495
  dns.rdataset.from_text:
  - 472
  - 478
  dns.rdataset.from_text_list:
  - 454
  - 455
  - 456
  - 457
  - 458
  - 459
  - 462
  - 436
  dns.rdatatype:
  - 18
  dns.rdatatype.RdataType:
  - 25
  dns.rdatatype.RdataType._extra_from_text:
  - 129
  - 132
  - 127
  dns.rdatatype.RdataType._extra_to_text:
  - 136
  - 137
  - 138
  - 139
  dns.rdatatype.UnknownRdatatype:
  - 162
  dns.rdatatype.from_text:
  - 180
  - 166
  dns.rdatatype.is_metatype:
  - 198
  dns.rdatatype.is_singleton:
  - 225
  - 212
  dns.rdatatype.register_type:
  - 234
  - 246
  - 247
  dns.rdatatype.to_text:
  - 184
  - 194
  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.KEY.KEY:
  - 79
  dns.rdtypes.ANY.KEY.KEY.from_text:
  - 97
  - 99
  - 101
  - 107
  - 111
  - 112
  - 113
  - 85
  - 117
  - 87
  - 89
  - 92
  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.RRSIG:
  - 33
  dns.rdtypes.ANY.RT.RT:
  - 24
  dns.rdtypes.ANY.SIG.SIG:
  - 33
  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.rrsigbase.BadSigTime:
  - 31
  dns.rdtypes.rrsigbase.RRSIGBase:
  - 54
  dns.rdtypes.rrsigbase.RRSIGBase.__init__:
  - 82
  - 83
  - 84
  - 85
  - 86
  - 87
  - 88
  - 89
  - 90
  - 91
  dns.rdtypes.rrsigbase.RRSIGBase._to_wire:
  - 136
  - 146
  - 147
  - 148
  dns.rdtypes.rrsigbase.RRSIGBase.from_text:
  - 111
  - 112
  - 113
  - 114
  - 115
  - 116
  - 117
  - 118
  - 119
  - 120
  - 121
  dns.rdtypes.rrsigbase.RRSIGBase.from_wire_parser:
  - 152
  - 153
  - 154
  - 155
  dns.rdtypes.rrsigbase.RRSIGBase.to_text:
  - 97
  - 98
  - 99
  - 100
  - 101
  dns.rdtypes.rrsigbase.posixtime_to_sigtime:
  - 49
  dns.rdtypes.rrsigbase.sigtime_to_posixtime:
  - 35
  - 36
  - 37
  - 39
  - 40
  - 41
  - 42
  - 43
  - 44
  - 45
  dns.rdtypes.svcbbase.ALPNParam.__init__:
  - 241
  - 242
  dns.rdtypes.svcbbase.ALPNParam.__init__.<lambda1>:
  - 242
  dns.rdtypes.svcbbase.ALPNParam.from_value:
  - 247
  dns.rdtypes.svcbbase.ALPNParam.from_wire_parser:
  - 256
  - 257
  - 258
  - 259
  dns.rdtypes.svcbbase.ALPNParam.to_text:
  - 250
  - 251
  dns.rdtypes.svcbbase.ALPNParam.to_wire:
  - 264
  - 262
  - 263
  dns.rdtypes.svcbbase.ECHParam.__init__:
  - 378
  dns.rdtypes.svcbbase.ECHParam.from_value:
  - 384
  - 385
  - 382
  dns.rdtypes.svcbbase.ECHParam.from_wire_parser:
  - 393
  - 394
  dns.rdtypes.svcbbase.ECHParam.to_text:
  - 388
  dns.rdtypes.svcbbase.ECHParam.to_wire:
  - 397
  dns.rdtypes.svcbbase.GenericParam:
  - 168
  dns.rdtypes.svcbbase.GenericParam.__init__:
  - 171
  dns.rdtypes.svcbbase.GenericParam.from_value:
  - 179
  - 182
  dns.rdtypes.svcbbase.GenericParam.from_wire_parser:
  - 193
  - 189
  - 190
  dns.rdtypes.svcbbase.GenericParam.to_text:
  - 185
  dns.rdtypes.svcbbase.GenericParam.to_wire:
  - 196
  dns.rdtypes.svcbbase.IPv4HintParam.__init__:
  - 322
  dns.rdtypes.svcbbase.IPv4HintParam.from_value:
  - 328
  - 329
  dns.rdtypes.svcbbase.IPv4HintParam.from_wire_parser:
  - 337
  - 338
  - 339
  - 340
  dns.rdtypes.svcbbase.IPv4HintParam.to_text:
  - 332
  dns.rdtypes.svcbbase.IPv4HintParam.to_wire:
  - 344
  - 343
  dns.rdtypes.svcbbase.IPv6HintParam.__init__:
  - 350
  dns.rdtypes.svcbbase.IPv6HintParam.from_value:
  - 356
  - 357
  dns.rdtypes.svcbbase.IPv6HintParam.from_wire_parser:
  - 368
  - 365
  - 366
  - 367
  dns.rdtypes.svcbbase.IPv6HintParam.to_text:
  - 360
  dns.rdtypes.svcbbase.IPv6HintParam.to_wire:
  - 371
  - 372
  dns.rdtypes.svcbbase.MandatoryParam.__init__:
  - 203
  - 205
  - 206
  - 209
  - 211
  dns.rdtypes.svcbbase.MandatoryParam.from_value:
  - 216
  - 215
  dns.rdtypes.svcbbase.MandatoryParam.from_wire_parser:
  - 225
  - 226
  - 227
  - 230
  - 231
  dns.rdtypes.svcbbase.MandatoryParam.to_text:
  - 219
  dns.rdtypes.svcbbase.MandatoryParam.to_wire:
  - 234
  - 235
  dns.rdtypes.svcbbase.NoDefaultALPNParam.from_value:
  - 279
  dns.rdtypes.svcbbase.NoDefaultALPNParam.from_wire_parser:
  - 289
  dns.rdtypes.svcbbase.OHTTPParam.from_value:
  - 412
  dns.rdtypes.svcbbase.OHTTPParam.from_wire_parser:
  - 422
  dns.rdtypes.svcbbase.Param:
  - 159
  dns.rdtypes.svcbbase.ParamKey:
  - 28
  dns.rdtypes.svcbbase.PortParam.__init__:
  - 300
  dns.rdtypes.svcbbase.PortParam.from_value:
  - 304
  - 305
  dns.rdtypes.svcbbase.PortParam.from_wire_parser:
  - 312
  - 313
  dns.rdtypes.svcbbase.PortParam.to_wire:
  - 316
  dns.rdtypes.svcbbase.SVCBBase:
  - 462
  dns.rdtypes.svcbbase.SVCBBase.__init__:
  - 480
  - 481
  - 484
  - 487
  - 488
  - 469
  - 470
  - 471
  - 472
  - 473
  - 474
  - 476
  - 479
  dns.rdtypes.svcbbase.SVCBBase._processing_order:
  - 586
  dns.rdtypes.svcbbase.SVCBBase._to_wire:
  - 550
  - 551
  - 552
  - 553
  - 555
  - 557
  - 558
  dns.rdtypes.svcbbase.SVCBBase.from_text:
  - 512
  - 513
  - 514
  - 515
  - 546
  - 517
  - 547
  - 520
  - 521
  - 522
  - 524
  - 526
  - 527
  - 531
  - 532
  - 535
  - 539
  - 511
  dns.rdtypes.svcbbase.SVCBBase.from_wire_parser:
  - 576
  - 577
  - 579
  - 562
  - 563
  - 564
  - 568
  - 569
  - 570
  - 573
  - 574
  - 575
  dns.rdtypes.svcbbase.SVCBBase.to_text:
  - 492
  - 494
  - 496
  - 497
  - 499
  - 500
  - 501
  - 505
  dns.rdtypes.svcbbase.UnknownParamKey:
  - 24
  dns.rdtypes.svcbbase._escapify:
  - 90
  - 91
  - 92
  - 93
  - 94
  dns.rdtypes.svcbbase._split:
  - 135
  - 142
  - 143
  - 148
  - 149
  - 153
  dns.rdtypes.svcbbase._unescape:
  - 130
  - 101
  - 104
  - 109
  - 110
  - 114
  - 115
  - 119
  - 123
  - 125
  - 126
  dns.rdtypes.svcbbase._validate_and_define:
  - 448
  - 449
  - 451
  - 453
  - 454
  - 456
  - 443
  - 444
  - 446
  - 447
  dns.rdtypes.svcbbase._validate_key:
  - 65
  - 68
  - 69
  - 70
  - 72
  - 75
  - 76
  dns.rdtypes.svcbbase.key_to_text:
  - 80
  dns.rdtypes.tlsabase.TLSABase:
  - 28
  dns.rdtypes.tlsabase.TLSABase.__init__:
  - 35
  - 36
  - 37
  - 38
  - 39
  dns.rdtypes.tlsabase.TLSABase._to_wire:
  - 59
  - 60
  - 61
  dns.rdtypes.tlsabase.TLSABase.from_text:
  - 51
  - 52
  - 53
  - 54
  - 55
  - 56
  dns.rdtypes.tlsabase.TLSABase.from_wire_parser:
  - 65
  - 66
  - 67
  dns.rdtypes.tlsabase.TLSABase.to_text:
  - 42
  - 43
  - 44
  dns.rdtypes.txtbase:
  - 18
  dns.rdtypes.txtbase.TXTBase:
  - 35
  dns.rdtypes.txtbase.TXTBase.__init__:
  - 45
  - 53
  - 54
  - 55
  - 57
  dns.rdtypes.txtbase.TXTBase.__init__.<lambda1>:
  - 55
  dns.rdtypes.txtbase.TXTBase._to_wire:
  - 100
  - 101
  - 102
  dns.rdtypes.txtbase.TXTBase.from_text:
  - 97
  - 84
  - 85
  - 88
  - 89
  - 92
  - 94
  - 95
  dns.rdtypes.txtbase.TXTBase.from_wire_parser:
  - 107
  - 108
  - 109
  - 110
  dns.rdtypes.txtbase.TXTBase.to_text:
  - 68
  - 69
  dns.rdtypes.util.Bitmap:
  - 126
  dns.rdtypes.util.Bitmap.__init__:
  - 132
  - 135
  - 136
  - 138
  - 140
  - 143
  - 145
  dns.rdtypes.util.Bitmap.from_rdtypes:
  - 193
  - 194
  - 195
  - 172
  - 176
  - 178
  - 179
  - 183
  - 184
  - 185
  - 186
  dns.rdtypes.util.Bitmap.from_text:
  - 163
  - 164
  - 165
  - 167
  - 168
  dns.rdtypes.util.Bitmap.from_wire_parser:
  - 205
  - 206
  - 207
  - 208
  - 209
  dns.rdtypes.util.Bitmap.to_text:
  - 150
  - 152
  - 153
  - 154
  - 155
  - 156
  - 157
  dns.rdtypes.util.Bitmap.to_wire:
  - 200
  - 198
  - 199
  dns.rdtypes.util.Gateway:
  - 35
  dns.rdtypes.util.Gateway.__init__:
  - 40
  - 42
  dns.rdtypes.util.Gateway._check:
  - 49
  - 50
  - 53
  - 55
  - 56
  - 57
  - 59
  - 60
  - 61
  - 62
  dns.rdtypes.util.Gateway.from_text:
  - 82
  - 83
  - 84
  - 85
  - 90
  dns.rdtypes.util.Gateway.from_wire_parser:
  - 112
  - 114
  - 115
  - 116
  - 117
  - 118
  - 119
  - 122
  dns.rdtypes.util.Gateway.to_text:
  - 68
  - 70
  - 72
  - 73
  - 74
  dns.rdtypes.util.Gateway.to_wire:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 103
  - 104
  - 94
  dns.rdtypes.util._priority_table:
  - 213
  - 214
  - 215
  dns.rdtypes.util.parse_formatted_hex:
  - 265
  - 267
  - 260
  - 263
  dns.rdtypes.util.priority_processing_order:
  - 225
  - 227
  - 228
  - 220
  - 221
  - 223
  dns.rdtypes.util.weighted_processing_order:
  - 236
  - 237
  - 239
  - 241
  - 243
  - 244
  - 245
  - 246
  - 247
  - 248
  - 253
  - 255
  dns.renderer:
  - 18
  dns.renderer.Renderer:
  - 66
  dns.renderer.Renderer.__init__:
  - 111
  - 113
  - 114
  - 115
  - 124
  dns.renderer.Renderer._rollback:
  - 130
  - 135
  - 136
  - 138
  - 139
  - 140
  - 141
  dns.renderer.Renderer._set_section:
  - 145
  - 154
  - 155
  dns.renderer.Renderer._temporarily_seek_to:
  - 169
  - 171
  - 172
  - 174
  dns.renderer.Renderer._track_size:
  - 161
  - 162
  - 163
  - 164
  dns.renderer.Renderer._write_tsig:
  - 303
  - 307
  - 308
  - 309
  - 310
  - 311
  - 313
  - 314
  - 317
  - 318
  dns.renderer.Renderer.add_edns:
  - 240
  - 234
  - 239
  dns.renderer.Renderer.add_multi_tsig:
  - 289
  - 292
  - 293
  - 296
  - 297
  - 299
  - 279
  - 287
  dns.renderer.Renderer.add_opt:
  - 227
  - 228
  - 229
  - 231
  - 211
  - 217
  - 221
  - 223
  dns.renderer.Renderer.add_question:
  - 177
  - 179
  - 180
  - 181
  - 182
  dns.renderer.Renderer.add_rdataset:
  - 206
  - 205
  - 198
  - 207
  dns.renderer.Renderer.add_rrset:
  - 192
  - 193
  - 186
  - 194
  dns.renderer.Renderer.add_tsig:
  - 257
  - 260
  - 261
  - 264
  - 265
  - 253
  - 255
  dns.renderer.Renderer.get_wire:
  - 344
  - 342
  dns.renderer.Renderer.release_reserved:
  - 356
  dns.renderer.Renderer.reserve:
  - 347
  - 348
  - 350
  dns.renderer.Renderer.write_header:
  - 328
  - 321
  - 330
  - 329
  dns.renderer._make_opt:
  - 46
  - 47
  dns.renderer._make_tsig:
  - 51
  - 62
  dns.resolver:
  - 18
  - 51
  dns.resolver.Answer:
  - 249
  dns.resolver.Answer.__delitem__:
  - 313
  dns.resolver.Answer.__getattr__:
  - 288
  - 290
  - 292
  - 294
  - 296
  - 287
  dns.resolver.Answer.__getitem__:
  - 308
  dns.resolver.Answer.__init__:
  - 284
  - 279
  dns.resolver.Answer.__iter__:
  - 305
  dns.resolver.Answer.__len__:
  - 302
  dns.resolver.Answers:
  - 319
  dns.resolver.BaseResolver:
  - 908
  dns.resolver.BaseResolver.__init__:
  - 938
  - 949
  - 950
  - 951
  - 952
  - 953
  - 954
  dns.resolver.BaseResolver._compute_timeout:
  - 1072
  - 1074
  - 1076
  - 1077
  - 1085
  - 1087
  dns.resolver.BaseResolver._enrich_nameservers:
  - 1216
  - 1195
  - 1196
  - 1198
  - 1200
  - 1201
  - 1202
  - 1207
  - 1215
  dns.resolver.BaseResolver._get_qnames_to_try:
  - 1121
  - 1125
  - 1094
  - 1127
  - 1097
  - 1098
  - 1100
  - 1101
  - 1102
  - 1105
  - 1112
  - 1116
  - 1117
  - 1118
  dns.resolver.BaseResolver.nameservers:
  - 1233
  - 1241
  dns.resolver.BaseResolver.read_registry:
  - 1057
  - 1058
  - 1055
  dns.resolver.BaseResolver.read_resolv_conf:
  - 1025
  - 1028
  - 1029
  - 1032
  - 1033
  - 1034
  - 1036
  - 1037
  - 1038
  - 1040
  - 1043
  - 1045
  - 1048
  - 983
  - 1000
  - 1002
  - 1007
  - 1010
  - 1011
  - 1013
  - 1016
  - 1019
  - 1020
  - 1021
  - 1022
  dns.resolver.BaseResolver.reset:
  - 960
  - 957
  - 959
  dns.resolver.BaseResolver.set_flags:
  - 1180
  dns.resolver.BaseResolver.use_edns:
  - 1153
  - 1170
  - 1172
  dns.resolver.BaseResolver.use_tsig:
  - 1136
  dns.resolver.Cache:
  - 427
  dns.resolver.Cache.__init__:
  - 434
  - 437
  - 430
  dns.resolver.Cache._maybe_clean:
  - 448
  - 450
  - 440
  - 442
  - 443
  - 445
  - 446
  - 447
  dns.resolver.Cache.flush:
  - 497
  - 498
  - 502
  - 487
  dns.resolver.Cache.get:
  - 465
  - 466
  - 467
  - 454
  dns.resolver.Cache.put:
  - 474
  - 483
  dns.resolver.CacheBase.__init__:
  - 394
  - 395
  dns.resolver.CacheBase.get_statistics_snapshot:
  - 420
  - 413
  dns.resolver.CacheBase.hits:
  - 403
  dns.resolver.CacheBase.misses:
  - 408
  dns.resolver.CacheBase.reset_statistics:
  - 400
  - 398
  dns.resolver.CacheStatistics:
  - 378
  dns.resolver.CacheStatistics.clone:
  - 389
  dns.resolver.EmptyHostAnswers:
  - 323
  dns.resolver.HostAnswers:
  - 327
  dns.resolver.HostAnswers.addresses:
  - 367
  dns.resolver.HostAnswers.addresses_and_families:
  - 352
  - 354
  - 355
  - 356
  - 357
  - 360
  - 361
  - 362
  - 350
  - 351
  dns.resolver.HostAnswers.canonical_name:
  - 371
  - 372
  dns.resolver.HostAnswers.make:
  - 338
  - 339
  - 341
  dns.resolver.LRUCache:
  - 527
  dns.resolver.LRUCache.__init__:
  - 544
  - 537
  - 541
  - 543
  dns.resolver.LRUCache.flush:
  - 613
  - 623
  - 624
  - 625
  - 626
  - 632
  dns.resolver.LRUCache.get:
  - 576
  - 554
  - 565
  - 566
  - 571
  - 572
  dns.resolver.LRUCache.get_hits_for_key:
  - 584
  - 585
  - 582
  dns.resolver.LRUCache.put:
  - 608
  - 609
  - 591
  - 600
  - 601
  - 602
  - 604
  - 606
  dns.resolver.LRUCache.set_max_size:
  - 549
  dns.resolver.LRUCacheNode:
  - 506
  dns.resolver.LifetimeTimeout:
  - 165
  dns.resolver.LifetimeTimeout.__init__:
  - 174
  dns.resolver.LifetimeTimeout._fmt_kwargs:
  - 177
  - 178
  - 179
  dns.resolver.NXDOMAIN:
  - 56
  dns.resolver.NXDOMAIN.__add__:
  - 109
  - 110
  - 111
  - 112
  - 113
  - 114
  - 115
  - 116
  - 118
  dns.resolver.NXDOMAIN.__init__:
  - 66
  dns.resolver.NXDOMAIN.__str__:
  - 88
  - 81
  - 82
  - 84
  dns.resolver.NXDOMAIN._check_kwargs:
  - 69
  - 71
  - 73
  - 75
  - 77
  dns.resolver.NXDOMAIN.canonical_name:
  - 96
  - 99
  - 100
  - 93
  - 94
  dns.resolver.NXDOMAIN.qnames:
  - 121
  dns.resolver.NXDOMAIN.response:
  - 136
  dns.resolver.NXDOMAIN.responses:
  - 128
  dns.resolver.NoAnswer:
  - 190
  dns.resolver.NoAnswer.__init__:
  - 198
  dns.resolver.NoAnswer._fmt_kwargs:
  - 201
  dns.resolver.NoMetaqueries:
  - 241
  dns.resolver.NoNameservers:
  - 208
  dns.resolver.NoNameservers.__init__:
  - 223
  dns.resolver.NoNameservers._fmt_kwargs:
  - 226
  - 227
  - 228
  dns.resolver.NoResolverConfiguration:
  - 245
  dns.resolver.NoRootSOA:
  - 237
  dns.resolver.NotAbsolute:
  - 233
  dns.resolver.Resolver:
  - 1246
  dns.resolver.Resolver.canonical_name:
  - 1491
  - 1477
  dns.resolver.Resolver.query:
  - 1368
  - 1361
  - 1373
  dns.resolver.Resolver.resolve:
  - 1314
  - 1347
  - 1316
  - 1321
  - 1260
  - 1327
  - 1328
  - 1329
  - 1330
  - 1332
  - 1340
  - 1342
  - 1311
  dns.resolver.Resolver.resolve_address:
  - 1386
  - 1406
  - 1405
  - 1402
  dns.resolver.Resolver.resolve_name:
  - 1415
  - 1433
  - 1434
  - 1437
  - 1438
  - 1439
  - 1440
  - 1441
  - 1442
  - 1443
  - 1446
  - 1447
  - 1448
  - 1449
  - 1453
  - 1462
  - 1466
  - 1469
  - 1470
  dns.resolver.Resolver.try_ddr:
  - 1519
  - 1520
  - 1523
  - 1524
  - 1525
  - 1500
  dns.resolver.YXDOMAIN:
  - 144
  dns.resolver._Resolution:
  - 638
  dns.resolver._Resolution.__init__:
  - 659
  - 660
  - 661
  - 662
  - 664
  - 665
  - 668
  dns.resolver._Resolution.next_nameserver:
  - 770
  - 771
  - 776
  - 778
  - 779
  - 762
  - 764
  dns.resolver._Resolution.next_request:
  - 737
  - 706
  - 707
  - 742
  - 711
  - 743
  - 714
  - 734
  - 689
  - 721
  - 722
  - 723
  - 728
  - 698
  - 699
  - 702
  - 703
  dns.resolver._Resolution.query_result:
  - 897
  - 899
  - 900
  - 789
  - 792
  - 794
  - 796
  - 801
  - 802
  - 803
  - 804
  - 805
  - 808
  - 809
  - 810
  - 812
  - 818
  - 819
  - 820
  - 822
  - 827
  - 828
  - 831
  - 833
  - 835
  - 841
  - 843
  - 844
  - 845
  - 848
  - 852
  - 856
  - 858
  - 860
  - 866
  - 869
  - 870
  - 876
  - 877
  - 878
  - 880
  - 882
  - 893
  - 894
  - 895
  dns.resolver._errors_to_text:
  - 160
  - 157
  - 159
  dns.resolver._getaddrinfo:
  - 1920
  - 1921
  - 1922
  - 1923
  - 1924
  - 1846
  - 1852
  - 1853
  - 1865
  - 1871
  - 1872
  - 1877
  - 1878
  - 1884
  - 1885
  - 1886
  - 1897
  - 1900
  - 1902
  - 1904
  - 1907
  - 1910
  - 1914
  - 1918
  - 1919
  dns.resolver._getfqdn:
  - 1976
  - 1973
  - 1974
  dns.resolver._gethostbyaddr:
  - 2016
  - 2023
  - 2024
  - 2026
  - 2027
  - 2028
  - 2029
  - 2003
  - 2008
  - 2013
  dns.resolver._gethostbyname:
  - 1985
  dns.resolver._gethostbyname_ex:
  - 1995
  - 1996
  - 1991
  dns.resolver._getnameinfo:
  - 1953
  - 1954
  - 1956
  - 1959
  - 1960
  - 1963
  - 1932
  - 1964
  - 1965
  - 1966
  - 1968
  - 1938
  - 1939
  - 1942
  - 1946
  - 1947
  - 1948
  - 1951
  dns.resolver.canonical_name:
  - 1649
  - 1643
  dns.resolver.get_default_resolver:
  - 1536
  - 1537
  - 1538
  dns.resolver.make_resolver_at:
  - 1770
  - 1771
  - 1773
  - 1774
  - 1776
  - 1777
  - 1778
  - 1753
  dns.resolver.override_system_resolver:
  - 2048
  - 2049
  - 2035
  dns.resolver.query:
  - 1604
  - 1597
  - 1607
  dns.resolver.reset_default_resolver:
  - 1544
  - 1551
  dns.resolver.resolve:
  - 1565
  - 1574
  dns.resolver.resolve_address:
  - 1627
  - 1621
  dns.resolver.resolve_at:
  - 1811
  - 1798
  dns.resolver.resolve_name:
  - 1633
  - 1639
  dns.resolver.restore_system_resolver:
  - 2061
  dns.resolver.try_ddr:
  - 1659
  - 1653
  dns.resolver.zone_for_name:
  - 1669
  - 1694
  - 1695
  - 1696
  - 1697
  - 1698
  - 1700
  - 1702
  - 1709
  - 1710
  - 1711
  - 1715
  - 1719
  - 1723
  - 1724
  - 1726
  - 1727
  - 1728
  - 1729
  - 1730
  - 1731
  - 1742
  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_identifier:
  - 725
  - 718
  dns.tokenizer.Tokenizer.as_int:
  - 632
  - 625
  - 634
  - 636
  dns.tokenizer.Tokenizer.as_name:
  - 621
  - 619
  - 613
  - 622
  dns.tokenizer.Tokenizer.as_string:
  - 713
  - 702
  - 711
  dns.tokenizer.Tokenizer.as_uint16:
  - 660
  - 659
  - 652
  - 661
  dns.tokenizer.Tokenizer.as_uint32:
  - 672
  - 680
  - 679
  dns.tokenizer.Tokenizer.as_uint48:
  - 695
  - 694
  - 687
  dns.tokenizer.Tokenizer.as_uint8:
  - 647
  - 646
  - 639
  dns.tokenizer.Tokenizer.concatenate_remaining_identifiers:
  - 582
  - 595
  - 596
  - 597
  - 599
  - 602
  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:
  - 760
  dns.tokenizer.Tokenizer.get_eol_as_token:
  - 752
  - 753
  - 746
  dns.tokenizer.Tokenizer.get_identifier:
  - 560
  - 553
  dns.tokenizer.Tokenizer.get_int:
  - 488
  - 494
  dns.tokenizer.Tokenizer.get_name:
  - 743
  - 742
  - 735
  dns.tokenizer.Tokenizer.get_remaining:
  - 576
  - 577
  - 563
  - 572
  - 573
  - 574
  dns.tokenizer.Tokenizer.get_string:
  - 541
  - 550
  dns.tokenizer.Tokenizer.get_ttl:
  - 771
  - 763
  - 772
  - 774
  dns.tokenizer.Tokenizer.get_uint16:
  - 508
  - 516
  dns.tokenizer.Tokenizer.get_uint32:
  - 527
  - 519
  dns.tokenizer.Tokenizer.get_uint48:
  - 530
  - 538
  dns.tokenizer.Tokenizer.get_uint8:
  - 497
  - 505
  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:
  - 83
  dns.transaction.DeleteNotExact:
  - 75
  dns.transaction.ReadOnly:
  - 79
  dns.transaction.Transaction.__exit__:
  - 563
  - 564
  - 565
  - 567
  dns.transaction.Transaction.__iter__:
  - 285
  - 286
  dns.transaction.Transaction._add:
  - 421
  - 426
  - 427
  - 428
  - 429
  - 430
  - 432
  - 433
  - 438
  - 444
  - 446
  - 447
  - 448
  - 450
  - 451
  - 452
  - 453
  - 454
  - 455
  - 458
  - 460
  - 461
  dns.transaction.Transaction._changed:
  - 607
  dns.transaction.Transaction._check_ended:
  - 530
  dns.transaction.Transaction._check_read_only:
  - 157
  dns.transaction.Transaction._checked_delete_name:
  - 552
  - 553
  - 551
  dns.transaction.Transaction._checked_delete_rdataset:
  - 546
  - 547
  - 548
  dns.transaction.Transaction._checked_put_rdataset:
  - 541
  - 542
  - 543
  dns.transaction.Transaction._delete:
  - 513
  - 514
  - 515
  - 519
  - 520
  - 523
  - 525
  - 466
  - 471
  - 472
  - 473
  - 474
  - 475
  - 477
  - 478
  - 481
  - 482
  - 483
  - 486
  - 487
  - 488
  - 489
  - 492
  - 495
  - 496
  - 503
  - 504
  - 505
  - 507
  - 508
  - 509
  - 510
  - 511
  dns.transaction.Transaction._delete_name:
  - 586
  dns.transaction.Transaction._delete_rdataset:
  - 593
  dns.transaction.Transaction._end:
  - 536
  - 534
  dns.transaction.Transaction._end_transaction:
  - 611
  dns.transaction.Transaction._get_node:
  - 639
  dns.transaction.Transaction._get_rdataset:
  - 576
  dns.transaction.Transaction._iterate_names:
  - 635
  dns.transaction.Transaction._iterate_rdatasets:
  - 631
  dns.transaction.Transaction._name_exists:
  - 600
  dns.transaction.Transaction._origin_information:
  - 652
  dns.transaction.Transaction._put_rdataset:
  - 582
  dns.transaction.Transaction._raise_if_not_empty:
  - 387
  dns.transaction.Transaction._rdataset_from_args:
  - 392
  - 393
  - 394
  - 395
  - 398
  - 401
  - 403
  - 407
  - 408
  - 409
  - 414
  dns.transaction.Transaction._set_origin:
  - 622
  dns.transaction.Transaction.add:
  - 161
  - 171
  - 172
  - 173
  dns.transaction.Transaction.changed:
  - 296
  - 289
  - 297
  dns.transaction.Transaction.check_delete_name:
  - 350
  - 359
  dns.transaction.Transaction.check_delete_rdataset:
  - 337
  - 347
  dns.transaction.Transaction.check_put_rdataset:
  - 325
  - 334
  dns.transaction.Transaction.commit:
  - 300
  - 310
  dns.transaction.Transaction.delete:
  - 216
  - 197
  - 214
  - 215
  dns.transaction.Transaction.delete_exact:
  - 219
  - 237
  - 238
  - 239
  dns.transaction.Transaction.get:
  - 136
  - 141
  - 142
  - 143
  - 144
  - 145
  - 146
  - 147
  dns.transaction.Transaction.get_node:
  - 154
  - 150
  dns.transaction.Transaction.iterate_names:
  - 379
  - 380
  - 374
  dns.transaction.Transaction.iterate_rdatasets:
  - 370
  - 371
  - 364
  dns.transaction.Transaction.name_exists:
  - 242
  - 243
  - 244
  - 245
  - 246
  dns.transaction.Transaction.replace:
  - 176
  - 193
  - 194
  - 192
  dns.transaction.Transaction.rollback:
  - 313
  - 322
  dns.transaction.Transaction.update_serial:
  - 265
  - 266
  - 268
  - 269
  - 270
  - 271
  - 273
  - 274
  - 276
  - 278
  - 280
  - 281
  - 282
  - 254
  dns.transaction.TransactionManager.from_wire_origin:
  - 66
  - 67
  - 68
  dns.transaction.TransactionManager.get_class:
  - 62
  dns.transaction.TransactionManager.origin_information:
  - 37
  dns.transaction.TransactionManager.reader:
  - 21
  dns.transaction.TransactionManager.writer:
  - 25
  dns.transaction._ensure_immutable_node:
  - 93
  - 95
  dns.transaction._ensure_immutable_rdataset:
  - 89
  - 87
  dns.tsig:
  - 70
  - 71
  - 72
  - 73
  - 74
  - 75
  - 76
  - 77
  - 78
  - 79
  - 18
  dns.tsig.BadAlgorithm:
  - 45
  dns.tsig.BadKey:
  - 41
  dns.tsig.BadSignature:
  - 37
  dns.tsig.BadTime:
  - 33
  dns.tsig.GSSTSig:
  - 98
  dns.tsig.GSSTSig.sign:
  - 117
  dns.tsig.GSSTSig.verify:
  - 122
  dns.tsig.GSSTSigAdapter.__call__:
  - 136
  - 137
  - 133
  - 135
  dns.tsig.GSSTSigAdapter.parse_tkey_and_step:
  - 152
  - 155
  - 149
  dns.tsig.HMACTSig:
  - 161
  dns.tsig.HMACTSig.__init__:
  - 192
  - 185
  - 186
  - 189
  dns.tsig.HMACTSig.sign:
  - 200
  - 201
  dns.tsig.HMACTSig.update:
  - 196
  dns.tsig.HMACTSig.verify:
  - 208
  - 207
  dns.tsig.Key.__eq__:
  - 348
  dns.tsig.Key.__init__:
  - 336
  - 337
  - 339
  - 340
  - 342
  - 343
  dns.tsig.Key.__repr__:
  - 356
  - 357
  dns.tsig.PeerBadKey:
  - 53
  dns.tsig.PeerBadSignature:
  - 57
  dns.tsig.PeerBadTime:
  - 61
  dns.tsig.PeerBadTruncation:
  - 65
  dns.tsig.PeerError:
  - 49
  dns.tsig._digest:
  - 213
  - 220
  - 221
  - 222
  - 223
  - 224
  - 226
  - 227
  - 228
  - 229
  - 230
  - 231
  - 232
  - 236
  - 237
  - 238
  - 240
  - 241
  - 242
  - 244
  dns.tsig._maybe_start_digest:
  - 256
  - 249
  - 253
  - 254
  - 255
  dns.tsig.get_context:
  - 323
  - 324
  - 317
  - 326
  dns.tsig.sign:
  - 263
  - 271
  - 272
  - 273
  - 275
  dns.tsig.validate:
  - 289
  - 290
  - 293
  - 294
  - 295
  - 313
  - 297
  - 299
  - 301
  - 305
  - 307
  - 309
  - 311
  - 312
  - 281
  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:
  - 31
  dns.ttl.from_text:
  - 65
  - 35
  - 67
  - 69
  - 71
  - 77
  - 46
  - 47
  - 48
  - 79
  - 54
  - 55
  - 57
  - 60
  - 62
  - 63
  dns.ttl.make:
  - 88
  - 85
  - 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:
  - 34
  - 7
  dns.win32util._RegistryGetter.__init__:
  - 89
  dns.win32util._RegistryGetter._config_fromkey:
  - 129
  - 130
  - 132
  - 133
  - 134
  - 138
  - 141
  - 143
  - 112
  - 146
  - 115
  - 116
  - 117
  - 147
  - 119
  - 120
  - 121
  - 126
  dns.win32util._RegistryGetter._config_nameservers:
  - 100
  - 101
  - 102
  dns.win32util._RegistryGetter._config_search:
  - 105
  - 106
  - 107
  - 108
  dns.win32util._RegistryGetter._is_nic_enabled:
  - 195
  - 197
  - 167
  - 171
  - 174
  - 180
  - 182
  - 158
  dns.win32util._RegistryGetter._split:
  - 97
  dns.win32util._RegistryGetter.get:
  - 225
  - 227
  - 229
  - 233
  - 202
  - 235
  - 204
  - 206
  - 210
  - 212
  - 213
  - 221
  - 223
  dns.win32util._WMIGetter.__init__:
  - 46
  - 47
  dns.win32util._WMIGetter.get:
  - 70
  - 71
  dns.win32util._WMIGetter.run:
  - 65
  - 50
  - 52
  - 53
  - 54
  - 55
  - 56
  - 57
  - 58
  - 60
  dns.win32util._Win32Getter.get:
  - 386
  - 391
  - 397
  - 398
  - 406
  - 279
  - 407
  - 408
  - 409
  - 410
  - 412
  - 413
  - 414
  - 421
  - 422
  - 319
  - 321
  - 322
  - 323
  - 326
  - 359
  - 361
  - 363
  - 368
  - 241
  - 371
  - 244
  - 373
  - 374
  - 377
  - 378
  dns.win32util._Win32Getter.get.IP_ADAPTER_DNS_SUFFIX:
  - 298
  dns.win32util._Win32Getter.get.SOCKET_ADDRESS:
  - 269
  dns.win32util._Win32Getter.get.format_ipv4:
  - 341
  dns.win32util._Win32Getter.get.format_ipv6:
  - 355
  - 357
  dns.win32util._config_domain:
  - 83
  - 85
  dns.win32util.get_dns_info:
  - 431
  - 432
  - 433
  - 434
  - 435
  - 437
  - 438
  dns.wire.Parser.get_name:
  - 10
  - 11
  - 12
  dns.wirebase.Parser:
  - 13
  dns.wirebase.Parser.__init__:
  - 16
  - 25
  - 26
  - 27
  dns.wirebase.Parser.get_bytes:
  - 35
  - 39
  dns.wirebase.Parser.get_counted_bytes:
  - 43
  - 44
  dns.wirebase.Parser.get_remaining:
  - 47
  dns.wirebase.Parser.get_struct:
  - 62
  dns.wirebase.Parser.get_uint16:
  - 53
  dns.wirebase.Parser.get_uint32:
  - 56
  dns.wirebase.Parser.get_uint48:
  - 59
  dns.wirebase.Parser.get_uint8:
  - 50
  dns.wirebase.Parser.restore_furthest:
  - 91
  dns.wirebase.Parser.restrict_to:
  - 74
  - 83
  - 79
  dns.wirebase.Parser.seek:
  - 67
  dns.xfr.Inbound:
  - 54
  dns.xfr.Inbound.__exit__:
  - 262
  - 263
  dns.xfr.Inbound.__init__:
  - 65
  - 80
  - 81
  - 84
  - 85
  - 92
  - 93
  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
  - 110
  - 111
  - 112
  - 113
  - 239
  - 242
  - 243
  - 245
  - 246
  - 119
  - 120
  - 122
  - 125
  dns.xfr.SerialWentBackwards:
  - 46
  dns.xfr.TransferError:
  - 37
  dns.xfr.TransferError.__init__:
  - 40
  - 41
  dns.xfr.UseTCP:
  - 50
  dns.xfr.extract_serial_from_query:
  - 354
  - 356
  - 358
  - 361
  - 343
  - 351
  dns.xfr.make_query:
  - 279
  - 298
  - 299
  - 301
  - 303
  - 305
  - 306
  - 307
  - 308
  - 309
  - 315
  - 319
  - 320
  - 331
  - 332
  - 333
  - 336
  - 337
  - 338
  dns.zone:
  - 18
  dns.zone.BadZone:
  - 45
  dns.zone.DigestVerificationFailure:
  - 73
  dns.zone.ImmutableVersion.__init__:
  - 1089
  - 1090
  - 1093
  - 1073
  - 1080
  - 1086
  - 1087
  dns.zone.ImmutableVersionedNode.__init__:
  - 920
  - 921
  - 918
  dns.zone.ImmutableVersionedNode.find_rdataset:
  - 931
  - 933
  dns.zone.ImmutableVersionedNode.get_rdataset:
  - 944
  - 942
  dns.zone.NoDigest:
  - 69
  dns.zone.NoNS:
  - 53
  dns.zone.NoSOA:
  - 49
  dns.zone.Transaction.__init__:
  - 1107
  dns.zone.Transaction._changed:
  - 1153
  - 1154
  - 1149
  dns.zone.Transaction._delete_name:
  - 1136
  - 1135
  dns.zone.Transaction._delete_rdataset:
  - 1141
  - 1142
  dns.zone.Transaction._end_transaction:
  - 1159
  - 1160
  - 1161
  - 1162
  - 1164
  - 1166
  - 1169
  - 1175
  dns.zone.Transaction._get_node:
  - 1194
  dns.zone.Transaction._get_rdataset:
  - 1124
  dns.zone.Transaction._iterate_names:
  - 1190
  dns.zone.Transaction._iterate_rdatasets:
  - 1184
  - 1185
  - 1186
  dns.zone.Transaction._name_exists:
  - 1146
  dns.zone.Transaction._origin_information:
  - 1200
  - 1201
  - 1205
  dns.zone.Transaction._put_rdataset:
  - 1129
  - 1130
  dns.zone.Transaction._set_origin:
  - 1179
  dns.zone.Transaction._setup_version:
  - 1120
  - 1118
  dns.zone.Transaction.zone:
  - 1113
  dns.zone.UnknownOrigin:
  - 57
  dns.zone.UnsupportedDigestHashAlgorithm:
  - 65
  dns.zone.UnsupportedDigestScheme:
  - 61
  dns.zone.Version.__init__:
  - 971
  - 974
  dns.zone.Version._validate_name:
  - 978
  dns.zone.Version.get_node:
  - 981
  - 982
  dns.zone.Version.get_rdataset:
  - 993
  - 990
  - 991
  dns.zone.Version.items:
  - 999
  dns.zone.Version.keys:
  - 996
  dns.zone.VersionedNode.__init__:
  - 910
  dns.zone.WritableVersion.__init__:
  - 1006
  - 1007
  - 1008
  - 1013
  - 1017
  dns.zone.WritableVersion._maybe_cow:
  - 1044
  dns.zone.WritableVersion._maybe_cow_with_name:
  - 1024
  - 1025
  - 1026
  - 1034
  - 1036
  - 1038
  - 1022
  - 1023
  dns.zone.WritableVersion.delete_node:
  - 1048
  - 1050
  - 1047
  dns.zone.WritableVersion.delete_rdataset:
  - 1064
  - 1065
  - 1066
  dns.zone.WritableVersion.put_rdataset:
  - 1056
  - 1055
  dns.zone.Zone:
  - 109
  dns.zone.Zone.__contains__:
  - 221
  dns.zone.Zone.__delitem__:
  - 201
  dns.zone.Zone.__eq__:
  - 167
  - 165
  - 159
  dns.zone.Zone.__getitem__:
  - 193
  dns.zone.Zone.__init__:
  - 134
  - 146
  - 147
  - 148
  - 149
  - 151
  - 155
  dns.zone.Zone.__iter__:
  - 205
  dns.zone.Zone.__ne__:
  - 176
  - 181
  dns.zone.Zone.__setitem__:
  - 197
  dns.zone.Zone._commit_version:
  - 890
  dns.zone.Zone._compute_digest:
  - 802
  - 807
  - 808
  - 809
  - 810
  - 811
  - 816
  - 819
  - 820
  - 821
  - 822
  - 823
  - 796
  - 797
  - 799
  dns.zone.Zone._validate_name:
  - 186
  - 187
  - 188
  - 190
  dns.zone.Zone.check_origin:
  - 760
  - 745
  - 753
  - 758
  dns.zone.Zone.compute_digest:
  - 832
  - 830
  - 831
  dns.zone.Zone.delete_node:
  - 289
  - 290
  - 279
  dns.zone.Zone.delete_rdataset:
  - 417
  - 418
  - 419
  - 420
  - 421
  - 422
  - 423
  - 424
  - 394
  dns.zone.Zone.find_node:
  - 227
  - 243
  - 244
  - 245
  - 246
  - 248
  dns.zone.Zone.find_rdataset:
  - 300
  - 334
  - 335
  - 336
  - 337
  - 338
  dns.zone.Zone.find_rrset:
  - 458
  - 496
  - 497
  - 498
  - 499
  - 500
  - 501
  dns.zone.Zone.get:
  - 217
  - 218
  dns.zone.Zone.get_node:
  - 273
  - 255
  dns.zone.Zone.get_rdataset:
  - 347
  - 383
  dns.zone.Zone.get_rrset:
  - 545
  - 510
  dns.zone.Zone.get_soa:
  - 772
  - 775
  - 781
  - 782
  - 784
  - 785
  - 788
  - 766
  dns.zone.Zone.items:
  - 214
  dns.zone.Zone.iterate_rdatas:
  - 608
  - 609
  - 612
  - 613
  - 587
  - 605
  - 606
  - 607
  dns.zone.Zone.iterate_rdatasets:
  - 576
  - 577
  - 580
  - 555
  - 573
  - 574
  - 575
  dns.zone.Zone.keys:
  - 208
  dns.zone.Zone.origin_information:
  - 871
  dns.zone.Zone.reader:
  - 860
  dns.zone.Zone.replace_rdataset:
  - 449
  - 450
  - 429
  - 447
  dns.zone.Zone.to_file:
  - 651
  - 652
  - 654
  - 659
  - 660
  - 663
  - 665
  - 667
  - 668
  - 671
  - 673
  - 675
  - 676
  - 678
  - 679
  - 681
  - 682
  - 684
  - 685
  - 686
  - 688
  - 689
  - 690
  - 696
  - 699
  - 700
  - 702
  - 703
  - 624
  dns.zone.Zone.to_text:
  - 738
  - 739
  - 740
  - 741
  - 713
  dns.zone.Zone.values:
  - 211
  dns.zone.Zone.verify_digest:
  - 840
  - 844
  - 845
  - 848
  - 850
  - 851
  dns.zone.Zone.writer:
  - 864
  - 863
  dns.zone._from_text:
  - 1249
  - 1250
  - 1231
  - 1233
  - 1234
  - 1235
  - 1236
  - 1244
  dns.zone._validate_name:
  - 96
  - 101
  - 82
  - 87
  - 88
  - 90
  - 91
  dns.zone.from_file:
  - 1389
  - 1390
  - 1392
  - 1394
  - 1396
  - 1340
  dns.zone.from_text:
  - 1266
  - 1314
  dns.zone.from_xfr:
  - 1443
  - 1444
  - 1445
  - 1417
  - 1450
  - 1451
  - 1452
  - 1453
  - 1454
  - 1456
  - 1457
  - 1458
  - 1459
  - 1460
  - 1462
  - 1463
  dns.zonefile:
  - 18
  dns.zonefile.CNAMEAndOtherData:
  - 44
  dns.zonefile.RRSetsReaderManager.origin_information:
  - 652
  dns.zonefile.RRSetsReaderManager.writer:
  - 646
  dns.zonefile.RRsetsReaderTransaction.__init__:
  - 563
  dns.zonefile.RRsetsReaderTransaction._changed:
  - 606
  dns.zonefile.RRsetsReaderTransaction._delete_name:
  - 586
  - 587
  - 588
  - 589
  - 590
  dns.zonefile.RRsetsReaderTransaction._end_transaction:
  - 609
  - 611
  - 612
  - 615
  - 616
  - 617
  dns.zonefile.RRsetsReaderTransaction._get_node:
  - 576
  - 571
  - 572
  - 573
  - 574
  dns.zonefile.RRsetsReaderTransaction._get_rdataset:
  - 567
  dns.zonefile.RRsetsReaderTransaction._name_exists:
  - 600
  - 601
  dns.zonefile.Reader:
  - 90
  dns.zonefile.Reader.__init__:
  - 128
  - 131
  - 135
  - 106
  - 140
  - 110
  - 112
  - 124
  - 126
  - 127
  dns.zonefile.Reader._eat_line:
  - 144
  - 145
  dns.zonefile.Reader._generate_line:
  - 384
  - 411
  - 412
  - 413
  - 416
  - 417
  - 419
  - 420
  - 422
  - 423
  - 425
  - 430
  - 431
  - 433
  - 434
  - 437
  - 323
  - 325
  - 454
  - 328
  - 331
  - 332
  - 333
  - 459
  - 341
  - 342
  - 349
  - 352
  - 353
  - 356
  - 358
  - 360
  - 370
  - 371
  - 372
  - 378
  - 382
  - 383
  dns.zonefile.Reader._generate_line._calculate_index:
  - 393
  - 394
  dns.zonefile.Reader._generate_line._format_index:
  - 399
  - 401
  - 402
  - 405
  - 406
  - 407
  - 408
  dns.zonefile.Reader._get_identifier:
  - 149
  - 150
  dns.zonefile.Reader._parse_modify:
  - 279
  - 280
  - 281
  - 290
  - 291
  - 292
  - 293
  - 296
  - 297
  - 298
  - 299
  - 304
  - 305
  - 306
  - 307
  - 311
  - 312
  - 314
  - 316
  dns.zonefile.Reader._rr_line:
  - 258
  - 262
  - 265
  - 271
  - 274
  - 155
  - 159
  - 162
  - 164
  - 165
  - 166
  - 168
  - 169
  - 172
  - 174
  - 177
  - 178
  - 180
  - 181
  - 184
  - 189
  - 192
  - 196
  - 199
  - 202
  - 204
  - 209
  - 210
  - 213
  - 215
  - 217
  - 221
  - 223
  - 225
  - 228
  - 231
  - 233
  - 238
  - 255
  dns.zonefile.Reader.read:
  - 512
  - 513
  - 514
  - 516
  - 518
  - 519
  - 522
  - 523
  - 527
  - 539
  - 540
  - 542
  - 543
  - 549
  - 550
  - 552
  - 553
  - 555
  - 556
  - 462
  - 470
  - 471
  - 472
  - 473
  - 474
  - 484
  - 487
  - 489
  - 490
  - 492
  - 495
  - 496
  - 500
  - 501
  - 502
  - 504
  - 506
  - 507
  - 508
  - 509
  - 510
  dns.zonefile.UnknownOrigin:
  - 40
  dns.zonefile._check_cname_and_other_data:
  - 48
  - 49
  - 50
  - 53
  - 54
  - 59
  dns.zonefile._upper_dollarize:
  - 83
  - 84
  dns.zonefile.read_rrsets:
  - 674
  - 723
  - 724
  - 725
  - 726
  - 727
  - 728
  - 729
  - 730
  - 731
  - 732
  - 735
  - 736
  - 737
  - 740
  - 741
  - 742
  - 743
  - 754
  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._DatagramProtocol: []
  dns._asyncio_backend._DatagramSocket: []
  dns._asyncio_backend._HTTPTransport: []
  dns._asyncio_backend._NetworkBackend:
  - _CoreAsyncNetworkBackend
  dns._asyncio_backend._StreamSocket: []
  dns._ddr._SVCBInfo: []
  dns._immutable_ctx._Immutable: []
  dns._immutable_ctx.immutable.ncls:
  - cls
  - _Immutable
  dns._no_ssl.SSLContext: []
  dns._no_ssl.SSLSocket: []
  dns._no_ssl.SSLWantReadError:
  - Exception
  dns._no_ssl.SSLWantWriteError:
  - Exception
  dns._no_ssl.TLSVersion: []
  dns._no_ssl.WantReadException:
  - Exception
  dns._no_ssl.WantWriteException:
  - Exception
  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.btree.BTree: []
  dns.btree.BTreeDict: []
  dns.btree.BTreeSet:
  - BTree
  dns.btree.Cursor: []
  dns.btree.Element: []
  dns.btree.Immutable:
  - Exception
  dns.btree.KV:
  - Element
  dns.btree.Member:
  - Element
  dns.btree._Creator: []
  dns.btree._Node: []
  dns.btreezone.Bounds: []
  dns.btreezone.Delegations: []
  dns.btreezone.ImmutableNode:
  - Node
  dns.btreezone.ImmutableVersion: []
  dns.btreezone.Node: []
  dns.btreezone.NodeFlags: []
  dns.btreezone.WritableVersion: []
  dns.btreezone.Zone: []
  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.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.KEY.KEY: []
  dns.rdtypes.ANY.KEY.LegacyFlag: []
  dns.rdtypes.ANY.KEY.Protocol: []
  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.RRSIG: []
  dns.rdtypes.ANY.RT.RT: []
  dns.rdtypes.ANY.SIG.SIG: []
  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.rrsigbase.BadSigTime: []
  dns.rdtypes.rrsigbase.RRSIGBase: []
  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.ConfigMethod:
  - IntEnum
  dns.win32util.DnsInfo: []
  dns.win32util._RegistryGetter: []
  dns.win32util._WMIGetter: []
  dns.win32util._Win32Getter:
  - _RegistryGetter
  dns.win32util._Win32Getter.get.IF_LUID: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_ADDRESSES: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_ANYCAST_ADDRESS_XP: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_DNS_SERVER_ADDRESS: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_DNS_SERVER_ADDRESS_XP: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_DNS_SUFFIX: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_GATEWAY_ADDRESS_LH: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_MULTICAST_ADDRESS_XP: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_PREFIX_XP: []
  dns.win32util._Win32Getter.get.IP_ADAPTER_UNICAST_ADDRESS_LH: []
  dns.win32util._Win32Getter.get.NET_IF_NETWORK_GUID: []
  dns.win32util._Win32Getter.get.SOCKADDRV4: []
  dns.win32util._Win32Getter.get.SOCKADDRV6: []
  dns.win32util._Win32Getter.get.SOCKET_ADDRESS: []
  dns.wire.Parser: []
  dns.wirebase.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'
