All classes:
- dns.exception.DNSException
- dns.exception.FormError
- dns.exception.SyntaxError
- dns.exception.UnexpectedEnd
- dns.exception.TooBig
- dns.exception.Timeout
- dns.exception.UnsupportedAlgorithm
- dns.exception.AlgorithmKeyMismatch
- dns.exception.ValidationFailure
- dns.exception.DeniedByPolicy
- dns.exception.ExceptionWrapper
- dns.enum.IntEnum
- dns._immutable_ctx._Immutable
- dns._immutable_ctx.immutable.ncls
- dns.immutable.Dict
- dns.wire.Parser
- dns.name.NameRelation
- dns.name.EmptyLabel
- dns.name.BadEscape
- dns.name.BadPointer
- dns.name.BadLabelType
- dns.name.NeedAbsoluteNameOrOrigin
- dns.name.NameTooLong
- dns.name.LabelTooLong
- dns.name.AbsoluteConcatenation
- dns.name.NoParent
- dns.name.NoIDNA2008
- dns.name.IDNAException
- dns.name.NeedSubdomainOfOrigin
- dns.name.IDNACodec
- dns.name.IDNA2003Codec
- dns.name.IDNA2008Codec
- dns.name.Name
- dns.ttl.BadTTL
- dns.tokenizer.UngetBufferFull
- dns.tokenizer.Token
- dns.tokenizer.Tokenizer
- dns.rdataclass.RdataClass
- dns.rdataclass.UnknownRdataclass
- dns.rdatatype.RdataType
- dns.rdatatype.UnknownRdatatype
- dns.rdata.NoRelativeRdataOrdering
- dns.rdata.Rdata
- dns.rdata.GenericRdata
- dns.rdata.RdatatypeExists
- dns.edns.OptionType
- dns.edns.Option
- dns.edns.GenericOption
- dns.edns.ECSOption
- dns.edns.EDECode
- dns.edns.EDEOption
- dns.edns.NSIDOption
- dns.edns.CookieOption
- dns.edns.ReportChannelOption
- dns.rcode.Rcode
- dns.rcode.UnknownRcode
- dns.tsig.BadTime
- dns.tsig.BadSignature
- dns.tsig.BadKey
- dns.tsig.BadAlgorithm
- dns.tsig.PeerError
- dns.tsig.PeerBadKey
- dns.tsig.PeerBadSignature
- dns.tsig.PeerBadTime
- dns.tsig.PeerBadTruncation
- dns.tsig.GSSTSig
- dns.tsig.GSSTSigAdapter
- dns.tsig.HMACTSig
- dns.tsig.Key
- dns.renderer.Renderer
- dns.namedict.NameDict
- dns.serial.Serial
- dns._asyncbackend.NullContext
- dns._asyncbackend.Socket
- dns._asyncbackend.DatagramSocket
- dns._asyncbackend.StreamSocket
- dns._asyncbackend.NullTransport
- dns._asyncbackend.Backend
- dns._asyncio_backend._DatagramProtocol
- dns._asyncio_backend.DatagramSocket
- dns._asyncio_backend.StreamSocket
- dns.entropy.EntropyPool
- dns.flags.Flag
- dns.flags.EDNSFlag
- dns.opcode.Opcode
- dns.opcode.UnknownOpcode
- dns.rdtypes.ANY.OPT.OPT
- dns.rdtypes.ANY.SOA.SOA
- dns.rdtypes.ANY.TSIG.TSIG
- dns.set.Set
- dns.rdataset.DifferingCovers
- dns.rdataset.IncompatibleTypes
- dns.rdataset.Rdataset
- dns.rdataset.ImmutableRdataset
- dns.rrset.RRset
- dns.message.ShortHeader
- dns.message.TrailingJunk
- dns.message.UnknownHeaderField
- dns.message.BadEDNS
- dns.message.BadTSIG
- dns.message.UnknownTSIGKey
- dns.message.Truncated
- dns.message.NotQueryResponse
- dns.message.ChainTooLong
- dns.message.AnswerForNXDOMAIN
- dns.message.NoPreviousName
- dns.message.MessageSection
- dns.message.MessageError
- dns.message.Message
- dns.message.ChainingResult
- dns.message.QueryMessage
- dns.update.UpdateSection
- dns.update.UpdateMessage
- dns.message._WireReader
- dns.message._TextReader
- dns.message.CopyMode
- dns.asyncbackend.AsyncLibraryNotFoundError
- dns._trio_backend.DatagramSocket
- dns._trio_backend.StreamSocket
- dns._trio_backend._NetworkBackend
- dns._trio_backend._HTTPTransport
- dns.node.NodeKind
- dns.node.Node
- dns.node.ImmutableNode
- dns.transaction.TransactionManager
- dns.transaction.DeleteNotExact
- dns.transaction.ReadOnly
- dns.transaction.AlreadyEnded
- dns.transaction.Transaction
- dns.rdtypes.tlsabase.TLSABase
- dns.rdtypes.ANY.SMIMEA.SMIMEA
- dns.rdtypes.util.Gateway
- dns.rdtypes.util.Bitmap
- dns.rdtypes.svcbbase.UnknownParamKey
- dns.rdtypes.svcbbase.ParamKey
- dns.rdtypes.svcbbase.Emptiness
- dns.rdtypes.svcbbase.Param
- dns.rdtypes.svcbbase.GenericParam
- dns.rdtypes.svcbbase.MandatoryParam
- dns.rdtypes.svcbbase.ALPNParam
- dns.rdtypes.svcbbase.NoDefaultALPNParam
- dns.rdtypes.svcbbase.PortParam
- dns.rdtypes.svcbbase.IPv4HintParam
- dns.rdtypes.svcbbase.IPv6HintParam
- dns.rdtypes.svcbbase.ECHParam
- dns.rdtypes.svcbbase.OHTTPParam
- dns.rdtypes.svcbbase.SVCBBase
- dns.zonetypes.DigestScheme
- dns.zonetypes.DigestHashAlgorithm
- dns.rdtypes.ANY.ZONEMD.ZONEMD
- dns.zonefile.UnknownOrigin
- dns.zonefile.CNAMEAndOtherData
- dns.zonefile.Reader
- dns.zonefile.RRsetsReaderTransaction
- dns.zonefile.RRSetsReaderManager
- dns.zone.BadZone
- dns.zone.NoSOA
- dns.zone.NoNS
- dns.zone.UnknownOrigin
- dns.zone.UnsupportedDigestScheme
- dns.zone.UnsupportedDigestHashAlgorithm
- dns.zone.NoDigest
- dns.zone.DigestVerificationFailure
- dns.zone.Zone
- dns.zone.VersionedNode
- dns.zone.ImmutableVersionedNode
- dns.zone.Version
- dns.zone.WritableVersion
- dns.zone.ImmutableVersion
- dns.zone.Transaction
- dns.xfr.TransferError
- dns.xfr.SerialWentBackwards
- dns.xfr.UseTCP
- dns.xfr.Inbound
- dns._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._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.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.ANY.URI.URI
- dns.rdtypes.ANY.DNAME.DNAME
- dns.rdtypes.ANY.GPOS.GPOS
- dns.rdtypes.ANY.SSHFP.SSHFP
- dns.rdtypes.ANY.AMTRELAY.Relay
- dns.rdtypes.ANY.AMTRELAY.AMTRELAY
- dns.rdtypes.ANY.HINFO.HINFO
- dns.rdtypes.ANY.NS.NS
- dns.rdtypes.ANY.CAA.CAA
- dns.rdtypes.ANY.NID.NID
- dns.rdtypes.ANY.EUI64.EUI64
- dns.rdtypes.ANY.RP.RP
- dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY
- dns.rdtypes.ANY.CNAME.CNAME
- dns.rdtypes.ANY.L64.L64
- dns.rdtypes.ANY.ISDN.ISDN
- dns.rdtypes.ANY.EUI48.EUI48
- dns.rdtypes.ANY.RT.RT
- dns.rdtypes.ANY.NINFO.NINFO
- dns.rdtypes.ANY.LP.LP
- dns.rdtypes.ANY.TXT.TXT
- dns.rdtypes.ANY.RESINFO.RESINFO
- dns.rdtypes.ANY.HIP.HIP
- dns.rdtypes.ANY.TLSA.TLSA
- dns.rdtypes.ANY.L32.L32
- dns.rdtypes.ANY.DSYNC.UnknownScheme
- dns.rdtypes.ANY.DSYNC.Scheme
- dns.rdtypes.ANY.DSYNC.DSYNC
- dns.rdtypes.ANY.CERT.CERT
- dns.rdtypes.ANY.LOC.LOC
- dns.rdtypes.ANY.MX.MX
- dns.rdtypes.ANY.AVC.AVC
- dns.rdtypes.ANY.NSEC3.Bitmap
- dns.rdtypes.ANY.NSEC3.NSEC3
- dns.rdtypes.ANY.CSYNC.Bitmap
- dns.rdtypes.ANY.CSYNC.CSYNC
- dns.rdtypes.ANY.WALLET.WALLET
- dns.rdtypes.ANY.TKEY.TKEY
- dns.rdtypes.ANY.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.Fuzz
    - '...fuzz_token.main'
    - atheris.instrument_all
    - atheris.Setup
    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
    - dns.tokenizer.Tokenizer
    - <builtin>.iter
    - atheris.FuzzedDataProvider
    - fdp.ConsumeUnicodeNoSurrogates
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.FuzzedDataProvider
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeUnicodeNoSurrogates
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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: 205
    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.Fuzz
    - atheris.instrument_all
    - atheris.Setup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970b0e1b20>
    - <ast.Constant object at 0x7f970b0e1280>
    - <ast.Constant object at 0x7f970b0e10a0>
    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: 477
    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:
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - <builtin>.int
    - <builtin>.len
    - <builtin>.chr
    - c3.isdigit
    - c.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: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 546
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 195
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 307
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 186
    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:
    - dns.tokenizer.Token.__init__
    - c2.isdigit
    - <builtin>.int
    - <builtin>.len
    - <builtin>.bytes
    - c.encode
    - c3.isdigit
    - c.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: 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 0x7f970ad9c0a0>
    - <ast.Constant object at 0x7f970ad9c3d0>
    - <ast.Constant object at 0x7f970ad9c760>
    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:
    - f.decode
    - io.StringIO
    - <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 0x7f970a448370>
    - <ast.Constant object at 0x7f970a448e80>
    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.skip_whitespace
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    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.skip_whitespace
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_eof
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 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 0x7f970a585790>
    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:
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.skip_whitespace
    - c2.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer.as_int
    - <builtin>.int
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.unescape
    - <builtin>.chr
    - dns.tokenizer.Token.is_comment
    - token.value.isdigit
    - c3.isdigit
    - c.isdigit
    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 0x7f970aaa5c40>
    argNames:
    - self
    - token
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 625
    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:
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.skip_whitespace
    - c2.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer.as_int
    - <builtin>.int
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.chr
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Token.is_comment
    - token.value.isdigit
    - c3.isdigit
    - c.isdigit
    - dns.tokenizer.Tokenizer.as_uint8
    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: 639
    functionName: dns.tokenizer.Tokenizer.as_uint8
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Tokenizer.as_int
    - 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: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5859d0>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 508
    functionName: dns.tokenizer.Tokenizer.get_uint16
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.skip_whitespace
    - c2.isdigit
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer.as_int
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.int
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.chr
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer.as_uint16
    - token.value.isdigit
    - c3.isdigit
    - c.isdigit
    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 0x7f970a472580>
    argNames:
    - self
    - token
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 652
    functionName: dns.tokenizer.Tokenizer.as_uint16
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Tokenizer.as_int
    - 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: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5ceaf0>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 519
    functionName: dns.tokenizer.Tokenizer.get_uint32
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.skip_whitespace
    - c2.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer.as_int
    - <builtin>.int
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.unescape
    - <builtin>.chr
    - dns.tokenizer.Token.is_comment
    - token.value.isdigit
    - c3.isdigit
    - c.isdigit
    - dns.tokenizer.Tokenizer.as_uint32
    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 0x7f970abcefd0>
    argNames:
    - self
    - token
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 672
    functionName: dns.tokenizer.Tokenizer.as_uint32
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Tokenizer.as_int
    - 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: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5cecd0>
    argNames:
    - self
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 530
    functionName: dns.tokenizer.Tokenizer.get_uint48
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.skip_whitespace
    - c2.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer.as_int
    - dns.tokenizer.Tokenizer.as_uint48
    - <builtin>.int
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.unescape
    - <builtin>.chr
    - dns.tokenizer.Token.is_comment
    - token.value.isdigit
    - c3.isdigit
    - c.isdigit
    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 0x7f970a6b2580>
    argNames:
    - self
    - token
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 687
    functionName: dns.tokenizer.Tokenizer.as_uint48
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Tokenizer.as_int
    - 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: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5cebb0>
    argNames:
    - self
    - max_length
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 541
    functionName: dns.tokenizer.Tokenizer.get_string
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.skip_whitespace
    - c2.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Token.is_quoted_string
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.int
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.unescape
    - <builtin>.chr
    - dns.tokenizer.Token.is_comment
    - c3.isdigit
    - dns.tokenizer.Tokenizer.as_string
    - c.isdigit
    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 0x7f970ab7f580>
    argNames:
    - self
    - token
    - max_length
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 702
    functionName: dns.tokenizer.Tokenizer.as_string
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Token.is_quoted_string
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 553
    functionName: dns.tokenizer.Tokenizer.get_identifier
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.skip_whitespace
    - c2.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.int
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.chr
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer.as_identifier
    - c3.isdigit
    - c.isdigit
    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: 718
    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 0x7f970a683130>
    argNames:
    - self
    - max_tokens
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 563
    functionName: dns.tokenizer.Tokenizer.get_remaining
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Tokenizer._get_char
    - tokens.append
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer.unget
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970acdb7f0>
    argNames:
    - self
    - allow_empty
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 582
    functionName: dns.tokenizer.Tokenizer.concatenate_remaining_identifiers
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer.skip_whitespace
    - c2.isdigit
    - dns.tokenizer.Token.is_identifier
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Token.is_eol_or_eof
    - <builtin>.int
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.unescape
    - <builtin>.chr
    - dns.tokenizer.Token.is_comment
    - c3.isdigit
    - c.isdigit
    - dns.tokenizer.Tokenizer.unget
    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 0x7f970aaa5af0>
    - <ast.Constant object at 0x7f970aaa53a0>
    - <ast.Constant object at 0x7f970aaa56d0>
    argNames:
    - self
    - token
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 607
    functionName: dns.tokenizer.Tokenizer.as_name
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - name.choose_relativity
    - dns.name.Name.__init__
    - dns.tokenizer.Token.is_identifier
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 18
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 26
    ICount: 5
    IfCount: 18
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7f970a6a7d90>
    - <ast.Constant object at 0x7f970a6a7a90>
    argNames:
    - text
    - origin
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 985
    functionName: dns.name.from_text
    functionSourceFile: <builtin>
    functionUses: 159
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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 0x7f970a7c4c40>
    - <ast.Constant object at 0x7f970a7c42b0>
    - <ast.Constant object at 0x7f970a7c4d00>
    argNames:
    - self
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 730
    functionName: dns.tokenizer.Tokenizer.get_name
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.tokenizer.Tokenizer.skip_whitespace
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.tokenizer.Tokenizer.as_name
    - dns.tokenizer.Token.is_whitespace
    - name.choose_relativity
    - dns.name.Name.__init__
    - dns.tokenizer.Token.is_identifier
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.ord
    - <builtin>.len
    - dns.tokenizer.Token.is_comment
    - labels.extend
    - dns.tokenizer.Token.__init__
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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: 746
    functionName: dns.tokenizer.Tokenizer.get_eol_as_token
    functionSourceFile: dns.tokenizer
    functionUses: 1
    functionsReached:
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 760
    functionName: dns.tokenizer.Tokenizer.get_eol
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.__init__
    - dns.tokenizer.Tokenizer._unget_char
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Token.is_eol_or_eof
    - dns.tokenizer.Tokenizer._get_char
    - dns.tokenizer.Token.is_whitespace
    - dns.tokenizer.Token.is_comment
    - dns.tokenizer.Tokenizer.get_eol_as_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 763
    functionName: dns.tokenizer.Tokenizer.get_ttl
    functionSourceFile: dns.tokenizer
    functionUses: 0
    functionsReached:
    - dns.tokenizer.Token.__init__
    - c.lower
    - c2.isdigit
    - dns.tokenizer.Tokenizer.skip_whitespace
    - dns.tokenizer.Token.is_identifier
    - dns.ttl.from_text
    - dns.tokenizer.Tokenizer.get
    - dns.tokenizer.Tokenizer._unget_char
    - <builtin>.int
    - dns.tokenizer.Tokenizer._get_char
    - <builtin>.len
    - dns.tokenizer.Token.is_whitespace
    - <builtin>.chr
    - dns.tokenizer.Token.unescape
    - dns.tokenizer.Token.is_comment
    - c3.isdigit
    - text.isdigit
    - c.isdigit
    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: 29
    functionsReached:
    - c.lower
    - <builtin>.int
    - <builtin>.len
    - text.isdigit
    - c.isdigit
    linkageType: pythonLinkage
    raised:
    - BadTTL
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.ttl
    functionSourceFile: dns.ttl
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.isdigit
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: c.lower
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 84
    functionName: dns.ttl.make
    functionSourceFile: dns.ttl
    functionUses: 22
    functionsReached:
    - c.lower
    - dns.ttl.from_text
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.len
    - text.isdigit
    - c.isdigit
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.exception
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.set
    functionSourceFile: <builtin>
    functionUses: 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: 55
    functionName: dns.exception.DNSException.__init__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - dns.exception.DNSException._check_kwargs
    - <builtin>.set
    - <builtin>.bool
    - dns.exception.DNSException._check_params
    - kwargs.keys
    - <builtin>.str
    - <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: 1
    functionLinenumber: 71
    functionName: dns.exception.DNSException._check_params
    functionSourceFile: dns.exception
    functionUses: 1
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: dns.exception.DNSException._check_kwargs
    functionSourceFile: dns.exception
    functionUses: 1
    functionsReached:
    - kwargs.keys
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.str
    functionSourceFile: <builtin>
    functionUses: 80
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.dict
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 398
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bool
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.keys
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: dns.exception.DNSException._fmt_kwargs
    functionSourceFile: dns.exception
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - kwargs.items
    - <builtin>.len
    - <builtin>.list
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.map
    functionSourceFile: <builtin>
    functionUses: 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: 105
    functionName: dns.exception.DNSException.__str__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - kwargs.items
    - <builtin>.len
    - dns.exception.DNSException._fmt_kwargs
    - <builtin>.list
    - <builtin>.map
    - <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: 139
    functionName: dns.exception.Timeout.__init__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - exception_class
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 160
    functionName: dns.exception.ExceptionWrapper.__init__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 163
    functionName: dns.exception.ExceptionWrapper.__enter__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 166
    functionName: dns.exception.ExceptionWrapper.__exit__
    functionSourceFile: dns.exception
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.name
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - importlib.metadata.version
    - dns.name._maybe_convert_to_binary
    - label.encode
    - <builtin>.int
    - requirement.split
    - itertools.takewhile
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns._features._tuple_from_text
    - <builtin>.ord
    - dns.name.IDNA2003Codec.__init__
    - dns.name.IDNA2008Codec.__init__
    - <builtin>.len
    - _cache.get
    - <builtin>.isinstance
    - dns._features.have
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - dns._features._version_check
    - <builtin>.super
    - _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: 50
    functionName: dns._features.have
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached:
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - dns._features._version_check
    - _cache.get
    - itertools.takewhile
    - _requirements.get
    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: 66
    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: 70
    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: 134
    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: 146
    functionName: dns.name._escapify
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - <builtin>.chr
    - <builtin>.ord
    - <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>.ord
    functionSourceFile: <builtin>
    functionUses: 228
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - 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.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: 181
    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: 184
    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: 187
    functionName: dns.name.IDNACodec.decode
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.ord
    - dns.name.IDNACodec.is_idna
    - <builtin>.chr
    - dns.name._escapify
    - label.lower
    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 0x7f970a5734c0>
    argNames:
    - self
    - strict_decode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 202
    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: 213
    functionName: dns.name.IDNA2003Codec.encode
    functionSourceFile: dns.name
    functionUses: 161
    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: 162
    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: 223
    functionName: dns.name.IDNA2003Codec.decode
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.ord
    - <builtin>.chr
    - dns.name._escapify
    - encodings.idna.ToUnicode
    - <builtin>.super
    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 0x7f970b78ba60>
    - <ast.Constant object at 0x7f970b78b280>
    - <ast.Constant object at 0x7f970b78b220>
    - <ast.Constant object at 0x7f970b78bd30>
    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: 238
    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: 273
    functionName: dns.name.IDNA2008Codec.encode
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.is_all_ascii
    - idna.alabel
    - idna.uts46_remap
    - label.encode
    - <builtin>.ord
    - <builtin>.len
    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: 978
    functionName: dns.name.is_all_ascii
    functionSourceFile: dns.name
    functionUses: 161
    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: 189
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 294
    functionName: dns.name.IDNA2008Codec.decode
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - idna.ulabel
    - <builtin>.isinstance
    - idna.uts46_remap
    - <builtin>.ord
    - <builtin>.chr
    - dns.name._escapify
    - <builtin>.super
    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: 320
    functionName: dns.name._validate_labels
    functionSourceFile: dns.name
    functionUses: 188
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - label
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 350
    functionName: dns.name._maybe_convert_to_binary
    functionSourceFile: dns.name
    functionUses: 187
    functionsReached:
    - label.encode
    - <builtin>.isinstance
    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: 186
    functionsReached:
    - dns.name._validate_labels
    - <builtin>.isinstance
    - label.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <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: <builtin>.tuple
    functionSourceFile: <builtin>
    functionUses: 234
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: 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:
    - dns.name._validate_labels
    - <builtin>.isinstance
    - label.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.len
    - 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
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 384
    functionName: dns.name.Name.__deepcopy__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name._validate_labels
    - <builtin>.isinstance
    - copy.deepcopy
    - label.encode
    - <builtin>.len
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - 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: 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>.super
    - dns.name._validate_labels
    - <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: 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:
    - dns.name.Name.is_absolute
    - <builtin>.len
    - 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:
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - other.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 513
    functionName: dns.name.Name.is_superdomain
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - other.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 527
    functionName: dns.name.Name.canonicalize
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name._validate_labels
    - label.encode
    - x.lower
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.len
    - 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: 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.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - other.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 540
    functionName: dns.name.Name.__ne__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - other.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 546
    functionName: dns.name.Name.__lt__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - other.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 552
    functionName: dns.name.Name.__le__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - other.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 558
    functionName: dns.name.Name.__ge__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - other.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 564
    functionName: dns.name.Name.__gt__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.len
    - other.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 570
    functionName: dns.name.Name.__repr__
    functionSourceFile: dns.name
    functionUses: 0
    functionsReached:
    - dns.name.Name.is_absolute
    - <builtin>.len
    - dns.name.Name.__str__
    - dns.name.Name.to_text
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 573
    functionName: dns.name.Name.__str__
    functionSourceFile: dns.name
    functionUses: 1
    functionsReached:
    - <builtin>.map
    - dns.name.Name.is_absolute
    - <builtin>.len
    - dns.name.Name.to_text
    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 0x7f970a62bc70>
    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>.map
    - dns.name.Name.is_absolute
    - <builtin>.len
    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 0x7f970afe5b80>
    - <ast.Constant object at 0x7f970afe5e80>
    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:
    - <builtin>.isinstance
    - dns.name.Name.is_absolute
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.chr
    - dns.name.IDNA2003Codec.decode
    - dns.name._escapify
    - encodings.idna.ToUnicode
    - <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 0x7f970a7d6df0>
    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>.bytearray
    - out.append
    - dns.name._maybe_convert_to_binary
    - label.lower
    - label.encode
    - file.tell
    - <builtin>.list
    - dns.name.Name.__init__
    - compress.get
    - dns.name._validate_labels
    - dns.name.Name.is_absolute
    - <builtin>.len
    - <builtin>.bytes
    - labels.extend
    - dns.name.Name.to_wire
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.tuple
    - file.write
    - origin.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 8
    IfCount: 13
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a7d6fd0>
    - <ast.Constant object at 0x7f970a7d6760>
    - <ast.Constant object at 0x7f970a7d61f0>
    - <ast.Constant object at 0x7f970a7d6ca0>
    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>.bytearray
    - out.append
    - dns.name._maybe_convert_to_binary
    - label.lower
    - label.encode
    - file.tell
    - <builtin>.list
    - dns.name.Name.__init__
    - compress.get
    - dns.name._validate_labels
    - dns.name.Name.is_absolute
    - <builtin>.len
    - <builtin>.bytes
    - labels.extend
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.tuple
    - file.write
    - origin.is_absolute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bytearray
    functionSourceFile: <builtin>
    functionUses: 77
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: origin.is_absolute
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: labels.extend
    functionSourceFile: <builtin>
    functionUses: 171
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 287
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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._validate_labels
    - <builtin>.isinstance
    - label.encode
    - dns.name.Name.is_absolute
    - <builtin>.len
    - <builtin>.list
    - <builtin>.tuple
    - dns.name.Name.concatenate
    - dns.name._maybe_convert_to_binary
    - labels.extend
    - 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:
    - dns.name._validate_labels
    - <builtin>.isinstance
    - label.encode
    - dns.name.Name.is_absolute
    - <builtin>.len
    - <builtin>.list
    - <builtin>.tuple
    - dns.name._maybe_convert_to_binary
    - labels.extend
    - 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._validate_labels
    - <builtin>.isinstance
    - dns.name.Name.fullcompare
    - label.encode
    - dns.name.Name.is_absolute
    - dns.name.Name.relativize
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.is_subdomain
    - 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._validate_labels
    - <builtin>.isinstance
    - dns.name.Name.fullcompare
    - label.encode
    - dns.name.Name.is_absolute
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - other.is_absolute
    - <builtin>.len
    - dns.name.Name.is_subdomain
    - 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:
    - dns.name._validate_labels
    - <builtin>.isinstance
    - label.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.len
    - dns.name.Name.__init__
    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._validate_labels
    - <builtin>.isinstance
    - label.encode
    - dns.name.Name.is_absolute
    - <builtin>.len
    - <builtin>.list
    - <builtin>.tuple
    - dns.name.Name.concatenate
    - dns.name._maybe_convert_to_binary
    - labels.extend
    - 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 0x7f970b118790>
    - <ast.Constant object at 0x7f970b1188e0>
    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.derelativize
    - dns.name._validate_labels
    - <builtin>.isinstance
    - dns.name.Name.fullcompare
    - label.encode
    - dns.name.Name.is_absolute
    - dns.name.Name.relativize
    - other.is_absolute
    - <builtin>.list
    - <builtin>.tuple
    - dns.name.Name.concatenate
    - <builtin>.len
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.is_subdomain
    - labels.extend
    - 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:
    - dns.name._validate_labels
    - <builtin>.isinstance
    - label.encode
    - dns.name._maybe_convert_to_binary
    - <builtin>.tuple
    - <builtin>.len
    - dns.name.Name.__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 0x7f970a974df0>
    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:
    - dns.name._pad_to_max_name
    - <builtin>.bytearray
    - dns.name._wire_length
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.concatenate
    - dns.name.Name
    - new_labels.extend
    - <builtin>.reversed
    - result_name.relativize
    - label.encode
    - <builtin>.list
    - dns.name._pad_to_max_label
    - dns.name.Name.__init__
    - new_labels.append
    - dns.name._validate_labels
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.min
    - <builtin>.len
    - <builtin>.bytes
    - dns.name._absolute_predecessor
    - dns.name.Name.is_subdomain
    - dns.name._handle_relativity_and_call
    - labels.extend
    - dns.name.Name.derelativize
    - <builtin>.range
    - <builtin>.isinstance
    - functools.reduce
    - other.is_absolute
    - <builtin>.tuple
    - dns.name.Name.parent
    - origin.is_absolute
    - dns.name._absolute_successor
    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: 1271
    functionName: dns.name._handle_relativity_and_call
    functionSourceFile: dns.name
    functionUses: 2
    functionsReached:
    - dns.name._pad_to_max_name
    - <builtin>.bytearray
    - dns.name._wire_length
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.concatenate
    - dns.name.Name
    - new_labels.extend
    - <builtin>.reversed
    - result_name.relativize
    - label.encode
    - <builtin>.list
    - dns.name._pad_to_max_label
    - dns.name.Name.__init__
    - new_labels.append
    - dns.name._validate_labels
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.min
    - <builtin>.len
    - <builtin>.bytes
    - dns.name._absolute_predecessor
    - dns.name.Name.is_subdomain
    - labels.extend
    - dns.name.Name.derelativize
    - <builtin>.range
    - <builtin>.isinstance
    - functools.reduce
    - other.is_absolute
    - <builtin>.tuple
    - dns.name.Name.parent
    - origin.is_absolute
    - dns.name._absolute_successor
    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 0x7f970a974550>
    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:
    - dns.name._pad_to_max_name
    - <builtin>.bytearray
    - dns.name._wire_length
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.concatenate
    - dns.name.Name
    - new_labels.extend
    - <builtin>.reversed
    - result_name.relativize
    - label.encode
    - <builtin>.list
    - dns.name._pad_to_max_label
    - dns.name.Name.__init__
    - new_labels.append
    - dns.name._validate_labels
    - dns.name.Name.fullcompare
    - dns.name.Name.is_absolute
    - <builtin>.min
    - <builtin>.len
    - <builtin>.bytes
    - dns.name._absolute_predecessor
    - dns.name.Name.is_subdomain
    - dns.name._handle_relativity_and_call
    - labels.extend
    - dns.name.Name.derelativize
    - <builtin>.range
    - <builtin>.isinstance
    - functools.reduce
    - other.is_absolute
    - <builtin>.tuple
    - dns.name.Name.parent
    - origin.is_absolute
    - dns.name._absolute_successor
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 5
    IfCount: 17
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7f970aa04940>
    - <ast.Constant object at 0x7f970aa04d60>
    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: 160
    functionsReached:
    - <builtin>.isinstance
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - label.encode
    - labels.append
    - <builtin>.int
    - <builtin>.len
    - <builtin>.list
    - c.isdigit
    - <builtin>.tuple
    - <builtin>.chr
    - encodings.idna.ToASCII
    - dns.name._maybe_convert_to_binary
    - labels.extend
    - dns.name.Name.__init__
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: labels.append
    functionSourceFile: <builtin>
    functionUses: 166
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 219
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 160
    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: 1075
    functionName: dns.name.from_wire_parser
    functionSourceFile: dns.name
    functionUses: 8
    functionsReached:
    - dns.name._validate_labels
    - parser.restore_furthest
    - <builtin>.isinstance
    - parser.get_uint8
    - label.encode
    - labels.append
    - <builtin>.len
    - <builtin>.tuple
    - parser.seek
    - dns.name._maybe_convert_to_binary
    - parser.get_bytes
    - 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: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - message
    - current
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1108
    functionName: dns.name.from_wire
    functionSourceFile: dns.name
    functionUses: 6
    functionsReached:
    - <builtin>.isinstance
    - parser.restore_furthest
    - dns.wire.Parser
    - dns.name._validate_labels
    - parser.get_uint8
    - label.encode
    - contextlib.contextmanager
    - labels.append
    - <builtin>.len
    - <builtin>.tuple
    - parser.seek
    - dns.name._maybe_convert_to_binary
    - dns.name.from_wire_parser
    - parser.get_bytes
    - dns.name.Name.__init__
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.wire.Parser
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached:
    - contextlib.contextmanager
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - labels
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1145
    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: 1149
    functionName: dns.name._pad_to_max_name
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - dns.name._validate_labels
    - <builtin>.isinstance
    - functools.reduce
    - label.encode
    - dns.name._wire_length
    - dns.name._maybe_convert_to_binary
    - <builtin>.list
    - <builtin>.tuple
    - <builtin>.len
    - new_labels.append
    - new_labels.extend
    - dns.name.Name.__init__
    - <builtin>.reversed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 1165
    functionName: dns.name._pad_to_max_label
    functionSourceFile: dns.name
    functionUses: 4
    functionsReached:
    - functools.reduce
    - <builtin>.len
    - <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: 1176
    functionName: dns.name._absolute_predecessor
    functionSourceFile: dns.name
    functionUses: 3
    functionsReached:
    - dns.name._pad_to_max_name
    - <builtin>.bytearray
    - dns.name._wire_length
    - dns.name._maybe_convert_to_binary
    - new_labels.extend
    - <builtin>.reversed
    - label.encode
    - <builtin>.list
    - dns.name._pad_to_max_label
    - dns.name.Name.__init__
    - new_labels.append
    - dns.name._validate_labels
    - <builtin>.min
    - <builtin>.len
    - <builtin>.bytes
    - <builtin>.isinstance
    - functools.reduce
    - <builtin>.tuple
    - dns.name.Name.parent
    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: 1209
    functionName: dns.name._absolute_successor
    functionSourceFile: dns.name
    functionUses: 3
    functionsReached:
    - <builtin>.range
    - dns.name._validate_labels
    - <builtin>.isinstance
    - <builtin>.bytearray
    - label.encode
    - dns.name.Name.is_absolute
    - <builtin>.len
    - <builtin>.bytes
    - <builtin>.list
    - dns.name.Name.concatenate
    - <builtin>.tuple
    - dns.name.Name
    - dns.name._maybe_convert_to_binary
    - dns.name.Name.parent
    - new_labels.extend
    - labels.extend
    - 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: dns.name.Name
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <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 0x7f970ab52e20>
    - <ast.Name object at 0x7f970ab52880>
    argNames:
    - self
    - dictionary
    - no_copy
    - map_factory
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 11
    functionName: dns.immutable.Dict.__init__
    functionSourceFile: dns.immutable
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 30
    functionName: dns.immutable.Dict.__getitem__
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: dns.immutable.Dict.__hash__
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - <builtin>.hash
    - object.__setattr__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sorted
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hash
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: object.__setattr__
    functionSourceFile: <builtin>
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: dns.immutable.Dict.__len__
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 45
    functionName: dns.immutable.Dict.__iter__
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - o
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.immutable.constify
    functionSourceFile: dns.immutable
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.isinstance
    - <builtin>.hash
    - <builtin>.bytes
    - <builtin>.tuple
    - dns.immutable.Dict.__init__
    - o.items
    - dns.immutable.constify
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - <builtin>.super
    - _in__init__.get
    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:
    - <builtin>.super
    - _in__init__.get
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - f
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: dns._immutable_ctx._immutable_init
    functionSourceFile: dns._immutable_ctx
    functionUses: 2
    functionsReached:
    - inspect.signature
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 36
    functionName: dns._immutable_ctx._immutable_init.nf
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - _in__init__.set
    - dns._immutable_ctx.immutable.ncls.__init__
    - dns._immutable_ctx.immutable.ncls.__setstate__
    - <builtin>.super
    - _in__init__.reset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _in__init__.set
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 69
    functionName: dns._immutable_ctx.immutable.ncls.__setstate__
    functionSourceFile: dns._immutable_ctx
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: dns._immutable_ctx.immutable.ncls.__init__
    functionSourceFile: dns._immutable_ctx
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _in__init__.reset
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: inspect.signature
    functionSourceFile: inspect
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: dns._immutable_ctx.immutable
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - inspect.signature
    - <builtin>.hasattr
    - dns._immutable_ctx._immutable_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>.hasattr
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: dns._immutable_ctx.immutable.ncls
    functionSourceFile: dns._immutable_ctx
    functionUses: 0
    functionsReached:
    - inspect.signature
    - <builtin>.hasattr
    - dns._immutable_ctx._immutable_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.wire
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970aeaf070>
    argNames:
    - self
    - wire
    - current
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 14
    functionName: dns.wire.Parser.__init__
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.wire.Parser.seek
    - <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
    - where
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 69
    functionName: dns.wire.Parser.seek
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: dns.wire.Parser.remaining
    functionSourceFile: dns.wire
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.wire.Parser.get_bytes
    functionSourceFile: dns.wire
    functionUses: 7
    functionsReached:
    - dns.wire.Parser.remaining
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.max
    functionSourceFile: <builtin>
    functionUses: 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 0x7f970b74e370>
    argNames:
    - self
    - length_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 41
    functionName: dns.wire.Parser.get_counted_bytes
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - int.from_bytes
    - dns.wire.Parser.get_bytes
    - dns.wire.Parser.remaining
    - <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: int.from_bytes
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 45
    functionName: dns.wire.Parser.get_remaining
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.wire.Parser.get_bytes
    - dns.wire.Parser.remaining
    - <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: 48
    functionName: dns.wire.Parser.get_uint8
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.wire.Parser.get_bytes
    - struct.unpack
    - dns.wire.Parser.remaining
    - <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: 51
    functionName: dns.wire.Parser.get_uint16
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.wire.Parser.get_bytes
    - struct.unpack
    - dns.wire.Parser.remaining
    - <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: 54
    functionName: dns.wire.Parser.get_uint32
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.wire.Parser.get_bytes
    - struct.unpack
    - dns.wire.Parser.remaining
    - <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: 57
    functionName: dns.wire.Parser.get_uint48
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - int.from_bytes
    - dns.wire.Parser.get_bytes
    - dns.wire.Parser.remaining
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - format
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 60
    functionName: dns.wire.Parser.get_struct
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.wire.Parser.get_bytes
    - struct.unpack
    - dns.wire.Parser.remaining
    - struct.calcsize
    - <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.calcsize
    functionSourceFile: struct
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa2cc40>
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 63
    functionName: dns.wire.Parser.get_name
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - name.relativize
    - dns.name._validate_labels
    - parser.restore_furthest
    - <builtin>.isinstance
    - parser.get_uint8
    - label.encode
    - labels.append
    - <builtin>.len
    - <builtin>.tuple
    - parser.seek
    - dns.name._maybe_convert_to_binary
    - dns.name.from_wire_parser
    - parser.get_bytes
    - 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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: contextlib.contextmanager
    functionSourceFile: ''
    functionUses: 71
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 77
    functionName: dns.wire.Parser.restrict_to
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached:
    - dns.wire.Parser.remaining
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 94
    functionName: dns.wire.Parser.restore_furthest
    functionSourceFile: dns.wire
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 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__
    - enum.IntEnum.__name__.lower
    - <builtin>.isinstance
    - dns.enum.IntEnum._short_name
    - dns.enum.IntEnum._extra_to_text
    - dns.enum.IntEnum._check_value
    - dns.enum.IntEnum._prefix
    - dns.enum.IntEnum._maximum
    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:
    - dns.enum.IntEnum._maximum
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._short_name
    - <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: int.__new__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - value
    - current_text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 108
    functionName: dns.enum.IntEnum._extra_to_text
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 100
    functionName: dns.enum.IntEnum._prefix
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 92
    functionName: dns.enum.IntEnum._maximum
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: dns.enum.IntEnum._short_name
    functionSourceFile: dns.enum
    functionUses: 5
    functionsReached:
    - enum.IntEnum.__name__.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 43
    functionName: dns.enum.IntEnum.from_text
    functionSourceFile: dns.enum
    functionUses: 1
    functionsReached:
    - text.startswith
    - enum.IntEnum.__name__.lower
    - dns.enum.IntEnum._short_name
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.len
    - dns.enum.IntEnum._check_value
    - enum.IntEnum.__init__
    - dns.enum.IntEnum._extra_from_text
    - dns.enum.IntEnum._prefix
    - text.upper
    - dns.enum.IntEnum._maximum
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - enum.IntEnum.__name__.lower
    - <builtin>.isinstance
    - dns.enum.IntEnum._short_name
    - dns.enum.IntEnum._extra_to_text
    - dns.enum.IntEnum._check_value
    - enum.IntEnum.__init__
    - dns.enum.IntEnum._prefix
    - dns.enum.IntEnum._maximum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 72
    functionName: dns.enum.IntEnum.make
    functionSourceFile: dns.enum
    functionUses: 0
    functionsReached:
    - text.startswith
    - enum.IntEnum.__name__.lower
    - <builtin>.isinstance
    - dns.enum.IntEnum._short_name
    - <builtin>.int
    - dns.enum.IntEnum._prefix
    - <builtin>.len
    - dns.enum.IntEnum._check_value
    - enum.IntEnum.__init__
    - dns.enum.IntEnum._extra_from_text
    - dns.enum.IntEnum.from_text
    - text.upper
    - dns.enum.IntEnum._maximum
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 9
    functionName: dns._features._tuple_from_text
    functionSourceFile: dns._features
    functionUses: 10
    functionsReached:
    - <builtin>.int
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - itertools.takewhile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: version.split
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns._features._tuple_from_text.<lambda1>
    functionSourceFile: dns._features
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.takewhile
    functionSourceFile: itertools
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: int_parts.append
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - requirement
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 23
    functionName: dns._features._version_check
    functionSourceFile: dns._features
    functionUses: 9
    functionsReached:
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - itertools.takewhile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: requirement.split
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: importlib.metadata.version
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cache.get
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _requirements.get
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - feature
    - enabled
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: dns._features.force
    functionSourceFile: dns._features
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.renderer
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - contextlib.contextmanager
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - output
    - length_length
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: dns.renderer.prefixed_length
    functionSourceFile: dns.renderer
    functionUses: 6
    functionsReached:
    - output.tell
    - output.seek
    - length.to_bytes
    - 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: output.write
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: output.tell
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: output.seek
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: length.to_bytes
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa04d30>
    - <ast.Constant object at 0x7f970aa04ca0>
    - <ast.Constant object at 0x7f970aa04e50>
    - <ast.Constant object at 0x7f970aa04d00>
    argNames:
    - self
    - id
    - flags
    - max_size
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: dns.renderer.Renderer.__init__
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - io.BytesIO
    - random.randint
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO
    functionSourceFile: io
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: random.randint
    functionSourceFile: random
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - where
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: dns.renderer.Renderer._rollback
    functionSourceFile: dns.renderer
    functionUses: 9
    functionsReached:
    - keys_to_delete.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keys_to_delete.append
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 137
    functionName: dns.renderer.Renderer._set_section
    functionSourceFile: dns.renderer
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.renderer.Renderer
    functionSourceFile: dns.renderer
    functionUses: 1
    functionsReached:
    - contextlib.contextmanager
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 153
    functionName: dns.renderer.Renderer._track_size
    functionSourceFile: dns.renderer
    functionUses: 8
    functionsReached:
    - dns.renderer.Renderer._rollback
    - keys_to_delete.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - where
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 161
    functionName: dns.renderer.Renderer._temporarily_seek_to
    functionSourceFile: dns.renderer
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7f970b117850>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 169
    functionName: dns.renderer.Renderer.add_question
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.renderer.Renderer._track_size
    - dns.renderer.Renderer._rollback
    - struct.pack
    - dns.renderer.Renderer._set_section
    - qname.to_wire
    - 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: qname.to_wire
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - rrset
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 178
    functionName: dns.renderer.Renderer.add_rrset
    functionSourceFile: dns.renderer
    functionUses: 2
    functionsReached:
    - dns.renderer.Renderer._track_size
    - dns.renderer.Renderer._rollback
    - dns.renderer.Renderer._set_section
    - keys_to_delete.append
    - rrset.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: rrset.to_wire
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - section
    - name
    - rdataset
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 190
    functionName: dns.renderer.Renderer.add_rdataset
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.renderer.Renderer._track_size
    - dns.renderer.Renderer._rollback
    - dns.renderer.Renderer._set_section
    - rdataset.to_wire
    - 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: 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 0x7f970b118e50>
    - <ast.Constant object at 0x7f970b1185b0>
    - <ast.Constant object at 0x7f970b118d90>
    argNames:
    - self
    - opt
    - pad
    - opt_size
    - tsig_size
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 203
    functionName: dns.renderer.Renderer.add_opt
    functionSourceFile: dns.renderer
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.renderer.Renderer._set_section
    - dns.message.Message._make_opt
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - rrset.to_wire
    - text.encode
    - dns.renderer.Renderer.add_rrset
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdtypes.ANY.OPT.OPT
    - keys_to_delete.append
    - options.append
    - dns.name.Name.__init__
    - dns.renderer.Renderer._rollback
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - dns.edns.GenericOption
    - labels.extend
    - dns.renderer.Renderer._track_size
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.edns.GenericOption
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: options.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa423a0>
    - <ast.Name object at 0x7f970aa425e0>
    - <ast.Constant object at 0x7f970aa42c70>
    argNames:
    - flags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 788
    functionName: dns.message.Message._make_opt
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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 0x7f970a3711c0>
    argNames:
    - self
    - edns
    - ednsflags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 228
    functionName: dns.renderer.Renderer.add_edns
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.renderer.Renderer._set_section
    - dns.message.Message._make_opt
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - rrset.to_wire
    - text.encode
    - dns.renderer.Renderer.add_rrset
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdtypes.ANY.OPT.OPT
    - keys_to_delete.append
    - dns.renderer.Renderer.add_opt
    - options.append
    - dns.name.Name.__init__
    - dns.renderer.Renderer._rollback
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - dns.edns.GenericOption
    - labels.extend
    - dns.renderer.Renderer._track_size
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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 0x7f970a371f40>
    argNames:
    - self
    - keyname
    - secret
    - fudge
    - id
    - tsig_error
    - other_data
    - request_mac
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 239
    functionName: dns.renderer.Renderer.add_tsig
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.renderer.Renderer._set_section
    - dns.tsig.HMACTSig.update
    - r.update_ttl
    - dns.tsig.HMACTSig.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - length.to_bytes
    - output.write
    - keyname.to_wire
    - r.add
    - dns.renderer.prefixed_length
    - dns.tsig.GSSTSig.__init__
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - dns.renderer.Renderer._temporarily_seek_to
    - <builtin>.list
    - rdata.replace
    - keys_to_delete.append
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.renderer.Renderer._rollback
    - dns.name._validate_labels
    - dns.rdtypes.ANY.TSIG.TSIG
    - key.algorithm.to_digestable
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.sign
    - time.time
    - <builtin>.len
    - <builtin>.ord
    - dns.tsig.sign
    - dns.tsig.HMACTSig.sign
    - output.tell
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.renderer.Renderer._track_size
    - tsig.to_wire
    - dns.tsig._maybe_start_digest
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - dns.tsig._digest
    - dns.tsig.Key
    - labels.append
    - <builtin>.tuple
    - dns.renderer.Renderer._write_tsig
    - dns.message.Message._make_tsig
    - output.seek
    - dns.tsig.get_context
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.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: dns.tsig.Key
    functionSourceFile: <builtin>
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 8
    argDefaultValues: []
    argNames:
    - keyname
    - algorithm
    - time_signed
    - fudge
    - mac
    - original_id
    - error
    - other
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 664
    functionName: dns.message.Message._make_tsig
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.rdtypes.ANY.TSIG.TSIG
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.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: 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 0x7f970b7272e0>
    - <ast.Constant object at 0x7f970b727ca0>
    - <ast.Constant object at 0x7f970b7272b0>
    - <ast.Constant object at 0x7f970b727040>
    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._maybe_start_digest
    - dns.tsig.GSSTSig.__init__
    - struct.pack
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.update
    - dns.tsig._digest
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.sign
    - dns.tsig.HMACTSig.__init__
    - <builtin>.len
    - rdata.replace
    - dns.tsig.get_context
    - dns.tsig.HMACTSig.sign
    - key.name.to_digestable
    - hmac.new
    - dns.tsig.GSSTSig.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tsig
    - keyname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 299
    functionName: dns.renderer.Renderer._write_tsig
    functionSourceFile: dns.renderer
    functionUses: 2
    functionsReached:
    - dns.renderer.Renderer._track_size
    - tsig.to_wire
    - dns.renderer.prefixed_length
    - dns.renderer.Renderer._rollback
    - struct.pack
    - dns.renderer.Renderer._set_section
    - dns.renderer.Renderer._temporarily_seek_to
    - output.write
    - output.seek
    - keys_to_delete.append
    - length.to_bytes
    - output.tell
    - keyname.to_wire
    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 0x7f970aa54f70>
    argNames:
    - self
    - ctx
    - keyname
    - secret
    - fudge
    - id
    - tsig_error
    - other_data
    - request_mac
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 264
    functionName: dns.renderer.Renderer.add_multi_tsig
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.renderer.Renderer._set_section
    - dns.tsig.HMACTSig.update
    - r.update_ttl
    - dns.tsig.HMACTSig.__init__
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - length.to_bytes
    - output.write
    - keyname.to_wire
    - r.add
    - dns.renderer.prefixed_length
    - dns.tsig.GSSTSig.__init__
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - dns.renderer.Renderer._temporarily_seek_to
    - <builtin>.list
    - rdata.replace
    - keys_to_delete.append
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.renderer.Renderer._rollback
    - dns.name._validate_labels
    - dns.rdtypes.ANY.TSIG.TSIG
    - key.algorithm.to_digestable
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.tsig.GSSTSig.sign
    - time.time
    - <builtin>.len
    - <builtin>.ord
    - dns.tsig.sign
    - dns.tsig.HMACTSig.sign
    - output.tell
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.renderer.Renderer._track_size
    - tsig.to_wire
    - dns.tsig._maybe_start_digest
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - dns.tsig._digest
    - dns.tsig.Key
    - labels.append
    - <builtin>.tuple
    - dns.renderer.Renderer._write_tsig
    - dns.message.Message._make_tsig
    - output.seek
    - dns.tsig.get_context
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.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: keyname.to_wire
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tsig.to_wire
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 317
    functionName: dns.renderer.Renderer.write_header
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached:
    - dns.renderer.Renderer._temporarily_seek_to
    - 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: 338
    functionName: dns.renderer.Renderer.get_wire
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 343
    functionName: dns.renderer.Renderer.reserve
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 352
    functionName: dns.renderer.Renderer.release_reserved
    functionSourceFile: dns.renderer
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.edns
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: dns.edns.OptionType._maximum
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - otype
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: dns.edns.Option.__init__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - OptionType.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: OptionType.make
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970aab6730>
    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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 89
    functionName: dns.edns.Option.to_generic
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.GenericOption.to_wire
    - struct.pack
    - <builtin>.isinstance
    - dns.edns.EDEOption.to_wire
    - <builtin>.len
    - <builtin>.bytes
    - dns.edns.CookieOption.to_wire
    - file.write
    - value.encode
    - dns.edns.ReportChannelOption.to_wire
    - <builtin>.super
    - dns.edns.GenericOption.__init__
    - dns.rdata.Rdata._as_bytes
    - dns.edns.ECSOption.to_wire
    - dns.edns.NSIDOption.to_wire
    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 0x7f970a4899d0>
    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: 2
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970afd0a30>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 462
    functionName: dns.edns.CookieOption.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    functionsReached:
    - file.write
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970b724ee0>
    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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5cea00>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 492
    functionName: dns.edns.ReportChannelOption.to_wire
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970aeaa820>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 397
    functionName: dns.edns.EDEOption.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5519a0>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 301
    functionName: dns.edns.ECSOption.to_wire
    functionSourceFile: dns.edns
    functionUses: 8
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - otype
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 169
    functionName: dns.edns.GenericOption.__init__
    functionSourceFile: dns.edns
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.bytes
    - dns.rdata.Rdata._as_bytes
    - value.encode
    - <builtin>.super
    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.GenericOption.to_wire
    - struct.pack
    - dns.edns.EDEOption.to_wire
    - <builtin>.len
    - dns.edns.CookieOption.to_wire
    - file.write
    - dns.edns.ReportChannelOption.to_wire
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - dns.edns.NSIDOption.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other.to_wire
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 124
    functionName: dns.edns.Option.__eq__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.GenericOption.to_wire
    - <builtin>.isinstance
    - struct.pack
    - dns.edns.Option._cmp
    - dns.edns.EDEOption.to_wire
    - <builtin>.len
    - dns.edns.CookieOption.to_wire
    - file.write
    - dns.edns.ReportChannelOption.to_wire
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - dns.edns.NSIDOption.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: 3
    functionLinenumber: 131
    functionName: dns.edns.Option.__ne__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.GenericOption.to_wire
    - <builtin>.isinstance
    - struct.pack
    - dns.edns.Option._cmp
    - dns.edns.EDEOption.to_wire
    - <builtin>.len
    - dns.edns.CookieOption.to_wire
    - file.write
    - dns.edns.ReportChannelOption.to_wire
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - dns.edns.NSIDOption.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: 3
    functionLinenumber: 138
    functionName: dns.edns.Option.__lt__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.GenericOption.to_wire
    - <builtin>.isinstance
    - struct.pack
    - dns.edns.Option._cmp
    - dns.edns.EDEOption.to_wire
    - <builtin>.len
    - dns.edns.CookieOption.to_wire
    - file.write
    - dns.edns.ReportChannelOption.to_wire
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - dns.edns.NSIDOption.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: 3
    functionLinenumber: 143
    functionName: dns.edns.Option.__le__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.GenericOption.to_wire
    - <builtin>.isinstance
    - struct.pack
    - dns.edns.Option._cmp
    - dns.edns.EDEOption.to_wire
    - <builtin>.len
    - dns.edns.CookieOption.to_wire
    - file.write
    - dns.edns.ReportChannelOption.to_wire
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - dns.edns.NSIDOption.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: 3
    functionLinenumber: 148
    functionName: dns.edns.Option.__ge__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.GenericOption.to_wire
    - <builtin>.isinstance
    - struct.pack
    - dns.edns.Option._cmp
    - dns.edns.EDEOption.to_wire
    - <builtin>.len
    - dns.edns.CookieOption.to_wire
    - file.write
    - dns.edns.ReportChannelOption.to_wire
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - dns.edns.NSIDOption.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: 3
    functionLinenumber: 153
    functionName: dns.edns.Option.__gt__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.GenericOption.to_wire
    - <builtin>.isinstance
    - struct.pack
    - dns.edns.Option._cmp
    - dns.edns.EDEOption.to_wire
    - <builtin>.len
    - dns.edns.CookieOption.to_wire
    - file.write
    - dns.edns.ReportChannelOption.to_wire
    - other.to_wire
    - dns.edns.ECSOption.to_wire
    - dns.edns.NSIDOption.to_wire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 158
    functionName: dns.edns.Option.__str__
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.edns.Option.to_text
    - <builtin>.all
    - desc.split
    - <builtin>.len
    - word.title
    - binascii.hexlify
    - EDECode.to_text
    - dns.edns.ECSOption.to_text
    - dns.edns.ReportChannelOption.to_text
    - dns.edns.EDEOption.to_text
    - dns.edns.GenericOption.to_text
    - dns.edns.NSIDOption.to_text
    - dns.edns.CookieOption.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 384
    functionName: dns.edns.EDEOption.to_text
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - word.title
    - EDECode.to_text
    - desc.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 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: 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: 437
    functionName: dns.edns.NSIDOption.to_text
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - <builtin>.all
    - binascii.hexlify
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 471
    functionName: dns.edns.CookieOption.to_text
    functionSourceFile: dns.edns
    functionUses: 1
    functionsReached:
    - binascii.hexlify
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970acdb040>
    - <ast.Constant object at 0x7f970acdb0d0>
    - <ast.Constant object at 0x7f970acdbbe0>
    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>.bytes
    - <builtin>.len
    - <builtin>.isinstance
    - value.encode
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 183
    functionName: dns.edns.GenericOption.to_generic
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 187
    functionName: dns.edns.GenericOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 3
    functionsReached:
    - parser.get_remaining
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.bytes
    - dns.rdata.Rdata._as_bytes
    - value.encode
    - dns.edns.GenericOption.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.get_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 0x7f970a636a60>
    - <ast.Constant object at 0x7f970a636370>
    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.inet_ntoa
    - binascii.unhexlify
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_ipv6_address
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.inet_pton
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - dns.rdata.Rdata._as_int
    - dns.ipv4.canonicalize
    - m.group
    - dns.ipv6.canonicalize
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - dns.rdata.Rdata._as_ipv4_address
    - chunks.append
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - _leading_zero.match
    - math.ceil
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.super
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 75
    functionName: dns.inet.af_for_address
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 567
    functionName: dns.rdata.Rdata._as_ipv6_address
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached:
    - dns.ipv6.inet_ntoa
    - binascii.unhexlify
    - dns.ipv4.inet_ntoa
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv6.canonicalize
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - chunks.append
    - btext.endswith
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - _leading_zero.match
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970abcee80>
    - <ast.Constant object at 0x7f970abce130>
    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:
    - btext.split
    - part.isdigit
    - text.encode
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.int
    - <builtin>.ord
    - <builtin>.len
    - dns.ipv4.canonicalize
    - dns.ipv4.inet_aton
    - dns.ipv4.inet_ntoa
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - family
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 33
    functionName: dns.inet.inet_pton
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: math.ceil
    functionSourceFile: math
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 247
    functionName: dns.edns.ECSOption.from_text
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.ipv6.inet_ntoa
    - dns.edns.ECSOption.__init__
    - binascii.unhexlify
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_ipv6_address
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.inet_pton
    - ecs_text.split
    - _colon_colon_start.match
    - _colon_colon_end.match
    - <builtin>.int
    - btext.startswith
    - dns.ipv6.inet_aton
    - dns.rdata.Rdata._as_int
    - dns.ipv4.canonicalize
    - m.group
    - dns.ipv6.canonicalize
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - dns.rdata.Rdata._as_ipv4_address
    - chunks.append
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - _leading_zero.match
    - ecs_text.count
    - math.ceil
    - text.split
    - <builtin>.range
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.super
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.split
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ecs_text.count
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ecs_text.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 312
    functionName: dns.edns.ECSOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - dns.ipv6.inet_ntoa
    - dns.edns.ECSOption.__init__
    - binascii.unhexlify
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_ipv6_address
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.inet_pton
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - dns.rdata.Rdata._as_int
    - dns.ipv4.canonicalize
    - m.group
    - binascii.hexlify
    - dns.ipv6.canonicalize
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - dns.rdata.Rdata._as_ipv4_address
    - chunks.append
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - _leading_zero.match
    - math.ceil
    - parser.get_struct
    - <builtin>.range
    - struct.pack
    - <builtin>.isinstance
    - parser.get_bytes
    - <builtin>.super
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.get_struct
    functionSourceFile: <builtin>
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - address
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 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: 30
    functionName: dns.ipv6.inet_ntoa
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached:
    - <builtin>.range
    - chunks.append
    - <builtin>.len
    - m.group
    - _leading_zero.match
    - binascii.hexlify
    - dns.ipv4.inet_ntoa
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 360
    functionName: dns.edns.EDECode._maximum
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a764520>
    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:
    - <builtin>.super
    - EDECode.make
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: EDECode.make
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: EDECode.to_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: word.title
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: desc.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 409
    functionName: dns.edns.EDEOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.isinstance
    - EDECode.make
    - parser.get_uint16
    - text.decode
    - <builtin>.super
    - dns.edns.EDEOption.__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.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:
    - parser.get_remaining
    - dns.edns.NSIDOption.__init__
    - <builtin>.super
    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>.super
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 480
    functionName: dns.edns.CookieOption.from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.edns.CookieOption.__init__
    - <builtin>.len
    - parser.get_bytes
    - <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
    - 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:
    - <builtin>.super
    - parser.get_name
    - dns.edns.ReportChannelOption.__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.get_name
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - otype
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 514
    functionName: dns.edns.get_option_class
    functionSourceFile: dns.edns
    functionUses: 3
    functionsReached:
    - _type_to_class.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _type_to_class.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - otype
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 527
    functionName: dns.edns.option_from_wire_parser
    functionSourceFile: dns.edns
    functionUses: 2
    functionsReached:
    - parser.get_remaining
    - dns.edns.GenericOption.from_wire_parser
    - dns.edns.get_option_class
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.bytes
    - _type_to_class.get
    - dns.rdata.Rdata._as_bytes
    - value.encode
    - dns.edns.GenericOption.__init__
    - <builtin>.super
    - OptionType.make
    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:
    - parser.get_remaining
    - dns.edns.GenericOption.from_wire_parser
    - dns.edns.get_option_class
    - parser.restrict_to
    - <builtin>.isinstance
    - dns.wire.Parser
    - contextlib.contextmanager
    - <builtin>.len
    - <builtin>.bytes
    - _type_to_class.get
    - dns.rdata.Rdata._as_bytes
    - value.encode
    - dns.edns.GenericOption.__init__
    - dns.edns.option_from_wire_parser
    - <builtin>.super
    - 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: 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.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 0x7f970a4489d0>
    - <ast.Constant object at 0x7f970a448af0>
    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:
    - separator.join
    - data.decode
    - <builtin>.range
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970b0d3520>
    - <ast.Constant object at 0x7f970b0d3b20>
    argNames:
    - data
    - chunksize
    - separator
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 75
    functionName: dns.rdata._hexify
    functionSourceFile: dns.rdata
    functionUses: 13
    functionsReached:
    - <builtin>.range
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    - binascii.hexlify
    - 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 0x7f970b0d34f0>
    - <ast.Constant object at 0x7f970b0d3b50>
    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:
    - base64.b64encode
    - <builtin>.range
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    - data.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base64.b64encode
    functionSourceFile: base64
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - qstring
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: dns.rdata._escapify
    functionSourceFile: dns.rdata
    functionUses: 8
    functionsReached:
    - <builtin>.bytearray
    - <builtin>.chr
    - <builtin>.isinstance
    - qstring.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: qstring.encode
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 115
    functionName: dns.rdata._truncate_bitmap
    functionSourceFile: dns.rdata
    functionUses: 1
    functionsReached:
    - <builtin>.range
    - <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
    - 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.rdata.Rdata._as_rdatatype
    - dns.rdata.Rdata._as_rdataclass
    - dns.rdatatype.RdataType.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: 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:
    - object.__setattr__
    - <builtin>.hasattr
    - state.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: 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 0x7f970aee8970>
    - <ast.Constant object at 0x7f970aee8b20>
    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 0x7f970abc79d0>
    - <ast.Constant object at 0x7f970abc7c40>
    - <ast.Constant object at 0x7f970abc76d0>
    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 0x7f970abc7bb0>
    - <ast.Constant object at 0x7f970abc7e80>
    - <ast.Constant object at 0x7f970abc7d30>
    - <ast.Constant object at 0x7f970abc7c10>
    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:
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.GenericRdata._to_wire
    - io.BytesIO
    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 0x7f970b000730>
    - <ast.Constant object at 0x7f970b000250>
    - <ast.Constant object at 0x7f970b000040>
    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 0x7f970ab00af0>
    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:
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - dns.rdata.GenericRdata.__init__
    - file.write
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - <builtin>.super
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 623
    functionName: dns.rdata.GenericRdata.__init__
    functionSourceFile: dns.rdata
    functionUses: 62
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970ab008e0>
    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:
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 268
    functionName: dns.rdata.Rdata.__repr__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - RdataType.to_text
    - dns.rdataclass.to_text
    - RdataClass.to_text
    - <builtin>.str
    - dns.rdata.Rdata.covers
    - dns.rdatatype.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 184
    functionName: dns.rdatatype.to_text
    functionSourceFile: <builtin>
    functionUses: 70
    functionsReached:
    - RdataType.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: dns.rdataclass.to_text
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached:
    - RdataClass.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 285
    functionName: dns.rdata.Rdata.__str__
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - dns.rdata._hexify
    - <builtin>.range
    - dns.rdata.GenericRdata.to_text
    - data.decode
    - dns.rdata.Rdata.to_text
    - <builtin>.len
    - separator.join
    - binascii.hexlify
    - dns.rdata._wordbreak
    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 0x7f970a47dd60>
    - <ast.Constant object at 0x7f970a47ddc0>
    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:
    - dns.rdata._hexify
    - <builtin>.range
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    - binascii.hexlify
    - 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:
    - other.to_digestable
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other.to_digestable
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 338
    functionName: dns.rdata.Rdata.__eq__
    functionSourceFile: dns.rdata
    functionUses: 1
    functionsReached:
    - other.to_digestable
    - <builtin>.isinstance
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - io.BytesIO
    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:
    - other.to_digestable
    - <builtin>.isinstance
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.Rdata.__eq__
    - dns.rdata.Rdata.to_wire
    - dns.rdata.GenericRdata._to_wire
    - io.BytesIO
    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:
    - dns.rdata.Rdata._cmp
    - other.to_digestable
    - <builtin>.isinstance
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - io.BytesIO
    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:
    - dns.rdata.Rdata._cmp
    - other.to_digestable
    - <builtin>.isinstance
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - io.BytesIO
    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:
    - dns.rdata.Rdata._cmp
    - other.to_digestable
    - <builtin>.isinstance
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - io.BytesIO
    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:
    - dns.rdata.Rdata._cmp
    - other.to_digestable
    - <builtin>.isinstance
    - f.getvalue
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: 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:
    - f.getvalue
    - <builtin>.hash
    - dns.rdata.Rdata._to_wire
    - file.write
    - dns.rdata.Rdata.to_digestable
    - dns.rdata.GenericRdata._to_wire
    - dns.rdata.Rdata.to_wire
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970a3c8f10>
    - <ast.Constant object at 0x7f970a3c82e0>
    - <ast.Constant object at 0x7f970a3c8fa0>
    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 0x7f970a3c8280>
    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__
    - inspect.signature
    - kwargs.get
    - <builtin>.getattr
    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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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: 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: <builtin>
    functionUses: 8
    functionsReached:
    - btext.split
    - part.isdigit
    - text.encode
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.int
    - <builtin>.ord
    - <builtin>.len
    - dns.ipv4.inet_aton
    - dns.ipv4.inet_ntoa
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 209
    functionName: dns.ipv6.canonicalize
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached:
    - dns.ipv6.inet_ntoa
    - binascii.unhexlify
    - dns.ipv4.inet_ntoa
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - chunks.append
    - btext.endswith
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - _leading_zero.match
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    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: 1
    functionLinenumber: 578
    functionName: dns.rdata.Rdata._as_bool
    functionSourceFile: dns.rdata
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 585
    functionName: dns.rdata.Rdata._as_ttl
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - c.lower
    - dns.ttl.from_text
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.len
    - dns.rdata.Rdata._as_int
    - text.isdigit
    - c.isdigit
    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 0x7f970a47d310>
    - <ast.Constant object at 0x7f970a47d1f0>
    - <ast.Constant object at 0x7f970a47dcd0>
    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:
    - token.is_identifier
    - dns.rdata.GenericRdata.__init__
    - tok.get_int
    - tok.get
    - <builtin>.len
    - binascii.unhexlify
    - tok.concatenate_remaining_identifiers
    - <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
    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: 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: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970b000520>
    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 0x7f970a29f7c0>
    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
    - dns.rdata.GenericRdata.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a29f520>
    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:
    - rdtype_text.replace
    - RdataType.to_text
    - <builtin>.getattr
    - RdataClass.to_text
    - dns.rdataclass.to_text
    - _rdata_classes.get
    - dns.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 0x7f970a6281f0>
    argNames:
    - disable_dynamic_load
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 700
    functionName: dns.rdata.load_all_types
    functionSourceFile: dns.rdata
    functionUses: 0
    functionsReached:
    - rdtype_text.replace
    - RdataType.to_text
    - <builtin>.getattr
    - RdataClass.to_text
    - dns.rdataclass.to_text
    - _rdata_classes.get
    - dns.rdata.get_rdata_class
    - dns.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 0x7f970b042bb0>
    - <ast.Constant object at 0x7f970b042130>
    - <ast.Constant object at 0x7f970b042850>
    - <ast.Constant object at 0x7f970b0421c0>
    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:
    - object.__setattr__
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - tok.unget
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - token.is_identifier
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.wire.Parser
    - tok.get_eol_as_token
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - tok.concatenate_remaining_identifiers
    - parser.restrict_to
    - <builtin>.isinstance
    - <builtin>.getattr
    - tok.get
    - dns.rdata.from_wire_parser
    - <builtin>.super
    - dns.rdata.from_wire
    - dns.rdatatype.to_text
    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 0x7f970a733e80>
    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:
    - rdtype_text.replace
    - dns.rdataclass.to_text
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - dns.rdata.GenericRdata.__init__
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.wire.Parser
    - RdataClass.to_text
    - _rdata_classes.get
    - parser.restrict_to
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - <builtin>.super
    - dns.rdatatype.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970a401490>
    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:
    - rdtype_text.replace
    - parser.get_remaining
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - <builtin>.getattr
    - dns.exception.ExceptionWrapper
    - dns.rdata.GenericRdata.__init__
    - _rdata_classes.get
    - dns.rdataclass.to_text
    - RdataClass.to_text
    - dns.rdatatype.RdataType.make
    - dns.rdatatype.to_text
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - <builtin>.super
    - 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 0x7f970aa4f850>
    - <ast.Attribute object at 0x7f970aa4fd90>
    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:
    - rdtype_text.replace
    - RdataType.to_text
    - _singletons.add
    - <builtin>.isinstance
    - <builtin>.getattr
    - <builtin>.issubclass
    - dns.rdataclass.to_text
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.rdatatype.RdataType.make
    - dns.rdatatype.register_type
    - dns.rdatatype.is_metatype
    - dns.rdata.get_rdata_class
    - dns.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: 198
    functionName: dns.rdatatype.is_metatype
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.issubclass
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a29f3d0>
    argNames:
    - rdtype
    - rdtype_text
    - is_singleton
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 232
    functionName: dns.rdatatype.register_type
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - _singletons.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdatatype
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 115
    functionName: dns.rdatatype.RdataType._maximum
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: dns.rdatatype.RdataType._short_name
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 123
    functionName: dns.rdatatype.RdataType._prefix
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 127
    functionName: dns.rdatatype.RdataType._extra_from_text
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached:
    - _registered_by_text.get
    - text.replace
    - text.find
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.find
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.replace
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _registered_by_text.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - value
    - current_text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 136
    functionName: dns.rdatatype.RdataType._extra_to_text
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached:
    - _registered_by_value.get
    - current_text.find
    - current_text.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _registered_by_value.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: current_text.find
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: current_text.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 144
    functionName: dns.rdatatype.RdataType._unknown_exception_class
    functionSourceFile: dns.rdatatype
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 166
    functionName: dns.rdatatype.from_text
    functionSourceFile: dns.rdatatype
    functionUses: 12
    functionsReached:
    - RdataType.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: RdataType.from_text
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: RdataType.to_text
    functionSourceFile: <builtin>
    functionUses: 71
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdtype
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 212
    functionName: dns.rdatatype.is_singleton
    functionSourceFile: dns.rdatatype
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _singletons.add
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 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:
    - btext.split
    - part.isdigit
    - text.encode
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.ord
    - <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: 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: 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 0x7f970aa4f8b0>
    argNames:
    - text
    - ignore_scope
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 104
    functionName: dns.ipv6.inet_aton
    functionSourceFile: dns.ipv6
    functionUses: 85
    functionsReached:
    - btext.split
    - <builtin>.range
    - part.isdigit
    - text.encode
    - <builtin>.isinstance
    - struct.pack
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.endswith
    - btext.startswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.int
    - binascii.unhexlify
    - <builtin>.len
    - m.group
    - dns.ipv4.inet_aton
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: btext.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: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - address
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 198
    functionName: dns.ipv6.is_mapped
    functionSourceFile: dns.ipv6
    functionUses: 6
    functionsReached:
    - address.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: address.startswith
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 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.inet
    functionSourceFile: dns.inet
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - family
    - address
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 54
    functionName: dns.inet.inet_ntop
    functionSourceFile: dns.inet
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - chunks.append
    - dns.ipv6.inet_ntoa
    - <builtin>.len
    - m.group
    - _leading_zero.match
    - binascii.hexlify
    - dns.ipv4.inet_ntoa
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 97
    functionName: dns.inet.is_multicast
    functionSourceFile: dns.inet
    functionUses: 9
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 119
    functionName: dns.inet.is_address
    functionSourceFile: dns.inet
    functionUses: 24
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970b787280>
    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:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    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.inet_ntoa
    - binascii.unhexlify
    - dns.ipv4.inet_ntoa
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_end.match
    - _colon_colon_start.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - dns.ipv4.canonicalize
    - m.group
    - dns.ipv6.canonicalize
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - chunks.append
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - _leading_zero.match
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: -1
    functionName: dns.tsig
    functionSourceFile: dns.tsig
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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:
    - message.find_rrset
    - gssapi_context.step
    - <builtin>.isinstance
    - dns.tsig.GSSTSigAdapter.parse_tkey_and_step
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - key
    - message
    - keyname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 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:
    - hmac.new
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hmac.new
    functionSourceFile: hmac
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 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:
    - hmac.compare_digest
    - dns.tsig.HMACTSig.sign
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a48feb0>
    - <ast.Constant object at 0x7f970a48f280>
    - <ast.Constant object at 0x7f970a48f7f0>
    - <ast.Constant object at 0x7f970a48f790>
    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.GSSTSig.__init__
    - struct.pack
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.update
    - key.algorithm.to_digestable
    - dns.tsig.HMACTSig.__init__
    - <builtin>.len
    - dns.tsig.get_context
    - key.name.to_digestable
    - hmac.new
    - dns.tsig.GSSTSig.update
    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.GSSTSig.__init__
    - hmac.new
    - dns.tsig.HMACTSig.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.name.to_digestable
    functionSourceFile: <builtin>
    functionUses: 40
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.algorithm.to_digestable
    functionSourceFile: <builtin>
    functionUses: 40
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - key
    - mac
    - multi
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 248
    functionName: dns.tsig._maybe_start_digest
    functionSourceFile: dns.tsig
    functionUses: 39
    functionsReached:
    - dns.tsig.GSSTSig.__init__
    - struct.pack
    - <builtin>.isinstance
    - dns.tsig.HMACTSig.update
    - dns.tsig.HMACTSig.__init__
    - <builtin>.len
    - dns.tsig.get_context
    - dns.tsig.GSSTSig.update
    - hmac.new
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970afcc4c0>
    - <ast.Constant object at 0x7f970afcc190>
    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.update
    - dns.tsig.HMACTSig.__init__
    - hmac.compare_digest
    - dns.tsig.GSSTSig.__init__
    - struct.unpack
    - key.name.to_digestable
    - dns.tsig.HMACTSig.verify
    - key.algorithm.to_digestable
    - <builtin>.len
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - hmac.new
    - dns.tsig.GSSTSig.verify
    - dns.tsig._maybe_start_digest
    - struct.pack
    - <builtin>.isinstance
    - dns.tsig._digest
    - <builtin>.abs
    - dns.tsig.get_context
    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 0x7f970a3c8190>
    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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - base64.decodebytes
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - secret.encode
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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.rcode
    functionSourceFile: dns.rcode
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 71
    functionName: dns.rcode.Rcode._maximum
    functionSourceFile: dns.rcode
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 75
    functionName: dns.rcode.Rcode._unknown_exception_class
    functionSourceFile: dns.rcode
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 83
    functionName: dns.rcode.from_text
    functionSourceFile: dns.rcode
    functionUses: 5
    functionsReached:
    - Rcode.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Rcode.from_text
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - flags
    - ednsflags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: dns.rcode.from_flags
    functionSourceFile: dns.rcode
    functionUses: 5
    functionsReached:
    - Rcode.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Rcode.make
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: dns.rcode.to_flags
    functionSourceFile: dns.rcode
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970ad9c730>
    argNames:
    - value
    - tsig
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 129
    functionName: dns.rcode.to_text
    functionSourceFile: dns.rcode
    functionUses: 12
    functionsReached:
    - Rcode.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Rcode.to_text
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.namedict
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 45
    functionName: dns.namedict.NameDict.__init__
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.super
    - collections.abc.MutableMapping.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.abc.MutableMapping.update
    functionSourceFile: collections
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: dns.namedict.NameDict.__update_max_depth
    functionSourceFile: dns.namedict
    functionUses: 2
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: dns.namedict.NameDict.__getitem__
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.namedict.NameDict.__setitem__
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached:
    - dns.namedict.NameDict.__update_max_depth
    - <builtin>.isinstance
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 70
    functionName: dns.namedict.NameDict.__delitem__
    functionSourceFile: dns.namedict
    functionUses: 0
    functionsReached:
    - dns.namedict.NameDict.__update_max_depth
    - <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: 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>.range
    - dns.name.Name
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970acdb280>
    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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - dns.tsig.Key
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - textring.items
    - c.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: 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:
    - key.algorithm.to_text
    - <builtin>.isinstance
    - base64.encodebytes
    - <builtin>.str
    - dns.tsigkeyring.to_text.b64encode
    - name.to_text
    - 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:
    - dns._features.have
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - dns._features._version_check
    - _cache.get
    - itertools.takewhile
    - _requirements.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: 1
    functionLinenumber: 17
    functionName: dns._asyncio_backend._get_running_loop
    functionSourceFile: dns._asyncio_backend
    functionUses: 2
    functionsReached:
    - asyncio.get_running_loop
    - asyncio.get_event_loop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.get_running_loop
    functionSourceFile: asyncio
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.get_event_loop
    functionSourceFile: asyncio
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 25
    functionName: dns._asyncio_backend._DatagramProtocol.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - transport
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: dns._asyncio_backend._DatagramProtocol.connection_made
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - addr
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 32
    functionName: dns._asyncio_backend._DatagramProtocol.datagram_received
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - exc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: dns._asyncio_backend._DatagramProtocol.error_received
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - exc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 40
    functionName: dns._asyncio_backend._DatagramProtocol.connection_lost
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - EOFError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 51
    functionName: dns._asyncio_backend._DatagramProtocol.close
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - awaitable
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: dns._asyncio_backend._maybe_wait_for
    functionSourceFile: dns._asyncio_backend
    functionUses: 5
    functionsReached:
    - asyncio.wait_for
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.wait_for
    functionSourceFile: asyncio
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - family
    - transport
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: dns._asyncio_backend.DatagramSocket.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - what
    - destination
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: dns._asyncio_backend.DatagramSocket.sendto
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: dns._asyncio_backend.DatagramSocket.recvfrom
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncio_backend._maybe_wait_for
    - asyncio.get_event_loop
    - dns._asyncio_backend._get_running_loop
    - done.result
    - asyncio.wait_for
    - 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: done.result
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: dns._asyncio_backend.DatagramSocket.close
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 91
    functionName: dns._asyncio_backend.DatagramSocket.getpeername
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 94
    functionName: dns._asyncio_backend.DatagramSocket.getsockname
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 97
    functionName: dns._asyncio_backend.DatagramSocket.getpeercert
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - af
    - reader
    - writer
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: dns._asyncio_backend.StreamSocket.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - what
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 107
    functionName: dns._asyncio_backend.StreamSocket.sendall
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncio_backend._maybe_wait_for
    - asyncio.wait_for
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 111
    functionName: dns._asyncio_backend.StreamSocket.recv
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncio_backend._maybe_wait_for
    - asyncio.wait_for
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 114
    functionName: dns._asyncio_backend.StreamSocket.close
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 117
    functionName: dns._asyncio_backend.StreamSocket.getpeername
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 120
    functionName: dns._asyncio_backend.StreamSocket.getsockname
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 123
    functionName: dns._asyncio_backend.StreamSocket.getpeercert
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - resolver
    - local_port
    - bootstrap_address
    - family
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 139
    functionName: dns._asyncio_backend._NetworkBackend.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f970a7c4a30>
    - <ast.Constant object at 0x7f970a7c4c70>
    - <ast.Constant object at 0x7f970a7c4460>
    argNames:
    - self
    - host
    - port
    - timeout
    - local_address
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 150
    functionName: dns._asyncio_backend._NetworkBackend.connect_tcp
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns.query._remaining
    - binascii.unhexlify
    - btext.split
    - anyio.fail_after
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - answers.addresses
    - dns.ipv6.inet_aton
    - m.group
    - dns.query._compute_times
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - btext.endswith
    - anyio.connect_tcp
    - _v4_ending.match
    - time.time
    - httpcore._backends.anyio.AnyIOStream
    - <builtin>.len
    - <builtin>.ord
    - <builtin>.min
    - addresses.append
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - dns.query._expiration_for_this_attempt
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - timeout
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 208
    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: 53
    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: 62
    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 0x7f970a472460>
    - <ast.Constant object at 0x7f970a472c70>
    argNames:
    - self
    - path
    - timeout
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 183
    functionName: dns._asyncio_backend._NetworkBackend.connect_unix_socket
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - seconds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 188
    functionName: dns._asyncio_backend._NetworkBackend.sleep
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - anyio.sleep
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: anyio.sleep
    functionSourceFile: anyio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - args
    - local_port
    - bootstrap_address
    - resolver
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 192
    functionName: dns._asyncio_backend._HTTPTransport.__init__
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.asyncresolver.Resolver
    - dns._asyncio_backend._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.asyncresolver.Resolver
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 216
    functionName: dns._asyncio_backend.Backend.name
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f970a47d040>
    - <ast.Constant object at 0x7f970a47d280>
    - <ast.Constant object at 0x7f970a47dfd0>
    - <ast.Constant object at 0x7f970a47d220>
    - <ast.Constant object at 0x7f970a47dc40>
    - <ast.Constant object at 0x7f970a47dd60>
    argNames:
    - self
    - af
    - socktype
    - proto
    - source
    - destination
    - timeout
    - ssl_context
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 219
    functionName: dns._asyncio_backend.Backend.make_socket
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncio_backend._maybe_wait_for
    - asyncio.get_event_loop
    - dns._asyncio_backend._get_running_loop
    - loop.create_datagram_endpoint
    - dns._asyncio_backend.StreamSocket.__init__
    - asyncio.open_connection
    - asyncio.wait_for
    - dns.inet.any_for_af
    - <builtin>.super
    - asyncio.get_running_loop
    - dns._asyncio_backend.DatagramSocket.__init__
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    - 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: loop.create_datagram_endpoint
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.open_connection
    functionSourceFile: asyncio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - interval
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 266
    functionName: dns._asyncio_backend.Backend.sleep
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - asyncio.sleep
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.sleep
    functionSourceFile: asyncio
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 269
    functionName: dns._asyncio_backend.Backend.datagram_connection_required
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 272
    functionName: dns._asyncio_backend.Backend.get_transport_class
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - awaitable
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 275
    functionName: dns._asyncio_backend.Backend.wait_for
    functionSourceFile: dns._asyncio_backend
    functionUses: 0
    functionsReached:
    - dns._asyncio_backend._maybe_wait_for
    - asyncio.wait_for
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.query
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns._features.have
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - dns._features._version_check
    - _cache.get
    - itertools.takewhile
    - _requirements.get
    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: 77
    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 0x7f970aab6eb0>
    - <ast.Constant object at 0x7f970aab63a0>
    - <ast.Constant object at 0x7f970aab65e0>
    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: 84
    functionName: dns.query._NetworkBackend.connect_tcp
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns.query._wait_for_writable
    - dns.query._remaining
    - binascii.unhexlify
    - s.setblocking
    - dns.query._wait_for
    - selectors.DefaultSelector
    - sel.register
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - s.getsockopt
    - <builtin>.int
    - answers.addresses
    - dns.ipv6.inet_aton
    - dns.query.make_socket
    - m.group
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - s.connect_ex
    - dns.inet.af_for_address
    - address.find
    - s.bind
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - time.time
    - <builtin>.len
    - s.close
    - <builtin>.min
    - <builtin>.ord
    - addresses.append
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - sel.select
    - struct.pack
    - dns.query._expiration_for_this_attempt
    - fd.pending
    - canonical.append
    - dns.query._connect
    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 0x7f970a937910>
    argNames:
    - af
    - type
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 324
    functionName: dns.query.make_socket
    functionSourceFile: dns.query
    functionUses: 11
    functionsReached:
    - s.setblocking
    - s.close
    - 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: 1193
    functionName: dns.query._connect
    functionSourceFile: dns.query
    functionUses: 8
    functionsReached:
    - dns.query._wait_for_writable
    - sel.select
    - <builtin>.isinstance
    - fd.pending
    - s.getsockopt
    - time.time
    - selectors.DefaultSelector
    - dns.query._wait_for
    - sel.register
    - s.connect_ex
    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 0x7f970a5b0ac0>
    - <ast.Constant object at 0x7f970a5b0c70>
    argNames:
    - self
    - path
    - timeout
    - socket_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 125
    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: 153
    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: 164
    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: 171
    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: 216
    functionName: dns.query._wait_for
    functionSourceFile: dns.query
    functionUses: 22
    functionsReached:
    - sel.select
    - <builtin>.isinstance
    - time.time
    - selectors.DefaultSelector
    - fd.pending
    - sel.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 244
    functionName: dns.query._wait_for_readable
    functionSourceFile: dns.query
    functionUses: 16
    functionsReached:
    - sel.select
    - <builtin>.isinstance
    - time.time
    - selectors.DefaultSelector
    - dns.query._wait_for
    - fd.pending
    - sel.register
    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: 248
    functionName: dns.query._wait_for_writable
    functionSourceFile: dns.query
    functionUses: 18
    functionsReached:
    - sel.select
    - <builtin>.isinstance
    - time.time
    - selectors.DefaultSelector
    - dns.query._wait_for
    - fd.pending
    - sel.register
    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: 252
    functionName: dns.query._addresses_equal
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.inet_pton
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - af
    - from_address
    - destination
    - ignore_unexpected
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 264
    functionName: dns.query._matches_destination
    functionSourceFile: dns.query
    functionUses: 8
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.inet_pton
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - dns.inet.is_multicast
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - dns.query._addresses_equal
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - UnexpectedSource
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a722160>
    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: 280
    functionName: dns.query._destination_and_source
    functionSourceFile: dns.query
    functionUses: 10
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - dns.inet.any_for_af
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.setblocking
    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: 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.close
    functionSourceFile: <builtin>
    functionUses: 14
    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 0x7f970a636940>
    - <ast.Constant object at 0x7f970a6364c0>
    argNames:
    - af
    - type
    - ssl_context
    - server_hostname
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 357
    functionName: dns.query.make_ssl_socket
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - ssl_context.wrap_socket
    - <builtin>.isinstance
    - s.bind
    - s.close
    - dns.query.make_socket
    - server_hostname.to_text
    - s.setblocking
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 400
    functionName: dns.query._make_socket
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - ssl_context.wrap_socket
    - <builtin>.isinstance
    - s.bind
    - s.close
    - dns.query.make_socket
    - server_hostname.to_text
    - s.setblocking
    - dns.query.make_ssl_socket
    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: 413
    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 0x7f970a9eaee0>
    - <ast.Constant object at 0x7f970a9ea9d0>
    - <ast.Constant object at 0x7f970a9eaeb0>
    - <ast.Constant object at 0x7f970a9eaca0>
    - <ast.Constant object at 0x7f970a9eafd0>
    - <ast.Constant object at 0x7f970a9ead90>
    - <ast.Constant object at 0x7f970a9eafa0>
    - <ast.Constant object at 0x7f970a9ea820>
    - <ast.Constant object at 0x7f970a9eaf70>
    - <ast.Constant object at 0x7f970a9eae50>
    - <ast.Constant object at 0x7f970a9ea9a0>
    - <ast.Constant object at 0x7f970a9eac10>
    - <ast.Attribute object at 0x7f970b982d00>
    - <ast.Attribute object at 0x7f970b4cea90>
    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: 443
    functionName: dns.query.https
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - dns.inet.is_address
    - dns.query._check_status
    - label.encode
    - dns.resolver.Resolver
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - resolver.resolve_name
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - dns.query._NetworkBackend.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - dns.query._HTTPTransport.__init__
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - scope.isdigit
    - q.to_wire
    - session.get
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.query._maybe_get_resolver
    - dns.tsig.GSSTSig.verify
    - dns.entropy.EntropyPool._maybe_seed
    - socket.if_nametoindex
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - canonical.append
    - dns.quic.SyncQuicManager
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - random.choice
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - answers.addresses
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - base64.urlsafe_b64encode
    - btext.endswith
    - _v4_ending.match
    - dns.query._destination_and_source
    - response.elapsed.total_seconds
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - stream.send_h3
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - stream.headers
    - stream.receive
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - session.post
    - dns.message.from_wire
    - dns.query._http3
    - wire.decode
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - headers.update
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - dns.query._find_header
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - httpx.Client
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlparse
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resolver.resolve_name
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: random.choice
    functionSourceFile: random
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7f970a82bc10>
    - <ast.Constant object at 0x7f970a82beb0>
    - <ast.Constant object at 0x7f970a82b5e0>
    - <ast.Constant object at 0x7f970a82bf70>
    - <ast.Constant object at 0x7f970a82bdc0>
    - <ast.Constant object at 0x7f970a82b490>
    - <ast.Constant object at 0x7f970a82b550>
    - <ast.Constant object at 0x7f970a82b460>
    - <ast.Constant object at 0x7f970a82bbe0>
    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: 676
    functionName: dns.query._http3
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - text.encode
    - dns.query._check_status
    - label.encode
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - <builtin>.abs
    - typing.cast
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.quic.SyncQuicManager
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - stream.send_h3
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - stream.headers
    - hmac.compare_digest
    - stream.receive
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - wire.decode
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - dns.query._find_header
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    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 0x7f970a97f0a0>
    - <ast.Constant object at 0x7f970a97f280>
    - <ast.Constant object at 0x7f970a97f7f0>
    - <ast.Constant object at 0x7f970a97f190>
    - <ast.Constant object at 0x7f970a97fd00>
    - <ast.Constant object at 0x7f970a97f8e0>
    - <ast.Constant object at 0x7f970a97f850>
    - <ast.Constant object at 0x7f970a97f430>
    - <ast.Constant object at 0x7f970a97fca0>
    - <ast.Constant object at 0x7f970a97f730>
    - <ast.Constant object at 0x7f970a97fd90>
    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: 1306
    functionName: dns.message.from_wire
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    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: 650
    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: 659
    functionName: dns.query._check_status
    functionSourceFile: dns.query
    functionUses: 6
    functionsReached:
    - wire.decode
    - dns.query._find_header
    - <builtin>.int
    - <builtin>.len
    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: 737
    functionName: dns.query._udp_recv
    functionSourceFile: dns.query
    functionUses: 7
    functionsReached:
    - sel.select
    - <builtin>.isinstance
    - dns.query._wait_for_readable
    - time.time
    - selectors.DefaultSelector
    - dns.query._wait_for
    - fd.pending
    - sock.recvfrom
    - sel.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 749
    functionName: dns.query._udp_send
    functionSourceFile: dns.query
    functionUses: 7
    functionsReached:
    - dns.query._wait_for_writable
    - sel.select
    - <builtin>.isinstance
    - time.time
    - dns.query._wait_for
    - sock.send
    - selectors.DefaultSelector
    - fd.pending
    - sock.sendto
    - sel.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a9d2400>
    argNames:
    - sock
    - what
    - destination
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 764
    functionName: dns.query.send_udp
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - dns.query._udp_send
    - dns.query._wait_for_writable
    - sel.select
    - <builtin>.isinstance
    - time.time
    - what.to_wire
    - dns.query._wait_for
    - selectors.DefaultSelector
    - sock.send
    - fd.pending
    - sock.sendto
    - sel.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a6b7a90>
    - <ast.Constant object at 0x7f970a6b7580>
    - <ast.Constant object at 0x7f970a6b7970>
    - <ast.Constant object at 0x7f970a6b77f0>
    - <ast.Constant object at 0x7f970a6b74c0>
    - <ast.Constant object at 0x7f970a6b7ee0>
    - <ast.Constant object at 0x7f970a6b73a0>
    - <ast.Constant object at 0x7f970a6b7790>
    - <ast.Constant object at 0x7f970a6b71c0>
    - <ast.Constant object at 0x7f970a6b7d30>
    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: 793
    functionName: dns.query.receive_udp
    functionSourceFile: dns.query
    functionUses: 3
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - label.encode
    - m.group
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - e.message
    - dns.inet.is_multicast
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - <builtin>.abs
    - typing.cast
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.recvfrom
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.inet.inet_pton
    - dns.opcode.from_flags
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - dns.query._udp_recv
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - sel.select
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.query._matches_destination
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - _colon_colon_start.match
    - btext.startswith
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - query.is_response
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.query._addresses_equal
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970b4c9e20>
    - <ast.Constant object at 0x7f970b4c9250>
    - <ast.Constant object at 0x7f970b4c9130>
    - <ast.Constant object at 0x7f970b4c9940>
    - <ast.Constant object at 0x7f970b4c90a0>
    - <ast.Constant object at 0x7f970b4c9b80>
    - <ast.Constant object at 0x7f970b4c96a0>
    - <ast.Constant object at 0x7f970b4c9490>
    - <ast.Constant object at 0x7f970b4c9220>
    - <ast.Constant object at 0x7f970b4c9df0>
    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: 899
    functionName: dns.query.udp
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - label.encode
    - dns.query.make_socket
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - e.message
    - dns.inet.is_multicast
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.sendto
    - sock.recvfrom
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.inet.inet_pton
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.query._udp_send
    - RdataType.to_text
    - s.bind
    - dns.wire.Parser
    - scope.isdigit
    - q.to_wire
    - s.close
    - dns.query._udp_recv
    - <builtin>.bytes
    - sock.send
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - socket.if_nametoindex
    - sel.select
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - s.setblocking
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.query._matches_destination
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.query._destination_and_source
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - query.is_response
    - dns.name.Name.__init__
    - dns.query.receive_udp
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.query._addresses_equal
    - dns.query.send_udp
    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 0x7f970a8a68b0>
    - <ast.Constant object at 0x7f970a8a6b80>
    - <ast.Constant object at 0x7f970a8a6af0>
    - <ast.Constant object at 0x7f970a8a63d0>
    - <ast.Constant object at 0x7f970a8a6f70>
    - <ast.Constant object at 0x7f970a8a6a00>
    - <ast.Constant object at 0x7f970a8a6c10>
    - <ast.Constant object at 0x7f970a8a6e50>
    - <ast.Constant object at 0x7f970a8a6a60>
    - <ast.Constant object at 0x7f970a8a6790>
    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: 991
    functionName: dns.query.udp_with_fallback
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - label.encode
    - s.getsockopt
    - sock.recv
    - dns.query.make_socket
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - e.message
    - dns.query.send_tcp
    - dns.inet.is_multicast
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.query.udp
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.sendto
    - sock.recvfrom
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.inet.inet_pton
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.query._udp_send
    - RdataType.to_text
    - s.bind
    - dns.wire.Parser
    - scope.isdigit
    - q.to_wire
    - s.close
    - dns.query._udp_recv
    - <builtin>.bytes
    - sock.send
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - socket.if_nametoindex
    - sel.select
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - s.setblocking
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.query._net_write
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.query._matches_destination
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.query._net_read
    - dns.query._destination_and_source
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.query.receive_tcp
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - dns.query.tcp
    - key.name.to_digestable
    - query.is_response
    - s.connect_ex
    - dns.name.Name.__init__
    - dns.query.receive_udp
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - dns.query._addresses_equal
    - dns.query.send_udp
    - dns.query._connect
    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 0x7f970af987c0>
    - <ast.Constant object at 0x7f970af98370>
    - <ast.Constant object at 0x7f970af98580>
    - <ast.Constant object at 0x7f970af98100>
    - <ast.Constant object at 0x7f970af98cd0>
    - <ast.Constant object at 0x7f970af98ac0>
    - <ast.Constant object at 0x7f970af98c70>
    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: 1204
    functionName: dns.query.tcp
    functionSourceFile: dns.query
    functionUses: 4
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - label.encode
    - s.getsockopt
    - sock.recv
    - dns.query.make_socket
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - dns.query.send_tcp
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - s.bind
    - dns.wire.Parser
    - scope.isdigit
    - q.to_wire
    - s.close
    - <builtin>.bytes
    - sock.send
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - socket.if_nametoindex
    - sel.select
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - s.setblocking
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.query._net_write
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.query._net_read
    - dns.query._destination_and_source
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.query.receive_tcp
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - s.connect_ex
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.query._connect
    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: 1079
    functionName: dns.query._net_read
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - dns.query._wait_for_writable
    - sel.select
    - <builtin>.isinstance
    - dns.query._wait_for_readable
    - sock.recv
    - time.time
    - <builtin>.len
    - selectors.DefaultSelector
    - dns.query._wait_for
    - fd.pending
    - sel.register
    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: 1100
    functionName: dns.query._net_write
    functionSourceFile: dns.query
    functionUses: 9
    functionsReached:
    - dns.query._wait_for_writable
    - sel.select
    - <builtin>.isinstance
    - dns.query._wait_for_readable
    - time.time
    - <builtin>.len
    - selectors.DefaultSelector
    - dns.query._wait_for
    - sock.send
    - fd.pending
    - sel.register
    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 0x7f970a5738e0>
    argNames:
    - sock
    - what
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1116
    functionName: dns.query.send_tcp
    functionSourceFile: dns.query
    functionUses: 5
    functionsReached:
    - dns.query._wait_for_writable
    - sel.select
    - dns.query._net_write
    - <builtin>.isinstance
    - dns.query._wait_for_readable
    - time.time
    - <builtin>.len
    - what.to_wire
    - dns.query._wait_for
    - selectors.DefaultSelector
    - sock.send
    - fd.pending
    - sel.register
    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 0x7f970a620e80>
    - <ast.Constant object at 0x7f970a620c70>
    - <ast.Constant object at 0x7f970a620310>
    - <ast.Constant object at 0x7f970a620fd0>
    - <ast.Constant object at 0x7f970a6205e0>
    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: 1146
    functionName: dns.query.receive_tcp
    functionSourceFile: dns.query
    functionUses: 5
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - sock.recv
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - sel.select
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - dns.query._net_read
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - 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: 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: 1274
    functionName: dns.query._tls_handshake
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.query._wait_for_writable
    - sel.select
    - <builtin>.isinstance
    - dns.query._wait_for_readable
    - time.time
    - s.do_handshake
    - selectors.DefaultSelector
    - dns.query._wait_for
    - fd.pending
    - sel.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970aad5310>
    - <ast.Constant object at 0x7f970aad5b80>
    - <ast.Constant object at 0x7f970aad5c70>
    argNames:
    - verify
    - check_hostname
    - alpns
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1285
    functionName: dns.query.make_ssl_context
    functionSourceFile: dns.query
    functionUses: 5
    functionsReached:
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - <builtin>.isinstance
    - os.path.isfile
    - os.path.isdir
    - ssl_context.set_alpn_protocols
    - dns._no_ssl.create_default_context
    - ssl.create_default_context
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - verify
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 7
    functionName: dns._tls_util.convert_verify_to_cafile_and_capath
    functionSourceFile: <builtin>
    functionUses: 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: 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.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: 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: 1319
    functionName: dns.query._make_dot_ssl_context
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - <builtin>.isinstance
    - dns.query.make_ssl_context
    - os.path.isfile
    - os.path.isdir
    - ssl_context.set_alpn_protocols
    - dns._no_ssl.create_default_context
    - ssl.create_default_context
    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 0x7f970aa2cb20>
    - <ast.Constant object at 0x7f970aa2c8b0>
    - <ast.Constant object at 0x7f970aa2c9d0>
    - <ast.Constant object at 0x7f970aa2c4c0>
    - <ast.Constant object at 0x7f970aa2cd60>
    - <ast.Constant object at 0x7f970aa2c640>
    - <ast.Constant object at 0x7f970aa2c5b0>
    - <ast.Constant object at 0x7f970aa2c310>
    - <ast.Constant object at 0x7f970aa2c910>
    - <ast.Constant object at 0x7f970aa2c490>
    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: 1325
    functionName: dns.query.tls
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - ssl_context.set_alpn_protocols
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - os.path.isdir
    - label.encode
    - s.getsockopt
    - sock.recv
    - dns.query.make_socket
    - server_hostname.to_text
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.query.make_ssl_context
    - os.path.isfile
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - dns.query.send_tcp
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - s.bind
    - dns.wire.Parser
    - scope.isdigit
    - q.to_wire
    - s.close
    - <builtin>.bytes
    - sock.send
    - dns.query.make_ssl_socket
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - ssl.create_default_context
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - socket.if_nametoindex
    - sel.select
    - ssl_context.wrap_socket
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - s.setblocking
    - contextlib.contextmanager
    - parser.get_remaining
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - struct.unpack
    - dns.query._net_write
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.query._tls_handshake
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.query._net_read
    - dns.query._destination_and_source
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.query.receive_tcp
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - s.do_handshake
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns._no_ssl.create_default_context
    - dns.ipv4.inet_aton
    - dns.query.tcp
    - key.name.to_digestable
    - dns.name.Name.__init__
    - s.connect_ex
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.query._connect
    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 0x7f970b74e700>
    - <ast.Constant object at 0x7f970afbd160>
    - <ast.Constant object at 0x7f970afbd820>
    - <ast.Constant object at 0x7f970afbd6d0>
    - <ast.Constant object at 0x7f970afbd3a0>
    - <ast.Constant object at 0x7f970afbd8e0>
    - <ast.Constant object at 0x7f970afbd280>
    - <ast.Constant object at 0x7f970afbdd90>
    - <ast.Constant object at 0x7f970afbde50>
    - <ast.Constant object at 0x7f970afbd340>
    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: 1433
    functionName: dns.query.quic
    functionSourceFile: dns.query
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - stream.send
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.quic.SyncQuicManager
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - stream.receive
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    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: 1543
    functionName: dns.query._inbound_xfr
    functionSourceFile: dns.query
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - text.encode
    - query.to_wire
    - label.encode
    - sock.recv
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - dns.xfr.Inbound
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.sendto
    - sock.recvfrom
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - inbound.process_message
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.query._udp_send
    - RdataType.to_text
    - dns.wire.Parser
    - dns.query._udp_recv
    - <builtin>.bytes
    - sock.send
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - sel.select
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.rdataclass.to_text
    - txn_manager.from_wire_origin
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.query._net_write
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - dns.query._net_read
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__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: 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 0x7f970a393d60>
    - <ast.Attribute object at 0x7f970a393fd0>
    - <ast.Constant object at 0x7f970a393df0>
    - <ast.Constant object at 0x7f970a3934c0>
    - <ast.Constant object at 0x7f970a393bb0>
    - <ast.Constant object at 0x7f970a393d00>
    - <ast.Constant object at 0x7f970a393640>
    - <ast.Constant object at 0x7f970a393160>
    - <ast.Constant object at 0x7f970a393d90>
    - <ast.Constant object at 0x7f970a393790>
    - <ast.Constant object at 0x7f970a3935b0>
    - <ast.Constant object at 0x7f970a393130>
    - <ast.Attribute object at 0x7f970a3931c0>
    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: 1595
    functionName: dns.query.xfr
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.rdata.GenericRdata.from_text
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - query.to_wire
    - dns.message.make_query
    - label.encode
    - s.getsockopt
    - sock.recv
    - dns.query.make_socket
    - m.group
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - dns.xfr.Inbound
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - q.find_rrset
    - <builtin>.abs
    - typing.cast
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - tok.unget
    - sock.sendto
    - sock.recvfrom
    - dns.message.Message.use_edns
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - inbound.process_message
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.query._udp_send
    - RdataType.to_text
    - s.bind
    - dns.wire.Parser
    - scope.isdigit
    - dns.query._udp_recv
    - s.close
    - <builtin>.bytes
    - sock.send
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - parser.restrict_to
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - sel.select
    - dns.message.Message.section_number
    - socket.if_nametoindex
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - tok.get
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - dns.rdata.from_text
    - canonical.append
    - dns.rdataclass.to_text
    - txn_manager.from_wire_origin
    - tok.get_int
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - dns.tsig.HMACTSig.__init__
    - s.setblocking
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.query.xfr.DummyTransactionManager.__init__
    - dns.query._net_write
    - token.is_identifier
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - tok.get_eol_as_token
    - _v4_ending.match
    - dns.query._net_read
    - dns.query._destination_and_source
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - dns.rdata.from_wire
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - object.__setattr__
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.query._inbound_xfr
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - rdata.to_wire
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - _colon_colon_start.match
    - btext.startswith
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - s.connect_ex
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - dns.tokenizer.Tokenizer
    - <builtin>.callable
    - struct.pack
    - q.use_tsig
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.message.Message.want_dnssec
    - dns.query._connect
    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: 1665
    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: 1668
    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: 1671
    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: 1674
    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 0x7f970aa1c970>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1677
    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: 1679
    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: 1682
    functionName: dns.query.xfr.DummyTransactionManager.writer.DummyTransaction.__getattr__
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast
    functionSourceFile: typing
    functionUses: 110
    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 0x7f970a74bbb0>
    - <ast.Constant object at 0x7f970a74b2e0>
    - <ast.Constant object at 0x7f970a74bb80>
    - <ast.Constant object at 0x7f970a74b850>
    - <ast.Constant object at 0x7f970a74bfa0>
    - <ast.Constant object at 0x7f970a74b3d0>
    - <ast.Constant object at 0x7f970a74b370>
    - <ast.Constant object at 0x7f970a74bf40>
    - <ast.Constant object at 0x7f970a74b880>
    - <ast.Attribute object at 0x7f970a74b430>
    - <ast.Constant object at 0x7f970a74b6d0>
    argNames:
    - qname
    - rdtype
    - rdclass
    - use_edns
    - want_dnssec
    - ednsflags
    - payload
    - request_payload
    - options
    - idna_codec
    - id
    - flags
    - pad
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1749
    functionName: dns.message.make_query
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.RRset
    - dns.rrset.from_rdata
    - <builtin>.enumerate
    - <builtin>.bytearray
    - dns.message.Message._make_opt
    - r.update_ttl
    - dns.flags.Flag
    - dns.rdatatype.RdataType.make
    - dns.message.Message.__init__
    - dns.entropy.random_16
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message.Message.use_edns
    - text.encode
    - byte_.isdigit
    - dns.rrset.from_rdata_list
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdtypes.ANY.OPT.OPT
    - os.urandom
    - dns.rdataclass.RdataClass.make
    - dns.message.Message.find_rrset
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - <builtin>.bytes
    - labels.extend
    - dns.entropy.EntropyPool._maybe_seed
    - dns.message.Message.section_from_number
    - os.getpid
    - dns.name.is_all_ascii
    - dns.message.Message.section_number
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - r.read
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - typing.cast
    - dns.rrset.RRset.__init__
    - dns.message.Message.want_dnssec
    - <builtin>.super
    - dns.entropy.EntropyPool.random_16
    - c.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: 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 0x7f970a5bd250>
    - <ast.Constant object at 0x7f970a5bdf40>
    - <ast.Constant object at 0x7f970a5bdb50>
    - <ast.Constant object at 0x7f970a5bd0a0>
    - <ast.Constant object at 0x7f970a5bd850>
    - <ast.Constant object at 0x7f970a5bd280>
    - <ast.Attribute object at 0x7f970a5bda90>
    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: 1713
    functionName: dns.query.inbound_xfr
    functionSourceFile: dns.query
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.xfr.extract_serial_from_query
    - dns.rrset.from_rdata
    - dns.rdata.GenericRdata.from_text
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.xfr.make_query
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - query.to_wire
    - dns.message.make_query
    - label.encode
    - s.getsockopt
    - sock.recv
    - dns.query.make_socket
    - m.group
    - os.urandom
    - dns.message.Message.find_rrset
    - query.find_rrset
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - dns.xfr.Inbound
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - q.find_rrset
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message.section_from_number
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - tok.unget
    - sock.sendto
    - sock.recvfrom
    - dns.message.Message.use_edns
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - inbound.process_message
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - txn_manager.get_class
    - dns.query._udp_send
    - RdataType.to_text
    - s.bind
    - dns.wire.Parser
    - scope.isdigit
    - dns.query._udp_recv
    - s.close
    - <builtin>.bytes
    - sock.send
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - parser.restrict_to
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - socket.if_nametoindex
    - sel.select
    - txn_manager.origin_information
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - tok.get
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - dns.rdata.from_text
    - canonical.append
    - dns.rdataclass.to_text
    - txn_manager.from_wire_origin
    - tok.get_int
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - dns.tsig.HMACTSig.__init__
    - s.setblocking
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.query._net_write
    - token.is_identifier
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - txn_manager.reader
    - rrset.add
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - tok.get_eol_as_token
    - btext.endswith
    - _v4_ending.match
    - dns.query._net_read
    - dns.query._destination_and_source
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - dns.rdata.from_wire
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - object.__setattr__
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.query._inbound_xfr
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - rdata.to_wire
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - _colon_colon_start.match
    - btext.startswith
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - s.connect_ex
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - RdataClass.to_text
    - _rdata_classes.get
    - key.algorithm.to_digestable
    - <builtin>.ord
    - dns.tokenizer.Tokenizer
    - txn.get
    - <builtin>.callable
    - struct.pack
    - labels.append
    - q.use_tsig
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - dns.message.Message.want_dnssec
    - dns.query._connect
    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 0x7f970aac7850>
    - <ast.Constant object at 0x7f970aac7ee0>
    - <ast.Constant object at 0x7f970aac7340>
    - <ast.Constant object at 0x7f970aac7f70>
    - <ast.Constant object at 0x7f970aac7eb0>
    - <ast.Constant object at 0x7f970aac7250>
    - <ast.Constant object at 0x7f970aac7100>
    - <ast.Constant object at 0x7f970aac72e0>
    - <ast.Attribute object at 0x7f970aac71c0>
    argNames:
    - txn_manager
    - serial
    - use_edns
    - ednsflags
    - payload
    - request_payload
    - options
    - keyring
    - keyname
    - keyalgorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 270
    functionName: dns.xfr.make_query
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.rdata.GenericRdata.from_text
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.exception.ExceptionWrapper
    - text.encode
    - dns.message.make_query
    - label.encode
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - time.time
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - os.getpid
    - <builtin>.isinstance
    - <builtin>.getattr
    - system_random.randrange
    - r.read
    - dns.rdata.from_wire_parser
    - q.find_rrset
    - typing.cast
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message.section_from_number
    - c.isdigit
    - rdtype_text.replace
    - <builtin>.bytearray
    - dns.flags.Flag
    - tok.unget
    - dns.message.Message.use_edns
    - byte_.isdigit
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - txn_manager.get_class
    - RdataType.to_text
    - dns.wire.Parser
    - <builtin>.bytes
    - labels.extend
    - parser.restrict_to
    - dns.entropy.EntropyPool._maybe_seed
    - dns.message.Message.section_number
    - txn_manager.origin_information
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - tok.get
    - dns.rdatatype.to_text
    - dns.rdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - token.is_identifier
    - txn_manager.reader
    - rrset.add
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - tok.get_eol_as_token
    - dns.name.is_all_ascii
    - <builtin>.tuple
    - dns.rdata.from_wire
    - <builtin>.super
    - object.__setattr__
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - rdata.to_wire
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name.from_text
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - dns.tokenizer.Tokenizer
    - txn.get
    - struct.pack
    - q.use_tsig
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - dns.message.Message.want_dnssec
    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: 345
    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.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 0x7f970a9fd400>
    argNames:
    - self
    - id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 148
    functionName: dns.message.Message.__init__
    functionSourceFile: dns.message
    functionUses: 48
    functionsReached:
    - os.getpid
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.open
    - r.read
    - dns.entropy.random_16
    - time.time
    - <builtin>.bytes
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    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
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.open
    - r.read
    - time.time
    - <builtin>.bytes
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    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: 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: 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:
    - dns.rcode.from_flags
    - rrset.to_text
    - enum_class.__members__.items
    - io.StringIO
    - dns.message.Message.to_text
    - text_flags.append
    - dns.opcode.to_text
    - dns.flags.edns_to_text
    - <builtin>.int
    - dns.opcode.from_flags
    - Opcode.to_text
    - dns.message.Message.rcode
    - Rcode.make
    - dns.rcode.to_text
    - s.write
    - s.getvalue
    - dns.message.Message.opcode
    - dns.flags._to_text
    - dns.flags.to_text
    - dns.message.Message.section_from_number
    - Rcode.to_text
    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 0x7f970a7c41f0>
    - <ast.Constant object at 0x7f970a7c4be0>
    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:
    - dns.rcode.from_flags
    - rrset.to_text
    - enum_class.__members__.items
    - io.StringIO
    - text_flags.append
    - dns.opcode.to_text
    - dns.flags.edns_to_text
    - <builtin>.int
    - dns.opcode.from_flags
    - Opcode.to_text
    - dns.message.Message.rcode
    - Rcode.make
    - dns.rcode.to_text
    - s.write
    - s.getvalue
    - dns.message.Message.opcode
    - dns.flags._to_text
    - dns.flags.to_text
    - dns.message.Message.section_from_number
    - Rcode.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.write
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 914
    functionName: dns.message.Message.opcode
    functionSourceFile: dns.message
    functionUses: 2
    functionsReached:
    - dns.opcode.from_flags
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: dns.opcode.to_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - Opcode.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 896
    functionName: dns.message.Message.rcode
    functionSourceFile: dns.message
    functionUses: 4
    functionsReached:
    - dns.rcode.from_flags
    - <builtin>.int
    - Rcode.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - flags
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: dns.flags.to_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - enum_class.__members__.items
    - dns.flags._to_text
    - text_flags.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - flags
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 97
    functionName: dns.flags.edns_to_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - enum_class.__members__.items
    - dns.flags._to_text
    - text_flags.append
    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: 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: 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>.isinstance
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.enumerate
    functionSourceFile: <builtin>
    functionUses: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 276
    functionName: dns.message.Message.__ne__
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - dns.message.Message.__eq__
    - <builtin>.enumerate
    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:
    - dns.opcode.is_update
    - dns.opcode.from_flags
    - other.rcode
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - flags
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: dns.opcode.from_flags
    functionSourceFile: <builtin>
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other.rcode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - flags
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: dns.opcode.is_update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - dns.opcode.from_flags
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 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 0x7f970a448ee0>
    - <ast.Constant object at 0x7f970a448b20>
    - <ast.Constant object at 0x7f970a4481f0>
    - <ast.Constant object at 0x7f970a4482b0>
    - <ast.Constant object at 0x7f970a448c70>
    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:
    - dns.name.from_unicode
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.rdatatype.RdataType.make
    - c.isdigit
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - dns.message.Message.section_number
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    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.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 0x7f970adb8bb0>
    - <ast.Constant object at 0x7f970adb8550>
    - <ast.Constant object at 0x7f970adb8a00>
    - <ast.Constant object at 0x7f970adb8220>
    - <ast.Constant object at 0x7f970adb8070>
    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:
    - dns.name.from_unicode
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.rdatatype.RdataType.make
    - c.isdigit
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdataclass.RdataClass.make
    - dns.message.Message.find_rrset
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - dns.message.Message.section_number
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    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:
    - dns.message.Message.section_number
    - <builtin>.isinstance
    - <builtin>.enumerate
    - <builtin>.len
    - <builtin>.sum
    - dns.message.Message.section_from_number
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sum
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 528
    functionName: dns.message.Message._compute_opt_reserve
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - typing.cast.options.to_wire
    - typing.cast
    - <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: 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
    - f.getvalue
    - <builtin>.len
    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 0x7f970a4ddeb0>
    - <ast.Constant object at 0x7f970a4dda00>
    - <ast.Constant object at 0x7f970a4dd5e0>
    - <ast.Constant object at 0x7f970a4dd160>
    - <ast.Constant object at 0x7f970a4dd1f0>
    - <ast.Constant object at 0x7f970a4ddd30>
    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.update
    - dns.message.Message._compute_opt_reserve
    - dns.tsig.HMACTSig.__init__
    - contextlib.contextmanager
    - r.release_reserved
    - dns.tsig.GSSTSig.__init__
    - f.getvalue
    - typing.cast.options.to_wire
    - <builtin>.int
    - rdata.replace
    - key.name.to_digestable
    - r.add_opt
    - dns.renderer.Renderer
    - r.add_rrset
    - key.algorithm.to_digestable
    - dns.tsig.GSSTSig.sign
    - time.time
    - <builtin>.len
    - dns.tsig.sign
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - hmac.new
    - dns.message.Message._compute_tsig_reserve
    - io.BytesIO
    - dns.tsig._maybe_start_digest
    - struct.pack
    - <builtin>.isinstance
    - dns.tsig._digest
    - r.write_header
    - r.reserve
    - typing.cast
    - dns.tsig.get_context
    - r.add_question
    - r.get_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: r.reserve
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: r.add_question
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: r.add_rrset
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: r.release_reserved
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: r.add_opt
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: r.write_header
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: r.get_wire
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.TSIG.TSIG
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 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: 56
    functionsReached:
    - dns.name.from_unicode
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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 0x7f970b78f5e0>
    - <ast.Constant object at 0x7f970b78f8e0>
    - <ast.Constant object at 0x7f970b78fa90>
    - <ast.Constant object at 0x7f970b78f760>
    - <ast.Constant object at 0x7f970b78f6a0>
    - <ast.Attribute object at 0x7f970b78fa30>
    argNames:
    - self
    - keyring
    - keyname
    - fudge
    - original_id
    - tsig_error
    - other_data
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 680
    functionName: dns.message.Message.use_tsig
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - c.isdigit
    - <builtin>.iter
    - <builtin>.chr
    - r.add
    - <builtin>.next
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.rdtypes.ANY.TSIG.TSIG
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.callable
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - dns.tsig.Key
    - labels.append
    - <builtin>.tuple
    - dns.message.Message._make_tsig
    - typing.cast
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.callable
    functionSourceFile: <builtin>
    functionUses: 35
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 753
    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: 760
    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: 768
    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: 776
    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: 784
    functionName: dns.message.Message.had_tsig
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.OPT.OPT
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa4f460>
    - <ast.Constant object at 0x7f970aa4fd60>
    - <ast.Name object at 0x7f970aa4f5e0>
    - <ast.Constant object at 0x7f970aa4f580>
    - <ast.Constant object at 0x7f970aa4feb0>
    - <ast.Constant object at 0x7f970aa4f8e0>
    argNames:
    - self
    - edns
    - ednsflags
    - payload
    - request_payload
    - options
    - pad
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 792
    functionName: dns.message.Message.use_edns
    functionSourceFile: dns.message
    functionUses: 13
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.message.Message._make_opt
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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: 846
    functionName: dns.message.Message.edns
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 860
    functionName: dns.message.Message.ednsflags
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.message.Message._make_opt
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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: 867
    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: 875
    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 0x7f970afcc8b0>
    argNames:
    - self
    - wanted
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 882
    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: 903
    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: 921
    functionName: dns.message.Message.set_opcode
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.opcode.to_flags
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 75
    functionName: dns.opcode.to_flags
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - otype
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 929
    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: 933
    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: 937
    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: 943
    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: 948
    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: 985
    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: 999
    functionName: dns.message.QueryMessage.resolve_chaining
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.RRset
    - dns.rcode.from_flags
    - <builtin>.enumerate
    - dns.rdatatype.RdataType.make
    - c.isdigit
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.message.Message.rcode
    - dns.rdataclass.RdataClass.make
    - Rcode.make
    - dns.message.Message.find_rrset
    - cnames.append
    - dns.name.Name.__init__
    - dns.message.ChainingResult.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.min
    - <builtin>.len
    - auname.parent
    - labels.extend
    - dns.name.is_all_ascii
    - dns.message.Message.section_number
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1075
    functionName: dns.message.QueryMessage.canonical_name
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.RRset
    - dns.rcode.from_flags
    - <builtin>.enumerate
    - dns.rdatatype.RdataType.make
    - c.isdigit
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.message.Message.rcode
    - dns.rdataclass.RdataClass.make
    - Rcode.make
    - dns.message.QueryMessage.resolve_chaining
    - dns.message.Message.find_rrset
    - cnames.append
    - dns.name.Name.__init__
    - dns.message.ChainingResult.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.min
    - <builtin>.len
    - auname.parent
    - labels.extend
    - dns.name.is_all_ascii
    - dns.message.Message.section_number
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - dns.message.Message.section_from_number
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1092
    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: 1101
    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 0x7f970a3de9d0>
    - <ast.Constant object at 0x7f970a3de8b0>
    - <ast.Constant object at 0x7f970a3ded00>
    - <ast.Constant object at 0x7f970a3de0a0>
    - <ast.Constant object at 0x7f970a3dea00>
    - <ast.Constant object at 0x7f970a3de6a0>
    argNames:
    - self
    - wire
    - initialize_message
    - question_only
    - one_rr_per_rrset
    - ignore_trailing
    - keyring
    - multi
    - continue_on_error
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1128
    functionName: dns.message._WireReader.__init__
    functionSourceFile: dns.message
    functionUses: 32
    functionsReached:
    - dns.wire.Parser
    - contextlib.contextmanager
    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: 1150
    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: 1166
    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: 1169
    functionName: dns.message._WireReader._get_section
    functionSourceFile: dns.message
    functionUses: 33
    functionsReached:
    - rdtype_text.replace
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.rdataclass.to_text
    - r.update_ttl
    - dns.tsig.HMACTSig.__init__
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - hmac.compare_digest
    - <builtin>.chr
    - r.add
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - dns.tsig.GSSTSig.__init__
    - struct.unpack
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - dns.message.MessageError.__init__
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - rrset.add
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - key.name.to_digestable
    - dns.name.Name.__init__
    - importlib.import_module
    - dns.tsig.validate
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.tsig.HMACTSig.verify
    - dns.name.IDNA2003Codec.encode
    - key.algorithm.to_digestable
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.rdatatype.to_text
    - dns.tsig.HMACTSig.sign
    - rd.covers
    - <builtin>.callable
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.tsig.GSSTSig.verify
    - dns.tsig._maybe_start_digest
    - <builtin>.range
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - dns.tsig._digest
    - dns.tsig.Key
    - labels.append
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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: 1270
    functionName: dns.message._WireReader.read
    functionSourceFile: dns.message
    functionUses: 32
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - 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: 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: 1381
    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 0x7f970b117bb0>
    - <ast.Constant object at 0x7f970b117850>
    - <ast.Constant object at 0x7f970b117ee0>
    - <ast.Constant object at 0x7f970b1177c0>
    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: 1431
    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: 1455
    functionName: dns.message._TextReader._header_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - token.is_identifier
    - dns.flags.from_text
    - t.upper
    - Opcode.from_text
    - dns.flags.edns_from_text
    - dns.flags._from_text
    - Rcode.from_text
    - dns.opcode.to_flags
    - text.split
    - dns.opcode.from_text
    - dns.rcode.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 67
    functionName: dns.flags.from_text
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - dns.flags._from_text
    - text.split
    - t.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 87
    functionName: dns.flags.edns_from_text
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - dns.flags._from_text
    - text.split
    - t.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: dns.opcode.from_text
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - Opcode.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section_number
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1496
    functionName: dns.message._TextReader._question_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - dns.rdatatype.from_text
    - token.is_identifier
    - dns.rdataclass.from_text
    - token.is_whitespace
    - RdataClass.from_text
    - 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: 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: 1532
    functionName: dns.message._TextReader._rr_line
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - object.__setattr__
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - tok.unget
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - token.is_identifier
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - rrset.add
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - token.is_eol_or_eof
    - dns.rdatatype.from_text
    - RdataType.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdataclass.from_text
    - tok.get_eol_as_token
    - dns.wire.Parser
    - RdataClass.to_text
    - _rdata_classes.get
    - token.is_whitespace
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - rd.covers
    - tok.concatenate_remaining_identifiers
    - parser.restrict_to
    - RdataType.from_text
    - <builtin>.isinstance
    - <builtin>.getattr
    - tok.get
    - dns.rdata.from_wire_parser
    - RdataClass.from_text
    - <builtin>.super
    - dns.rdata.from_wire
    - dns.rdatatype.to_text
    - dns.rdata.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: token.is_eol_or_eof
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1608
    functionName: dns.message._TextReader._make_message
    functionSourceFile: dns.message
    functionUses: 3
    functionsReached:
    - dns.message._message_factory_from_opcode
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.entropy.random_16
    - dns.message.Message.__init__
    - <builtin>.str
    - dns.entropy.EntropyPool.random_8
    - message.use_edns
    - os.urandom
    - time.time
    - <builtin>.bytes
    - message.set_rcode
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - r.read
    - 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: 1620
    functionName: dns.message._TextReader.read
    functionSourceFile: dns.message
    functionUses: 2
    functionsReached:
    - dns.rdata.GenericRdata.from_text
    - binascii.unhexlify
    - message._get_one_rr_per_rrset
    - dns.opcode.from_text
    - dns.exception.ExceptionWrapper
    - dns.flags._from_text
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - time.time
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - RdataType.from_text
    - os.getpid
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.flags.from_text
    - system_random.randrange
    - r.read
    - dns.rdata.from_wire_parser
    - Opcode.from_text
    - dns.entropy.EntropyPool.random_16
    - rdtype_text.replace
    - token.is_comment
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - token.value.upper
    - tok.unget
    - message.use_edns
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - token.is_whitespace
    - <builtin>.bytes
    - parser.restrict_to
    - dns.entropy.EntropyPool._maybe_seed
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - tok.get
    - dns.flags.edns_from_text
    - RdataClass.from_text
    - dns.rdatatype.to_text
    - dns.rdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - dns.message._TextReader._question_line
    - contextlib.contextmanager
    - parser.get_remaining
    - token.is_identifier
    - rrset.add
    - tok.get_eol_as_token
    - t.upper
    - rd.covers
    - dns.opcode.to_flags
    - dns.rdata.from_wire
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - object.__setattr__
    - dns.message.Message.__init__
    - <builtin>.str
    - dns.rcode.from_text
    - dns.entropy.EntropyPool.random_8
    - rdata.to_wire
    - message._section_enum.from_text
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - Rcode.from_text
    - token.is_eol_or_eof
    - dns.rdatatype.from_text
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.tokenizer.Tokenizer
    - message.set_rcode
    - text.split
    - dns.message._TextReader._header_line
    - dns.message._TextReader._make_message
    - dns.message._TextReader._rr_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a393e80>
    - <ast.Constant object at 0x7f970a393280>
    - <ast.Constant object at 0x7f970a393100>
    - <ast.Constant object at 0x7f970a393190>
    - <ast.Constant object at 0x7f970a393e20>
    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: 1666
    functionName: dns.message.from_text
    functionSourceFile: dns.message
    functionUses: 1
    functionsReached:
    - dns.rdata.GenericRdata.from_text
    - binascii.unhexlify
    - message._get_one_rr_per_rrset
    - dns.opcode.from_text
    - dns.exception.ExceptionWrapper
    - dns.flags._from_text
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - time.time
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - RdataType.from_text
    - os.getpid
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.flags.from_text
    - system_random.randrange
    - r.read
    - dns.rdata.from_wire_parser
    - Opcode.from_text
    - dns.entropy.EntropyPool.random_16
    - rdtype_text.replace
    - token.is_comment
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - token.value.upper
    - tok.unget
    - dns.message._TextReader.__init__
    - message.use_edns
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - token.is_whitespace
    - <builtin>.bytes
    - parser.restrict_to
    - dns.entropy.EntropyPool._maybe_seed
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - tok.get
    - dns.flags.edns_from_text
    - RdataClass.from_text
    - dns.rdatatype.to_text
    - dns.rdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - dns.message._TextReader._question_line
    - contextlib.contextmanager
    - parser.get_remaining
    - token.is_identifier
    - rrset.add
    - dns.message._TextReader.read
    - tok.get_eol_as_token
    - t.upper
    - rd.covers
    - dns.opcode.to_flags
    - dns.rdata.from_wire
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - object.__setattr__
    - dns.message.Message.__init__
    - <builtin>.str
    - dns.rcode.from_text
    - dns.entropy.EntropyPool.random_8
    - rdata.to_wire
    - message._section_enum.from_text
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - Rcode.from_text
    - token.is_eol_or_eof
    - dns.rdatatype.from_text
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.tokenizer.Tokenizer
    - message.set_rcode
    - text.split
    - dns.message._TextReader._header_line
    - dns.message._TextReader._make_message
    - dns.message._TextReader._rr_line
    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 0x7f970b4d8040>
    - <ast.Constant object at 0x7f970b4d8160>
    argNames:
    - f
    - idna_codec
    - one_rr_per_rrset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1714
    functionName: dns.message.from_file
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.rdata.GenericRdata.from_text
    - binascii.unhexlify
    - message._get_one_rr_per_rrset
    - dns.exception.ExceptionWrapper
    - dns.opcode.from_text
    - dns.flags._from_text
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - time.time
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - RdataType.from_text
    - os.getpid
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.flags.from_text
    - system_random.randrange
    - r.read
    - dns.rdata.from_wire_parser
    - Opcode.from_text
    - dns.entropy.EntropyPool.random_16
    - rdtype_text.replace
    - token.is_comment
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - token.value.upper
    - tok.unget
    - dns.message._TextReader.__init__
    - message.use_edns
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.message.from_text
    - RdataType.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - token.is_whitespace
    - <builtin>.bytes
    - parser.restrict_to
    - dns.entropy.EntropyPool._maybe_seed
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - tok.get
    - dns.flags.edns_from_text
    - RdataClass.from_text
    - dns.rdatatype.to_text
    - dns.rdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - dns.message._TextReader._question_line
    - contextlib.contextmanager
    - parser.get_remaining
    - token.is_identifier
    - rrset.add
    - dns.message._TextReader.read
    - tok.get_eol_as_token
    - t.upper
    - rd.covers
    - dns.opcode.to_flags
    - dns.rdata.from_wire
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - object.__setattr__
    - dns.message.Message.__init__
    - <builtin>.str
    - dns.rcode.from_text
    - dns.entropy.EntropyPool.random_8
    - rdata.to_wire
    - message._section_enum.from_text
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - Rcode.from_text
    - token.is_eol_or_eof
    - dns.rdatatype.from_text
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.tokenizer.Tokenizer
    - message.set_rcode
    - text.split
    - dns.message._TextReader._header_line
    - dns.message._TextReader._make_message
    - dns.message._TextReader._rr_line
    - contextlib.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: <builtin>.open
    functionSourceFile: <builtin>
    functionUses: 75
    functionsReached: []
    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 0x7f970a687760>
    - <ast.Constant object at 0x7f970a687970>
    - <ast.Constant object at 0x7f970a687070>
    - <ast.Constant object at 0x7f970a687040>
    - <ast.Constant object at 0x7f970a687490>
    - <ast.Constant object at 0x7f970a687b50>
    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: 1858
    functionName: dns.message.make_response
    functionSourceFile: dns.message
    functionUses: 0
    functionsReached:
    - dns.message._message_factory_from_opcode
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.entropy.random_16
    - dns.message.Message.__init__
    - <builtin>.str
    - dns.entropy.EntropyPool.random_8
    - response.use_edns
    - <builtin>.list
    - response.use_tsig
    - os.urandom
    - time.time
    - <builtin>.bytes
    - query.opcode
    - response.set_opcode
    - dns.entropy.EntropyPool._maybe_seed
    - os.getpid
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - r.read
    - 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: 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 0x7f970abce6a0>
    - <ast.Constant object at 0x7f970abce790>
    - <ast.Constant object at 0x7f970abceac0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: dns.rdtypes.ANY.OPT.OPT._to_wire
    functionSourceFile: dns.rdtypes.ANY.OPT
    functionUses: 0
    functionsReached:
    - file.write
    - opt.to_wire
    - struct.pack
    - <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: 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 0x7f970abce820>
    - <ast.Constant object at 0x7f970abce520>
    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 0x7f970abce6d0>
    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_remaining
    - dns.edns.GenericOption.from_wire_parser
    - parser.remaining
    - dns.edns.get_option_class
    - <builtin>.isinstance
    - parser.restrict_to
    - <builtin>.len
    - <builtin>.bytes
    - _type_to_class.get
    - parser.get_struct
    - value.encode
    - <builtin>.super
    - dns.edns.GenericOption.__init__
    - dns.edns.option_from_wire_parser
    - dns.rdata.Rdata._as_bytes
    - options.append
    - dns.rdtypes.ANY.OPT.OPT.__init__
    - 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: 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: 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 0x7f970a5b4850>
    - <ast.Attribute object at 0x7f970a5b4520>
    - <ast.Constant object at 0x7f970a5b47f0>
    - <ast.Constant object at 0x7f970a5b4490>
    - <ast.Attribute object at 0x7f970a5b43a0>
    - <ast.Constant object at 0x7f970a5b4430>
    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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - c.isdigit
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - dns.opcode.to_flags
    - <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
    - 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 0x7f970aa42fa0>
    - <ast.Constant object at 0x7f970aa42cd0>
    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:
    - object.__setattr__
    - dns.name.from_unicode
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - dns.name._maybe_convert_to_binary
    - tok.unget
    - <builtin>.chr
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - text.encode
    - token.is_identifier
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.update.UpdateMessage._add_rr
    - rrset.add
    - dns.update.UpdateMessage.delete
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - tok.get_eol_as_token
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - rd.covers
    - tok.concatenate_remaining_identifiers
    - labels.extend
    - largs.pop
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - args.pop
    - labels.append
    - tok.get
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdata.from_text
    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:
    - object.__setattr__
    - dns.name.from_unicode
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - dns.name._maybe_convert_to_binary
    - tok.unget
    - <builtin>.chr
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - text.encode
    - token.is_identifier
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.update.UpdateMessage._add_rr
    - rrset.add
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - tok.get_eol_as_token
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - rd.covers
    - tok.concatenate_remaining_identifiers
    - labels.extend
    - largs.pop
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - labels.append
    - tok.get
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdata.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: 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:
    - object.__setattr__
    - dns.name.from_unicode
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - dns.name._maybe_convert_to_binary
    - tok.unget
    - <builtin>.chr
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - text.encode
    - token.is_identifier
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.update.UpdateMessage._add_rr
    - rrset.add
    - dns.update.UpdateMessage.delete
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - tok.get_eol_as_token
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - rd.covers
    - tok.concatenate_remaining_identifiers
    - labels.extend
    - dns.update.UpdateMessage._add
    - largs.pop
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - args.pop
    - labels.append
    - tok.get
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdata.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: 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:
    - object.__setattr__
    - dns.name.from_unicode
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - dns.name._maybe_convert_to_binary
    - tok.unget
    - <builtin>.chr
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - text.encode
    - token.is_identifier
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.update.UpdateMessage._add_rr
    - rrset.add
    - dns.update.UpdateMessage.delete
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - tok.get_eol_as_token
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - rd.covers
    - tok.concatenate_remaining_identifiers
    - labels.extend
    - dns.update.UpdateMessage._add
    - largs.pop
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - args.pop
    - labels.append
    - tok.get
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdata.from_text
    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:
    - object.__setattr__
    - dns.name.from_unicode
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - dns.name._maybe_convert_to_binary
    - tok.unget
    - <builtin>.chr
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - largs.insert
    - parser.get_remaining
    - rdata.to_wire
    - text.encode
    - token.is_identifier
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.update.UpdateMessage._add_rr
    - rrset.add
    - dns.update.UpdateMessage.delete
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - tok.get_eol_as_token
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - rd.covers
    - tok.concatenate_remaining_identifiers
    - labels.extend
    - dns.update.UpdateMessage._add
    - largs.pop
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - labels.append
    - args.pop
    - tok.get
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdata.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: 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 0x7f970abc7700>
    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:
    - dns.name.from_unicode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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.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 0x7f970ab7fc70>
    - <ast.Constant object at 0x7f970ab7f340>
    argNames:
    - self
    - name
    - rdclass
    - rdtype
    - covers
    - deleting
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: dns.rrset.RRset.__init__
    functionSourceFile: dns.rrset
    functionUses: 60
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: dns.rrset.RRset._clone
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 62
    functionName: dns.rrset.RRset.__repr__
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - RdataType.to_text
    - RdataClass.to_text
    - dns.rdataclass.to_text
    - <builtin>.str
    - dns.rdatatype.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 85
    functionName: dns.rrset.RRset.__str__
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - dns.rrset.RRset.to_text
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970a7c49a0>
    - <ast.Constant object at 0x7f970a7c4100>
    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>.super
    - <builtin>.isinstance
    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:
    - dns.rrset.RRset.full_match
    - <builtin>.super
    - <builtin>.isinstance
    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 0x7f970a764af0>
    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 0x7f970a47d280>
    - <ast.Constant object at 0x7f970a47ddc0>
    argNames:
    - self
    - file
    - compress
    - origin
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 158
    functionName: dns.rrset.RRset.to_wire
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 179
    functionName: dns.rrset.RRset.to_rdataset
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - c.lower
    - dns.rdataset.ImmutableRdataset.add
    - dns.ttl.from_text
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.from_rdata_list
    - <builtin>.int
    - <builtin>.len
    - <builtin>.list
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    - 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: 4
    functionLinenumber: 482
    functionName: dns.rdataset.from_rdata_list
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached:
    - c.lower
    - dns.ttl.from_text
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.int
    - <builtin>.len
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    - 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 0x7f970ad856d0>
    - <ast.Constant object at 0x7f970b0697c0>
    - <ast.Constant object at 0x7f970b069ee0>
    - <ast.Constant object at 0x7f970b069b80>
    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:
    - object.__setattr__
    - dns.name.from_unicode
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - r.update_ttl
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - dns.name._maybe_convert_to_binary
    - tok.unget
    - <builtin>.chr
    - contextlib.contextmanager
    - r.add
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - text.encode
    - token.is_identifier
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - RdataType.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.from_text
    - tok.get_eol_as_token
    - dns.name.IDNA2003Codec.encode
    - _rdata_classes.get
    - <builtin>.ord
    - RdataClass.to_text
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - tok.concatenate_remaining_identifiers
    - labels.extend
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - labels.append
    - tok.get
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdata.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: r.update_ttl
    functionSourceFile: <builtin>
    functionUses: 60
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: r.add
    functionSourceFile: <builtin>
    functionUses: 60
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - name
    - ttl
    - rdclass
    - rdtype
    - text_rdatas
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 230
    functionName: dns.rrset.from_text
    functionSourceFile: dns.rrset
    functionUses: 0
    functionsReached:
    - object.__setattr__
    - dns.name.from_unicode
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - r.update_ttl
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - dns.name._maybe_convert_to_binary
    - tok.unget
    - <builtin>.chr
    - contextlib.contextmanager
    - r.add
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - text.encode
    - token.is_identifier
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - dns.rrset.from_text_list
    - <builtin>.list
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - RdataType.to_text
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.from_text
    - tok.get_eol_as_token
    - dns.name.IDNA2003Codec.encode
    - _rdata_classes.get
    - <builtin>.ord
    - RdataClass.to_text
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - tok.concatenate_remaining_identifiers
    - labels.extend
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - labels.append
    - tok.get
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdata.from_text
    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 0x7f970aee8a60>
    argNames:
    - name
    - ttl
    - rdatas
    - idna_codec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 248
    functionName: dns.rrset.from_rdata_list
    functionSourceFile: dns.rrset
    functionUses: 57
    functionsReached:
    - dns.name.from_unicode
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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 0x7f970a9f9700>
    - <ast.Constant object at 0x7f970a9f9e80>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 53
    functionName: dns.rdataset.Rdataset.__init__
    functionSourceFile: dns.rdataset
    functionUses: 17
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 77
    functionName: dns.rdataset.Rdataset._clone
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ttl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 85
    functionName: dns.rdataset.Rdataset.update_ttl
    functionSourceFile: dns.rdataset
    functionUses: 21
    functionsReached:
    - c.lower
    - dns.ttl.from_text
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.len
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    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 0x7f970a393040>
    argNames:
    - self
    - rd
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 101
    functionName: dns.rdataset.Rdataset.add
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - c.lower
    - dns.rdatatype.is_singleton
    - dns.ttl.from_text
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.ImmutableRdataset.clear
    - <builtin>.int
    - <builtin>.len
    - <builtin>.super
    - dns.ttl.make
    - typing.cast.covers
    - text.isdigit
    - c.isdigit
    - 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: 371
    functionName: dns.rdataset.ImmutableRdataset.update_ttl
    functionSourceFile: ''
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.covers
    functionSourceFile: typing
    functionUses: 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: 405
    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: 4
    functionLinenumber: 140
    functionName: dns.rdataset.Rdataset.union_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - c.lower
    - dns.ttl.from_text
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.int
    - <builtin>.len
    - <builtin>.super
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    - dns.rdataset.ImmutableRdataset.update_ttl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 144
    functionName: dns.rdataset.Rdataset.intersection_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - c.lower
    - dns.ttl.from_text
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.int
    - <builtin>.len
    - <builtin>.super
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    - dns.rdataset.ImmutableRdataset.update_ttl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 148
    functionName: dns.rdataset.Rdataset.update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - c.lower
    - dns.ttl.from_text
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - <builtin>.int
    - <builtin>.len
    - <builtin>.super
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    - dns.rdataset.ImmutableRdataset.update_ttl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 158
    functionName: dns.rdataset.Rdataset._rdata_repr
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - dns.rdataset.Rdataset._rdata_repr.maybe_truncate
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 159
    functionName: dns.rdataset.Rdataset._rdata_repr.maybe_truncate
    functionSourceFile: dns.rdataset
    functionUses: 2
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 166
    functionName: dns.rdataset.Rdataset.__repr__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.rdataset.Rdataset._rdata_repr
    - RdataType.to_text
    - dns.rdataclass.to_text
    - RdataClass.to_text
    - <builtin>.len
    - <builtin>.str
    - dns.rdataset.Rdataset._rdata_repr.maybe_truncate
    - dns.rdatatype.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 182
    functionName: dns.rdataset.Rdataset.__str__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - RdataType.to_text
    - s.getvalue
    - RdataClass.to_text
    - dns.rdataclass.to_text
    - <builtin>.len
    - dns.rdataset.Rdataset.to_text
    - io.StringIO
    - <builtin>.str
    - name.choose_relativity
    - dns.rdatatype.to_text
    - s.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970a68bf40>
    - <ast.Constant object at 0x7f970a68be20>
    - <ast.Constant object at 0x7f970a68bac0>
    - <ast.Constant object at 0x7f970a68b400>
    - <ast.Constant object at 0x7f970a68b6d0>
    argNames:
    - self
    - name
    - origin
    - relativize
    - override_rdclass
    - want_comments
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 199
    functionName: dns.rdataset.Rdataset.to_text
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - RdataType.to_text
    - s.getvalue
    - RdataClass.to_text
    - dns.rdataclass.to_text
    - <builtin>.len
    - dns.rdataset.Rdataset.to_text
    - io.StringIO
    - <builtin>.str
    - name.choose_relativity
    - dns.rdatatype.to_text
    - s.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 185
    functionName: dns.rdataset.Rdataset.__eq__
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - <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: 196
    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: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970a401b50>
    - <ast.Constant object at 0x7f970a401af0>
    - <ast.Constant object at 0x7f970a4017c0>
    - <ast.Constant object at 0x7f970a401100>
    argNames:
    - self
    - name
    - file
    - compress
    - origin
    - override_rdclass
    - want_shuffle
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 273
    functionName: dns.rdataset.Rdataset.to_wire
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.renderer.prefixed_length
    - dns.rdataset.Rdataset.to_wire
    - struct.pack
    - <builtin>.len
    - <builtin>.list
    - output.write
    - name.to_wire
    - file.write
    - output.seek
    - random.shuffle
    - length.to_bytes
    - output.tell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.to_wire
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 329
    functionName: dns.rdataset.Rdataset.match
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 342
    functionName: dns.rdataset.Rdataset.processing_order
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    - <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
    - rdataset
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 363
    functionName: dns.rdataset.ImmutableRdataset.__init__
    functionSourceFile: dns.rdataset
    functionUses: 6
    functionsReached:
    - dns.immutable.Dict
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.immutable.Dict
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970aec7370>
    argNames:
    - self
    - rd
    - ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 374
    functionName: dns.rdataset.ImmutableRdataset.add
    functionSourceFile: dns.rdataset
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 377
    functionName: dns.rdataset.ImmutableRdataset.union_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 380
    functionName: dns.rdataset.ImmutableRdataset.intersection_update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 383
    functionName: dns.rdataset.ImmutableRdataset.update
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 386
    functionName: dns.rdataset.ImmutableRdataset.__delitem__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 393
    functionName: dns.rdataset.ImmutableRdataset.__ior__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 396
    functionName: dns.rdataset.ImmutableRdataset.__iand__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 399
    functionName: dns.rdataset.ImmutableRdataset.__iadd__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 402
    functionName: dns.rdataset.ImmutableRdataset.__isub__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 408
    functionName: dns.rdataset.ImmutableRdataset.__copy__
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 411
    functionName: dns.rdataset.ImmutableRdataset.copy
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.__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: 2
    functionLinenumber: 414
    functionName: dns.rdataset.ImmutableRdataset.union
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.__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: 2
    functionLinenumber: 417
    functionName: dns.rdataset.ImmutableRdataset.intersection
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.__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: 2
    functionLinenumber: 420
    functionName: dns.rdataset.ImmutableRdataset.difference
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.__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: 2
    functionLinenumber: 423
    functionName: dns.rdataset.ImmutableRdataset.symmetric_difference
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - dns.immutable.Dict
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.__init__
    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 0x7f970b117cd0>
    - <ast.Constant object at 0x7f970b117700>
    - <ast.Constant object at 0x7f970b117d90>
    - <ast.Constant object at 0x7f970a974550>
    argNames:
    - rdclass
    - rdtype
    - ttl
    - text_rdatas
    - idna_codec
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 427
    functionName: dns.rdataset.from_text_list
    functionSourceFile: dns.rdataset
    functionUses: 1
    functionsReached:
    - object.__setattr__
    - rdtype_text.replace
    - c.lower
    - dns.rdata.GenericRdata.from_text
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - c.isdigit
    - binascii.unhexlify
    - tok.unget
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - token.is_identifier
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.rdata.get_rdata_class
    - dns.ttl.make
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.rdataset.ImmutableRdataset.add
    - dns.ttl.from_text
    - dns.wire.Parser
    - tok.get_eol_as_token
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - tok.concatenate_remaining_identifiers
    - text.isdigit
    - parser.restrict_to
    - <builtin>.isinstance
    - <builtin>.getattr
    - tok.get
    - dns.rdata.from_wire_parser
    - dns.rdata.from_wire
    - <builtin>.super
    - dns.rdata.from_text
    - dns.rdataset.ImmutableRdataset.update_ttl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - rdclass
    - rdtype
    - ttl
    - text_rdatas
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 467
    functionName: dns.rdataset.from_text
    functionSourceFile: dns.rdataset
    functionUses: 0
    functionsReached:
    - object.__setattr__
    - rdtype_text.replace
    - c.lower
    - dns.rdata.GenericRdata.from_text
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - c.isdigit
    - binascii.unhexlify
    - tok.unget
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - token.is_identifier
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.rdata.get_rdata_class
    - dns.ttl.make
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.rdataset.ImmutableRdataset.add
    - dns.ttl.from_text
    - dns.wire.Parser
    - tok.get_eol_as_token
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.rdataset.from_text_list
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - tok.concatenate_remaining_identifiers
    - text.isdigit
    - parser.restrict_to
    - <builtin>.isinstance
    - <builtin>.getattr
    - tok.get
    - dns.rdata.from_wire_parser
    - typing.cast
    - dns.rdata.from_wire
    - <builtin>.super
    - dns.rdata.from_text
    - dns.rdataset.ImmutableRdataset.update_ttl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - ttl
    - rdatas
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 501
    functionName: dns.rdataset.from_rdata
    functionSourceFile: dns.rdataset
    functionUses: 8
    functionsReached:
    - c.lower
    - dns.rdataset.ImmutableRdataset.add
    - dns.ttl.from_text
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.from_rdata_list
    - <builtin>.int
    - <builtin>.len
    - dns.rdataset.Rdataset.__init__
    - typing.cast
    - <builtin>.super
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    - 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 0x7f970b4cf610>
    argNames:
    - self
    - items
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: dns.set.Set.__init__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.add
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 49
    functionName: dns.set.Set.add
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 46
    functionName: dns.set.Set.__repr__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.repr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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>.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: 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:
    - <builtin>.dict
    - dns.set.Set._clone
    - <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:
    - <builtin>.dict
    - dns.set.Set._clone
    - <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:
    - dns.set.Set.add
    - <builtin>.isinstance
    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.discard
    - <builtin>.dict
    - dns.set.Set.difference_update
    - obj.intersection_update
    - <builtin>.isinstance
    - dns.set.Set.intersection
    - dns.set.Set.union_update
    - dns.set.Set._clone
    - dns.set.Set.add
    - <builtin>.hasattr
    - cls.__new__
    - obj.items.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:
    - <builtin>.dict
    - obj.intersection_update
    - dns.set.Set._clone
    - <builtin>.hasattr
    - cls.__new__
    - 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:
    - <builtin>.dict
    - dns.set.Set._clone
    - obj.union_update
    - <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.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:
    - <builtin>.dict
    - obj.difference_update
    - dns.set.Set._clone
    - <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:
    - <builtin>.dict
    - obj.symmetric_difference_update
    - dns.set.Set._clone
    - <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.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:
    - <builtin>.dict
    - dns.set.Set._clone
    - obj.union_update
    - <builtin>.hasattr
    - cls.__new__
    - dns.set.Set.union
    - 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:
    - <builtin>.dict
    - obj.intersection_update
    - dns.set.Set.intersection
    - dns.set.Set._clone
    - <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: 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:
    - <builtin>.dict
    - dns.set.Set._clone
    - obj.union_update
    - <builtin>.hasattr
    - cls.__new__
    - dns.set.Set.union
    - 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:
    - <builtin>.dict
    - obj.difference_update
    - dns.set.Set._clone
    - <builtin>.hasattr
    - cls.__new__
    - obj.items.update
    - dns.set.Set.difference
    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.symmetric_difference
    - <builtin>.dict
    - obj.symmetric_difference_update
    - dns.set.Set._clone
    - <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: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 216
    functionName: dns.set.Set.__ior__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.union_update
    - <builtin>.isinstance
    - dns.set.Set.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 220
    functionName: dns.set.Set.__iand__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - dns.set.Set.intersection_update
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 224
    functionName: dns.set.Set.__iadd__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.union_update
    - <builtin>.isinstance
    - dns.set.Set.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 228
    functionName: dns.set.Set.__isub__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.discard
    - dns.set.Set.difference_update
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 232
    functionName: dns.set.Set.__ixor__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.discard
    - <builtin>.dict
    - dns.set.Set.difference_update
    - obj.intersection_update
    - <builtin>.isinstance
    - dns.set.Set.intersection
    - dns.set.Set.union_update
    - dns.set.Set._clone
    - dns.set.Set.symmetric_difference_update
    - dns.set.Set.add
    - <builtin>.hasattr
    - cls.__new__
    - 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: 1
    functionLinenumber: 236
    functionName: dns.set.Set.update
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 247
    functionName: dns.set.Set.clear
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 251
    functionName: dns.set.Set.__eq__
    functionSourceFile: dns.set
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 254
    functionName: dns.set.Set.__ne__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - dns.set.Set.__eq__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 257
    functionName: dns.set.Set.__len__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 260
    functionName: dns.set.Set.__iter__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 263
    functionName: dns.set.Set.__getitem__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.next
    - itertools.islice
    - <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: itertools.islice
    functionSourceFile: itertools
    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
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 269
    functionName: dns.set.Set.__delitem__
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 276
    functionName: dns.set.Set.issubset
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 289
    functionName: dns.set.Set.issuperset
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 302
    functionName: dns.set.Set.isdisjoint
    functionSourceFile: dns.set
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.opcode
    functionSourceFile: dns.opcode
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 39
    functionName: dns.opcode.Opcode._maximum
    functionSourceFile: dns.opcode
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 43
    functionName: dns.opcode.Opcode._unknown_exception_class
    functionSourceFile: dns.opcode
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Opcode.from_text
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Opcode.to_text
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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:
    - <builtin>.super
    - dns.rcode.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: 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 0x7f970a8869d0>
    - <ast.Constant object at 0x7f970a886fd0>
    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:
    - base64.b64encode
    - <builtin>.range
    - dns.rdata._base64ify
    - data.decode
    - <builtin>.len
    - separator.join
    - dns.rcode.to_text
    - dns.rdata._wordbreak
    - 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 0x7f970abc1790>
    - <ast.Constant object at 0x7f970abc10a0>
    - <ast.Constant object at 0x7f970abc1a30>
    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:
    - tok.get_name
    - tok.get_string
    - tok.get_uint16
    - <builtin>.len
    - base64.b64decode
    - dns.rdtypes.ANY.TSIG.TSIG.__init__
    - Rcode.from_text
    - dns.rcode.from_text
    - <builtin>.super
    - tok.get_uint48
    - dns.rcode.Rcode.make
    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: 5
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a9fd850>
    - <ast.Constant object at 0x7f970a9fd760>
    - <ast.Constant object at 0x7f970a9fd400>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 127
    functionName: dns.rdtypes.ANY.TSIG.TSIG._to_wire
    functionSourceFile: dns.rdtypes.ANY.TSIG
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970ad6b9a0>
    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_counted_bytes
    - parser.get_uint48
    - parser.get_uint16
    - dns.rdtypes.ANY.TSIG.TSIG.__init__
    - parser.get_name
    - parser.get_struct
    - <builtin>.super
    - dns.rcode.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: parser.get_uint48
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.get_counted_bytes
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: dns.entropy
    functionSourceFile: dns.entropy
    functionUses: 0
    functionsReached:
    - os.getpid
    - random.SystemRandom
    - <builtin>.bytearray
    - hashlib.sha1
    - dns.entropy.EntropyPool._stir
    - dns.entropy.EntropyPool.__init__
    - threading.Lock
    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 0x7f970a9c36d0>
    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
    - hashlib.sha1
    - dns.entropy.EntropyPool._stir
    - 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: 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
    - <builtin>.bytearray
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - r.read
    - time.time
    - <builtin>.str
    - os.urandom
    linkageType: pythonLinkage
    raised: []
    returnType: N/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
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - <builtin>.open
    - r.read
    - time.time
    - <builtin>.bytes
    - <builtin>.str
    - os.urandom
    - dns.entropy.EntropyPool._maybe_seed
    linkageType: pythonLinkage
    raised: []
    returnType: 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
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - <builtin>.open
    - r.read
    - time.time
    - <builtin>.bytes
    - <builtin>.str
    - os.urandom
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    linkageType: pythonLinkage
    raised: []
    returnType: 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
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - <builtin>.open
    - r.read
    - time.time
    - <builtin>.bytes
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    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: 4
    functionLinenumber: 94
    functionName: dns.entropy.EntropyPool.random_between
    functionSourceFile: dns.entropy
    functionUses: 1
    functionsReached:
    - os.getpid
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - <builtin>.open
    - r.read
    - time.time
    - <builtin>.bytes
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    - dns.entropy.EntropyPool.random_32
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    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: 5
    functionLinenumber: 126
    functionName: dns.entropy.between
    functionSourceFile: dns.entropy
    functionUses: 0
    functionsReached:
    - os.getpid
    - <builtin>.bytearray
    - dns.entropy.EntropyPool._stir
    - system_random.randrange
    - <builtin>.open
    - dns.entropy.EntropyPool.random_between
    - r.read
    - time.time
    - <builtin>.bytes
    - os.urandom
    - <builtin>.str
    - dns.entropy.EntropyPool.random_16
    - dns.entropy.EntropyPool.random_32
    - dns.entropy.EntropyPool.random_8
    - dns.entropy.EntropyPool._maybe_seed
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970b562820>
    - <ast.Constant object at 0x7f970b5629a0>
    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 0x7f970b04eb80>
    - <ast.Constant object at 0x7f970b04e8e0>
    - <ast.Constant object at 0x7f970b04e730>
    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_ttl
    - tok.get_name
    - <builtin>.super
    - dns.rdtypes.ANY.SOA.SOA.__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_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 0x7f970aa04fd0>
    - <ast.Constant object at 0x7f970aa043a0>
    - <ast.Constant object at 0x7f970a74b400>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: dns.rdtypes.ANY.SOA.SOA._to_wire
    functionSourceFile: dns.rdtypes.ANY.SOA
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970b4cfe50>
    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
    - <builtin>.super
    - dns.rdtypes.ANY.SOA.SOA.__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.ANY
    functionSourceFile: dns.rdtypes.ANY
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.flags
    functionSourceFile: dns.flags
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - text
    - enum_class
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: dns.flags._from_text
    functionSourceFile: dns.flags
    functionUses: 6
    functionsReached:
    - text.split
    - t.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: t.upper
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - flags
    - enum_class
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 59
    functionName: dns.flags._to_text
    functionSourceFile: dns.flags
    functionUses: 4
    functionsReached:
    - enum_class.__members__.items
    - text_flags.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: enum_class.__members__.items
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text_flags.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes
    functionSourceFile: dns.rdtypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.quic
    functionSourceFile: dns.quic
    functionUses: 0
    functionsReached:
    - dns._features.have
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - dns._features._version_check
    - _cache.get
    - itertools.takewhile
    - _requirements.get
    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: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5dc3a0>
    argNames:
    - self
    - enter_result
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 8
    functionName: dns._asyncbackend.NullContext.__init__
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 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:
    - dns.quic._asyncio.AsyncioQuicManager.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a6e8be0>
    - <ast.Attribute object at 0x7f970aa4fc70>
    - <ast.Constant object at 0x7f970aa4ff70>
    - <ast.Constant object at 0x7f970aa4fe80>
    argNames:
    - self
    - conf
    - verify_mode
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 252
    functionName: dns.quic._asyncio.AsyncioQuicManager.__init__
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 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 0x7f970b117850>
    - <ast.Attribute object at 0x7f970b117bb0>
    - <ast.Constant object at 0x7f970b1178e0>
    - <ast.Constant object at 0x7f970b117880>
    argNames:
    - self
    - nursery
    - conf
    - verify_mode
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 220
    functionName: dns.quic._trio.TrioQuicManager.__init__
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f970b562a90>
    argNames:
    - backend
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 55
    functionName: dns.quic.factories_for_backend
    functionSourceFile: dns.quic
    functionUses: 5
    functionsReached:
    - dns.asyncbackend.get_backend
    - dns._trio_backend.Backend
    - backend.name
    - dns.asyncbackend.get_default_backend
    - _backends.get
    - dns._asyncio_backend.Backend
    - sniffio.current_async_library
    - dns.asyncbackend.sniff
    - dns.asyncbackend.set_default_backend
    - asyncio.get_running_loop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 82
    functionName: dns.asyncbackend.get_default_backend
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached:
    - dns.asyncbackend.get_backend
    - dns._trio_backend.Backend
    - _backends.get
    - dns._asyncio_backend.Backend
    - sniffio.current_async_library
    - dns.asyncbackend.sniff
    - dns.asyncbackend.set_default_backend
    - 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: 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.asyncbackend
    functionSourceFile: dns.asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 29
    functionName: dns.asyncbackend.get_backend
    functionSourceFile: dns.asyncbackend
    functionUses: 23
    functionsReached:
    - 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: 55
    functionName: dns.asyncbackend.sniff
    functionSourceFile: dns.asyncbackend
    functionUses: 20
    functionsReached:
    - sniffio.current_async_library
    - asyncio.get_running_loop
    linkageType: pythonLinkage
    raised:
    - AsyncLibraryNotFoundError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sniffio.current_async_library
    functionSourceFile: sniffio
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 90
    functionName: dns.asyncbackend.set_default_backend
    functionSourceFile: dns.asyncbackend
    functionUses: 20
    functionsReached:
    - dns._trio_backend.Backend
    - dns._asyncio_backend.Backend
    - _backends.get
    - dns.asyncbackend.get_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: dns._asyncbackend
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 11
    functionName: dns._asyncbackend.NullContext.__enter__
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 14
    functionName: dns._asyncbackend.NullContext.__exit__
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 17
    functionName: dns._asyncbackend.NullContext.__aenter__
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 20
    functionName: dns._asyncbackend.NullContext.__aexit__
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - family
    - type
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: dns._asyncbackend.Socket.__init__
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: dns._asyncbackend.Socket.close
    functionSourceFile: dns._asyncbackend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: dns._asyncbackend.Socket.getpeername
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 39
    functionName: dns._asyncbackend.Socket.getsockname
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: dns._asyncbackend.Socket.getpeercert
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 45
    functionName: dns._asyncbackend.Socket.__aenter__
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns._asyncbackend.Socket.__aexit__
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.Socket.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - what
    - destination
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 53
    functionName: dns._asyncbackend.DatagramSocket.sendto
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 56
    functionName: dns._asyncbackend.DatagramSocket.recvfrom
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - what
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: dns._asyncbackend.StreamSocket.sendall
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: dns._asyncbackend.StreamSocket.recv
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - host
    - port
    - timeout
    - local_address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 69
    functionName: dns._asyncbackend.NullTransport.connect_tcp
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 74
    functionName: dns._asyncbackend.Backend.name
    functionSourceFile: dns._asyncbackend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f970b562370>
    - <ast.Constant object at 0x7f970b562a00>
    - <ast.Constant object at 0x7f970b5621f0>
    - <ast.Constant object at 0x7f970b562820>
    - <ast.Constant object at 0x7f970b562400>
    - <ast.Constant object at 0x7f970aa046d0>
    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:
    - dns._features.have
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - dns._features._version_check
    - _cache.get
    - itertools.takewhile
    - _requirements.get
    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 0x7f970a5bd670>
    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 0x7f970b5d4b20>
    - <ast.Constant object at 0x7f970b5d4cd0>
    - <ast.Constant object at 0x7f970b5d49a0>
    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:
    - dns.query._remaining
    - binascii.unhexlify
    - trio.socket.socket
    - dns._asyncbackend.NullContext
    - httpcore._backends.trio.TrioStream
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - answers.addresses
    - dns.ipv6.inet_aton
    - dns._trio_backend.StreamSocket.__init__
    - m.group
    - dns.query._compute_times
    - dns._trio_backend._maybe_timeout
    - dns.ipv4.inet_aton
    - trio.move_on_after
    - trio.SocketStream
    - dns._trio_backend.DatagramSocket.__init__
    - dns.inet.af_for_address
    - s.bind
    - dns._trio_backend.Backend.make_socket
    - btext.endswith
    - s.close
    - time.time
    - <builtin>.ord
    - trio.SSLStream
    - <builtin>.len
    - _v4_ending.match
    - <builtin>.min
    - addresses.append
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - s.connect
    - dns.query._expiration_for_this_attempt
    - stream.aclose
    - <builtin>.super
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f970a401250>
    - <ast.Constant object at 0x7f970a4013d0>
    - <ast.Constant object at 0x7f970a401490>
    - <ast.Constant object at 0x7f970a401d00>
    - <ast.Constant object at 0x7f970a4010d0>
    - <ast.Constant object at 0x7f970a4010a0>
    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:
    - s.bind
    - s.close
    - trio.SSLStream
    - s.connect
    - dns._trio_backend.StreamSocket.__init__
    - trio.move_on_after
    - trio.socket.socket
    - stream.aclose
    - dns._trio_backend._maybe_timeout
    - dns._asyncbackend.NullContext
    - trio.SocketStream
    - <builtin>.super
    - dns._trio_backend.DatagramSocket.__init__
    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 0x7f970a68b580>
    - <ast.Constant object at 0x7f970a68ba30>
    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__
    - dns.asyncresolver.Resolver
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 193
    functionName: dns._trio_backend.Backend.name
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trio.socket.socket
    functionSourceFile: trio
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.connect
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trio.SocketStream
    functionSourceFile: trio
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trio.SSLStream
    functionSourceFile: trio
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stream.aclose
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - interval
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 244
    functionName: dns._trio_backend.Backend.sleep
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - trio.sleep
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 247
    functionName: dns._trio_backend.Backend.get_transport_class
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - awaitable
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 250
    functionName: dns._trio_backend.Backend.wait_for
    functionSourceFile: dns._trio_backend
    functionUses: 0
    functionsReached:
    - dns._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: 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 0x7f970abce610>
    - <ast.Attribute object at 0x7f970abcee80>
    - <ast.Constant object at 0x7f970abce280>
    - <ast.Constant object at 0x7f970abcea30>
    - <ast.Constant object at 0x7f970abce400>
    - <ast.Constant object at 0x7f970abce8e0>
    - <ast.Constant object at 0x7f970abce040>
    - <ast.Constant object at 0x7f970abce490>
    - <ast.Constant object at 0x7f970abceca0>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 48
    functionName: dns.asyncresolver.Resolver.resolve
    functionSourceFile: dns.asyncresolver
    functionUses: 4
    functionsReached:
    - resolution.next_nameserver
    - nameserver.async_query
    - dns.asyncbackend.get_backend
    - dns._trio_backend.Backend
    - resolution.next_request
    - dns.asyncbackend.get_default_backend
    - time.time
    - resolution.query_result
    - dns._asyncio_backend.Backend
    - sniffio.current_async_library
    - backend.sleep
    - asyncio.get_running_loop
    - dns.resolver._Resolution
    - dns.asyncbackend.sniff
    - dns.asyncbackend.set_default_backend
    - _backends.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.resolver._Resolution
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resolution.next_request
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resolution.next_nameserver
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: backend.sleep
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nameserver.async_query
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resolution.query_result
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - ipaddr
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 113
    functionName: dns.asyncresolver.Resolver.resolve_address
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - resolution.next_nameserver
    - dns.name.from_unicode
    - dns._trio_backend.Backend
    - resolution.query_result
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - address.startswith
    - <builtin>.chr
    - backend.sleep
    - <builtin>.str
    - dns.asyncbackend.sniff
    - dns.asyncbackend.set_default_backend
    - <builtin>.reversed
    - btext.split
    - part.isdigit
    - text.encode
    - byte_.isdigit
    - _colon_colon_start.match
    - label.encode
    - _colon_colon_end.match
    - <builtin>.int
    - btext.startswith
    - dns.ipv6.inet_aton
    - <builtin>.list
    - m.group
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - nameserver.async_query
    - dns.name.Name.__init__
    - _backends.get
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.asyncbackend.get_default_backend
    - btext.endswith
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - _v4_ending.match
    - dns._asyncio_backend.Backend
    - dns.asyncresolver.Resolver.resolve
    - labels.extend
    - modified_kwargs.update
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - dns.reversename.from_address
    - struct.pack
    - dns.asyncbackend.get_backend
    - resolution.next_request
    - dns.ipv6.is_mapped
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - sniffio.current_async_library
    - dns.resolver._Resolution
    - c.isdigit
    - canonical.append
    - 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: 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 0x7f970b0d3b80>
    - <ast.Name object at 0x7f970b0d3dc0>
    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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - address.startswith
    - <builtin>.chr
    - <builtin>.str
    - <builtin>.reversed
    - btext.split
    - part.isdigit
    - text.encode
    - byte_.isdigit
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - label.encode
    - dns.ipv6.inet_aton
    - <builtin>.list
    - m.group
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - canonical.append
    - c.isdigit
    - dns.ipv6.is_mapped
    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 0x7f970b4cfd90>
    argNames:
    - self
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 141
    functionName: dns.asyncresolver.Resolver.resolve_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - resolution.next_nameserver
    - dns._trio_backend.Backend
    - resolution.query_result
    - backend.sleep
    - dns.asyncbackend.sniff
    - dns.asyncbackend.set_default_backend
    - nameserver.async_query
    - _backends.get
    - dns.resolver.HostAnswers.make
    - dns.asyncbackend.get_default_backend
    - time.time
    - modified_kwargs.pop
    - dns._asyncio_backend.Backend
    - dns.asyncresolver.Resolver.resolve
    - modified_kwargs.update
    - dns.asyncbackend.get_backend
    - resolution.next_request
    - sniffio.current_async_library
    - dns.resolver._Resolution
    - asyncio.get_running_loop
    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 0x7f970a47dbb0>
    - <ast.Constant object at 0x7f970a47dbe0>
    - <ast.Constant object at 0x7f970a47d1c0>
    argNames:
    - cls
    - v6
    - v4
    - add_empty
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 331
    functionName: dns.resolver.HostAnswers.make
    functionSourceFile: <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: 210
    functionName: dns.asyncresolver.Resolver.canonical_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - resolution.next_nameserver
    - nameserver.async_query
    - dns.asyncbackend.get_backend
    - dns._trio_backend.Backend
    - resolution.next_request
    - dns.asyncbackend.get_default_backend
    - time.time
    - resolution.query_result
    - dns._asyncio_backend.Backend
    - sniffio.current_async_library
    - backend.sleep
    - asyncio.get_running_loop
    - dns.asyncresolver.Resolver.resolve
    - dns.resolver._Resolution
    - dns.asyncbackend.sniff
    - dns.asyncbackend.set_default_backend
    - _backends.get
    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 0x7f970ad6bd90>
    argNames:
    - self
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 231
    functionName: dns.asyncresolver.Resolver.try_ddr
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - resolution.next_nameserver
    - dns.query._remaining
    - info.ddr_tls_check_async
    - urllib.parse.urlparse
    - dns._trio_backend.Backend
    - <builtin>.set
    - resolution.query_result
    - binascii.unhexlify
    - dns.nameserver.DoTNameserver
    - backend.sleep
    - dns._ddr._SVCBInfo.__init__
    - dns.asyncbackend.sniff
    - dns.asyncbackend.set_default_backend
    - btext.split
    - dns.nameserver.DoQNameserver
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - infos.append
    - dns.ipv6.inet_aton
    - m.group
    - dns.nameserver.DoHNameserver
    - nameserver.async_query
    - dns.ipv4.inet_aton
    - answer.rrset.processing_order
    - dns.resolver._Resolution
    - _backends.get
    - param.value.endswith
    - nameservers.extend
    - dns._ddr._extract_nameservers_from_svcb
    - btext.endswith
    - dns.asyncbackend.get_default_backend
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - _v4_ending.match
    - dns._asyncio_backend.Backend
    - dns.asyncresolver.Resolver.resolve
    - rr.target.to_text
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - dns.asyncbackend.get_backend
    - resolution.next_request
    - rr.params.get
    - nameservers.append
    - sniffio.current_async_library
    - dns._ddr._get_nameservers_async
    - path.startswith
    - canonical.append
    - asyncio.get_running_loop
    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:
    - info.ddr_tls_check_async
    - urllib.parse.urlparse
    - <builtin>.set
    - binascii.unhexlify
    - dns.nameserver.DoTNameserver
    - dns._ddr._SVCBInfo.__init__
    - btext.split
    - dns.nameserver.DoQNameserver
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - infos.append
    - dns.ipv6.inet_aton
    - m.group
    - dns.nameserver.DoHNameserver
    - dns.ipv4.inet_aton
    - answer.rrset.processing_order
    - param.value.endswith
    - nameservers.extend
    - dns._ddr._extract_nameservers_from_svcb
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - rr.target.to_text
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - rr.params.get
    - nameservers.append
    - path.startswith
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 266
    functionName: dns.asyncresolver.get_default_resolver
    functionSourceFile: dns.asyncresolver
    functionUses: 8
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 274
    functionName: dns.asyncresolver.reset_default_resolver
    functionSourceFile: ''
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 10
    argDefaultValues:
    - <ast.Attribute object at 0x7f970a9fd8b0>
    - <ast.Attribute object at 0x7f970a9fd340>
    - <ast.Constant object at 0x7f970a9fdd00>
    - <ast.Constant object at 0x7f970a9fdd30>
    - <ast.Constant object at 0x7f970a9fd9d0>
    - <ast.Constant object at 0x7f970a9fddc0>
    - <ast.Constant object at 0x7f970a9fd160>
    - <ast.Constant object at 0x7f970a9fd820>
    - <ast.Constant object at 0x7f970a9fd5b0>
    argNames:
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 285
    functionName: dns.asyncresolver.resolve
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - ipaddr
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 320
    functionName: dns.asyncresolver.resolve_address
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7f970abc1130>
    argNames:
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 332
    functionName: dns.asyncresolver.resolve_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 344
    functionName: dns.asyncresolver.canonical_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5b4850>
    argNames:
    - timeout
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 354
    functionName: dns.asyncresolver.try_ddr
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.asyncresolver.reset_default_resolver
    - dns.asyncresolver.get_default_resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7f970a886c40>
    - <ast.Constant object at 0x7f970a886730>
    - <ast.Constant object at 0x7f970a886a00>
    - <ast.Constant object at 0x7f970a8866a0>
    argNames:
    - name
    - rdclass
    - tcp
    - resolver
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 364
    functionName: dns.asyncresolver.zone_for_name
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.asyncresolver.get_default_resolver
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - name.parent
    - resolver.resolve
    - <builtin>.isinstance
    - struct.pack
    - dns.asyncresolver.reset_default_resolver
    - labels.append
    - name.is_absolute
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970a571670>
    - <ast.Attribute object at 0x7f970a571910>
    - <ast.Constant object at 0x7f970a571f70>
    argNames:
    - where
    - port
    - family
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 400
    functionName: dns.asyncresolver.make_resolver_at
    functionSourceFile: dns.asyncresolver
    functionUses: 1
    functionsReached:
    - binascii.unhexlify
    - dns.asyncresolver.get_default_resolver
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - answers.addresses
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - dns.nameserver.Do53Nameserver
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - dns.asyncresolver.reset_default_resolver
    - nameservers.append
    - canonical.append
    - resolver.resolve_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.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: 1
    IfCount: 0
    argCount: 14
    argDefaultValues:
    - <ast.Attribute object at 0x7f970b0e4b80>
    - <ast.Attribute object at 0x7f970b0e4340>
    - <ast.Constant object at 0x7f970b0e4f10>
    - <ast.Constant object at 0x7f970b0e4ca0>
    - <ast.Constant object at 0x7f970b0e4610>
    - <ast.Constant object at 0x7f970b0e4fa0>
    - <ast.Constant object at 0x7f970aa73b50>
    - <ast.Constant object at 0x7f970aa735e0>
    - <ast.Constant object at 0x7f970aa73460>
    - <ast.Constant object at 0x7f970aa73280>
    - <ast.Attribute object at 0x7f970aa736d0>
    - <ast.Constant object at 0x7f970aa73c10>
    argNames:
    - where
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    - backend
    - port
    - family
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 437
    functionName: dns.asyncresolver.resolve_at
    functionSourceFile: dns.asyncresolver
    functionUses: 0
    functionsReached:
    - res.resolve
    - binascii.unhexlify
    - dns.asyncresolver.get_default_resolver
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - answers.addresses
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - dns.asyncresolver.make_resolver_at
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - dns.nameserver.Do53Nameserver
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - dns.asyncresolver.reset_default_resolver
    - nameservers.append
    - canonical.append
    - resolver.resolve_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: 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: 5
    functionLinenumber: -1
    functionName: dns._ddr
    functionSourceFile: dns._ddr
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - bootstrap_address
    - port
    - hostname
    - nameservers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 27
    functionName: dns._ddr._SVCBInfo.__init__
    functionSourceFile: dns._ddr
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cert
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: dns._ddr._SVCBInfo.ddr_check_certificate
    functionSourceFile: dns._ddr
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 40
    functionName: dns._ddr._SVCBInfo.make_tls_context
    functionSourceFile: dns._ddr
    functionUses: 2
    functionsReached:
    - ssl.create_default_context
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 46
    functionName: dns._ddr._SVCBInfo.ddr_tls_check_sync
    functionSourceFile: dns._ddr
    functionUses: 0
    functionsReached:
    - dns.query._remaining
    - dns._ddr._SVCBInfo.make_tls_context
    - ts.settimeout
    - ts.do_handshake
    - ts.getpeercert
    - socket.create_connection
    - time.time
    - dns._ddr._SVCBInfo.ddr_check_certificate
    - ctx.wrap_socket
    - ssl.create_default_context
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970b0e4610>
    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.query._remaining
    - dns._trio_backend.Backend
    - ts.getpeercert
    - binascii.unhexlify
    - dns._ddr._SVCBInfo.ddr_check_certificate
    - dns.asyncbackend.sniff
    - dns.asyncbackend.set_default_backend
    - backend.make_socket
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - _backends.get
    - dns.inet.af_for_address
    - dns._ddr._SVCBInfo.make_tls_context
    - btext.endswith
    - dns.asyncbackend.get_default_backend
    - _v4_ending.match
    - time.time
    - <builtin>.ord
    - <builtin>.len
    - dns._asyncio_backend.Backend
    - ssl.create_default_context
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - dns.asyncbackend.get_backend
    - sniffio.current_async_library
    - canonical.append
    - 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: backend.make_socket
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 5
    IfCount: 12
    argCount: 1
    argDefaultValues: []
    argNames:
    - answer
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 77
    functionName: dns._ddr._extract_nameservers_from_svcb
    functionSourceFile: dns._ddr
    functionUses: 4
    functionsReached:
    - urllib.parse.urlparse
    - <builtin>.set
    - binascii.unhexlify
    - dns.nameserver.DoTNameserver
    - dns._ddr._SVCBInfo.__init__
    - btext.split
    - dns.nameserver.DoQNameserver
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - infos.append
    - dns.ipv6.inet_aton
    - m.group
    - dns.nameserver.DoHNameserver
    - dns.ipv4.inet_aton
    - answer.rrset.processing_order
    - param.value.endswith
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - rr.target.to_text
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - rr.params.get
    - nameservers.append
    - path.startswith
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: answer.rrset.processing_order
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rr.params.get
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rr.target.to_text
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: param.value.endswith
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.startswith
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.nameserver.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: 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: 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: dns._ddr
    functionUses: 1
    functionsReached:
    - urllib.parse.urlparse
    - <builtin>.set
    - binascii.unhexlify
    - dns.nameserver.DoTNameserver
    - dns._ddr._SVCBInfo.__init__
    - btext.split
    - dns.nameserver.DoQNameserver
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - infos.append
    - dns.ipv6.inet_aton
    - m.group
    - dns.nameserver.DoHNameserver
    - dns.ipv4.inet_aton
    - answer.rrset.processing_order
    - param.value.endswith
    - nameservers.extend
    - dns._ddr._extract_nameservers_from_svcb
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - info.ddr_tls_check_sync
    - rr.target.to_text
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - rr.params.get
    - nameservers.append
    - path.startswith
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: info.ddr_tls_check_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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.svcbbase
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: dns.rdtypes.svcbbase.ParamKey._maximum
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 46
    functionName: dns.rdtypes.svcbbase.ParamKey._short_name
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: dns.rdtypes.svcbbase.ParamKey._prefix
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: dns.rdtypes.svcbbase.ParamKey._unknown_exception_class
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: dns.rdtypes.svcbbase._validate_key
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 5
    functionsReached:
    - ParamKey.make
    - key.decode
    - <builtin>.isinstance
    - <builtin>.len
    - key.lower
    - key.replace
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.decode
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.lower
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.replace
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ParamKey.make
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: dns.rdtypes.svcbbase.key_to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - ParamKey.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ParamKey.to_text
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - qstring
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: dns.rdtypes.svcbbase._escapify
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 1
    functionsReached:
    - <builtin>.chr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 101
    functionName: dns.rdtypes.svcbbase._unescape
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 4
    functionsReached:
    - c2.isdigit
    - <builtin>.int
    - <builtin>.len
    - c.encode
    - c3.isdigit
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: dns.rdtypes.svcbbase._split
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 1
    functionsReached:
    - items.append
    - <builtin>.ord
    - <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: items.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 163
    functionName: dns.rdtypes.svcbbase.Param.emptiness
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 171
    functionName: dns.rdtypes.svcbbase.GenericParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.bytes
    - value.encode
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 175
    functionName: dns.rdtypes.svcbbase.GenericParam.emptiness
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 179
    functionName: dns.rdtypes.svcbbase.GenericParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.svcbbase._unescape
    - c2.isdigit
    - <builtin>.isinstance
    - dns.rdtypes.svcbbase.GenericParam.__init__
    - <builtin>.int
    - <builtin>.len
    - <builtin>.bytes
    - c.encode
    - dns.rdata.Rdata._as_bytes
    - value.encode
    - c3.isdigit
    - c.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: 2
    functionLinenumber: 185
    functionName: dns.rdtypes.svcbbase.GenericParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.bytearray
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    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 0x7f970b042ac0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 189
    functionName: dns.rdtypes.svcbbase.GenericParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.bytes
    - parser.get_bytes
    - value.encode
    - dns.rdtypes.svcbbase.GenericParam.__init__
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a6b2490>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 196
    functionName: dns.rdtypes.svcbbase.GenericParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - keys
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 202
    functionName: dns.rdtypes.svcbbase.MandatoryParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - ParamKey.make
    - key.decode
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.isinstance
    - <builtin>.sorted
    - <builtin>.len
    - <builtin>.tuple
    - key.lower
    - key.replace
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 215
    functionName: dns.rdtypes.svcbbase.MandatoryParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - k.encode
    - value.split
    - dns.rdtypes.svcbbase._validate_key
    - ParamKey.make
    - key.decode
    - <builtin>.isinstance
    - <builtin>.sorted
    - <builtin>.len
    - <builtin>.tuple
    - key.lower
    - dns.rdtypes.svcbbase.MandatoryParam.__init__
    - key.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: k.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.split
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 219
    functionName: dns.rdtypes.svcbbase.MandatoryParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - ParamKey.to_text
    - dns.rdtypes.svcbbase.key_to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a29fac0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 223
    functionName: dns.rdtypes.svcbbase.MandatoryParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - ParamKey.make
    - parser.remaining
    - dns.rdtypes.svcbbase._validate_key
    - key.decode
    - <builtin>.isinstance
    - <builtin>.sorted
    - parser.get_uint16
    - <builtin>.tuple
    - <builtin>.len
    - key.lower
    - keys.append
    - dns.rdtypes.svcbbase.MandatoryParam.__init__
    - key.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: 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 0x7f970b787dc0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 234
    functionName: dns.rdtypes.svcbbase.MandatoryParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ids
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 241
    functionName: dns.rdtypes.svcbbase.ALPNParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    - dns.rdata.Rdata._as_tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: dns.rdtypes.svcbbase.ALPNParam.__init__.<lambda1>
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.bytes
    - value.encode
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 247
    functionName: dns.rdtypes.svcbbase.ALPNParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.svcbbase._split
    - dns.rdtypes.svcbbase._unescape
    - items.append
    - c2.isdigit
    - <builtin>.int
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.tuple
    - c.encode
    - c3.isdigit
    - c.isdigit
    - dns.rdata.Rdata._as_tuple
    - dns.rdtypes.svcbbase.ALPNParam.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 250
    functionName: dns.rdtypes.svcbbase.ALPNParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.bytearray
    - qstring.encode
    - <builtin>.chr
    - value.encode
    - dns.rdtypes.svcbbase._escapify
    - dns.rdata._escapify
    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 0x7f970a4488b0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 255
    functionName: dns.rdtypes.svcbbase.ALPNParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.get_counted_bytes
    - parser.remaining
    - ids.append
    - <builtin>.tuple
    - dns.rdtypes.svcbbase.ALPNParam.__init__
    - dns.rdata.Rdata._as_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 0x7f970a448b20>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 262
    functionName: dns.rdtypes.svcbbase.ALPNParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <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: 275
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.emptiness
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 279
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 285
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970aee5730>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 289
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970aabee80>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 294
    functionName: dns.rdtypes.svcbbase.NoDefaultALPNParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - port
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 300
    functionName: dns.rdtypes.svcbbase.PortParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - dns.rdata.Rdata._as_uint16
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 304
    functionName: dns.rdtypes.svcbbase.PortParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdata.Rdata._as_uint16
    - dns.rdtypes.svcbbase.PortParam.__init__
    - <builtin>.int
    - <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: 308
    functionName: dns.rdtypes.svcbbase.PortParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970b7243a0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 312
    functionName: dns.rdtypes.svcbbase.PortParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.rdata.Rdata._as_uint16
    - dns.rdtypes.svcbbase.PortParam.__init__
    - <builtin>.isinstance
    - parser.get_uint16
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970b7243d0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 316
    functionName: dns.rdtypes.svcbbase.PortParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - addresses
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 322
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    - dns.rdata.Rdata._as_tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 328
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - value.split
    - dns.rdata.Rdata._as_tuple
    - dns.rdtypes.svcbbase.IPv4HintParam.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 332
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970adb8eb0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 336
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - addresses.append
    - parser.remaining
    - <builtin>.len
    - <builtin>.tuple
    - parser.get_bytes
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_tuple
    - dns.rdtypes.svcbbase.IPv4HintParam.__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 0x7f970a6283a0>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 343
    functionName: dns.rdtypes.svcbbase.IPv4HintParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - btext.split
    - part.isdigit
    - text.encode
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.ord
    - <builtin>.len
    - file.write
    - dns.ipv4.inet_aton
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - addresses
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 350
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    - dns.rdata.Rdata._as_tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 356
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - dns.rdtypes.svcbbase.IPv6HintParam.__init__
    - value.split
    - dns.rdata.Rdata._as_tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 360
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970afcc580>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 364
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - addresses.append
    - parser.remaining
    - <builtin>.range
    - chunks.append
    - dns.rdtypes.svcbbase.IPv6HintParam.__init__
    - dns.ipv6.inet_ntoa
    - <builtin>.len
    - <builtin>.tuple
    - m.group
    - _leading_zero.match
    - binascii.hexlify
    - parser.get_bytes
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_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 0x7f970ab00940>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 371
    functionName: dns.rdtypes.svcbbase.IPv6HintParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - file.write
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ech
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 378
    functionName: dns.rdtypes.svcbbase.ECHParam.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.bytes
    - value.encode
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 382
    functionName: dns.rdtypes.svcbbase.ECHParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - base64.b64decode
    - <builtin>.bytes
    - value.encode
    - dns.rdtypes.svcbbase.ECHParam.__init__
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 388
    functionName: dns.rdtypes.svcbbase.ECHParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - base64.b64encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970abc7eb0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 393
    functionName: dns.rdtypes.svcbbase.ECHParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.bytes
    - parser.get_bytes
    - value.encode
    - dns.rdtypes.svcbbase.ECHParam.__init__
    - dns.rdata.Rdata._as_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970abc7580>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 397
    functionName: dns.rdtypes.svcbbase.ECHParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - file.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 408
    functionName: dns.rdtypes.svcbbase.OHTTPParam.emptiness
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 412
    functionName: dns.rdtypes.svcbbase.OHTTPParam.from_value
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 418
    functionName: dns.rdtypes.svcbbase.OHTTPParam.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a48faf0>
    argNames:
    - cls
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 422
    functionName: dns.rdtypes.svcbbase.OHTTPParam.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - parser.remaining
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a48ff10>
    argNames:
    - self
    - file
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 427
    functionName: dns.rdtypes.svcbbase.OHTTPParam.to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - params
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 443
    functionName: dns.rdtypes.svcbbase._validate_and_define
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 1
    functionsReached:
    - cls.from_value
    - contextlib.contextmanager
    - dns.rdtypes.svcbbase._unescape
    - <builtin>.int
    - c.encode
    - _class_for_key.get
    - key.decode
    - dns.wire.Parser
    - <builtin>.len
    - cls.from_wire_parser
    - c3.isdigit
    - key.replace
    - cls.emptiness
    - ParamKey.make
    - c2.isdigit
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.isinstance
    - key.lower
    - c.isdigit
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _class_for_key.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.emptiness
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.from_value
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.from_wire_parser
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - priority
    - target
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 469
    functionName: dns.rdtypes.svcbbase.SVCBBase.__init__
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 2
    functionsReached:
    - ParamKey.make
    - <builtin>.isinstance
    - params.get
    - params.items
    - dns.immutable.Dict
    - <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: 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 0x7f970ab90100>
    - <ast.Constant object at 0x7f970ab90df0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 492
    functionName: dns.rdtypes.svcbbase.SVCBBase.to_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - dns.rdtypes.svcbbase.key_to_text
    - <builtin>.len
    - value.to_text
    - params.append
    - 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: 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 0x7f970ab222e0>
    - <ast.Constant object at 0x7f970ab22730>
    - <ast.Constant object at 0x7f970ab22b50>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 509
    functionName: dns.rdtypes.svcbbase.SVCBBase.from_text
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - cls.from_value
    - params.get
    - tok.unget
    - dns.rdtypes.svcbbase._validate_and_define
    - contextlib.contextmanager
    - dns.rdtypes.svcbbase.SVCBBase.__init__
    - dns.rdtypes.svcbbase._unescape
    - tok.get_uint16
    - <builtin>.int
    - c.encode
    - dns.immutable.Dict
    - _class_for_key.get
    - token.value.find
    - token.is_eol_or_eof
    - tok.get_name
    - key.decode
    - dns.wire.Parser
    - params.items
    - <builtin>.len
    - key.replace
    - cls.from_wire_parser
    - c3.isdigit
    - cls.emptiness
    - ParamKey.make
    - c2.isdigit
    - dns.rdtypes.svcbbase._validate_key
    - <builtin>.isinstance
    - tok.get
    - key.lower
    - <builtin>.super
    - c.isdigit
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.value.find
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a3938e0>
    - <ast.Constant object at 0x7f970a393cd0>
    - <ast.Constant object at 0x7f970a3937c0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 550
    functionName: dns.rdtypes.svcbbase.SVCBBase._to_wire
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - dns.renderer.prefixed_length
    - length.to_bytes
    - struct.pack
    - <builtin>.sorted
    - value.to_wire
    - file.write
    - output.seek
    - output.write
    - output.tell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970a68bdf0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 562
    functionName: dns.rdtypes.svcbbase.SVCBBase.from_wire_parser
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - ParamKey.make
    - parser.remaining
    - <builtin>.isinstance
    - params.get
    - params.items
    - parser.get_uint16
    - pcls.from_wire_parser
    - parser.get_name
    - <builtin>.super
    - dns.rdtypes.svcbbase.SVCBBase.__init__
    - dns.immutable.Dict
    - parser.restrict_to
    - _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: 582
    functionName: dns.rdtypes.svcbbase.SVCBBase._processing_priority
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 586
    functionName: dns.rdtypes.svcbbase.SVCBBase._processing_order
    functionSourceFile: dns.rdtypes.svcbbase
    functionUses: 0
    functionsReached:
    - by_priority.keys
    - <builtin>.sorted
    - collections.defaultdict
    - <builtin>.len
    - <builtin>.list
    - rdata._processing_priority
    - random.shuffle
    - dns.rdtypes.util._priority_table
    - ordered.extend
    - dns.rdtypes.util.priority_processing_order
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - iterable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 218
    functionName: dns.rdtypes.util.priority_processing_order
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - by_priority.keys
    - <builtin>.sorted
    - collections.defaultdict
    - <builtin>.len
    - <builtin>.list
    - rdata._processing_priority
    - random.shuffle
    - dns.rdtypes.util._priority_table
    - 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 0x7f970a5bdaf0>
    argNames:
    - self
    - type
    - gateway
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 38
    functionName: dns.rdtypes.util.Gateway.__init__
    functionSourceFile: dns.rdtypes.util
    functionUses: 2
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - dns.rdata.Rdata._as_uint8
    - <builtin>.isinstance
    - struct.pack
    - dns.rdtypes.util.Gateway._check
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 47
    functionName: dns.rdtypes.util.Gateway._check
    functionSourceFile: dns.rdtypes.util
    functionUses: 3
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - gateway_type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: dns.rdtypes.util.Gateway._invalid_type
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a74bf40>
    - <ast.Constant object at 0x7f970a74b5b0>
    argNames:
    - self
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: dns.rdtypes.util.Gateway.to_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - <builtin>.isinstance
    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 0x7f970a74b700>
    - <ast.Constant object at 0x7f970a74b3d0>
    - <ast.Constant object at 0x7f970a74b7f0>
    argNames:
    - cls
    - gateway_type
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 78
    functionName: dns.rdtypes.util.Gateway.from_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - tok.get_name
    - tok.get_string
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - dns.rdtypes.util.Gateway.__init__
    - <builtin>.range
    - dns.rdata.Rdata._as_uint8
    - <builtin>.isinstance
    - struct.pack
    - dns.rdtypes.util.Gateway._check
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aec78e0>
    - <ast.Constant object at 0x7f970aec7e50>
    - <ast.Constant object at 0x7f970aec79a0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 92
    functionName: dns.rdtypes.util.Gateway.to_wire
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - file.write
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970a68b4f0>
    argNames:
    - cls
    - gateway_type
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 110
    functionName: dns.rdtypes.util.Gateway.from_wire_parser
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - dns.ipv6.inet_ntoa
    - binascii.unhexlify
    - dns.ipv4.inet_ntoa
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - chunks.append
    - btext.endswith
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - dns.rdtypes.util.Gateway.__init__
    - _leading_zero.match
    - parser.get_name
    - <builtin>.range
    - dns.rdata.Rdata._as_uint8
    - <builtin>.isinstance
    - struct.pack
    - dns.rdtypes.util.Gateway._check
    - parser.get_bytes
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970b78fbb0>
    argNames:
    - self
    - windows
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 129
    functionName: dns.rdtypes.util.Bitmap.__init__
    functionSourceFile: dns.rdtypes.util
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 147
    functionName: dns.rdtypes.util.Bitmap.to_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - RdataType.to_text
    - <builtin>.enumerate
    - dns.rdatatype.RdataType.make
    - bits.append
    - dns.rdatatype.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bits.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - tok
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 160
    functionName: dns.rdtypes.util.Bitmap.from_text
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - tok.get_remaining
    - dns.rdatatype.from_text
    - <builtin>.isinstance
    - dns.rdtypes.util.Bitmap.__init__
    - <builtin>.sorted
    - <builtin>.bytearray
    - RdataType.from_text
    - <builtin>.len
    - <builtin>.bytes
    - windows.append
    - token.unescape
    - rdtypes.append
    - dns.rdtypes.util.Bitmap.from_rdtypes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok.get_remaining
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.unescape
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rdtypes.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - rdtypes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 170
    functionName: dns.rdtypes.util.Bitmap.from_rdtypes
    functionSourceFile: dns.rdtypes.util
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.sorted
    - dns.rdtypes.util.Bitmap.__init__
    - <builtin>.bytearray
    - <builtin>.len
    - <builtin>.bytes
    - windows.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: windows.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 196
    functionName: dns.rdtypes.util.Bitmap.to_wire
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 202
    functionName: dns.rdtypes.util.Bitmap.from_wire_parser
    functionSourceFile: dns.rdtypes.util
    functionUses: 0
    functionsReached:
    - parser.get_counted_bytes
    - parser.remaining
    - <builtin>.isinstance
    - dns.rdtypes.util.Bitmap.__init__
    - parser.get_uint8
    - <builtin>.len
    - windows.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - items
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 211
    functionName: dns.rdtypes.util._priority_table
    functionSourceFile: dns.rdtypes.util
    functionUses: 8
    functionsReached:
    - rdata._processing_priority
    - collections.defaultdict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.defaultdict
    functionSourceFile: collections
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rdata._processing_priority
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: by_priority.keys
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ordered.extend
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - iterable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 234
    functionName: dns.rdtypes.util.weighted_processing_order
    functionSourceFile: dns.rdtypes.util
    functionUses: 2
    functionsReached:
    - by_priority.keys
    - <builtin>.enumerate
    - <builtin>.sorted
    - collections.defaultdict
    - ordered.append
    - <builtin>.len
    - <builtin>.list
    - rdata._processing_priority
    - random.uniform
    - <builtin>.sum
    - dns.rdtypes.util._priority_table
    - rdata._processing_weight
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rdata._processing_weight
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: random.uniform
    functionSourceFile: random
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ordered.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - formatted
    - num_chunks
    - chunk_size
    - separator
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 258
    functionName: dns.rdtypes.util.parse_formatted_hex
    functionSourceFile: dns.rdtypes.util
    functionUses: 8
    functionsReached:
    - <builtin>.range
    - <builtin>.int
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.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 0x7f970aee8730>
    - <ast.Constant object at 0x7f970aee8970>
    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 0x7f970ad98280>
    - <ast.Constant object at 0x7f970ad984c0>
    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 0x7f970b042880>
    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 0x7f970af43fd0>
    - <ast.Constant object at 0x7f970af43b50>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - label.encode
    - s.getsockopt
    - sock.recv
    - dns.query.make_socket
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - e.message
    - dns.query.send_tcp
    - dns.inet.is_multicast
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.query.udp
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.sendto
    - sock.recvfrom
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.inet.inet_pton
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - dns.query._udp_send
    - RdataType.to_text
    - s.bind
    - dns.wire.Parser
    - scope.isdigit
    - q.to_wire
    - s.close
    - dns.query._udp_recv
    - <builtin>.bytes
    - sock.send
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - socket.if_nametoindex
    - sel.select
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - s.setblocking
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.query._net_write
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.query._matches_destination
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.query._net_read
    - dns.query._destination_and_source
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.query.receive_tcp
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - dns.query.tcp
    - key.name.to_digestable
    - query.is_response
    - s.connect_ex
    - dns.name.Name.__init__
    - dns.query.receive_udp
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - dns.query._addresses_equal
    - dns.query.send_udp
    - dns.query._connect
    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 0x7f970a29f2b0>
    - <ast.Constant object at 0x7f970a29f700>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - dns.exception.ExceptionWrapper
    - backend.make_socket
    - btext.split
    - text.encode
    - dns.asyncquery.tcp
    - label.encode
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - e.message
    - dns.asyncquery.send_udp
    - <builtin>.max
    - dns.inet.is_multicast
    - os.getpid
    - dns.tsig._maybe_start_digest
    - dns.asyncquery.send_tcp
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.asyncquery.receive_tcp
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.sendto
    - sock.recvfrom
    - dns._asyncbackend.NullContext.__init__
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.inet.inet_pton
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.asyncquery._source_tuple
    - dns.wire.Parser
    - dns.asyncquery.udp
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncquery.receive_udp
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - typing.cast.recv
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - sock.getpeername
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - backend.datagram_connection_required
    - dns.query._matches_destination
    - sock.sendall
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - query.is_response
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - dns.asyncquery._read_exactly
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - dns.query._addresses_equal
    - asyncio.get_running_loop
    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 0x7f970a937b80>
    - <ast.Constant object at 0x7f970a937bb0>
    - <ast.Constant object at 0x7f970a937130>
    - <ast.Constant object at 0x7f970a937c70>
    - <ast.Constant object at 0x7f970a937760>
    - <ast.Constant object at 0x7f970a9376d0>
    - <ast.Constant object at 0x7f970a937d60>
    - <ast.Constant object at 0x7f970a937dc0>
    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: 385
    functionName: dns.asyncquery.tcp
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - dns.exception.ExceptionWrapper
    - backend.make_socket
    - btext.split
    - text.encode
    - label.encode
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - dns.asyncquery.send_tcp
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.asyncquery.receive_tcp
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - <builtin>.abs
    - typing.cast
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns._asyncbackend.NullContext.__init__
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.asyncquery._source_tuple
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - typing.cast.recv
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - sock.getpeername
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - sock.sendall
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - dns.asyncquery._read_exactly
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - asyncio.get_running_loop
    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 0x7f970a5b0bb0>
    - <ast.Constant object at 0x7f970a5b0dc0>
    - <ast.Constant object at 0x7f970a5b0f40>
    - <ast.Constant object at 0x7f970a5b0520>
    - <ast.Constant object at 0x7f970a5b0df0>
    - <ast.Constant object at 0x7f970a5b04f0>
    - <ast.Constant object at 0x7f970a5b0ca0>
    - <ast.Constant object at 0x7f970a5b0f10>
    - <ast.Constant object at 0x7f970a5b07f0>
    - <ast.Constant object at 0x7f970a5b0fa0>
    - <ast.Constant object at 0x7f970a5b0eb0>
    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: 182
    functionName: dns.asyncquery.udp
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - dns.exception.ExceptionWrapper
    - backend.make_socket
    - btext.split
    - text.encode
    - label.encode
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - e.message
    - dns.asyncquery.send_udp
    - dns.inet.is_multicast
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - <builtin>.abs
    - dns.tsig.get_context
    - typing.cast
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.sendto
    - sock.recvfrom
    - dns._asyncbackend.NullContext.__init__
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.inet.inet_pton
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.asyncquery._source_tuple
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncquery.receive_udp
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - backend.datagram_connection_required
    - dns.query._matches_destination
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - query.is_response
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.query._addresses_equal
    - asyncio.get_running_loop
    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 0x7f970a448280>
    - <ast.Constant object at 0x7f970a448e50>
    - <ast.Constant object at 0x7f970a4488e0>
    - <ast.Attribute object at 0x7f970a448640>
    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 0x7f970b83f160>
    - <ast.Constant object at 0x7f970ad46250>
    - <ast.Constant object at 0x7f970ad46340>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - dns.inet.is_address
    - dns.query._check_status
    - label.encode
    - dns.resolver.Resolver
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - resolver.resolve_name
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - dns.query._NetworkBackend.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - dns.query._HTTPTransport.__init__
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - scope.isdigit
    - q.to_wire
    - session.get
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.query._maybe_get_resolver
    - dns.tsig.GSSTSig.verify
    - dns.entropy.EntropyPool._maybe_seed
    - socket.if_nametoindex
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - canonical.append
    - dns.quic.SyncQuicManager
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - random.choice
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - answers.addresses
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - base64.urlsafe_b64encode
    - btext.endswith
    - _v4_ending.match
    - dns.query._destination_and_source
    - response.elapsed.total_seconds
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.query.https
    - dns.message._WireReader.read
    - <builtin>.tuple
    - stream.send_h3
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - stream.headers
    - stream.receive
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - session.post
    - dns.message.from_wire
    - dns.query._http3
    - wire.decode
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - headers.update
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - dns.query._find_header
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - httpx.Client
    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 0x7f970aabe310>
    - <ast.Constant object at 0x7f970aabe370>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - the_client.post
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - dns.inet.is_address
    - dns.query._check_status
    - label.encode
    - dns.quic.factories_for_backend
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - backend.wait_for
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - resolver.resolve_name
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns._asyncbackend.NullContext.__init__
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - backend.get_transport_class
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncresolver.Resolver
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.asyncquery._http3
    - dns.message._WireReader._get_question
    - dns.asyncquery.https
    - dns.rdatatype.to_text
    - canonical.append
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - random.choice
    - contextlib.contextmanager
    - backend.name
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - answers.addresses
    - rrset.add
    - the_client.get
    - dns.name.IDNA2003Codec.encode
    - base64.urlsafe_b64encode
    - btext.endswith
    - _v4_ending.match
    - response.elapsed.total_seconds
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - stream.send_h3
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - stream.headers
    - hmac.compare_digest
    - stream.receive
    - <builtin>.str
    - httpx.AsyncClient
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.message.from_wire
    - wire.decode
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - headers.update
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - dns.query._find_header
    - <builtin>.ord
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.callable
    - dns.asyncquery._maybe_get_resolver
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - asyncio.get_running_loop
    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 0x7f970ab12340>
    - <ast.Constant object at 0x7f970ab12610>
    - <ast.Constant object at 0x7f970ab12a60>
    - <ast.Constant object at 0x7f970ab12310>
    - <ast.Constant object at 0x7f970ab12790>
    - <ast.Constant object at 0x7f970ab12940>
    - <ast.Constant object at 0x7f970ab120d0>
    - <ast.Constant object at 0x7f970ab12eb0>
    - <ast.Constant object at 0x7f970ab12130>
    - <ast.Constant object at 0x7f970ab12e50>
    - <ast.Constant object at 0x7f970ab12e80>
    - <ast.Constant object at 0x7f970ab12b80>
    - <ast.Attribute object at 0x7f970ab125b0>
    - <ast.Attribute object at 0x7f970ab12e20>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - client
    - path
    - post
    - verify
    - bootstrap_address
    - resolver
    - family
    - http_version
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 530
    functionName: dns.asyncquery.https
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - the_client.post
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - dns.inet.is_address
    - dns.query._check_status
    - label.encode
    - dns.quic.factories_for_backend
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - backend.wait_for
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - resolver.resolve_name
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns._asyncbackend.NullContext.__init__
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - backend.get_transport_class
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncresolver.Resolver
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.asyncquery._http3
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - canonical.append
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - random.choice
    - contextlib.contextmanager
    - backend.name
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - answers.addresses
    - rrset.add
    - the_client.get
    - dns.name.IDNA2003Codec.encode
    - base64.urlsafe_b64encode
    - btext.endswith
    - _v4_ending.match
    - response.elapsed.total_seconds
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - stream.send_h3
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - stream.headers
    - hmac.compare_digest
    - stream.receive
    - <builtin>.str
    - httpx.AsyncClient
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.message.from_wire
    - wire.decode
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - headers.update
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - dns.query._find_header
    - <builtin>.ord
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.callable
    - dns.asyncquery._maybe_get_resolver
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - asyncio.get_running_loop
    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 0x7f970aabef70>
    - <ast.Constant object at 0x7f970aabeeb0>
    - <ast.Constant object at 0x7f970adb8040>
    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 0x7f970adb8430>
    - <ast.Constant object at 0x7f970adb8370>
    - <ast.Constant object at 0x7f970adb8250>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - ssl_context.set_alpn_protocols
    - <builtin>.chr
    - sel.register
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - os.path.isdir
    - label.encode
    - s.getsockopt
    - sock.recv
    - dns.query.make_socket
    - server_hostname.to_text
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - address.find
    - dns.name._validate_labels
    - dns.query.make_ssl_context
    - os.path.isfile
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - dns.query.send_tcp
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - fd.pending
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.query._wait_for_writable
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.inet.low_level_address_tuple
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - socket.getaddrinfo
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - s.bind
    - dns.wire.Parser
    - scope.isdigit
    - q.to_wire
    - s.close
    - <builtin>.bytes
    - sock.send
    - dns.query.make_ssl_socket
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - ssl.create_default_context
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - socket.if_nametoindex
    - sel.select
    - ssl_context.wrap_socket
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - dns.inet.any_for_af
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - s.setblocking
    - contextlib.contextmanager
    - parser.get_remaining
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - struct.unpack
    - dns.query._net_write
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.query._tls_handshake
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.query._net_read
    - dns.query._destination_and_source
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.query.receive_tcp
    - dns.message._message_factory_from_opcode
    - dns.query.tls
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - s.do_handshake
    - dns.message.Message.__init__
    - hmac.compare_digest
    - dns.query._wait_for
    - selectors.DefaultSelector
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - dns.query._wait_for_readable
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns._no_ssl.create_default_context
    - dns.ipv4.inet_aton
    - dns.query.tcp
    - key.name.to_digestable
    - dns.name.Name.__init__
    - s.connect_ex
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.query._connect
    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 0x7f970aa5a1f0>
    - <ast.Constant object at 0x7f970aa5ab50>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - ssl_context.set_alpn_protocols
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - dns.exception.ExceptionWrapper
    - backend.make_socket
    - btext.split
    - text.encode
    - dns.asyncquery.tcp
    - os.path.isdir
    - label.encode
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.query.make_ssl_context
    - os.path.isfile
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - dns.asyncquery.send_tcp
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.asyncquery.receive_tcp
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - <builtin>.abs
    - typing.cast
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns._asyncbackend.NullContext.__init__
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.asyncquery._source_tuple
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - ssl.create_default_context
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - typing.cast.recv
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - sock.getpeername
    - contextlib.contextmanager
    - parser.get_remaining
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - sock.sendall
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns._no_ssl.create_default_context
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - dns.asyncquery.tls
    - dns.asyncquery._read_exactly
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - asyncio.get_running_loop
    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 0x7f970aeaa5b0>
    - <ast.Constant object at 0x7f970aeaa340>
    - <ast.Constant object at 0x7f970aeaaca0>
    - <ast.Constant object at 0x7f970aeaa280>
    - <ast.Constant object at 0x7f970aeaa790>
    - <ast.Constant object at 0x7f970aeaa400>
    - <ast.Constant object at 0x7f970aeaa3d0>
    - <ast.Constant object at 0x7f970aeaae80>
    - <ast.Constant object at 0x7f970aeaa0d0>
    - <ast.Constant object at 0x7f970aeaaa00>
    - <ast.Constant object at 0x7f970aeaa880>
    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: 446
    functionName: dns.asyncquery.tls
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - ssl_context.set_alpn_protocols
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - dns.exception.ExceptionWrapper
    - backend.make_socket
    - btext.split
    - text.encode
    - dns.asyncquery.tcp
    - os.path.isdir
    - label.encode
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.query.make_ssl_context
    - os.path.isfile
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - dns.asyncquery.send_tcp
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.asyncquery.receive_tcp
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - <builtin>.abs
    - typing.cast
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns._asyncbackend.NullContext.__init__
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.asyncquery._source_tuple
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - ssl.create_default_context
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - typing.cast.recv
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - sock.getpeername
    - contextlib.contextmanager
    - parser.get_remaining
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - sock.sendall
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns._no_ssl.create_default_context
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - dns.asyncquery._read_exactly
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - asyncio.get_running_loop
    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 0x7f970ab7fc10>
    - <ast.Constant object at 0x7f970ab7f310>
    - <ast.Constant object at 0x7f970ab7f550>
    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 0x7f970a393be0>
    - <ast.Constant object at 0x7f970a393eb0>
    - <ast.Constant object at 0x7f970a393820>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - dns.query.quic
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - stream.send
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.quic.SyncQuicManager
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - stream.receive
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    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 0x7f970a393310>
    - <ast.Constant object at 0x7f970a393ac0>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - dns.quic.factories_for_backend
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.asyncquery.quic
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - stream.send
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - backend.name
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - stream.receive
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.callable
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - asyncio.get_running_loop
    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 0x7f970a455160>
    - <ast.Constant object at 0x7f970a455190>
    - <ast.Constant object at 0x7f970a455fa0>
    - <ast.Constant object at 0x7f970a455280>
    - <ast.Constant object at 0x7f970a455580>
    - <ast.Constant object at 0x7f970a455130>
    - <ast.Constant object at 0x7f970a455cd0>
    - <ast.Constant object at 0x7f970a4555b0>
    - <ast.Constant object at 0x7f970a455c10>
    - <ast.Constant object at 0x7f970a4557f0>
    - <ast.Constant object at 0x7f970a455fd0>
    argNames:
    - q
    - where
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - connection
    - verify
    - backend
    - hostname
    - server_hostname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 770
    functionName: dns.asyncquery.quic
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - dns.quic.factories_for_backend
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - stream.send
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - backend.name
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - stream.receive
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - <builtin>.callable
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - asyncio.get_running_loop
    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 0x7f970a733a60>
    argNames:
    - expiration
    - now
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: dns.asyncquery._timeout
    functionSourceFile: dns.asyncquery
    functionUses: 13
    functionsReached:
    - time.time
    - <builtin>.max
    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 0x7f970a6a79a0>
    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
    - <builtin>.isinstance
    - time.time
    - what.to_wire
    - sock.sendto
    - <builtin>.max
    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 0x7f970a5caeb0>
    - <ast.Constant object at 0x7f970a5cae50>
    - <ast.Constant object at 0x7f970a5ca850>
    - <ast.Constant object at 0x7f970a5cab80>
    - <ast.Constant object at 0x7f970a5caa60>
    - <ast.Constant object at 0x7f970a5cab50>
    - <ast.Constant object at 0x7f970a5ca9d0>
    - <ast.Constant object at 0x7f970a5caac0>
    - <ast.Constant object at 0x7f970a5ca5b0>
    - <ast.Constant object at 0x7f970a5cad60>
    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.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.exception.ExceptionWrapper
    - btext.split
    - text.encode
    - label.encode
    - m.group
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - e.message
    - dns.inet.is_multicast
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.recvfrom
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.inet.inet_pton
    - dns.opcode.from_flags
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.query._matches_destination
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - _colon_colon_start.match
    - btext.startswith
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - query.is_response
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.query._addresses_equal
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: backend.datagram_connection_required
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7f970a489820>
    - <ast.Constant object at 0x7f970a489850>
    - <ast.Constant object at 0x7f970a489ac0>
    - <ast.Constant object at 0x7f970a489f70>
    - <ast.Constant object at 0x7f970a489310>
    - <ast.Constant object at 0x7f970a4897f0>
    - <ast.Constant object at 0x7f970a489e80>
    - <ast.Constant object at 0x7f970a489cd0>
    - <ast.Constant object at 0x7f970a4890a0>
    - <ast.Constant object at 0x7f970a4897c0>
    - <ast.Constant object at 0x7f970a489e50>
    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: 248
    functionName: dns.asyncquery.udp_with_fallback
    functionSourceFile: dns.asyncquery
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - dns.exception.ExceptionWrapper
    - backend.make_socket
    - btext.split
    - text.encode
    - dns.asyncquery.tcp
    - label.encode
    - m.group
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - e.message
    - dns.asyncquery.send_udp
    - <builtin>.max
    - dns.inet.is_multicast
    - os.getpid
    - dns.tsig._maybe_start_digest
    - dns.asyncquery.send_tcp
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.asyncquery.receive_tcp
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - dns.tsig.get_context
    - typing.cast
    - <builtin>.abs
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - sock.sendto
    - sock.recvfrom
    - dns._asyncbackend.NullContext.__init__
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.inet.inet_pton
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.asyncquery._source_tuple
    - dns.wire.Parser
    - dns.asyncquery.udp
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncquery.receive_udp
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - what.to_wire
    - dns.message._WireReader._get_question
    - typing.cast.recv
    - dns.rdatatype.to_text
    - canonical.append
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - sock.getpeername
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - rrset.add
    - backend.datagram_connection_required
    - dns.query._matches_destination
    - sock.sendall
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.message._WireReader.__init__
    - _colon_colon_start.match
    - btext.startswith
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - query.is_response
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - RdataClass.to_text
    - <builtin>.ord
    - _rdata_classes.get
    - dns.asyncquery._read_exactly
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - dns.query._addresses_equal
    - asyncio.get_running_loop
    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 0x7f970aebebe0>
    argNames:
    - sock
    - what
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 316
    functionName: dns.asyncquery.send_tcp
    functionSourceFile: dns.asyncquery
    functionUses: 5
    functionsReached:
    - dns.asyncquery._timeout
    - sock.sendall
    - <builtin>.isinstance
    - time.time
    - <builtin>.len
    - what.to_wire
    - <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: 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: 341
    functionName: dns.asyncquery._read_exactly
    functionSourceFile: dns.asyncquery
    functionUses: 8
    functionsReached:
    - dns.asyncquery._timeout
    - time.time
    - <builtin>.len
    - typing.cast.recv
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - EOFError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.recv
    functionSourceFile: typing
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f970a551be0>
    - <ast.Constant object at 0x7f970a551850>
    - <ast.Constant object at 0x7f970a551f40>
    - <ast.Constant object at 0x7f970a551a60>
    - <ast.Constant object at 0x7f970a551190>
    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: 355
    functionName: dns.asyncquery.receive_tcp
    functionSourceFile: dns.asyncquery
    functionUses: 5
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - typing.cast.recv
    - dns.rdatatype.to_text
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - dns.asyncquery._read_exactly
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__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: sock.getpeername
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - resolver
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 516
    functionName: dns.asyncquery._maybe_get_resolver
    functionSourceFile: dns.asyncquery
    functionUses: 2
    functionsReached:
    - dns.asyncresolver.Resolver
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7f970b72bac0>
    - <ast.Constant object at 0x7f970b72bb50>
    - <ast.Constant object at 0x7f970b72b0d0>
    - <ast.Constant object at 0x7f970b72b7c0>
    - <ast.Constant object at 0x7f970b72b430>
    - <ast.Constant object at 0x7f970b72bfd0>
    - <ast.Constant object at 0x7f970b72b580>
    - <ast.Constant object at 0x7f970b72b610>
    - <ast.Constant object at 0x7f970b72b280>
    - <ast.Constant object at 0x7f970b72b190>
    argNames:
    - q
    - where
    - url
    - timeout
    - port
    - source
    - source_port
    - one_rr_per_rrset
    - ignore_trailing
    - verify
    - backend
    - post
    - connection
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 706
    functionName: dns.asyncquery._http3
    functionSourceFile: dns.asyncquery
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.asyncbackend.sniff
    - the_manager.connect
    - dns.exception.ExceptionWrapper
    - text.encode
    - dns.query._check_status
    - label.encode
    - dns.quic.factories_for_backend
    - q.is_response
    - os.urandom
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - urllib.parse.urlparse
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - q.to_wire
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - dns.rdatatype.to_text
    - dns.query._remaining
    - dns.rdataclass.to_text
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - backend.name
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - stream.send_h3
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - the_connection.make_stream
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns._trio_backend.Backend
    - dns.message.Message.__init__
    - stream.headers
    - hmac.compare_digest
    - stream.receive
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - wire.decode
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - dns.asyncbackend.get_default_backend
    - dns.query._find_header
    - <builtin>.ord
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.callable
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - asyncio.get_running_loop
    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: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 6
    argDefaultValues: []
    argNames:
    - txn_manager
    - s
    - query
    - serial
    - timeout
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 840
    functionName: dns.asyncquery._inbound_xfr
    functionSourceFile: dns.asyncquery
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.exception.ExceptionWrapper
    - text.encode
    - query.to_wire
    - label.encode
    - os.urandom
    - typing.cast.sendall
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - dns.xfr.Inbound
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - typing.cast
    - <builtin>.abs
    - dns.tsig.get_context
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - inbound.process_message
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - typing.cast.sendto
    - importlib.import_module
    - RdataType.to_text
    - dns.wire.Parser
    - <builtin>.bytes
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.message._WireReader._get_question
    - typing.cast.recv
    - dns.rdatatype.to_text
    - dns.rdataclass.to_text
    - txn_manager.from_wire_origin
    - dns.tsig.HMACTSig.__init__
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - dns.message.MessageError.__init__
    - rrset.add
    - dns.name.IDNA2003Codec.encode
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - <builtin>.super
    - dns.message._message_factory_from_opcode
    - dns.message._WireReader._add_error
    - dns.tsig.HMACTSig.update
    - dns.message.Message.__init__
    - hmac.compare_digest
    - typing.cast.recvfrom
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.message.from_wire
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - key.algorithm.to_digestable
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - dns.asyncquery._read_exactly
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__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: 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 0x7f970aa2ccd0>
    - <ast.Constant object at 0x7f970aa2cd90>
    - <ast.Constant object at 0x7f970aa2c430>
    - <ast.Constant object at 0x7f970aa2cee0>
    - <ast.Constant object at 0x7f970aa2c700>
    - <ast.Constant object at 0x7f970aa2c160>
    - <ast.Attribute object at 0x7f970aa2c940>
    - <ast.Constant object at 0x7f970aa2c4f0>
    argNames:
    - where
    - txn_manager
    - query
    - port
    - timeout
    - lifetime
    - source
    - source_port
    - udp_mode
    - backend
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 895
    functionName: dns.asyncquery.inbound_xfr
    functionSourceFile: dns.asyncquery
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.xfr.extract_serial_from_query
    - dns.rrset.from_rdata
    - dns.rdata.GenericRdata.from_text
    - r.update_ttl
    - dns.message._WireReader._get_section
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns.xfr.make_query
    - dns.asyncbackend.sniff
    - dns.exception.ExceptionWrapper
    - backend.make_socket
    - btext.split
    - text.encode
    - query.to_wire
    - dns.message.make_query
    - label.encode
    - m.group
    - os.urandom
    - dns.message.Message.find_rrset
    - typing.cast.sendall
    - query.find_rrset
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - dns.tsig.HMACTSig.verify
    - time.time
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - dns.xfr.Inbound
    - <builtin>.max
    - os.getpid
    - dns.tsig._maybe_start_digest
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.tsig._digest
    - system_random.randrange
    - r.read
    - dns.tsig.Key
    - dns.rdata.from_wire_parser
    - q.find_rrset
    - <builtin>.abs
    - dns.tsig.get_context
    - typing.cast
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - rdtype_text.replace
    - dns.message._maybe_import_update
    - <builtin>.bytearray
    - dns.flags.Flag
    - tok.unget
    - dns.message.Message.use_edns
    - dns.tsig.GSSTSig.__init__
    - byte_.isdigit
    - inbound.process_message
    - dns.opcode.from_flags
    - dns.query._compute_times
    - dns.rdata.get_rdata_class
    - absolute_name.relativize
    - dns.rdataclass.RdataClass.make
    - _backends.get
    - typing.cast.sendto
    - importlib.import_module
    - txn_manager.get_class
    - RdataType.to_text
    - dns.asyncquery._source_tuple
    - dns.wire.Parser
    - <builtin>.bytes
    - dns._asyncio_backend.Backend
    - dns.tsig.HMACTSig.sign
    - dns.tsig.GSSTSig.update
    - labels.extend
    - parser.restrict_to
    - hmac.new
    - dns.entropy.EntropyPool._maybe_seed
    - dns.tsig.GSSTSig.verify
    - dns.message.Message.section_number
    - txn_manager.origin_information
    - dns.asyncbackend.get_backend
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - tok.get
    - dns.message._WireReader._get_question
    - typing.cast.recv
    - dns.rdatatype.to_text
    - dns.rdata.from_text
    - canonical.append
    - dns.rdataclass.to_text
    - txn_manager.from_wire_origin
    - tok.get_int
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - dns.tsig.HMACTSig.__init__
    - contextlib.contextmanager
    - parser.get_remaining
    - struct.unpack
    - token.is_identifier
    - _colon_colon_end.match
    - dns.message.MessageError.__init__
    - txn_manager.reader
    - rrset.add
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - tok.get_eol_as_token
    - _v4_ending.match
    - rd.covers
    - dns.name.is_all_ascii
    - <builtin>.range
    - dns.message._WireReader.read
    - <builtin>.tuple
    - sniffio.current_async_library
    - dns.rdata.from_wire
    - <builtin>.super
    - object.__setattr__
    - dns.message._message_factory_from_opcode
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.message._WireReader._add_error
    - dns._trio_backend.Backend
    - dns.tsig.HMACTSig.update
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - hmac.compare_digest
    - typing.cast.recvfrom
    - <builtin>.str
    - r.add
    - dns.asyncbackend.set_default_backend
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - rdata.to_wire
    - dns.message._WireReader.__init__
    - dns.rrset.from_rdata_list
    - _colon_colon_start.match
    - btext.startswith
    - dns.asyncquery._inbound_xfr
    - <builtin>.int
    - dns.rdata.GenericRdata.__init__
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.message.from_wire
    - dns.ipv4.inet_aton
    - key.name.to_digestable
    - dns.name.Name.__init__
    - dns.tsig.validate
    - dns.inet.af_for_address
    - dns.message.from_wire.initialize_message
    - dns.name.from_text
    - RdataClass.to_text
    - dns.asyncbackend.get_default_backend
    - _rdata_classes.get
    - <builtin>.ord
    - key.algorithm.to_digestable
    - dns.tokenizer.Tokenizer
    - txn.get
    - dns.asyncquery._read_exactly
    - <builtin>.callable
    - dns.asyncquery._timeout
    - struct.pack
    - q.use_tsig
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.message.Message.want_dnssec
    - 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: dns.transaction
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 19
    functionName: dns.transaction.TransactionManager.reader
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970aaee400>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 23
    functionName: dns.transaction.TransactionManager.writer
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: dns.transaction.TransactionManager.origin_information
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 60
    functionName: dns.transaction.TransactionManager.get_class
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: dns.transaction.TransactionManager.from_wire_origin
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.TransactionManager.origin_information
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdataset
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 85
    functionName: dns.transaction._ensure_immutable_rdataset
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - dns.rdataset.ImmutableRdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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: 91
    functionName: dns.transaction._ensure_immutable_node
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.node.ImmutableNode
    - node.is_immutable
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a7bd220>
    - <ast.Constant object at 0x7f970a7bdca0>
    argNames:
    - self
    - manager
    - replacement
    - read_only
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 108
    functionName: dns.transaction.Transaction.__init__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7f970a7bdaf0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 129
    functionName: dns.transaction.Transaction.get
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.transaction.Transaction._get_rdataset
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.rdataset.ImmutableRdataset
    - text.encode
    - dns.transaction.Transaction._check_ended
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.transaction._ensure_immutable_rdataset
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 528
    functionName: dns.transaction.Transaction._check_ended
    functionSourceFile: ''
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 574
    functionName: dns.transaction.Transaction._get_rdataset
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 148
    functionName: dns.transaction.Transaction.get_node
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.node.ImmutableNode
    - node.is_immutable
    - dns.transaction.Transaction._get_node
    - 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: 637
    functionName: dns.transaction.Transaction._get_node
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 155
    functionName: dns.transaction.Transaction._check_read_only
    functionSourceFile: dns.transaction
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 159
    functionName: dns.transaction.Transaction.add
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - c.lower
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.rdataset.Rdataset.update_ttl
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset
    - dns.name._maybe_convert_to_binary
    - dns.rdataset.Rdataset.__init__
    - dns.transaction.Transaction._put_rdataset
    - <builtin>.chr
    - dns.transaction.Transaction._add
    - dns.transaction.Transaction._check_read_only
    - text.encode
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.from_rdata
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - dns.transaction.Transaction._rdataset_from_args
    - <builtin>.list
    - dns.ttl.make
    - arg.to_rdataset
    - dns.name.Name.__init__
    - dns.rdataset.ImmutableRdataset.add
    - dns.name._validate_labels
    - dns.ttl.from_text
    - dns.name.from_text
    - dns.transaction.Transaction._origin_information
    - dns.name.IDNA2003Codec.encode
    - args.popleft
    - <builtin>.ord
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - trds.update
    - dns.rdataset.ImmutableRdataset.update_ttl
    - collections.deque
    - text.isdigit
    - labels.extend
    - rrset.to_rdataset
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - typing.cast
    - <builtin>.super
    - existing.union
    - c.isdigit
    - dns.transaction.Transaction._checked_put_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 3
    IfCount: 10
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - replace
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 419
    functionName: dns.transaction.Transaction._add
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.name.from_unicode
    - c.lower
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.rdataset.Rdataset.update_ttl
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset
    - dns.name._maybe_convert_to_binary
    - dns.rdataset.Rdataset.__init__
    - dns.transaction.Transaction._put_rdataset
    - <builtin>.chr
    - text.encode
    - dns.rdataset.from_rdata
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - dns.transaction.Transaction._rdataset_from_args
    - <builtin>.list
    - dns.ttl.make
    - arg.to_rdataset
    - dns.name.Name.__init__
    - dns.rdataset.ImmutableRdataset.add
    - dns.name._validate_labels
    - dns.ttl.from_text
    - dns.name.from_text
    - dns.transaction.Transaction._origin_information
    - dns.name.IDNA2003Codec.encode
    - args.popleft
    - <builtin>.ord
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - trds.update
    - dns.rdataset.ImmutableRdataset.update_ttl
    - collections.deque
    - text.isdigit
    - labels.extend
    - rrset.to_rdataset
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - typing.cast
    - <builtin>.super
    - existing.union
    - c.isdigit
    - dns.transaction.Transaction._checked_put_rdataset
    linkageType: pythonLinkage
    raised:
    - TypeError
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 174
    functionName: dns.transaction.Transaction.replace
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - c.lower
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.rdataset.Rdataset.update_ttl
    - dns.transaction.Transaction._get_rdataset
    - dns.rdataset.Rdataset
    - dns.name._maybe_convert_to_binary
    - dns.rdataset.Rdataset.__init__
    - dns.transaction.Transaction._put_rdataset
    - <builtin>.chr
    - dns.transaction.Transaction._add
    - dns.transaction.Transaction._check_read_only
    - text.encode
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.from_rdata
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - dns.transaction.Transaction._rdataset_from_args
    - <builtin>.list
    - dns.ttl.make
    - arg.to_rdataset
    - dns.name.Name.__init__
    - dns.rdataset.ImmutableRdataset.add
    - dns.name._validate_labels
    - dns.ttl.from_text
    - dns.name.from_text
    - dns.transaction.Transaction._origin_information
    - dns.name.IDNA2003Codec.encode
    - args.popleft
    - <builtin>.ord
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - trds.update
    - dns.rdataset.ImmutableRdataset.update_ttl
    - collections.deque
    - text.isdigit
    - labels.extend
    - rrset.to_rdataset
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - typing.cast
    - <builtin>.super
    - existing.union
    - c.isdigit
    - dns.transaction.Transaction._checked_put_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 195
    functionName: dns.transaction.Transaction.delete
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - c.lower
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.rdataset.Rdataset.update_ttl
    - dns.transaction.Transaction._get_rdataset
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._put_rdataset
    - <builtin>.chr
    - dns.transaction.Transaction._delete_rdataset
    - dns.transaction.Transaction._check_read_only
    - text.encode
    - existing.difference
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.from_rdata
    - byte_.isdigit
    - existing.intersection
    - label.encode
    - dns.transaction.Transaction._name_exists
    - <builtin>.int
    - dns.transaction.Transaction._rdataset_from_args
    - dns.transaction.Transaction._checked_delete_name
    - <builtin>.list
    - dns.transaction.Transaction._checked_delete_rdataset
    - dns.ttl.make
    - arg.to_rdataset
    - dns.name.Name.__init__
    - dns.rdataset.ImmutableRdataset.add
    - dns.name._validate_labels
    - dns.ttl.from_text
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - args.popleft
    - <builtin>.ord
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.transaction.Transaction._delete_name
    - dns.rdataset.ImmutableRdataset.update_ttl
    - collections.deque
    - text.isdigit
    - labels.extend
    - dns.transaction.Transaction._delete
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - typing.cast
    - <builtin>.super
    - c.isdigit
    - dns.transaction.Transaction._checked_put_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 6
    IfCount: 16
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - exact
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 464
    functionName: dns.transaction.Transaction._delete
    functionSourceFile: dns.transaction
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - c.lower
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.rdataset.Rdataset.update_ttl
    - dns.transaction.Transaction._get_rdataset
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._put_rdataset
    - <builtin>.chr
    - dns.transaction.Transaction._delete_rdataset
    - text.encode
    - existing.difference
    - dns.rdataset.from_rdata
    - byte_.isdigit
    - existing.intersection
    - label.encode
    - dns.transaction.Transaction._name_exists
    - <builtin>.int
    - dns.transaction.Transaction._rdataset_from_args
    - dns.transaction.Transaction._checked_delete_name
    - <builtin>.list
    - dns.transaction.Transaction._checked_delete_rdataset
    - dns.ttl.make
    - arg.to_rdataset
    - dns.name.Name.__init__
    - dns.rdataset.ImmutableRdataset.add
    - dns.name._validate_labels
    - dns.ttl.from_text
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - args.popleft
    - <builtin>.ord
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.transaction.Transaction._delete_name
    - dns.rdataset.ImmutableRdataset.update_ttl
    - collections.deque
    - text.isdigit
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - typing.cast
    - <builtin>.super
    - c.isdigit
    - dns.transaction.Transaction._checked_put_rdataset
    linkageType: pythonLinkage
    raised:
    - DeleteNotExact
    - TypeError
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 217
    functionName: dns.transaction.Transaction.delete_exact
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - c.lower
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.rdataset.Rdataset.update_ttl
    - dns.transaction.Transaction._get_rdataset
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - dns.transaction.Transaction._put_rdataset
    - <builtin>.chr
    - dns.transaction.Transaction._delete_rdataset
    - dns.transaction.Transaction._check_read_only
    - text.encode
    - existing.difference
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.from_rdata
    - byte_.isdigit
    - existing.intersection
    - label.encode
    - dns.transaction.Transaction._name_exists
    - <builtin>.int
    - dns.transaction.Transaction._rdataset_from_args
    - dns.transaction.Transaction._checked_delete_name
    - <builtin>.list
    - dns.transaction.Transaction._checked_delete_rdataset
    - dns.ttl.make
    - arg.to_rdataset
    - dns.name.Name.__init__
    - dns.rdataset.ImmutableRdataset.add
    - dns.name._validate_labels
    - dns.ttl.from_text
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - args.popleft
    - <builtin>.ord
    - dns.rdataset.from_rdata_list
    - <builtin>.len
    - dns.transaction.Transaction._delete_name
    - dns.rdataset.ImmutableRdataset.update_ttl
    - collections.deque
    - text.isdigit
    - labels.extend
    - dns.transaction.Transaction._delete
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - typing.cast
    - <builtin>.super
    - c.isdigit
    - dns.transaction.Transaction._checked_put_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 240
    functionName: dns.transaction.Transaction.name_exists
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - dns.transaction.Transaction._check_ended
    - byte_.isdigit
    - label.encode
    - dns.transaction.Transaction._name_exists
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 598
    functionName: dns.transaction.Transaction._name_exists
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970a97fbb0>
    - <ast.Constant object at 0x7f970a97f970>
    - <ast.Attribute object at 0x7f970a97f1c0>
    argNames:
    - self
    - value
    - relative
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 247
    functionName: dns.transaction.Transaction.update_serial
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - c.lower
    - dns.rdataset.Rdataset.update_ttl
    - dns.transaction.Transaction._raise_if_not_empty
    - dns.transaction.Transaction._get_rdataset
    - dns.name._maybe_convert_to_binary
    - dns.rdataset.Rdataset.__init__
    - dns.rdataset.Rdataset
    - dns.transaction.Transaction._put_rdataset
    - <builtin>.chr
    - dns.transaction.Transaction._add
    - text.encode
    - dns.transaction.Transaction._check_read_only
    - dns.transaction.Transaction._check_ended
    - dns.rdataset.from_rdata
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - dns.transaction.Transaction._rdataset_from_args
    - <builtin>.list
    - dns.ttl.make
    - arg.to_rdataset
    - dns.transaction.Transaction.replace
    - dns.name.Name.__init__
    - dns.rdataset.ImmutableRdataset.add
    - dns.name._validate_labels
    - dns.ttl.from_text
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.transaction.Transaction._origin_information
    - dns.rdataset.from_rdata_list
    - args.popleft
    - <builtin>.ord
    - <builtin>.len
    - trds.update
    - dns.rdataset.ImmutableRdataset.update_ttl
    - collections.deque
    - text.isdigit
    - labels.extend
    - rrset.to_rdataset
    - dns.serial.Serial
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - <builtin>.super
    - existing.union
    - c.isdigit
    - dns.transaction.Transaction._checked_put_rdataset
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 283
    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: 629
    functionName: dns.transaction.Transaction._iterate_rdatasets
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 287
    functionName: dns.transaction.Transaction.changed
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._changed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 605
    functionName: dns.transaction.Transaction._changed
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 298
    functionName: dns.transaction.Transaction.commit
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.transaction.Transaction._end_transaction
    - dns.transaction.Transaction._end
    - dns.transaction.Transaction._check_ended
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 532
    functionName: dns.transaction.Transaction._end
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.transaction.Transaction._end_transaction
    - 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: 2
    functionLinenumber: 311
    functionName: dns.transaction.Transaction.rollback
    functionSourceFile: dns.transaction
    functionUses: 1
    functionsReached:
    - dns.transaction.Transaction._end_transaction
    - dns.transaction.Transaction._end
    - dns.transaction.Transaction._check_ended
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - check
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 323
    functionName: dns.transaction.Transaction.check_put_rdataset
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - check
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 335
    functionName: dns.transaction.Transaction.check_delete_rdataset
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - check
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 348
    functionName: dns.transaction.Transaction.check_delete_name
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 360
    functionName: dns.transaction.Transaction.iterate_rdatasets
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._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: 372
    functionName: dns.transaction.Transaction.iterate_names
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._iterate_names
    - 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: 633
    functionName: dns.transaction.Transaction._iterate_names
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - method
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 385
    functionName: dns.transaction.Transaction._raise_if_not_empty
    functionSourceFile: dns.transaction
    functionUses: 7
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - deleting
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 389
    functionName: dns.transaction.Transaction._rdataset_from_args
    functionSourceFile: dns.transaction
    functionUses: 7
    functionsReached:
    - c.lower
    - dns.rdataset.ImmutableRdataset.add
    - <builtin>.isinstance
    - dns.rdataset.from_rdata
    - dns.ttl.from_text
    - dns.rdataset.Rdataset.update_ttl
    - args.popleft
    - dns.rdataset.from_rdata_list
    - <builtin>.int
    - <builtin>.len
    - dns.rdataset.Rdataset.__init__
    - c.isdigit
    - typing.cast
    - dns.ttl.make
    - arg.to_rdataset
    - text.isdigit
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset.update_ttl
    linkageType: pythonLinkage
    raised:
    - TypeError
    - 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: args.popleft
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arg.to_rdataset
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.deque
    functionSourceFile: collections
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rrset.to_rdataset
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 649
    functionName: dns.transaction.Transaction._origin_information
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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: 539
    functionName: dns.transaction.Transaction._checked_put_rdataset
    functionSourceFile: dns.transaction
    functionUses: 7
    functionsReached:
    - dns.transaction.Transaction._put_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 544
    functionName: dns.transaction.Transaction._checked_delete_rdataset
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.transaction.Transaction._delete_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: existing.intersection
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: existing.difference
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 549
    functionName: dns.transaction.Transaction._checked_delete_name
    functionSourceFile: dns.transaction
    functionUses: 3
    functionsReached:
    - dns.transaction.Transaction._delete_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 609
    functionName: dns.transaction.Transaction._end_transaction
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 580
    functionName: dns.transaction.Transaction._put_rdataset
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 591
    functionName: dns.transaction.Transaction._delete_rdataset
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 584
    functionName: dns.transaction.Transaction._delete_name
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 558
    functionName: dns.transaction.Transaction.__enter__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 561
    functionName: dns.transaction.Transaction.__exit__
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached:
    - dns.transaction.Transaction._check_ended
    - dns.transaction.Transaction._end_transaction
    - dns.transaction.Transaction._end
    - dns.transaction.Transaction.rollback
    - dns.transaction.Transaction.commit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 620
    functionName: dns.transaction.Transaction._set_origin
    functionSourceFile: dns.transaction
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.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.NodeKind.classify
    - 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: 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:
    - s.getvalue
    - rds.to_text
    - <builtin>.len
    - io.StringIO
    - s.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rds.to_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 113
    functionName: dns.node.Node.__repr__
    functionSourceFile: dns.node
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - <builtin>.id
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - dns.node.NodeKind.classify
    - dns.node.NodeKind.classify_rdataset
    - <builtin>.len
    - dns.node._matches_type_or_its_signature
    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 0x7f970aa2c8e0>
    - <ast.Constant object at 0x7f970aa2cdf0>
    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
    - rds.match
    - dns.rdataset.Rdataset
    - <builtin>.len
    - dns.node.Node._append_rdataset
    - dns.node.NodeKind.classify
    - 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: 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 0x7f970afe5eb0>
    - <ast.Constant object at 0x7f970afe5520>
    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.Node.find_rdataset
    - dns.rdataset.Rdataset
    - rds.match
    - dns.node.Node._append_rdataset
    - dns.node.NodeKind.classify
    - <builtin>.len
    - dns.node._matches_type_or_its_signature
    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 0x7f970afe5a30>
    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.Node.find_rdataset
    - dns.node.Node.get_rdataset
    - dns.rdataset.Rdataset
    - dns.node.Node._append_rdataset
    - dns.node.NodeKind.classify
    - rds.match
    - <builtin>.len
    - dns.node._matches_type_or_its_signature
    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:
    - replacement.to_rdataset
    - <builtin>.isinstance
    - dns.node.NodeKind.classify_rdataset
    - dns.node.Node.get_rdataset
    - dns.node.Node.find_rdataset
    - dns.rdataset.Rdataset
    - dns.node.Node._append_rdataset
    - dns.node.NodeKind.classify
    - rds.match
    - dns.node.Node.delete_rdataset
    - <builtin>.len
    - dns.node._matches_type_or_its_signature
    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.NodeKind.classify
    - 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: 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:
    - <builtin>.tuple
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset
    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 0x7f970a5b9dc0>
    - <ast.Constant object at 0x7f970a5b9eb0>
    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 0x7f970a585be0>
    - <ast.Constant object at 0x7f970a5857f0>
    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 0x7f970a9ea820>
    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: 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.xfr
    functionSourceFile: dns.xfr
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rcode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: dns.xfr.TransferError.__init__
    functionSourceFile: dns.xfr
    functionUses: 0
    functionsReached:
    - Rcode.to_text
    - <builtin>.super
    - 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 0x7f970a7bd520>
    - <ast.Constant object at 0x7f970a7bd460>
    - <ast.Constant object at 0x7f970a7bde50>
    argNames:
    - self
    - txn_manager
    - rdtype
    - serial
    - is_udp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 61
    functionName: dns.xfr.Inbound.__init__
    functionSourceFile: dns.xfr
    functionUses: 0
    functionsReached:
    - txn_manager.origin_information
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: txn_manager.origin_information
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 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: 104
    functionName: dns.xfr.Inbound.process_message
    functionSourceFile: dns.xfr
    functionUses: 0
    functionsReached:
    - dns.serial.Serial
    - name.is_subdomain
    - <builtin>.len
    - rdataset.copy
    - typing.cast
    - message.rcode
    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: 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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 261
    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: 264
    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.SMIMEA
    functionSourceFile: dns.rdtypes.ANY.SMIMEA
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.tlsabase
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - usage
    - selector
    - mtype
    - cert
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.tlsabase.TLSABase.__init__
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970afbd3a0>
    - <ast.Constant object at 0x7f970afbd370>
    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:
    - dns.rdata._hexify
    - <builtin>.range
    - data.decode
    - kw.pop
    - <builtin>.len
    - separator.join
    - kw.copy
    - binascii.hexlify
    - dns.rdata._wordbreak
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970afbdc70>
    - <ast.Constant object at 0x7f970afbdd30>
    - <ast.Constant object at 0x7f970afbd430>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 50
    functionName: dns.rdtypes.tlsabase.TLSABase.from_text
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.tlsabase.TLSABase.__init__
    - tok.get_uint8
    - binascii.unhexlify
    - tok.concatenate_remaining_identifiers
    - <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_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 0x7f970b1187c0>
    - <ast.Constant object at 0x7f970b118cd0>
    - <ast.Constant object at 0x7f970b118d00>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdtypes.tlsabase.TLSABase._to_wire
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970b118d90>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 66
    functionName: dns.rdtypes.tlsabase.TLSABase.from_wire_parser
    functionSourceFile: dns.rdtypes.tlsabase
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.tlsabase.TLSABase.__init__
    - <builtin>.super
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.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: 85
    functionName: dns.zone._validate_name
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - name.is_subdomain
    - name.relativize
    - name.derelativize
    - name.is_absolute
    linkageType: pythonLinkage
    raised:
    - KeyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.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 0x7f970a29f1c0>
    - <ast.Constant object at 0x7f970a29f460>
    argNames:
    - self
    - origin
    - rdclass
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 137
    functionName: dns.zone.Zone.__init__
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - origin.is_absolute
    - c.isdigit
    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: 167
    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: 184
    functionName: dns.zone.Zone.__ne__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone.__eq__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 192
    functionName: dns.zone.Zone._validate_name
    functionSourceFile: dns.zone
    functionUses: 18
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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: 201
    functionName: dns.zone.Zone.__getitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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: 205
    functionName: dns.zone.Zone.__setitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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: 209
    functionName: dns.zone.Zone.__delitem__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 213
    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: 216
    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: 219
    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: 222
    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: 225
    functionName: dns.zone.Zone.get
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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: 229
    functionName: dns.zone.Zone.__contains__
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970adb8f10>
    argNames:
    - self
    - name
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 233
    functionName: dns.zone.Zone.find_node
    functionSourceFile: dns.zone
    functionUses: 9
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970aa5a7f0>
    argNames:
    - self
    - name
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 261
    functionName: dns.zone.Zone.get_node
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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: 287
    functionName: dns.zone.Zone.delete_node
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970a3932b0>
    - <ast.Constant object at 0x7f970a393eb0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 302
    functionName: dns.zone.Zone.find_rdataset
    functionSourceFile: dns.zone
    functionUses: 5
    functionsReached:
    - dns.name.from_unicode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - node.find_rdataset
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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 0x7f970ab7f340>
    - <ast.Constant object at 0x7f970ab7f400>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 349
    functionName: dns.zone.Zone.get_rdataset
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - dns.name.from_unicode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - dns.zone.Zone.find_rdataset
    - labels.extend
    - dns.name.is_all_ascii
    - node.find_rdataset
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970ab224f0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 397
    functionName: dns.zone.Zone.delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.zone.Zone.get_node
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - node.delete_rdataset
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - dns.zone.Zone.delete_node
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: node.delete_rdataset
    functionSourceFile: <builtin>
    functionUses: 4
    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: 435
    functionName: dns.zone.Zone.replace_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - node.replace_rdataset
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: node.replace_rdataset
    functionSourceFile: <builtin>
    functionUses: 4
    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 0x7f970a48fc70>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 461
    functionName: dns.zone.Zone.find_rrset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.RRset
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - rrset.update
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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 0x7f970a4dd670>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 513
    functionName: dns.zone.Zone.get_rrset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.RRset
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.zone.Zone.find_rrset
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - rrset.update
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970a47d430>
    - <ast.Attribute object at 0x7f970a47d100>
    argNames:
    - self
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 559
    functionName: dns.zone.Zone.iterate_rdatasets
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone.items
    - dns.rdatatype.RdataType.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7f970b11b730>
    - <ast.Attribute object at 0x7f970b11b5b0>
    argNames:
    - self
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 591
    functionName: dns.zone.Zone.iterate_rdatas
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone.items
    - dns.rdatatype.RdataType.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 10
    IfCount: 6
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970a70bf10>
    - <ast.Constant object at 0x7f970a70bfa0>
    - <ast.Constant object at 0x7f970a70bfd0>
    - <ast.Constant object at 0x7f970a70bd30>
    - <ast.Constant object at 0x7f970a70bd90>
    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: 624
    functionName: dns.zone.Zone.to_file
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.getattr
    - <builtin>.open
    - os.linesep.encode
    - contextlib.nullcontext
    - <builtin>.list
    - l.encode
    - names.sort
    - nl.encode
    - dns.zone.Zone.keys
    - f.write
    - nl.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970ab00d30>
    - <ast.Constant object at 0x7f970ab00d90>
    - <ast.Constant object at 0x7f970ab00400>
    - <ast.Constant object at 0x7f970ab001f0>
    - <ast.Constant object at 0x7f970ab00dc0>
    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: 713
    functionName: dns.zone.Zone.to_text
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.getattr
    - <builtin>.open
    - os.linesep.encode
    - temp_buffer.getvalue
    - contextlib.nullcontext
    - dns.zone.Zone.to_file
    - <builtin>.list
    - io.StringIO
    - temp_buffer.close
    - l.encode
    - names.sort
    - nl.encode
    - dns.zone.Zone.keys
    - f.write
    - nl.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: temp_buffer.getvalue
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: temp_buffer.close
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 752
    functionName: dns.zone.Zone.check_origin
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - dns.zone.Zone.get_rdataset
    - <builtin>.len
    - dns.zone.Zone.find_rdataset
    - labels.extend
    - dns.name.is_all_ascii
    - node.find_rdataset
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970afccf70>
    argNames:
    - self
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 771
    functionName: dns.zone.Zone.get_soa
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - dns.zone.Zone.get_rdataset
    - <builtin>.len
    - dns.zone.Zone.find_rdataset
    - txn.get
    - labels.extend
    - dns.name.is_all_ascii
    - node.find_rdataset
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970b724c70>
    argNames:
    - self
    - hash_algorithm
    - scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 799
    functionName: dns.zone.Zone._compute_digest
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - _digest_hashers.get
    - struct.pack
    - <builtin>.sorted
    - name.to_digestable
    - rdata.to_digestable
    - hasher.update
    - <builtin>.len
    - hasher.digest
    - dns.zone.Zone.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: _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 0x7f970ad9c580>
    argNames:
    - self
    - hash_algorithm
    - scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 833
    functionName: dns.zone.Zone.compute_digest
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Zone.get_soa
    - dns.name.from_unicode
    - _digest_hashers.get
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - name.to_digestable
    - byte_.isdigit
    - dns.rdtypes.ANY.ZONEMD.ZONEMD
    - rdata.to_digestable
    - label.encode
    - hasher.update
    - <builtin>.int
    - <builtin>.list
    - hasher.digest
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.zone.Zone._compute_digest
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - dns.zone.Zone.get_rdataset
    - <builtin>.len
    - dns.zone.Zone.find_rdataset
    - txn.get
    - dns.zone.Zone.items
    - labels.extend
    - dns.name.is_all_ascii
    - node.find_rdataset
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.sorted
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970aaa5190>
    argNames:
    - self
    - zonemd
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 844
    functionName: dns.zone.Zone.verify_digest
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - _digest_hashers.get
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.zone.Zone._validate_name
    - text.encode
    - name.to_digestable
    - byte_.isdigit
    - rdata.to_digestable
    - label.encode
    - hasher.update
    - <builtin>.int
    - <builtin>.list
    - hasher.digest
    - dns.name.Name.__init__
    - dns.zone.Zone.find_node
    - dns.zone.Zone._compute_digest
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - dns.zone.Zone.get_rdataset
    - <builtin>.len
    - dns.zone.Zone.find_rdataset
    - dns.zone.Zone.items
    - labels.extend
    - dns.name.is_all_ascii
    - node.find_rdataset
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.sorted
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 2
    functionLinenumber: 867
    functionName: dns.zone.Zone.reader
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Transaction.__init__
    - dns.zone.Version.__init__
    - zone.map_factory
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aec7940>
    - <ast.Constant object at 0x7f970aec7490>
    argNames:
    - self
    - zone
    - id
    - nodes
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 970
    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 0x7f970a620970>
    - <ast.Constant object at 0x7f970a620520>
    argNames:
    - self
    - zone
    - replacement
    - version
    - make_immutable
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1107
    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 0x7f970aa42850>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 870
    functionName: dns.zone.Zone.writer
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - dns.zone.Transaction._setup_version
    - dns.zone.Transaction.__init__
    - <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: 2
    functionLinenumber: 1117
    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: 875
    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: 885
    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: 890
    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: 893
    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: 896
    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: 901
    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: 917
    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: 925
    functionName: dns.zone.ImmutableVersionedNode.__init__
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset
    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 0x7f970b78f520>
    - <ast.Constant object at 0x7f970b78f910>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 932
    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 0x7f970afbb310>
    - <ast.Constant object at 0x7f970afbb3d0>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 943
    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 0x7f970afbb040>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 954
    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: 962
    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: 965
    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: 985
    functionName: dns.zone.Version._validate_name
    functionSourceFile: dns.zone
    functionUses: 13
    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: 988
    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: 992
    functionName: dns.zone.Version.get_rdataset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Version._validate_name
    - node.get_rdataset
    - dns.zone.Version.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: 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: 1003
    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: 1006
    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 0x7f970aa824f0>
    argNames:
    - self
    - zone
    - replacement
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1011
    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: 1027
    functionName: dns.zone.WritableVersion._maybe_cow_with_name
    functionSourceFile: dns.zone
    functionUses: 5
    functionsReached:
    - dns.zone.Version._validate_name
    - <builtin>.hasattr
    - new_node.rdatasets.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: new_node.rdatasets.extend
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1051
    functionName: dns.zone.WritableVersion._maybe_cow
    functionSourceFile: dns.zone
    functionUses: 4
    functionsReached:
    - dns.zone.WritableVersion._maybe_cow_with_name
    - dns.zone.Version._validate_name
    - <builtin>.hasattr
    - new_node.rdatasets.extend
    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: 1054
    functionName: dns.zone.WritableVersion.delete_node
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Version._validate_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1060
    functionName: dns.zone.WritableVersion.put_rdataset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - node.replace_rdataset
    - dns.zone.Version._validate_name
    - dns.zone.WritableVersion._maybe_cow
    - dns.zone.WritableVersion._maybe_cow_with_name
    - <builtin>.hasattr
    - new_node.rdatasets.extend
    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: 1066
    functionName: dns.zone.WritableVersion.delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - dns.zone.Version._validate_name
    - dns.zone.WritableVersion._maybe_cow
    - <builtin>.len
    - dns.zone.WritableVersion._maybe_cow_with_name
    - node.delete_rdataset
    - <builtin>.hasattr
    - new_node.rdatasets.extend
    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: 1080
    functionName: dns.zone.ImmutableVersion.__init__
    functionSourceFile: dns.zone
    functionUses: 1
    functionsReached:
    - version.nodes.get
    - <builtin>.isinstance
    - <builtin>.tuple
    - dns.zone.ImmutableVersionedNode.__init__
    - dns.immutable.Dict
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset
    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: 0
    functionLinenumber: 1114
    functionName: dns.zone.Transaction.zone
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1124
    functionName: dns.zone.Transaction._get_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version._validate_name
    - node.get_rdataset
    - dns.zone.Version.get_node
    - dns.zone.Version.get_rdataset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1128
    functionName: dns.zone.Transaction._put_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.WritableVersion.put_rdataset
    - node.replace_rdataset
    - dns.zone.Version._validate_name
    - dns.zone.WritableVersion._maybe_cow
    - dns.zone.WritableVersion._maybe_cow_with_name
    - <builtin>.hasattr
    - new_node.rdatasets.extend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1133
    functionName: dns.zone.Transaction._delete_name
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.WritableVersion.delete_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: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1138
    functionName: dns.zone.Transaction._delete_rdataset
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version._validate_name
    - dns.zone.WritableVersion._maybe_cow
    - dns.zone.WritableVersion.delete_rdataset
    - <builtin>.len
    - dns.zone.WritableVersion._maybe_cow_with_name
    - node.delete_rdataset
    - <builtin>.hasattr
    - new_node.rdatasets.extend
    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: 1143
    functionName: dns.zone.Transaction._name_exists
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version._validate_name
    - dns.zone.Version.get_node
    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: 1147
    functionName: dns.zone.Transaction._changed
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1154
    functionName: dns.zone.Transaction._end_transaction
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - version.nodes.get
    - <builtin>.isinstance
    - dns.zone.ImmutableVersion.__init__
    - <builtin>.len
    - <builtin>.tuple
    - dns.zone.ImmutableVersionedNode.__init__
    - dns.immutable.Dict
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset
    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: 1175
    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: 1180
    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: 1186
    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: 1190
    functionName: dns.zone.Transaction._get_node
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.zone.Version._validate_name
    - dns.zone.Version.get_node
    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: 1194
    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 0x7f970a9746d0>
    - <ast.Attribute object at 0x7f970a974040>
    - <ast.Constant object at 0x7f970a974580>
    - <ast.Name object at 0x7f970a974be0>
    - <ast.Constant object at 0x7f970a974760>
    - <ast.Constant object at 0x7f970a974df0>
    - <ast.Constant object at 0x7f970a974400>
    - <ast.Constant object at 0x7f970a974a00>
    - <ast.Constant object at 0x7f970a974bb0>
    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: 1208
    functionName: dns.zone._from_text
    functionSourceFile: dns.zone
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - zone.check_origin
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.zonefile.Reader
    - labels.extend
    - reader.read
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - dns.zone.Zone.__init__
    - encodings.idna.ToASCII
    - zone.writer
    - origin.is_absolute
    - c.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: 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 0x7f970b06c1c0>
    - <ast.Attribute object at 0x7f970b06c700>
    - <ast.Constant object at 0x7f970b06c3a0>
    - <ast.Name object at 0x7f970b06c0d0>
    - <ast.Constant object at 0x7f970b06c7c0>
    - <ast.Constant object at 0x7f970b06c4f0>
    - <ast.Constant object at 0x7f970b06c6a0>
    - <ast.Constant object at 0x7f970b06c610>
    - <ast.Constant object at 0x7f970b06c640>
    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: 1250
    functionName: dns.zone.from_text
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - zone.check_origin
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.zonefile.Reader
    - labels.extend
    - reader.read
    - dns.zone._from_text
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - dns.zone.Zone.__init__
    - encodings.idna.ToASCII
    - zone.writer
    - origin.is_absolute
    - c.isdigit
    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 0x7f970aa73850>
    - <ast.Attribute object at 0x7f970aa73970>
    - <ast.Constant object at 0x7f970aa73400>
    - <ast.Name object at 0x7f970aa73bb0>
    - <ast.Constant object at 0x7f970aa73880>
    - <ast.Constant object at 0x7f970aa73310>
    - <ast.Constant object at 0x7f970aa734f0>
    - <ast.Constant object at 0x7f970aa73340>
    - <ast.Constant object at 0x7f970aa73a60>
    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: 1324
    functionName: dns.zone.from_file
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - zone.check_origin
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - dns.tokenizer.Tokenizer
    - dns.zonefile.Reader
    - labels.extend
    - reader.read
    - dns.zone._from_text
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - contextlib.nullcontext
    - <builtin>.tuple
    - dns.zone.Zone.__init__
    - encodings.idna.ToASCII
    - zone.writer
    - origin.is_absolute
    - c.isdigit
    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 0x7f970aa4fe80>
    - <ast.Constant object at 0x7f970aa4faf0>
    - <ast.Constant object at 0x7f970aa4f2b0>
    argNames:
    - xfr
    - zone_factory
    - relativize
    - check_origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1407
    functionName: dns.zone.from_xfr
    functionSourceFile: dns.zone
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - zrds.update_ttl
    - znode.find_rdataset
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - z.check_origin
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - zrds.add
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - z.node_factory
    - labels.append
    - <builtin>.tuple
    - dns.zone.Zone.__init__
    - encodings.idna.ToASCII
    - z.nodes.get
    - origin.is_absolute
    - c.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: 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: 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: 46
    functionName: dns.zonefile._check_cname_and_other_data
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - dns.node.NodeKind.classify_rdataset
    - node.classify
    - dns.node.NodeKind.classify
    - txn.get_node
    - 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: 81
    functionName: dns.zonefile._upper_dollarize
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - s.upper
    - s.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.upper
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.startswith
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7f970ad9ed00>
    - <ast.Constant object at 0x7f970ad9e9a0>
    - <ast.Constant object at 0x7f970ad9e5b0>
    - <ast.Constant object at 0x7f970ad9e7c0>
    - <ast.Constant object at 0x7f970ad9ef10>
    - <ast.Constant object at 0x7f970ad9e550>
    - <ast.Constant object at 0x7f970ad9e8e0>
    argNames:
    - self
    - tok
    - rdclass
    - txn
    - allow_include
    - allow_directives
    - force_name
    - force_ttl
    - force_rdclass
    - force_rdtype
    - default_ttl
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 91
    functionName: dns.zonefile.Reader.__init__
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - <builtin>.set
    - s.upper
    - dns.zonefile._upper_dollarize
    - s.startswith
    - txn.manager.origin_information
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: txn.manager.origin_information
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 141
    functionName: dns.zonefile.Reader._eat_line
    functionSourceFile: dns.zonefile
    functionUses: 4
    functionsReached:
    - token.is_eol_or_eof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 147
    functionName: dns.zonefile.Reader._get_identifier
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached:
    - token.is_identifier
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 7
    IfCount: 17
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 153
    functionName: dns.zonefile.Reader._rr_line
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - object.__setattr__
    - name.is_subdomain
    - c.lower
    - rdtype_text.replace
    - dns.rdata.GenericRdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - binascii.unhexlify
    - tok.unget
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - rdata.to_wire
    - token.is_identifier
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - sys.exc_info
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - token.is_eol_or_eof
    - dns.rdatatype.from_text
    - dns.rdata.GenericRdata.from_wire_parser
    - name.relativize
    - dns.ttl.from_text
    - RdataType.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - dns.zonefile.Reader._get_identifier
    - tok.get_eol_as_token
    - RdataClass.to_text
    - _rdata_classes.get
    - token.is_whitespace
    - <builtin>.len
    - dns.zonefile.Reader._eat_line
    - dns.tokenizer.Tokenizer
    - dns.rdatatype.to_text
    - tok.concatenate_remaining_identifiers
    - text.isdigit
    - parser.restrict_to
    - RdataType.from_text
    - <builtin>.isinstance
    - <builtin>.getattr
    - tok.get
    - dns.rdata.from_wire_parser
    - typing.cast
    - RdataClass.from_text
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdata.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: sys.exc_info
    functionSourceFile: sys
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - side
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 277
    functionName: dns.zonefile.Reader._parse_modify
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached:
    - is_generate3.match
    - g2.groups
    - g1.groups
    - re.compile
    - <builtin>.int
    - g3.groups
    - is_generate1.match
    - is_generate2.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: 322
    functionName: dns.zonefile.Reader._generate_line
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - name.is_subdomain
    - c.lower
    - dns.name.from_unicode
    - dns.rdata.GenericRdata.from_text
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - nibbles.upper
    - <builtin>.chr
    - <builtin>.format
    - dns.grange.from_text
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - sys.exc_info
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - RdataType.from_text
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - c.isdigit
    - rdtype_text.replace
    - tok.unget
    - byte_.isdigit
    - g3.groups
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - importlib.import_module
    - RdataType.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - dns.zonefile.Reader._eat_line
    - text.isdigit
    - labels.extend
    - parser.restrict_to
    - is_generate3.match
    - tok.get
    - dns.zonefile.Reader._parse_modify
    - RdataClass.from_text
    - dns.rdatatype.to_text
    - is_generate2.match
    - dns.rdata.from_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - contextlib.contextmanager
    - parser.get_remaining
    - token.is_identifier
    - dns.ttl.from_text
    - dns.name.IDNA2003Codec.encode
    - tok.get_eol_as_token
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - dns.rdata.from_wire
    - <builtin>.super
    - object.__setattr__
    - rhs.replace
    - is_generate1.match
    - rdata.to_wire
    - re.compile
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - token.is_eol_or_eof
    - dns.rdatatype.from_text
    - name.relativize
    - dns.name.from_text
    - RdataClass.to_text
    - _rdata_classes.get
    - <builtin>.ord
    - dns.tokenizer.Tokenizer
    - dns.zonefile.Reader._generate_line._calculate_index
    - g2.groups
    - g1.groups
    - struct.pack
    - labels.append
    - lhs.replace
    - encodings.idna.ToASCII
    - dns.zonefile.Reader._generate_line._format_index
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 1
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: dns.grange.from_text
    functionSourceFile: <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: 393
    functionName: dns.zonefile.Reader._generate_line._calculate_index
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - index
    - base
    - width
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 399
    functionName: dns.zonefile.Reader._generate_line._format_index
    functionSourceFile: dns.zonefile
    functionUses: 3
    functionsReached:
    - <builtin>.format
    - nibbles.upper
    - 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: 462
    functionName: dns.zonefile.Reader.read
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - name.is_subdomain
    - c.lower
    - dns.name.from_unicode
    - dns.rdata.GenericRdata.from_text
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - nibbles.upper
    - <builtin>.chr
    - <builtin>.format
    - dns.grange.from_text
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - sys.exc_info
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - RdataType.from_text
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.rdata.from_wire_parser
    - typing.cast
    - c.isdigit
    - dns.zonefile.Reader._generate_line
    - rdtype_text.replace
    - token.is_comment
    - token.value.upper
    - tok.unget
    - byte_.isdigit
    - token.is_eof
    - g3.groups
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.zonefile.Reader._rr_line
    - importlib.import_module
    - RdataType.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - token.is_whitespace
    - dns.zonefile.Reader._eat_line
    - text.isdigit
    - labels.extend
    - parser.restrict_to
    - is_generate3.match
    - <builtin>.open
    - tok.get
    - dns.zonefile.Reader._parse_modify
    - RdataClass.from_text
    - is_generate2.match
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - dns.exception.SyntaxError
    - contextlib.contextmanager
    - parser.get_remaining
    - token.is_identifier
    - dns.ttl.from_text
    - dns.name.IDNA2003Codec.encode
    - tok.get_eol_as_token
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - dns.rdata.from_wire
    - <builtin>.super
    - object.__setattr__
    - rhs.replace
    - is_generate1.match
    - rdata.to_wire
    - re.compile
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - token.is_eol_or_eof
    - dns.rdatatype.from_text
    - name.relativize
    - token.is_eol
    - dns.name.from_text
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.zonefile.Reader._get_identifier
    - <builtin>.ord
    - dns.tokenizer.Tokenizer
    - dns.zonefile.Reader._generate_line._calculate_index
    - g2.groups
    - g1.groups
    - struct.pack
    - labels.append
    - lhs.replace
    - encodings.idna.ToASCII
    - 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: 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: 562
    functionName: dns.zonefile.RRsetsReaderTransaction.__init__
    functionSourceFile: dns.zonefile
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 567
    functionName: dns.zonefile.RRsetsReaderTransaction._get_rdataset
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 570
    functionName: dns.zonefile.RRsetsReaderTransaction._get_node
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - rdatasets.append
    - dns.node.Node
    - <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: rdatasets.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.node.Node
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdataset
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 581
    functionName: dns.zonefile.RRsetsReaderTransaction._put_rdataset
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 584
    functionName: dns.zonefile.RRsetsReaderTransaction._delete_name
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - remove.append
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: remove.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 594
    functionName: dns.zonefile.RRsetsReaderTransaction._delete_rdataset
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 600
    functionName: dns.zonefile.RRsetsReaderTransaction._name_exists
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 606
    functionName: dns.zonefile.RRsetsReaderTransaction._changed
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 609
    functionName: dns.zonefile.RRsetsReaderTransaction._end_transaction
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - rrsets.append
    - dns.rrset.RRset
    - <builtin>.len
    - dns.zonefile.RRsetsReaderTransaction._changed
    - rrset.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: rrsets.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 620
    functionName: dns.zonefile.RRsetsReaderTransaction._set_origin
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 623
    functionName: dns.zonefile.RRsetsReaderTransaction._iterate_rdatasets
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 626
    functionName: dns.zonefile.RRsetsReaderTransaction._iterate_names
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7f970aa54490>
    - <ast.Constant object at 0x7f970aa54b50>
    - <ast.Attribute object at 0x7f970aa543a0>
    argNames:
    - self
    - origin
    - relativize
    - rdclass
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 631
    functionName: dns.zonefile.RRSetsReaderManager.__init__
    functionSourceFile: dns.zonefile
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 642
    functionName: dns.zonefile.RRSetsReaderManager.reader
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa54d00>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 645
    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: 649
    functionName: dns.zonefile.RRSetsReaderManager.get_class
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 652
    functionName: dns.zonefile.RRSetsReaderManager.origin_information
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rrsets
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 659
    functionName: dns.zonefile.RRSetsReaderManager.set_rrsets
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7f970a7d6dc0>
    - <ast.Constant object at 0x7f970a7d6a90>
    - <ast.Attribute object at 0x7f970aad50a0>
    - <ast.Attribute object at 0x7f970aad5850>
    - <ast.Constant object at 0x7f970aad5790>
    - <ast.Constant object at 0x7f970aad59d0>
    - <ast.Constant object at 0x7f970aad5ee0>
    - <ast.Attribute object at 0x7f970aad5940>
    - <ast.Constant object at 0x7f970aad5be0>
    argNames:
    - text
    - name
    - ttl
    - rdclass
    - default_rdclass
    - rdtype
    - default_ttl
    - idna_codec
    - origin
    - relativize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 663
    functionName: dns.zonefile.read_rrsets
    functionSourceFile: dns.zonefile
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - c.lower
    - name.is_subdomain
    - dns.rdata.GenericRdata.from_text
    - <builtin>.set
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - nibbles.upper
    - <builtin>.chr
    - <builtin>.format
    - dns.grange.from_text
    - dns.exception.ExceptionWrapper
    - text.encode
    - label.encode
    - dns.zonefile.RRSetsReaderManager.writer
    - sys.exc_info
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.name._validate_labels
    - <builtin>.len
    - tok.concatenate_remaining_identifiers
    - RdataType.from_text
    - <builtin>.isinstance
    - <builtin>.getattr
    - dns.zonefile.Reader.__init__
    - dns.zonefile.RRSetsReaderManager.__init__
    - dns.zonefile.RRsetsReaderTransaction.__init__
    - dns.rdata.from_wire_parser
    - typing.cast
    - c.isdigit
    - dns.zonefile.Reader._generate_line
    - rdtype_text.replace
    - token.is_comment
    - dns.zonefile.Reader.read
    - token.value.upper
    - tok.unget
    - byte_.isdigit
    - dns.zonefile._upper_dollarize
    - token.is_eof
    - g3.groups
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.zonefile.Reader._rr_line
    - importlib.import_module
    - RdataType.to_text
    - dns.rdataclass.from_text
    - dns.wire.Parser
    - token.is_whitespace
    - s.startswith
    - dns.zonefile.Reader._eat_line
    - text.isdigit
    - labels.extend
    - parser.restrict_to
    - is_generate3.match
    - <builtin>.open
    - tok.get
    - txn.manager.origin_information
    - dns.zonefile.Reader._parse_modify
    - RdataClass.from_text
    - is_generate2.match
    - dns.rdata.from_text
    - dns.rdatatype.to_text
    - s.upper
    - dns.rdataclass.to_text
    - tok.get_int
    - dns.rdatatype.RdataType.make
    - dns.exception.SyntaxError
    - contextlib.contextmanager
    - parser.get_remaining
    - token.is_identifier
    - dns.ttl.from_text
    - dns.name.IDNA2003Codec.encode
    - tok.get_eol_as_token
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - dns.rdata.from_wire
    - <builtin>.super
    - object.__setattr__
    - rhs.replace
    - is_generate1.match
    - rdata.to_wire
    - re.compile
    - dns.rdata.GenericRdata.__init__
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - token.is_eol_or_eof
    - dns.rdatatype.from_text
    - name.relativize
    - token.is_eol
    - dns.name.from_text
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.zonefile.Reader._get_identifier
    - <builtin>.ord
    - dns.tokenizer.Tokenizer
    - dns.zonefile.Reader._generate_line._calculate_index
    - g2.groups
    - g1.groups
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - lhs.replace
    - dns.zonefile.Reader._generate_line._format_index
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.ZONEMD
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - serial
    - scheme
    - hash_algorithm
    - digest
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 20
    functionName: dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 2
    functionsReached:
    - dns.zonetypes.DigestHashAlgorithm.make
    - dns.zonetypes._digest_hashers.get
    - <builtin>.len
    - dns.zonetypes.DigestScheme.make
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.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 0x7f970a7bd730>
    - <ast.Constant object at 0x7f970a7bd790>
    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:
    - dns.rdata._hexify
    - <builtin>.range
    - data.decode
    - kw.pop
    - <builtin>.len
    - separator.join
    - kw.copy
    - binascii.hexlify
    - dns.rdata._wordbreak
    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 0x7f970a7bd040>
    - <ast.Constant object at 0x7f970a7bd4f0>
    - <ast.Constant object at 0x7f970a7bd970>
    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
    - dns.zonetypes.DigestHashAlgorithm.make
    - dns.zonetypes._digest_hashers.get
    - dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__
    - tok.get_uint8
    - <builtin>.len
    - binascii.unhexlify
    - dns.zonetypes.DigestScheme.make
    - 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 0x7f970a5d78e0>
    - <ast.Constant object at 0x7f970a5d7460>
    - <ast.Constant object at 0x7f970a5d7b80>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: dns.rdtypes.ANY.ZONEMD.ZONEMD._to_wire
    functionSourceFile: dns.rdtypes.ANY.ZONEMD
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5b47c0>
    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_remaining
    - dns.zonetypes.DigestHashAlgorithm.make
    - dns.zonetypes._digest_hashers.get
    - dns.rdtypes.ANY.ZONEMD.ZONEMD.__init__
    - <builtin>.len
    - dns.zonetypes.DigestScheme.make
    - parser.get_struct
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.resolver
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: dns.resolver.NXDOMAIN.__init__
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970aee8700>
    argNames:
    - self
    - qnames
    - responses
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: dns.resolver.NXDOMAIN._check_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.isinstance
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: dns.resolver.NXDOMAIN.__str__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.map
    - <builtin>.super
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: dns.resolver.NXDOMAIN.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - response.canonical_name
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response.canonical_name
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - e_nx
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 107
    functionName: dns.resolver.NXDOMAIN.__add__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.list
    - qnames0.append
    - e_nx.kwargs.get
    - <builtin>.super
    - dns.resolver.NXDOMAIN.__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: e_nx.kwargs.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: qnames0.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: dns.resolver.NXDOMAIN.qnames
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 126
    functionName: dns.resolver.NXDOMAIN.responses
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - qname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 134
    functionName: dns.resolver.NXDOMAIN.response
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - errors
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 155
    functionName: dns.resolver._errors_to_text
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached:
    - texts.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: texts.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: dns.resolver.LifetimeTimeout.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 175
    functionName: dns.resolver.LifetimeTimeout._fmt_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - texts.append
    - <builtin>.super
    - dns.resolver._errors_to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 196
    functionName: dns.resolver.NoAnswer.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 199
    functionName: dns.resolver.NoAnswer._fmt_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 202
    functionName: dns.resolver.NoAnswer.response
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 221
    functionName: dns.resolver.NoNameservers.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 224
    functionName: dns.resolver.NoNameservers._fmt_kwargs
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - texts.append
    - <builtin>.super
    - dns.resolver._errors_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 0x7f970ab226a0>
    - <ast.Constant object at 0x7f970ab22be0>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    - response
    - nameserver
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 263
    functionName: dns.resolver.Answer.__init__
    functionSourceFile: dns.resolver
    functionUses: 8
    functionsReached:
    - response.resolve_chaining
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response.resolve_chaining
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 285
    functionName: dns.resolver.Answer.__getattr__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 300
    functionName: dns.resolver.Answer.__len__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 303
    functionName: dns.resolver.Answer.__iter__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - <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: 0
    functionLinenumber: 306
    functionName: dns.resolver.Answer.__getitem__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 311
    functionName: dns.resolver.Answer.__delitem__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Attribute object at 0x7f970a47de50>
    argNames:
    - self
    - family
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 346
    functionName: dns.resolver.HostAnswers.addresses_and_families
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.resolver.HostAnswers.addresses_and_families
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Attribute object at 0x7f970b0001c0>
    argNames:
    - self
    - family
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 365
    functionName: dns.resolver.HostAnswers.addresses
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.HostAnswers.addresses_and_families
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 369
    functionName: dns.resolver.HostAnswers.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970a478670>
    - <ast.Constant object at 0x7f970a478040>
    argNames:
    - self
    - hits
    - misses
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 379
    functionName: dns.resolver.CacheStatistics.__init__
    functionSourceFile: dns.resolver
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 383
    functionName: dns.resolver.CacheStatistics.reset
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 387
    functionName: dns.resolver.CacheStatistics.clone
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.resolver.CacheStatistics.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 392
    functionName: dns.resolver.CacheBase.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.CacheStatistics.__init__
    - threading.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 396
    functionName: dns.resolver.CacheBase.reset_statistics
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.CacheStatistics.reset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 401
    functionName: dns.resolver.CacheBase.hits
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 406
    functionName: dns.resolver.CacheBase.misses
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 411
    functionName: dns.resolver.CacheBase.get_statistics_snapshot
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.CacheStatistics.__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 0x7f970afcc2b0>
    argNames:
    - self
    - cleaning_interval
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 428
    functionName: dns.resolver.Cache.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 438
    functionName: dns.resolver.Cache._maybe_clean
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached:
    - 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: 452
    functionName: dns.resolver.Cache.get
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.Cache._maybe_clean
    - time.time
    - keys_to_delete.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 472
    functionName: dns.resolver.Cache.put
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.Cache._maybe_clean
    - time.time
    - keys_to_delete.append
    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 0x7f970b724520>
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 485
    functionName: dns.resolver.Cache.flush
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 507
    functionName: dns.resolver.LRUCacheNode.__init__
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 514
    functionName: dns.resolver.LRUCacheNode.link_after
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 520
    functionName: dns.resolver.LRUCacheNode.unlink
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970aaa5580>
    argNames:
    - self
    - max_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 535
    functionName: dns.resolver.LRUCache.__init__
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.resolver.LRUCacheNode.__init__
    - dns.resolver.LRUCache.set_max_size
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - max_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 547
    functionName: dns.resolver.LRUCache.set_max_size
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 552
    functionName: dns.resolver.LRUCache.get
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - node.unlink
    - node.link_after
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.unlink
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.link_after
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 580
    functionName: dns.resolver.LRUCache.get_hits_for_key
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 589
    functionName: dns.resolver.LRUCache.put
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - gnode.unlink
    - <builtin>.len
    - dns.resolver.LRUCacheNode.unlink
    - dns.resolver.LRUCacheNode.__init__
    - dns.resolver.LRUCacheNode.link_after
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970afbb730>
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 611
    functionName: dns.resolver.LRUCache.flush
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - gnode.unlink
    - node.unlink
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 8
    argDefaultValues: []
    argNames:
    - self
    - resolver
    - qname
    - rdtype
    - rdclass
    - tcp
    - raise_on_no_answer
    - search
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 648
    functionName: dns.resolver._Resolution.__init__
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - dns.name.from_unicode
    - qnames_to_try.append
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - qname.is_absolute
    - dns.resolver.BaseResolver._get_qnames_to_try
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - qname.concatenate
    - <builtin>.list
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - dns.rdatatype.is_metatype
    - encodings.idna.ToASCII
    - dns.rdataclass.is_metaclass
    - qnames_to_try.insert
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - qname
    - search
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1087
    functionName: dns.resolver.BaseResolver._get_qnames_to_try
    functionSourceFile: dns.resolver
    functionUses: 8
    functionsReached:
    - qname.concatenate
    - <builtin>.len
    - qnames_to_try.append
    - qname.is_absolute
    - qnames_to_try.insert
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 4
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 685
    functionName: dns.resolver._Resolution.next_request
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - btext.split
    - text.encode
    - dns.inet.is_address
    - dns.message.make_query
    - label.encode
    - m.group
    - dns.nameserver.DoHNameserver
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.name._validate_labels
    - time.time
    - <builtin>.len
    - enriched_nameservers.append
    - os.getpid
    - <builtin>.isinstance
    - system_random.randrange
    - r.read
    - typing.cast
    - dns.entropy.EntropyPool.random_16
    - dns.message.Message.section_from_number
    - c.isdigit
    - request.use_tsig
    - urllib.parse.urlparse
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.message.Message.use_edns
    - byte_.isdigit
    - dns.rdataclass.RdataClass.make
    - <builtin>.bytes
    - labels.extend
    - dns.entropy.EntropyPool._maybe_seed
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - canonical.append
    - dns.entropy.random_16
    - dns.rdatatype.RdataType.make
    - request.use_edns
    - _colon_colon_end.match
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - <builtin>.super
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - answer.response.rcode
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.rrset.from_rdata_list
    - _colon_colon_start.match
    - btext.startswith
    - dns.resolver.BaseResolver._enrich_nameservers
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.name.from_text
    - <builtin>.ord
    - random.shuffle
    - dns.nameserver.Do53Nameserver
    - nameserver_ports.get
    - struct.pack
    - labels.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - dns.message.Message.want_dnssec
    linkageType: pythonLinkage
    raised:
    - NoAnswer
    - NXDOMAIN
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: answer.response.rcode
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.use_tsig
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.use_edns
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - nameservers
    - nameserver_ports
    - default_port
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1186
    functionName: dns.resolver.BaseResolver._enrich_nameservers
    functionSourceFile: dns.resolver
    functionUses: 9
    functionsReached:
    - urllib.parse.urlparse
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.nameserver.DoHNameserver
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - dns.nameserver.Do53Nameserver
    - enriched_nameservers.append
    - nameserver_ports.get
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 760
    functionName: dns.resolver._Resolution.next_nameserver
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - <builtin>.min
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - NoNameservers
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 12
    IfCount: 11
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - ex
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 781
    functionName: dns.resolver._Resolution.query_result
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - <builtin>.isinstance
    - time.time
    - response.rcode
    - dns.resolver.Answer.__init__
    - dns.rcode.to_text
    - response.resolve_chaining
    - <builtin>.str
    - Rcode.to_text
    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 0x7f970a5a9f40>
    - <ast.Constant object at 0x7f970a5a9880>
    argNames:
    - self
    - filename
    - configure
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 934
    functionName: dns.resolver.BaseResolver.__init__
    functionSourceFile: dns.resolver
    functionUses: 13
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 955
    functionName: dns.resolver.BaseResolver.reset
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.name.Name
    - socket.gethostname
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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: 1052
    functionName: dns.resolver.BaseResolver.read_registry
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.win32util._WMIGetter.__init__
    - ctypes.byref
    - text.encode
    - ctypes.POINTER
    - byte_.isdigit
    - dns.win32util._Win32Getter.get.format_ipv6
    - label.encode
    - <builtin>.int
    - ctypes.WinDLL
    - <builtin>.list
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 4
    IfCount: 12
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - f
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 981
    functionName: dns.resolver.BaseResolver.read_resolv_conf
    functionSourceFile: dns.resolver
    functionUses: 14
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - byte_.isdigit
    - l.split
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - opt.split
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - c.isdigit
    linkageType: pythonLinkage
    raised:
    - NoResolverConfiguration
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.gethostname
    functionSourceFile: socket
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: l.split
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a41ae20>
    - <ast.Constant object at 0x7f970a8b6ca0>
    - <ast.Attribute object at 0x7f970a8b6250>
    - <ast.Constant object at 0x7f970a8b6ee0>
    argNames:
    - self
    - edns
    - ednsflags
    - payload
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1144
    functionName: dns.resolver.BaseResolver.use_edns
    functionSourceFile: ''
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: opt.split
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 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:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.win32util._WMIGetter.__init__
    - ctypes.byref
    - text.encode
    - ctypes.POINTER
    - byte_.isdigit
    - dns.win32util._Win32Getter.get.format_ipv6
    - label.encode
    - <builtin>.int
    - ctypes.WinDLL
    - <builtin>.list
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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 0x7f970aabe2b0>
    - <ast.Constant object at 0x7f970aabe580>
    argNames:
    - self
    - start
    - lifetime
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1063
    functionName: dns.resolver.BaseResolver._compute_timeout
    functionSourceFile: dns.resolver
    functionUses: 7
    functionsReached:
    - 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 0x7f970a41a490>
    - <ast.Attribute object at 0x7f970a41a4c0>
    argNames:
    - self
    - keyring
    - keyname
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1128
    functionName: dns.resolver.BaseResolver.use_tsig
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1177
    functionName: dns.resolver.BaseResolver.set_flags
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nameserver_ports.get
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: enriched_nameservers.append
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - nameservers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1228
    functionName: dns.resolver.BaseResolver.nameservers
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - dns.inet.is_address
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - dns.resolver.BaseResolver._enrich_nameservers
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.nameserver.DoHNameserver
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - dns.nameserver.Do53Nameserver
    - enriched_nameservers.append
    - nameserver_ports.get
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 10
    argDefaultValues:
    - <ast.Attribute object at 0x7f970aa63520>
    - <ast.Attribute object at 0x7f970aa63ac0>
    - <ast.Constant object at 0x7f970a82bd90>
    - <ast.Constant object at 0x7f970a82be80>
    - <ast.Constant object at 0x7f970a82bc70>
    - <ast.Constant object at 0x7f970a82baf0>
    - <ast.Constant object at 0x7f970a82bc10>
    - <ast.Constant object at 0x7f970a82beb0>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1246
    functionName: dns.resolver.Resolver.resolve
    functionSourceFile: dns.resolver
    functionUses: 6
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - btext.split
    - dns.resolver.BaseResolver._compute_timeout
    - text.encode
    - dns.inet.is_address
    - dns.message.make_query
    - label.encode
    - qname.concatenate
    - m.group
    - nameserver.query
    - dns.nameserver.DoHNameserver
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.name._validate_labels
    - time.time
    - <builtin>.len
    - dns.resolver.Answer.__init__
    - enriched_nameservers.append
    - os.getpid
    - <builtin>.isinstance
    - system_random.randrange
    - r.read
    - response.rcode
    - dns.rdatatype.is_metatype
    - typing.cast
    - response.resolve_chaining
    - dns.rdataclass.is_metaclass
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - request.use_tsig
    - urllib.parse.urlparse
    - <builtin>.bytearray
    - dns.flags.Flag
    - qname.is_absolute
    - dns.message.Message.use_edns
    - dns.resolver._Resolution.next_request
    - byte_.isdigit
    - dns.rdataclass.RdataClass.make
    - dns.resolver._Resolution.__init__
    - <builtin>.min
    - <builtin>.bytes
    - dns.rcode.to_text
    - labels.extend
    - dns.entropy.EntropyPool._maybe_seed
    - dns.resolver._Resolution.next_nameserver
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - canonical.append
    - qnames_to_try.append
    - dns.rdatatype.RdataType.make
    - dns.entropy.random_16
    - request.use_edns
    - dns.resolver._Resolution.query_result
    - _colon_colon_end.match
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - <builtin>.super
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - answer.response.rcode
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.rrset.from_rdata_list
    - _colon_colon_start.match
    - btext.startswith
    - dns.resolver.BaseResolver._enrich_nameservers
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.name.from_text
    - <builtin>.ord
    - random.shuffle
    - dns.nameserver.Do53Nameserver
    - nameserver_ports.get
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.message.Message.want_dnssec
    - qnames_to_try.insert
    - time.sleep
    - Rcode.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970ab12370>
    - <ast.Attribute object at 0x7f970ab12a60>
    - <ast.Constant object at 0x7f970ab12940>
    - <ast.Constant object at 0x7f970ab120d0>
    - <ast.Constant object at 0x7f970ab12eb0>
    - <ast.Constant object at 0x7f970ab12130>
    - <ast.Constant object at 0x7f970ab12e50>
    argNames:
    - self
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1348
    functionName: dns.resolver.Resolver.query
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - btext.split
    - dns.resolver.BaseResolver._compute_timeout
    - text.encode
    - dns.inet.is_address
    - dns.message.make_query
    - label.encode
    - qname.concatenate
    - m.group
    - nameserver.query
    - dns.nameserver.DoHNameserver
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.name._validate_labels
    - time.time
    - <builtin>.len
    - dns.resolver.Answer.__init__
    - enriched_nameservers.append
    - os.getpid
    - <builtin>.isinstance
    - system_random.randrange
    - r.read
    - response.rcode
    - dns.rdatatype.is_metatype
    - typing.cast
    - response.resolve_chaining
    - dns.rdataclass.is_metaclass
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - request.use_tsig
    - urllib.parse.urlparse
    - <builtin>.bytearray
    - dns.flags.Flag
    - qname.is_absolute
    - dns.message.Message.use_edns
    - dns.resolver._Resolution.next_request
    - byte_.isdigit
    - dns.rdataclass.RdataClass.make
    - dns.resolver._Resolution.__init__
    - <builtin>.min
    - <builtin>.bytes
    - dns.rcode.to_text
    - labels.extend
    - dns.entropy.EntropyPool._maybe_seed
    - dns.resolver._Resolution.next_nameserver
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - canonical.append
    - qnames_to_try.append
    - dns.rdatatype.RdataType.make
    - dns.entropy.random_16
    - request.use_edns
    - dns.resolver._Resolution.query_result
    - _colon_colon_end.match
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - <builtin>.super
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.resolver.Resolver.resolve
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - answer.response.rcode
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.rrset.from_rdata_list
    - _colon_colon_start.match
    - btext.startswith
    - dns.resolver.BaseResolver._enrich_nameservers
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.name.from_text
    - <builtin>.ord
    - random.shuffle
    - dns.nameserver.Do53Nameserver
    - nameserver_ports.get
    - struct.pack
    - warnings.warn
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.message.Message.want_dnssec
    - qnames_to_try.insert
    - time.sleep
    - Rcode.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: warnings.warn
    functionSourceFile: warnings
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - ipaddr
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1383
    functionName: dns.resolver.Resolver.resolve_address
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - address.startswith
    - <builtin>.chr
    - <builtin>.reversed
    - btext.split
    - dns.resolver.BaseResolver._compute_timeout
    - text.encode
    - dns.inet.is_address
    - dns.message.make_query
    - label.encode
    - qname.concatenate
    - nameserver.query
    - m.group
    - binascii.hexlify
    - dns.nameserver.DoHNameserver
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.name._validate_labels
    - time.time
    - <builtin>.len
    - dns.resolver.Answer.__init__
    - enriched_nameservers.append
    - os.getpid
    - <builtin>.isinstance
    - system_random.randrange
    - r.read
    - response.rcode
    - dns.rdatatype.is_metatype
    - typing.cast
    - response.resolve_chaining
    - dns.rdataclass.is_metaclass
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - request.use_tsig
    - urllib.parse.urlparse
    - <builtin>.bytearray
    - dns.flags.Flag
    - qname.is_absolute
    - dns.message.Message.use_edns
    - dns.resolver._Resolution.next_request
    - byte_.isdigit
    - dns.rdataclass.RdataClass.make
    - dns.resolver._Resolution.__init__
    - <builtin>.min
    - <builtin>.bytes
    - dns.rcode.to_text
    - labels.extend
    - modified_kwargs.update
    - dns.entropy.EntropyPool._maybe_seed
    - dns.resolver._Resolution.next_nameserver
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - canonical.append
    - dns.ipv6.is_mapped
    - qnames_to_try.append
    - dns.rdatatype.RdataType.make
    - dns.entropy.random_16
    - request.use_edns
    - dns.resolver._Resolution.query_result
    - _colon_colon_end.match
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - <builtin>.super
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.resolver.Resolver.resolve
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - answer.response.rcode
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.rrset.from_rdata_list
    - _colon_colon_start.match
    - btext.startswith
    - <builtin>.int
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.name.from_text
    - <builtin>.ord
    - random.shuffle
    - dns.nameserver.Do53Nameserver
    - nameserver_ports.get
    - struct.pack
    - dns.reversename.from_address
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.message.Message.want_dnssec
    - qnames_to_try.insert
    - time.sleep
    - Rcode.to_text
    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 0x7f970a9d2760>
    argNames:
    - self
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1407
    functionName: dns.resolver.Resolver.resolve_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - btext.split
    - dns.resolver.BaseResolver._compute_timeout
    - text.encode
    - dns.inet.is_address
    - dns.message.make_query
    - label.encode
    - qname.concatenate
    - m.group
    - nameserver.query
    - dns.nameserver.DoHNameserver
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.resolver.HostAnswers.make
    - dns.name._validate_labels
    - time.time
    - modified_kwargs.pop
    - <builtin>.len
    - dns.resolver.Answer.__init__
    - enriched_nameservers.append
    - os.getpid
    - <builtin>.isinstance
    - system_random.randrange
    - r.read
    - response.rcode
    - dns.rdatatype.is_metatype
    - typing.cast
    - response.resolve_chaining
    - dns.rdataclass.is_metaclass
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - request.use_tsig
    - urllib.parse.urlparse
    - <builtin>.bytearray
    - dns.flags.Flag
    - qname.is_absolute
    - dns.message.Message.use_edns
    - dns.resolver._Resolution.next_request
    - byte_.isdigit
    - dns.rdataclass.RdataClass.make
    - dns.resolver._Resolution.__init__
    - <builtin>.min
    - <builtin>.bytes
    - dns.rcode.to_text
    - modified_kwargs.update
    - labels.extend
    - dns.entropy.EntropyPool._maybe_seed
    - dns.resolver._Resolution.next_nameserver
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - canonical.append
    - qnames_to_try.append
    - dns.rdatatype.RdataType.make
    - dns.entropy.random_16
    - request.use_edns
    - dns.resolver._Resolution.query_result
    - _colon_colon_end.match
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - <builtin>.super
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.resolver.Resolver.resolve
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - answer.response.rcode
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.rrset.from_rdata_list
    - _colon_colon_start.match
    - btext.startswith
    - <builtin>.int
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.name.from_text
    - <builtin>.ord
    - random.shuffle
    - dns.nameserver.Do53Nameserver
    - nameserver_ports.get
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.message.Message.want_dnssec
    - qnames_to_try.insert
    - time.sleep
    - Rcode.to_text
    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: 9
    functionLinenumber: 1474
    functionName: dns.resolver.Resolver.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - btext.split
    - dns.resolver.BaseResolver._compute_timeout
    - text.encode
    - dns.inet.is_address
    - dns.message.make_query
    - label.encode
    - qname.concatenate
    - m.group
    - nameserver.query
    - dns.nameserver.DoHNameserver
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.name._validate_labels
    - time.time
    - <builtin>.len
    - dns.resolver.Answer.__init__
    - enriched_nameservers.append
    - os.getpid
    - <builtin>.isinstance
    - system_random.randrange
    - r.read
    - response.rcode
    - dns.rdatatype.is_metatype
    - typing.cast
    - response.resolve_chaining
    - dns.rdataclass.is_metaclass
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - request.use_tsig
    - urllib.parse.urlparse
    - <builtin>.bytearray
    - dns.flags.Flag
    - qname.is_absolute
    - dns.message.Message.use_edns
    - dns.resolver._Resolution.next_request
    - byte_.isdigit
    - dns.rdataclass.RdataClass.make
    - dns.resolver._Resolution.__init__
    - <builtin>.min
    - <builtin>.bytes
    - dns.rcode.to_text
    - labels.extend
    - dns.entropy.EntropyPool._maybe_seed
    - dns.resolver._Resolution.next_nameserver
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - canonical.append
    - qnames_to_try.append
    - dns.rdatatype.RdataType.make
    - dns.entropy.random_16
    - request.use_edns
    - dns.resolver._Resolution.query_result
    - _colon_colon_end.match
    - dns.rdtypes.ANY.OPT.OPT
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - <builtin>.super
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.resolver.Resolver.resolve
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - answer.response.rcode
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.rrset.from_rdata_list
    - _colon_colon_start.match
    - btext.startswith
    - dns.resolver.BaseResolver._enrich_nameservers
    - <builtin>.int
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.name.from_text
    - <builtin>.ord
    - random.shuffle
    - dns.nameserver.Do53Nameserver
    - nameserver_ports.get
    - struct.pack
    - labels.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.message.Message.want_dnssec
    - qnames_to_try.insert
    - time.sleep
    - Rcode.to_text
    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 0x7f970b4c9d00>
    argNames:
    - self
    - lifetime
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1497
    functionName: dns.resolver.Resolver.try_ddr
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - <builtin>.set
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - dns._ddr._get_nameservers_sync
    - btext.split
    - dns.resolver.BaseResolver._compute_timeout
    - text.encode
    - dns.inet.is_address
    - dns.message.make_query
    - label.encode
    - qname.concatenate
    - nameserver.query
    - m.group
    - dns.nameserver.DoHNameserver
    - os.urandom
    - dns.message.Message.find_rrset
    - dns.name._validate_labels
    - time.time
    - <builtin>.len
    - info.ddr_tls_check_sync
    - dns.resolver.Answer.__init__
    - enriched_nameservers.append
    - os.getpid
    - <builtin>.isinstance
    - system_random.randrange
    - r.read
    - response.rcode
    - dns.rdatatype.is_metatype
    - typing.cast
    - response.resolve_chaining
    - dns.rdataclass.is_metaclass
    - path.startswith
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - request.use_tsig
    - urllib.parse.urlparse
    - <builtin>.bytearray
    - dns.flags.Flag
    - qname.is_absolute
    - dns._ddr._SVCBInfo.__init__
    - dns.message.Message.use_edns
    - dns.nameserver.DoQNameserver
    - dns.resolver._Resolution.next_request
    - byte_.isdigit
    - dns.rdataclass.RdataClass.make
    - param.value.endswith
    - nameservers.extend
    - dns.resolver._Resolution.__init__
    - <builtin>.min
    - <builtin>.bytes
    - dns.rcode.to_text
    - labels.extend
    - dns.entropy.EntropyPool._maybe_seed
    - dns.resolver._Resolution.next_nameserver
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - canonical.append
    - dns.query._remaining
    - qnames_to_try.append
    - dns.rdatatype.RdataType.make
    - dns.entropy.random_16
    - request.use_edns
    - dns.nameserver.DoTNameserver
    - dns.resolver._Resolution.query_result
    - _colon_colon_end.match
    - infos.append
    - dns.rdtypes.ANY.OPT.OPT
    - dns._ddr._extract_nameservers_from_svcb
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - rr.target.to_text
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - <builtin>.super
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.resolver.Resolver.resolve
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - answer.response.rcode
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.rrset.from_rdata_list
    - _colon_colon_start.match
    - btext.startswith
    - <builtin>.int
    - dns.resolver.BaseResolver._enrich_nameservers
    - dns.ipv6.inet_aton
    - <builtin>.list
    - dns.ipv4.inet_aton
    - answer.rrset.processing_order
    - dns.name.Name.__init__
    - dns.name.from_text
    - <builtin>.ord
    - random.shuffle
    - dns.nameserver.Do53Nameserver
    - nameserver_ports.get
    - struct.pack
    - rr.params.get
    - labels.append
    - nameservers.append
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - dns.message.Message.want_dnssec
    - qnames_to_try.insert
    - time.sleep
    - Rcode.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1533
    functionName: dns.resolver.get_default_resolver
    functionSourceFile: dns.resolver
    functionUses: 11
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1541
    functionName: dns.resolver.reset_default_resolver
    functionSourceFile: dns.resolver
    functionUses: 12
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    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 0x7f970a455190>
    - <ast.Attribute object at 0x7f970a455580>
    - <ast.Constant object at 0x7f970a455340>
    - <ast.Constant object at 0x7f970a455550>
    - <ast.Constant object at 0x7f970a455d30>
    - <ast.Constant object at 0x7f970a455310>
    - <ast.Constant object at 0x7f970a4551f0>
    - <ast.Constant object at 0x7f970a455880>
    argNames:
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1552
    functionName: dns.resolver.resolve
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.isdigit
    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 0x7f970a722c40>
    - <ast.Attribute object at 0x7f970a7226a0>
    - <ast.Constant object at 0x7f970a722910>
    - <ast.Constant object at 0x7f970a7228e0>
    - <ast.Constant object at 0x7f970a7221c0>
    - <ast.Constant object at 0x7f970a7224c0>
    - <ast.Constant object at 0x7f970a7222e0>
    argNames:
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1585
    functionName: dns.resolver.query
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.resolver.resolve
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - warnings.warn
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - ipaddr
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1618
    functionName: dns.resolver.resolve_address
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.isdigit
    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 0x7f970a636910>
    argNames:
    - name
    - family
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1628
    functionName: dns.resolver.resolve_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.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: 9
    functionLinenumber: 1640
    functionName: dns.resolver.canonical_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.isdigit
    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 0x7f970a6361f0>
    argNames:
    - lifetime
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1650
    functionName: dns.resolver.try_ddr
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.isdigit
    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 0x7f970a551070>
    - <ast.Constant object at 0x7f970a551100>
    - <ast.Constant object at 0x7f970a551bb0>
    - <ast.Constant object at 0x7f970a551d90>
    argNames:
    - name
    - rdclass
    - tcp
    - resolver
    - lifetime
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1660
    functionName: dns.resolver.zone_for_name
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - e.response
    - e.responses
    - ctypes.byref
    - socket.gethostname
    - dns.win32util._WMIGetter.__init__
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - dns.resolver.reset_default_resolver
    - rrs.name.fullcompare
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - name.parent
    - resolver.resolve
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - name.is_absolute
    - dns.resolver.BaseResolver.read_resolv_conf
    - <builtin>.tuple
    - contextlib.nullcontext
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.isdigit
    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 0x7f970a489520>
    - <ast.Attribute object at 0x7f970a4892b0>
    - <ast.Constant object at 0x7f970a489b80>
    argNames:
    - where
    - port
    - family
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1745
    functionName: dns.resolver.make_resolver_at
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - btext.split
    - part.isdigit
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - dns.inet.is_address
    - ctypes.POINTER
    - _colon_colon_start.match
    - _colon_colon_end.match
    - label.encode
    - byte_.isdigit
    - btext.startswith
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - dns.ipv6.inet_aton
    - l.split
    - <builtin>.list
    - ctypes.WinDLL
    - m.group
    - dns.ipv4.inet_aton
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - btext.endswith
    - _v4_ending.match
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - dns.nameserver.Do53Nameserver
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.isdigit
    - canonical.append
    - resolver.resolve_name
    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 0x7f970a4e3070>
    - <ast.Attribute object at 0x7f970a4e3d90>
    - <ast.Constant object at 0x7f970a4e35b0>
    - <ast.Constant object at 0x7f970a4e3e20>
    - <ast.Constant object at 0x7f970a4e33a0>
    - <ast.Constant object at 0x7f970a4e3580>
    - <ast.Constant object at 0x7f970a4e3430>
    - <ast.Constant object at 0x7f970a4e3a90>
    - <ast.Constant object at 0x7f970a4e3940>
    - <ast.Attribute object at 0x7f970a4e32e0>
    - <ast.Constant object at 0x7f970a4e3310>
    argNames:
    - where
    - qname
    - rdtype
    - rdclass
    - tcp
    - source
    - raise_on_no_answer
    - source_port
    - lifetime
    - search
    - port
    - family
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1781
    functionName: dns.resolver.resolve_at
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.rrset.from_rdata
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - <builtin>.chr
    - ctypes.byref
    - btext.split
    - dns.resolver.BaseResolver._compute_timeout
    - text.encode
    - dns.inet.is_address
    - ctypes.POINTER
    - dns.message.make_query
    - label.encode
    - qname.concatenate
    - nameserver.query
    - m.group
    - dns.nameserver.DoHNameserver
    - os.urandom
    - dns.win32util._RegistryGetter.__init__
    - dns.message.Message.find_rrset
    - ctypes.create_string_buffer
    - opt.split
    - dns.name._validate_labels
    - time.time
    - <builtin>.len
    - dns.resolver.Answer.__init__
    - enriched_nameservers.append
    - os.getpid
    - dns.win32util.DnsInfo.__init__
    - <builtin>.isinstance
    - system_random.randrange
    - r.read
    - response.rcode
    - dns.rdatatype.is_metatype
    - typing.cast
    - response.resolve_chaining
    - dns.rdataclass.is_metaclass
    - dns.entropy.EntropyPool.random_16
    - c.isdigit
    - dns.message.Message.section_from_number
    - resolver.resolve_name
    - request.use_tsig
    - urllib.parse.urlparse
    - <builtin>.bytearray
    - dns.flags.Flag
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - qname.is_absolute
    - dns.win32util._WMIGetter.__init__
    - dns.message.Message.use_edns
    - dns.resolver._Resolution.next_request
    - byte_.isdigit
    - dns.rdataclass.RdataClass.make
    - dns.resolver._Resolution.__init__
    - dns.resolver.BaseResolver.__init__
    - <builtin>.min
    - <builtin>.bytes
    - dns.rcode.to_text
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.entropy.EntropyPool._maybe_seed
    - dns.resolver._Resolution.next_nameserver
    - dns.message.Message.section_number
    - <builtin>.open
    - dns.entropy.EntropyPool._stir
    - dns.resolver.BaseResolver.read_resolv_conf
    - canonical.append
    - dns.resolver.BaseResolver.reset
    - dns.resolver.make_resolver_at
    - qnames_to_try.append
    - dns.rdatatype.RdataType.make
    - dns.entropy.random_16
    - request.use_edns
    - dns.name.Name
    - dns.resolver._Resolution.query_result
    - socket.gethostname
    - dns.resolver.BaseResolver.use_edns
    - _colon_colon_end.match
    - dns.win32util._Win32Getter.get.format_ipv6
    - ctypes.WinDLL
    - dns.rdtypes.ANY.OPT.OPT
    - <builtin>.print
    - ctypes.c_ulong
    - dns.name.IDNA2003Codec.encode
    - btext.endswith
    - _v4_ending.match
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.tuple
    - dns.resolver.get_default_resolver
    - <builtin>.super
    - dns.rrset.RRset
    - <builtin>.enumerate
    - dns.win32util._WMIGetter.get
    - dns.resolver.Resolver.resolve
    - dns.message.Message._make_opt
    - dns.message.Message.__init__
    - answer.response.rcode
    - <builtin>.str
    - r.add
    - dns.entropy.EntropyPool.random_8
    - part.isdigit
    - dns.resolver.BaseResolver._get_qnames_to_try
    - dns.rrset.from_rdata_list
    - btext.startswith
    - _colon_colon_start.match
    - l.split
    - <builtin>.int
    - dns.resolver.BaseResolver._enrich_nameservers
    - <builtin>.list
    - dns.ipv6.inet_aton
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - IPHLPAPI.GetAdaptersAddresses
    - dns.name.from_text
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - dns.nameserver.Do53Nameserver
    - random.shuffle
    - <builtin>.map
    - nameserver_ports.get
    - struct.pack
    - labels.append
    - contextlib.nullcontext
    - nameservers.append
    - encodings.idna.ToASCII
    - dns.rrset.RRset.__init__
    - dns.message.Message.want_dnssec
    - qnames_to_try.insert
    - time.sleep
    - Rcode.to_text
    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 0x7f970a5cae20>
    - <ast.Constant object at 0x7f970a5ca8e0>
    - <ast.Attribute object at 0x7f970a5caf40>
    - <ast.Constant object at 0x7f970a5cac70>
    - <ast.Constant object at 0x7f970a5cad30>
    - <ast.Constant object at 0x7f970a5caaf0>
    argNames:
    - host
    - service
    - family
    - type
    - proto
    - flags
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1841
    functionName: dns.resolver._getaddrinfo
    functionSourceFile: dns.resolver
    functionUses: 5
    functionsReached:
    - socket.getservbyname
    - binascii.unhexlify
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - answers.addresses_and_families
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - answers.canonical_name
    - _resolver.resolve_name
    - tuples.append
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _resolver.resolve_name
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: answers.addresses_and_families
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: answers.canonical_name
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.getservbyname
    functionSourceFile: socket
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tuples.append
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a401880>
    argNames:
    - sockaddr
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1927
    functionName: dns.resolver._getnameinfo
    functionSourceFile: dns.resolver
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - socket.getservbyname
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - address.startswith
    - <builtin>.chr
    - <builtin>.str
    - <builtin>.reversed
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - typing.cast.target.to_text
    - socket.getservbyport
    - answers.addresses_and_families
    - text.encode
    - byte_.isdigit
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - label.encode
    - dns.ipv6.inet_aton
    - <builtin>.list
    - m.group
    - binascii.hexlify
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.inet.af_for_address
    - address.find
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - scope.isdigit
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - answers.canonical_name
    - dns.resolver._getaddrinfo
    - _resolver.resolve_name
    - labels.extend
    - tuples.append
    - dns.name.is_all_ascii
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - dns.reversename.from_address
    - struct.pack
    - dns.ipv6.is_mapped
    - _resolver.resolve
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - c.isdigit
    - canonical.append
    linkageType: pythonLinkage
    raised:
    - OSError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _resolver.resolve
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.target.to_text
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.getservbyport
    functionSourceFile: socket
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f970af98b20>
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1970
    functionName: dns.resolver._getfqdn
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - socket.getservbyname
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - address.startswith
    - <builtin>.chr
    - <builtin>.str
    - <builtin>.reversed
    - socket.gethostname
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - typing.cast.target.to_text
    - socket.getservbyport
    - answers.addresses_and_families
    - dns.inet.inet_pton
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - byte_.isdigit
    - <builtin>.int
    - label.encode
    - dns.ipv6.inet_aton
    - <builtin>.list
    - m.group
    - binascii.hexlify
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.inet.af_for_address
    - address.find
    - dns.name._validate_labels
    - dns.resolver._gethostbyaddr
    - dns.name.from_text
    - btext.endswith
    - dns.name.IDNA2003Codec.encode
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - answers.canonical_name
    - dns.resolver._getnameinfo
    - dns.resolver._getaddrinfo
    - _resolver.resolve_name
    - labels.extend
    - tuples.append
    - addresses.append
    - dns.name.is_all_ascii
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - dns.reversename.from_address
    - dns.ipv6.is_mapped
    - _resolver.resolve
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - c.isdigit
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - ip
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1999
    functionName: dns.resolver._gethostbyaddr
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - socket.getservbyname
    - dns.name._maybe_convert_to_binary
    - binascii.unhexlify
    - address.startswith
    - <builtin>.chr
    - <builtin>.str
    - <builtin>.reversed
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - typing.cast.target.to_text
    - socket.getservbyport
    - answers.addresses_and_families
    - dns.inet.inet_pton
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - byte_.isdigit
    - <builtin>.int
    - label.encode
    - dns.ipv6.inet_aton
    - <builtin>.list
    - m.group
    - binascii.hexlify
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.name.Name.__init__
    - dns.inet.af_for_address
    - address.find
    - dns.name._validate_labels
    - dns.name.from_text
    - btext.endswith
    - dns.name.IDNA2003Codec.encode
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - answers.canonical_name
    - dns.resolver._getnameinfo
    - dns.resolver._getaddrinfo
    - _resolver.resolve_name
    - labels.extend
    - tuples.append
    - addresses.append
    - dns.name.is_all_ascii
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - dns.reversename.from_address
    - dns.ipv6.is_mapped
    - _resolver.resolve
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - c.isdigit
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1982
    functionName: dns.resolver._gethostbyname
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - socket.getservbyname
    - binascii.unhexlify
    - dns.resolver._gethostbyname_ex
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - answers.addresses_and_families
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - answers.canonical_name
    - dns.resolver._getaddrinfo
    - _resolver.resolve_name
    - tuples.append
    - addresses.append
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1986
    functionName: dns.resolver._gethostbyname_ex
    functionSourceFile: dns.resolver
    functionUses: 1
    functionsReached:
    - socket.getservbyname
    - binascii.unhexlify
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - answers.addresses_and_families
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - answers.canonical_name
    - dns.resolver._getaddrinfo
    - _resolver.resolve_name
    - tuples.append
    - addresses.append
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f970a371490>
    argNames:
    - resolver
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 2032
    functionName: dns.resolver.override_system_resolver
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - dns.win32util._WMIGetter.__init__
    - socket.gethostname
    - ctypes.byref
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - l.split
    - dns.win32util._Win32Getter.get.format_ipv6
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - opt.split
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.resolver.BaseResolver.__init__
    - <builtin>.ord
    - dns.resolver.reset_default_resolver
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - c.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2058
    functionName: dns.resolver.restore_system_resolver
    functionSourceFile: dns.resolver
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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 0x7f970a393790>
    - <ast.Constant object at 0x7f970a393490>
    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 0x7f970a3930d0>
    - <ast.Constant object at 0x7f970a393ac0>
    - <ast.Constant object at 0x7f970a393310>
    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 0x7f970adb89d0>
    - <ast.Constant object at 0x7f970adb8c10>
    - <ast.Constant object at 0x7f970adb86a0>
    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 0x7f970adb8ca0>
    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
    - parser.get_name
    - 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 0x7f970aa5a280>
    - <ast.Constant object at 0x7f970aa5afa0>
    - <ast.Constant object at 0x7f970aa5ad60>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 62
    functionName: dns.rdtypes.nsbase.UncompressedNS._to_wire
    functionSourceFile: dns.rdtypes.nsbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: -1
    functionName: dns.reversename
    functionSourceFile: dns.reversename
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970b042160>
    - <ast.Name object at 0x7f970b0420d0>
    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:
    - name.is_subdomain
    - dns.ipv6.inet_ntoa
    - binascii.unhexlify
    - dns.ipv4.inet_ntoa
    - <builtin>.reversed
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - <builtin>.list
    - dns.ipv6.inet_aton
    - m.group
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - name.relativize
    - chunks.append
    - btext.endswith
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - _leading_zero.match
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - parts.append
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parts.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.win32util
    functionSourceFile: dns.win32util
    functionUses: 0
    functionsReached:
    - dns._features.have
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - dns._features._version_check
    - _cache.get
    - itertools.takewhile
    - _requirements.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: 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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - domain.startswith
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - system.Win32_NetworkAdapterConfiguration
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - wmi.WMI
    - dns.win32util._config_domain
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - pythoncom.CoInitialize
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - pythoncom.CoUninitialize
    - c.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: 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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - domain.startswith
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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:
    - text.replace
    - dns.win32util._RegistryGetter._split
    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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - domain.startswith
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.win32util._RegistryGetter._split
    - dns.name.Name.__init__
    - text.replace
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.win32util._config_domain
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - domain.startswith
    - text.encode
    - winreg.QueryValueEx
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.win32util._RegistryGetter._split
    - dns.name.Name.__init__
    - text.replace
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.win32util._RegistryGetter._config_search
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.win32util._config_domain
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - dns.win32util._RegistryGetter._config_nameservers
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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
    - connection_key.Close
    - device_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:
    - interfaces.Close
    - dns.name.from_unicode
    - winreg.EnumKey
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.win32util._RegistryGetter._is_nic_enabled
    - domain.startswith
    - text.encode
    - winreg.QueryValueEx
    - lm.Close
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - key.Close
    - <builtin>.list
    - connection_key.Close
    - dns.win32util._RegistryGetter._split
    - tcp_params.Close
    - dns.name.Name.__init__
    - text.replace
    - dns.name._validate_labels
    - winreg.OpenKey
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.win32util._RegistryGetter._config_search
    - winreg.ConnectRegistry
    - device_key.Close
    - <builtin>.len
    - <builtin>.ord
    - dns.win32util._RegistryGetter._config_fromkey
    - labels.extend
    - dns.win32util._config_domain
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - dns.win32util._RegistryGetter._config_nameservers
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.name._maybe_convert_to_binary
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - ctypes.byref
    - text.encode
    - ctypes.POINTER
    - byte_.isdigit
    - dns.win32util._Win32Getter.get.format_ipv6
    - label.encode
    - <builtin>.int
    - ctypes.WinDLL
    - <builtin>.list
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - dns.name._validate_labels
    - ctypes.c_ulong
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.map
    - labels.extend
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.quic._trio
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - connection
    - stream_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: dns.quic._trio.TrioQuicStream.__init__
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - trio.Condition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trio.Condition
    functionSourceFile: trio
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 32
    functionName: dns.quic._trio.TrioQuicStream.wait_for
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - dns.quic._common.Buffer.have
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: dns.quic._trio.TrioQuicStream.wait_for_end
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.seen_end
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 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: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa2cdf0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 48
    functionName: dns.quic._trio.TrioQuicStream.receive
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.get_all
    - dns.quic._common.Buffer.seen_end
    - struct.unpack
    - dns.quic._common.Buffer.get
    - dns.quic._trio.TrioQuicStream.wait_for
    - dns.quic._common.Buffer.have
    - dns.quic._trio.TrioQuicStream.wait_for_end
    - <builtin>.len
    - trio.move_on_after
    - dns._asyncbackend.NullContext.__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: 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 0x7f970afc0910>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.quic._trio.TrioQuicStream.send
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._encapsulate
    - struct.pack
    - <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
    - datagram
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 131
    functionName: dns.quic._common.BaseQuicStream._encapsulate
    functionSourceFile: dns.quic._common
    functionUses: 3
    functionsReached:
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 68
    functionName: dns.quic._trio.TrioQuicStream._add_input
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.have
    - dns.quic._common.Buffer.put
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._common_add_input
    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:
    - dns.quic._common.Buffer.put
    - <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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 73
    functionName: dns.quic._trio.TrioQuicStream.close
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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: 78
    functionName: dns.quic._trio.TrioQuicStream.__aenter__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 81
    functionName: dns.quic._trio.TrioQuicStream.__aexit__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.put
    - dns.quic._trio.TrioQuicStream.close
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970a8a6e20>
    argNames:
    - self
    - connection
    - address
    - port
    - source
    - source_port
    - manager
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: dns.quic._trio.TrioQuicConnection.__init__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - trio.Event
    - <builtin>.super
    - trio.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: trio.Event
    functionSourceFile: trio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 97
    functionName: dns.quic._trio.TrioQuicConnection._worker
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicConnection.is_h3
    - dns.quic._trio.TrioQuicConnection._handle_events
    - binascii.unhexlify
    - btext.split
    - dns.inet.low_level_address_tuple
    - dns.quic._common.BaseQuicConnection._handle_timer
    - text.encode
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - part.isdigit
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - trio.CancelScope
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - time.time
    - <builtin>.min
    - <builtin>.len
    - <builtin>.ord
    - <builtin>.max
    - <builtin>.range
    - trio.current_time
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - trio.sleep
    - stream._add_input
    - canonical.append
    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 0x7f970a82b5e0>
    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:
    - time.time
    - <builtin>.min
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 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: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 7
    IfCount: 16
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 134
    functionName: dns.quic._trio.TrioQuicConnection._handle_events
    functionSourceFile: dns.quic._trio
    functionUses: 1
    functionsReached:
    - dns.quic._common.BaseQuicConnection.is_h3
    - stream._add_input
    - trio.sleep
    - <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: 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: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa0a310>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 179
    functionName: dns.quic._trio.TrioQuicConnection.write
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 185
    functionName: dns.quic._trio.TrioQuicConnection.run
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - trio.open_nursery
    - nursery.start_soon
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nursery.start_soon
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a4891f0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 192
    functionName: dns.quic._trio.TrioQuicConnection.make_stream
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns._asyncbackend.NullContext.__init__
    - trio.Condition
    - dns.quic._trio.TrioQuicStream.__init__
    - trio.move_on_after
    - <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: 207
    functionName: dns.quic._trio.TrioQuicConnection.close
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa73880>
    - <ast.Constant object at 0x7f970aa73430>
    - <ast.Constant object at 0x7f970aa73a30>
    - <ast.Constant object at 0x7f970aa73730>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    - want_session_ticket
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 231
    functionName: dns.quic._trio.TrioQuicManager.connect
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicManager._connect
    - binascii.unhexlify
    - copy.copy
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - functools.partial
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - time.time
    - <builtin>.len
    - <builtin>.ord
    - aioquic.quic.connection.QuicConnection
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - qconn.connect
    - canonical.append
    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 0x7f970ab529d0>
    - <ast.Constant object at 0x7f970ab52070>
    - <ast.Constant object at 0x7f970ab52580>
    - <ast.Constant object at 0x7f970ab52fa0>
    - <ast.Constant object at 0x7f970ab52790>
    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:
    - binascii.unhexlify
    - copy.copy
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - functools.partial
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - time.time
    - <builtin>.len
    - <builtin>.ord
    - aioquic.quic.connection.QuicConnection
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - qconn.connect
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 241
    functionName: dns.quic._trio.TrioQuicManager.__aenter__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 244
    functionName: dns.quic._trio.TrioQuicManager.__aexit__
    functionSourceFile: dns.quic._trio
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - connection.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 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: 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:
    - time.time
    - <builtin>.max
    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 0x7f970aa63520>
    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:
    - url_parts.netloc.encode
    - url_parts.path.encode
    - urllib.parse.urlparse
    - base64.urlsafe_b64encode
    - url_parts.scheme.encode
    - headers.extend
    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 0x7f970a7100a0>
    - <ast.Constant object at 0x7f970a710df0>
    - <ast.Constant object at 0x7f970a710e50>
    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:
    - binascii.unhexlify
    - manager.is_h3
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - aioquic.h3.connection.H3Connection
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: manager.is_h3
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: aioquic.h3.connection.H3Connection
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 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 0x7f970ab128e0>
    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 0x7f970a82b3a0>
    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 0x7f970a5ce4f0>
    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 0x7f970b4c9520>
    - <ast.Constant object at 0x7f970b4c9250>
    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
    - dns._tls_util.convert_verify_to_cafile_and_capath
    - <builtin>.isinstance
    - os.path.isfile
    - os.path.isdir
    - 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>.list
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 330
    functionName: dns.quic._common.BaseQuicManager.save_token
    functionSourceFile: dns.quic._common
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970b06c6a0>
    - <ast.Constant object at 0x7f970b06c4f0>
    - <ast.Constant object at 0x7f970b06c790>
    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._asyncio
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - connection
    - stream_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: dns.quic._asyncio.AsyncioQuicStream.__init__
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - asyncio.Condition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.Condition
    functionSourceFile: asyncio
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 32
    functionName: dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    functionSourceFile: dns.quic._asyncio
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - amount
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 36
    functionName: dns.quic._asyncio.AsyncioQuicStream.wait_for
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - time.time
    - <builtin>.len
    - dns.quic._common.Buffer.have
    - asyncio.wait_for
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: dns.quic._asyncio.AsyncioQuicStream.wait_for_end
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - dns.quic._common.Buffer.seen_end
    - time.time
    - asyncio.wait_for
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.max
    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 0x7f970aabefd0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 58
    functionName: dns.quic._asyncio.AsyncioQuicStream.receive
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.get_all
    - dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up
    - struct.unpack
    - dns.quic._asyncio.AsyncioQuicStream.wait_for_end
    - dns.quic._common.Buffer.seen_end
    - dns.quic._common.Buffer.get
    - time.time
    - dns.quic._common.Buffer.have
    - <builtin>.len
    - dns.quic._asyncio.AsyncioQuicStream.wait_for
    - asyncio.wait_for
    - dns.quic._common.BaseQuicStream._expiration_from_timeout
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.max
    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 0x7f970b069d60>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 69
    functionName: dns.quic._asyncio.AsyncioQuicStream.send
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._encapsulate
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 73
    functionName: dns.quic._asyncio.AsyncioQuicStream._add_input
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.have
    - dns.quic._common.Buffer.put
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._common_add_input
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 78
    functionName: dns.quic._asyncio.AsyncioQuicStream.close
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 83
    functionName: dns.quic._asyncio.AsyncioQuicStream.__aenter__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 86
    functionName: dns.quic._asyncio.AsyncioQuicStream.__aexit__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicStream.close
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970a4895b0>
    argNames:
    - self
    - connection
    - address
    - port
    - source
    - source_port
    - manager
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 94
    functionName: dns.quic._asyncio.AsyncioQuicConnection.__init__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - asyncio.Event
    - <builtin>.super
    - asyncio.Condition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.Event
    functionSourceFile: asyncio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 104
    functionName: dns.quic._asyncio.AsyncioQuicConnection._receiver
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns._trio_backend.Backend
    - binascii.unhexlify
    - backend.make_socket
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - _backends.get
    - dns.inet.af_for_address
    - btext.endswith
    - _v4_ending.match
    - time.time
    - <builtin>.ord
    - <builtin>.len
    - dns._asyncio_backend.Backend
    - <builtin>.range
    - <builtin>.isinstance
    - dns.asyncbackend.get_backend
    - struct.pack
    - canonical.append
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 132
    functionName: dns.quic._asyncio.AsyncioQuicConnection._wakeup
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 137
    functionName: dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer
    functionSourceFile: dns.quic._asyncio
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 143
    functionName: dns.quic._asyncio.AsyncioQuicConnection._sender
    functionSourceFile: dns.quic._asyncio
    functionUses: 1
    functionsReached:
    - dns.quic._common.BaseQuicConnection._handle_timer
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - <builtin>.isinstance
    - asyncio.sleep
    - dns.quic._common.BaseQuicConnection.is_h3
    - dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer
    - <builtin>.min
    - time.time
    - asyncio.wait_for
    - stream._add_input
    - dns.quic._asyncio.AsyncioQuicConnection._handle_events
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 7
    IfCount: 17
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 159
    functionName: dns.quic._asyncio.AsyncioQuicConnection._handle_events
    functionSourceFile: dns.quic._asyncio
    functionUses: 2
    functionsReached:
    - asyncio.sleep
    - 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 0x7f970a636550>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 206
    functionName: dns.quic._asyncio.AsyncioQuicConnection.write
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 210
    functionName: dns.quic._asyncio.AsyncioQuicConnection.run
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns._trio_backend.Backend
    - dns.quic._asyncio.AsyncioQuicConnection._sender
    - dns.quic._common.BaseQuicConnection.is_h3
    - binascii.unhexlify
    - dns.quic._asyncio.AsyncioQuicConnection._receiver
    - backend.make_socket
    - btext.split
    - dns.quic._common.BaseQuicConnection._handle_timer
    - text.encode
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - part.isdigit
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - dns.quic._asyncio.AsyncioQuicConnection._handle_events
    - m.group
    - dns.ipv4.inet_aton
    - _backends.get
    - dns.inet.af_for_address
    - asyncio.sleep
    - btext.endswith
    - dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer
    - time.time
    - <builtin>.min
    - _v4_ending.match
    - <builtin>.len
    - dns._asyncio_backend.Backend
    - <builtin>.ord
    - <builtin>.max
    - <builtin>.range
    - <builtin>.isinstance
    - dns.asyncbackend.get_backend
    - struct.pack
    - asyncio.Task
    - asyncio.wait_for
    - stream._add_input
    - canonical.append
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a6366a0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 216
    functionName: dns.quic._asyncio.AsyncioQuicConnection.make_stream
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.quic._asyncio.AsyncioQuicStream.__init__
    - asyncio.wait_for
    - asyncio.Condition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 228
    functionName: dns.quic._asyncio.AsyncioQuicConnection.close
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._asyncio.AsyncioQuicConnection._wakeup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa4fe50>
    - <ast.Constant object at 0x7f970aa4f1c0>
    - <ast.Constant object at 0x7f970aa4f760>
    - <ast.Constant object at 0x7f970aa4f0a0>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    - want_session_ticket
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 257
    functionName: dns.quic._asyncio.AsyncioQuicManager.connect
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicManager._connect
    - binascii.unhexlify
    - copy.copy
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - functools.partial
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - time.time
    - <builtin>.len
    - <builtin>.ord
    - aioquic.quic.connection.QuicConnection
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - qconn.connect
    - connection.run
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 267
    functionName: dns.quic._asyncio.AsyncioQuicManager.__aenter__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 270
    functionName: dns.quic._asyncio.AsyncioQuicManager.__aexit__
    functionSourceFile: dns.quic._asyncio
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - connection.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.quic._sync
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - connection
    - stream_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.quic._sync.SyncQuicStream.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - threading.Condition
    - threading.Lock
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Condition
    functionSourceFile: threading
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - amount
    - expiration
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 37
    functionName: dns.quic._sync.SyncQuicStream.wait_for
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - time.time
    - dns.quic._common.Buffer.have
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expiration
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.quic._sync.SyncQuicStream.wait_for_end
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - time.time
    - dns.quic._common.Buffer.seen_end
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.max
    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 0x7f970a29fc40>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 59
    functionName: dns.quic._sync.SyncQuicStream.receive
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.get_all
    - struct.unpack
    - dns.quic._common.Buffer.seen_end
    - dns.quic._sync.SyncQuicStream.wait_for
    - dns.quic._common.Buffer.get
    - dns.quic._sync.SyncQuicStream.wait_for_end
    - time.time
    - dns.quic._common.Buffer.have
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._expiration_from_timeout
    - dns.quic._common.BaseQuicStream._timeout_from_expiration
    - <builtin>.max
    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 0x7f970b042ee0>
    argNames:
    - self
    - datagram
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 73
    functionName: dns.quic._sync.SyncQuicStream.send
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicStream._encapsulate
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 77
    functionName: dns.quic._sync.SyncQuicStream._add_input
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.Buffer.have
    - dns.quic._common.Buffer.put
    - <builtin>.len
    - dns.quic._common.BaseQuicStream._common_add_input
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 82
    functionName: dns.quic._sync.SyncQuicStream.close
    functionSourceFile: dns.quic._sync
    functionUses: 1
    functionsReached:
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 86
    functionName: dns.quic._sync.SyncQuicStream.__enter__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 89
    functionName: dns.quic._sync.SyncQuicStream.__exit__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._sync.SyncQuicStream.close
    - dns.quic._common.Buffer.put
    - dns.quic._common.BaseQuicStream._close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 6
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - connection
    - address
    - port
    - source
    - source_port
    - manager
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 97
    functionName: dns.quic._sync.SyncQuicConnection.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - threading.Event
    - binascii.unhexlify
    - threading.Lock
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - socket.socketpair
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.super
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.socketpair
    functionSourceFile: socket
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Event
    functionSourceFile: threading
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 116
    functionName: dns.quic._sync.SyncQuicConnection._read
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 127
    functionName: dns.quic._sync.SyncQuicConnection._drain_wakeup
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 8
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 134
    functionName: dns.quic._sync.SyncQuicConnection._worker
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicConnection._handle_timer
    - sel.select
    - dns.quic._common.BaseQuicConnection._get_timer_values
    - <builtin>.isinstance
    - dns.quic._common.BaseQuicConnection.is_h3
    - key.data
    - <builtin>.min
    - time.time
    - selectors.DefaultSelector
    - dns.quic._sync.SyncQuicConnection._handle_events
    - stream._add_input
    - sel.register
    - <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: 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: 168
    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 0x7f970aee8250>
    argNames:
    - self
    - stream
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 210
    functionName: dns.quic._sync.SyncQuicConnection.write
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970b11b670>
    argNames:
    - self
    - stream_id
    - headers
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 215
    functionName: dns.quic._sync.SyncQuicConnection.send_headers
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970b11b970>
    argNames:
    - self
    - stream_id
    - data
    - is_end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 221
    functionName: dns.quic._sync.SyncQuicConnection.send_data
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 227
    functionName: dns.quic._sync.SyncQuicConnection.run
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - threading.Thread
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Thread
    functionSourceFile: threading
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f970a47d400>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 233
    functionName: dns.quic._sync.SyncQuicConnection.make_stream
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._sync.SyncQuicStream.__init__
    - threading.Condition
    - threading.Lock
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 244
    functionName: dns.quic._sync.SyncQuicConnection.close_stream
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 248
    functionName: dns.quic._sync.SyncQuicConnection.close
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970ad98f10>
    - <ast.Attribute object at 0x7f970ad98490>
    - <ast.Constant object at 0x7f970ad98550>
    - <ast.Constant object at 0x7f970ad98760>
    argNames:
    - self
    - conf
    - verify_mode
    - server_name
    - h3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 262
    functionName: dns.quic._sync.SyncQuicManager.__init__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - threading.Lock
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970a4784f0>
    - <ast.Constant object at 0x7f970a4788e0>
    - <ast.Constant object at 0x7f970a478f40>
    - <ast.Constant object at 0x7f970a478340>
    - <ast.Constant object at 0x7f970a478e50>
    argNames:
    - self
    - address
    - port
    - source
    - source_port
    - want_session_ticket
    - want_token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 268
    functionName: dns.quic._sync.SyncQuicManager.connect
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - dns.quic._common.BaseQuicManager._connect
    - binascii.unhexlify
    - copy.copy
    - btext.split
    - dns.inet.low_level_address_tuple
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - socket.getaddrinfo
    - dns.ipv4.inet_aton
    - functools.partial
    - dns.inet.af_for_address
    - address.find
    - btext.endswith
    - scope.isdigit
    - _v4_ending.match
    - time.time
    - <builtin>.len
    - <builtin>.ord
    - aioquic.quic.connection.QuicConnection
    - <builtin>.range
    - socket.if_nametoindex
    - <builtin>.isinstance
    - struct.pack
    - qconn.connect
    - connection.run
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 285
    functionName: dns.quic._sync.SyncQuicManager.closed
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    - ticket
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 289
    functionName: dns.quic._sync.SyncQuicManager.save_session_ticket
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - address
    - port
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 293
    functionName: dns.quic._sync.SyncQuicManager.save_token
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 297
    functionName: dns.quic._sync.SyncQuicManager.__enter__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 300
    functionName: dns.quic._sync.SyncQuicManager.__exit__
    functionSourceFile: dns.quic._sync
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - connection.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: -1
    functionName: dns.e164
    functionSourceFile: dns.e164
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    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 0x7f970a48f940>
    argNames:
    - text
    - origin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 30
    functionName: dns.e164.from_e164
    functionSourceFile: dns.e164
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - parts.reverse
    - <builtin>.ord
    - <builtin>.len
    - d.isdigit
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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 0x7f970a4dd7f0>
    - <ast.Constant object at 0x7f970a4dd100>
    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
    - name.relativize
    - <builtin>.len
    - text.decode
    - d.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dlabels.reverse
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa5aaf0>
    argNames:
    - number
    - domains
    - resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 88
    functionName: dns.e164.query
    functionSourceFile: dns.e164
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - ctypes.cast
    - dns.resolver.BaseResolver.reset
    - dns.win32util._WMIGetter.get
    - dns.name._maybe_convert_to_binary
    - dns.win32util.get_dns_info
    - dns.win32util._Win32Getter.get
    - <builtin>.chr
    - dns.name.Name
    - ctypes.byref
    - socket.gethostname
    - dns.win32util._WMIGetter.__init__
    - text.encode
    - dns.resolver.BaseResolver.use_edns
    - ctypes.POINTER
    - byte_.isdigit
    - dns.win32util._Win32Getter.get.format_ipv6
    - l.split
    - <builtin>.int
    - label.encode
    - <builtin>.list
    - ctypes.WinDLL
    - dns.win32util._RegistryGetter.__init__
    - dns.name.Name.__init__
    - <builtin>.print
    - ctypes.create_string_buffer
    - IPHLPAPI.GetAdaptersAddresses
    - dns.resolver.NXDOMAIN
    - dns.name._validate_labels
    - opt.split
    - ctypes.c_ulong
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - dns.resolver.BaseResolver.__init__
    - parts.reverse
    - <builtin>.ord
    - <builtin>.len
    - dns.resolver.reset_default_resolver
    - d.isdigit
    - <builtin>.map
    - labels.extend
    - dns.resolver.BaseResolver.read_registry
    - dns.win32util._Win32Getter.get.format_ipv4
    - dns.win32util.DnsInfo.__init__
    - dns.name.is_all_ascii
    - <builtin>.range
    - resolver.resolve
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.open
    - labels.append
    - dns.resolver.BaseResolver.read_resolv_conf
    - contextlib.nullcontext
    - <builtin>.tuple
    - nameservers.append
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.resolver.get_default_resolver
    - dns.e164.from_e164
    - c.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: 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 0x7f970aaa5790>
    - <ast.Constant object at 0x7f970aaa5d30>
    - <ast.Constant object at 0x7f970aaa5dc0>
    argNames:
    - self
    - origin
    - rdclass
    - relativize
    - pruning_policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 45
    functionName: dns.versioned.Zone.__init__
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    - dns.versioned.Zone._commit_version_unlocked
    - <builtin>.set
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - collections.deque
    - <builtin>.len
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._prune_versions_unlocked
    - threading.Lock
    - <builtin>.super
    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: 251
    functionName: dns.versioned.Zone._commit_version_unlocked
    functionSourceFile: dns.versioned
    functionUses: 2
    functionsReached:
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._prune_versions_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970afa3460>
    - <ast.Constant object at 0x7f970afa3970>
    argNames:
    - self
    - id
    - serial
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: dns.versioned.Zone.reader
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - n.get_rdataset
    - v.nodes.get
    - typing.cast
    - <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 0x7f970aa42a30>
    argNames:
    - self
    - replacement
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 121
    functionName: dns.versioned.Zone.writer
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - event.wait
    - threading.Event
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: event.wait
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 170
    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: 176
    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: 181
    functionName: dns.versioned.Zone._prune_versions_unlocked
    functionSourceFile: dns.versioned
    functionUses: 6
    functionsReached:
    - dns.versioned.Zone._default_pruning_policy
    - dns.versioned.Zone.set_max_versions.policy
    - <builtin>.min
    - <builtin>.len
    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: 212
    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: 199
    functionName: dns.versioned.Zone.set_max_versions
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - dns.versioned.Zone.set_pruning_policy
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone._prune_versions_unlocked
    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: 217
    functionName: dns.versioned.Zone.set_pruning_policy
    functionSourceFile: dns.versioned
    functionUses: 1
    functionsReached:
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone._prune_versions_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 237
    functionName: dns.versioned.Zone._end_read
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone._prune_versions_unlocked
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - txn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 242
    functionName: dns.versioned.Zone._end_write_unlocked
    functionSourceFile: dns.versioned
    functionUses: 4
    functionsReached:
    - dns.versioned.Zone._maybe_wakeup_one_waiter_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: 3
    functionLinenumber: 247
    functionName: dns.versioned.Zone._end_write
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    - <builtin>.len
    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: 261
    functionName: dns.versioned.Zone._commit_version
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked
    - dns.versioned.Zone.set_max_versions.policy
    - dns.versioned.Zone._commit_version_unlocked
    - dns.versioned.Zone._default_pruning_policy
    - <builtin>.min
    - <builtin>.len
    - dns.versioned.Zone._end_write_unlocked
    - dns.versioned.Zone._prune_versions_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: 265
    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 0x7f970a722160>
    argNames:
    - self
    - name
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 272
    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: 279
    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 0x7f970a6b79a0>
    - <ast.Constant object at 0x7f970a6b74f0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 282
    functionName: dns.versioned.Zone.find_rdataset
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset
    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 0x7f970a6b7d90>
    - <ast.Constant object at 0x7f970a6b7cd0>
    argNames:
    - self
    - name
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 294
    functionName: dns.versioned.Zone.get_rdataset
    functionSourceFile: dns.versioned
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset
    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 0x7f970a455760>
    argNames:
    - self
    - name
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 309
    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: 317
    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:
    - dns.btree._MAX
    - <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: 73
    functionName: dns.btree._Node.is_minimal
    functionSourceFile: dns.btree
    functionUses: 5
    functionsReached:
    - dns.btree._MIN
    - <builtin>.len
    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._get_node
    - dns.btree._Node.search_in_node
    - <builtin>.len
    - child.maybe_cow
    - dns.btree._Node.maybe_cow_child
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - dns.btree._Node.search_in_node
    - <builtin>.len
    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:
    - dns.btree._MAX
    - left.try_right_steal
    - <builtin>.len
    - child.maybe_cow
    - dns.btree._Node.maybe_cow_child
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - dns.btree.Member.key
    - child.insert_nonfull
    - dns.btree._MAX
    - dns.btree._Node.search_in_node
    - child.is_maximal
    - left.try_right_steal
    - dns.btree._Node.adopt
    - <builtin>.len
    - child.maybe_cow
    - dns.btree._Node.is_maximal
    - child.split
    - dns.btree._Node.maybe_cow_child
    - middle.key
    - dns.btree._Node.optimize_in_order_insertion
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - 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:
    - dns.btree._Node.search_in_node
    - dns.btree._MAX
    - <builtin>.len
    - dns.btree._Node.is_maximal
    - middle.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: 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:
    - dns.btree._MAX
    - <builtin>.len
    - dns.btree._MIN
    - <builtin>.list
    - dns.btree._Node.is_maximal
    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.children.pop
    - left.is_minimal
    - parent.maybe_cow_child
    - left.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.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.children.pop
    - right.is_minimal
    - parent.maybe_cow_child
    - <builtin>.len
    - 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:
    - parent.elts.pop
    - left.is_minimal
    - left.elts.pop
    - right.children.pop
    - right.is_minimal
    - parent.maybe_cow_child
    - dns.btree._Node.try_right_steal
    - left.children.pop
    - <builtin>.len
    - left.merge
    - dns.btree._Node.merge
    - right.elts.pop
    - dns.btree._Node.try_left_steal
    - 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: 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.is_minimal
    - child.delete
    - child._get_node
    - least_successor.key
    - dns.btree._Node.search_in_node
    - <builtin>.len
    - dns.btree._MIN
    - dns.btree._Node.is_minimal
    - child.balance
    - child.maybe_cow
    - dns.btree._Node._get_node
    - dns.btree._Node.maybe_cow_child
    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._Node.search_in_node
    - dns.btree.Cursor._seek_least
    - dns.btree.Cursor._adjust_for_before
    - <builtin>.len
    - dns.btree.Cursor.seek
    - dns.btree.Cursor._seek_greatest
    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 0x7f970a9c3520>
    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._Node.search_in_node
    - dns.btree.Cursor._seek_least
    - dns.btree.Cursor._adjust_for_before
    - <builtin>.len
    - dns.btree.Cursor._seek_greatest
    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._maybe_unpark
    - dns.btree._Node.search_in_node
    - dns.btree.Cursor._seek_least
    - dns.btree.Cursor._adjust_for_before
    - <builtin>.len
    - dns.btree.Cursor.seek
    - dns.btree.Cursor._seek_greatest
    - elt.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: 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._maybe_unpark
    - dns.btree._Node.search_in_node
    - dns.btree.Cursor._seek_least
    - dns.btree.Cursor._adjust_for_before
    - <builtin>.len
    - dns.btree.Cursor.seek
    - dns.btree.Cursor._seek_greatest
    - elt.key
    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:
    - dns.btree._Node.__init__
    - <builtin>.set
    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 0x7f970abce400>
    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.BTree._check_mutable_and_park
    - child.is_maximal
    - dns.btree._Node.clone
    - dns.btree._Node.__init__
    - child.split
    - middle.key
    - dns.btree._Node.split
    - dns.btree.Member.key
    - child.insert_nonfull
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.search_in_node
    - <builtin>.list
    - dns.btree._MIN
    - cloned.elts.extend
    - left.try_right_steal
    - dns.btree._Node.adopt
    - <builtin>.len
    - dns.btree._Node.optimize_in_order_insertion
    - dns.btree._MAX
    - dns.btree._Node.insert_nonfull
    - cursor.park
    - child.maybe_cow
    - dns.btree._Node.is_maximal
    - dns.btree._Node.maybe_cow_child
    - cloned.children.extend
    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.search_in_node
    - dns.btree._Node.get
    - <builtin>.len
    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
    - dns.btree.BTree._check_mutable_and_park
    - dns.btree._Node.clone
    - child.balance
    - child.is_minimal
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.search_in_node
    - dns.btree._MIN
    - cloned.elts.extend
    - dns.btree._Node.is_minimal
    - child.delete
    - <builtin>.len
    - child._get_node
    - cursor.park
    - child.maybe_cow
    - dns.btree._Node._get_node
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.delete
    - cloned.children.extend
    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
    - dns.btree.BTree._check_mutable_and_park
    - dns.btree._Node.clone
    - child.balance
    - child.is_minimal
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.search_in_node
    - dns.btree.BTree._delete
    - dns.btree._MIN
    - cloned.elts.extend
    - dns.btree._Node.is_minimal
    - child.delete
    - <builtin>.len
    - child._get_node
    - cursor.park
    - child.maybe_cow
    - dns.btree._Node._get_node
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.delete
    - cloned.children.extend
    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:
    - element.key
    - least_successor.key
    - dns.btree.BTree._check_mutable_and_park
    - dns.btree._Node.clone
    - child.balance
    - child.is_minimal
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.search_in_node
    - dns.btree.BTree._delete
    - dns.btree._MIN
    - cloned.elts.extend
    - dns.btree._Node.is_minimal
    - child.delete
    - <builtin>.len
    - child._get_node
    - cursor.park
    - child.maybe_cow
    - dns.btree._Node._get_node
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.delete
    - 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: 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:
    - dns.btree._Node.visit_in_order
    - <builtin>.enumerate
    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:
    - child._visit_preorder_by_node
    - dns.btree._Node._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:
    - dns.btree.BTree.cursor
    - dns.btree.Cursor.__init__
    - elt.key
    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
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 842
    functionName: dns.btree.BTreeSet.__contains__
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree._Node.search_in_node
    - dns.btree.BTree.get_element
    - dns.btree._Node.get
    - <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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 845
    functionName: dns.btree.BTreeSet.add
    functionSourceFile: dns.btree
    functionUses: 0
    functionsReached:
    - dns.btree.Member.__init__
    - dns.btree.BTree._check_mutable_and_park
    - child.is_maximal
    - dns.btree.BTree.insert_element
    - dns.btree._Node.clone
    - dns.btree._Node.__init__
    - child.split
    - middle.key
    - dns.btree._Node.split
    - dns.btree.Member.key
    - child.insert_nonfull
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.search_in_node
    - dns.btree._MIN
    - <builtin>.list
    - cloned.elts.extend
    - left.try_right_steal
    - dns.btree._Node.adopt
    - <builtin>.len
    - dns.btree._Node.optimize_in_order_insertion
    - dns.btree._MAX
    - dns.btree._Node.insert_nonfull
    - cursor.park
    - child.maybe_cow
    - dns.btree._Node.is_maximal
    - dns.btree._Node.maybe_cow_child
    - cloned.children.extend
    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
    - dns.btree.BTree._check_mutable_and_park
    - dns.btree._Node.clone
    - child.balance
    - dns.btree.BTree.delete_key
    - child.is_minimal
    - dns.btree._Node.maybe_cow
    - dns.btree._Node.search_in_node
    - dns.btree.BTree._delete
    - dns.btree._MIN
    - cloned.elts.extend
    - dns.btree._Node.is_minimal
    - child.delete
    - <builtin>.len
    - child._get_node
    - cursor.park
    - child.maybe_cow
    - dns.btree._Node._get_node
    - dns.btree._Node.maybe_cow_child
    - dns.btree._Node.delete
    - cloned.children.extend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: dns.dnssec
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.dnssec.SimpleDeny.__init__
    - dns._features.have
    - <builtin>.set
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - dns._features._version_check
    - _cache.get
    - itertools.takewhile
    - <builtin>.super
    - _requirements.get
    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: 72
    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: 83
    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: 94
    functionName: dns.dnssec.to_timestamp
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - value.timestamp
    - <builtin>.int
    - <builtin>.len
    - calendar.timegm
    - dns.rdtypes.rrsigbase.sigtime_to_posixtime
    - what.isdigit
    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
    - <builtin>.int
    - what.isdigit
    - calendar.timegm
    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: 108
    functionName: dns.dnssec.key_id
    functionSourceFile: dns.dnssec
    functionUses: 9
    functionsReached:
    - key.to_wire
    - <builtin>.range
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 131
    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: 134
    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: 137
    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: 140
    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: 143
    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: 148
    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: 155
    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: 158
    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: 161
    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: 164
    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 0x7f970b724940>
    - <ast.Constant object at 0x7f970b7249d0>
    - <ast.Constant object at 0x7f970afcce80>
    argNames:
    - name
    - key
    - algorithm
    - origin
    - policy
    - validating
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 181
    functionName: dns.dnssec.make_ds
    functionSourceFile: dns.dnssec
    functionUses: 3
    functionsReached:
    - rdtype_text.replace
    - dns.name.from_unicode
    - dshash.digest
    - dns.rdataclass.to_text
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - <builtin>.chr
    - algorithm.upper
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - dns.dnssec.key_id
    - text.encode
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - hashlib.sha256
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - hashlib.sha1
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - _rdata_classes.get
    - <builtin>.ord
    - RdataClass.to_text
    - <builtin>.len
    - dns.rdatatype.to_text
    - name.canonicalize
    - hashlib.sha384
    - dshash.update
    - labels.extend
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - key.to_wire
    - labels.append
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - typing.cast
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    linkageType: pythonLinkage
    raised:
    - UnsupportedAlgorithm
    - 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: 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 0x7f970a722ca0>
    argNames:
    - name
    - key
    - algorithm
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 258
    functionName: dns.dnssec.make_cds
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - rdtype_text.replace
    - dns.name.from_unicode
    - dshash.digest
    - dns.rdataclass.to_text
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdatatype.RdataType.make
    - dns.name._maybe_convert_to_binary
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - <builtin>.chr
    - algorithm.upper
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - dns.dnssec.key_id
    - text.encode
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdata.get_rdata_class
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - hashlib.sha256
    - importlib.import_module
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - hashlib.sha1
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - _rdata_classes.get
    - <builtin>.ord
    - RdataClass.to_text
    - <builtin>.len
    - dns.rdatatype.to_text
    - name.canonicalize
    - hashlib.sha384
    - dshash.update
    - labels.extend
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - key.to_wire
    - labels.append
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - typing.cast
    - dns.dnssec.make_ds
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    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: 294
    functionName: dns.dnssec._find_candidate_keys
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - dns.dnssec.key_id
    - <builtin>.range
    - <builtin>.isinstance
    - key.to_wire
    - <builtin>.len
    - keys.get
    - typing.cast
    - value.get_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: 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: 314
    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: 323
    functionName: dns.dnssec._validate_signature
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.name._maybe_convert_to_binary
    - contextlib.contextmanager
    - dns.dnssecalgs.get_algorithm_cls
    - dns.name.from_wire
    - parser.get_uint8
    - label.encode
    - <builtin>.int
    - public_key.verify
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.wire.Parser
    - algorithms.get
    - <builtin>.len
    - dns.name.from_wire_parser
    - public_cls.from_dnskey
    - Algorithm.make
    - <builtin>.isinstance
    - parser.restore_furthest
    - labels.append
    - <builtin>.tuple
    - parser.seek
    - parser.get_bytes
    linkageType: pythonLinkage
    raised:
    - ValidationFailure
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - dnskey
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 70
    functionName: dns.dnssecalgs.get_algorithm_cls_from_dnskey
    functionSourceFile: dns.dnssecalgs
    functionUses: 5
    functionsReached:
    - dns.name._maybe_convert_to_binary
    - contextlib.contextmanager
    - dns.dnssecalgs.get_algorithm_cls
    - dns.name.from_wire
    - parser.get_uint8
    - label.encode
    - <builtin>.int
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.wire.Parser
    - algorithms.get
    - <builtin>.len
    - dns.name.from_wire_parser
    - Algorithm.make
    - <builtin>.isinstance
    - parser.restore_furthest
    - labels.append
    - <builtin>.tuple
    - parser.seek
    - parser.get_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: 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 0x7f970a551ee0>
    - <ast.Constant object at 0x7f970a551cd0>
    - <ast.Constant object at 0x7f970a5512e0>
    argNames:
    - rrset
    - rrsig
    - keys
    - origin
    - now
    - policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 333
    functionName: dns.dnssec._validate_rrsig
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.name._maybe_convert_to_binary
    - keys.get
    - <builtin>.chr
    - contextlib.contextmanager
    - rrname.is_wild
    - dns.dnssecalgs.get_algorithm_cls
    - value.get_rdataset
    - rrname.split
    - dns.dnssec.key_id
    - dns.dnssec.SimpleDeny.ok_to_validate
    - text.encode
    - dns.name.from_wire
    - byte_.isdigit
    - parser.get_uint8
    - rdata.to_digestable
    - label.encode
    - <builtin>.int
    - rrsig.to_wire
    - <builtin>.list
    - rrname.derelativize
    - public_key.verify
    - signer.derelativize
    - dns.name.Name.__init__
    - dns.dnssec._validate_signature
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - algorithms.get
    - dns.dnssec._make_rrsig_signature_data
    - rrname.is_absolute
    - dns.name.from_wire_parser
    - rrsig.signer.to_digestable
    - public_cls.from_dnskey
    - labels.extend
    - Algorithm.make
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - parser.restore_furthest
    - <builtin>.sorted
    - key.to_wire
    - labels.append
    - dns.dnssec._find_candidate_keys
    - dns.dnssec._get_rrname_rdataset
    - rrname.to_digestable
    - parser.seek
    - typing.cast
    - encodings.idna.ToASCII
    - parser.get_bytes
    - <builtin>.tuple
    - signer.is_absolute
    - c.isdigit
    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 0x7f970a478160>
    argNames:
    - rrset
    - rrsig
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 603
    functionName: dns.dnssec._make_rrsig_signature_data
    functionSourceFile: dns.dnssec
    functionUses: 4
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - rrname.is_wild
    - rrname.split
    - text.encode
    - byte_.isdigit
    - rdata.to_digestable
    - label.encode
    - <builtin>.int
    - rrsig.to_wire
    - <builtin>.list
    - rrname.derelativize
    - signer.derelativize
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - rrname.is_absolute
    - rrsig.signer.to_digestable
    - labels.extend
    - dns.name.is_all_ascii
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.sorted
    - labels.append
    - <builtin>.tuple
    - dns.dnssec._get_rrname_rdataset
    - rrname.to_digestable
    - encodings.idna.ToASCII
    - signer.is_absolute
    - c.isdigit
    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 0x7f970b74ef40>
    - <ast.Constant object at 0x7f970b74ea30>
    - <ast.Constant object at 0x7f970b74eeb0>
    argNames:
    - rrset
    - rrsigset
    - keys
    - origin
    - now
    - policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 403
    functionName: dns.dnssec._validate
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.name._maybe_convert_to_binary
    - keys.get
    - <builtin>.chr
    - contextlib.contextmanager
    - rrname.is_wild
    - dns.dnssecalgs.get_algorithm_cls
    - dns.dnssec._validate_rrsig
    - value.get_rdataset
    - rrname.split
    - dns.dnssec.key_id
    - dns.dnssec.SimpleDeny.ok_to_validate
    - text.encode
    - dns.name.from_wire
    - byte_.isdigit
    - parser.get_uint8
    - rdata.to_digestable
    - label.encode
    - <builtin>.int
    - rrsig.to_wire
    - <builtin>.list
    - rrname.derelativize
    - public_key.verify
    - signer.derelativize
    - dns.name.Name.__init__
    - dns.dnssec._validate_signature
    - rrname.choose_relativity
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - algorithms.get
    - dns.dnssec._make_rrsig_signature_data
    - rrname.is_absolute
    - rrsigname.choose_relativity
    - dns.name.from_wire_parser
    - rrsig.signer.to_digestable
    - public_cls.from_dnskey
    - labels.extend
    - Algorithm.make
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.sorted
    - parser.restore_furthest
    - key.to_wire
    - labels.append
    - dns.dnssec._find_candidate_keys
    - dns.dnssec._get_rrname_rdataset
    - rrname.to_digestable
    - encodings.idna.ToASCII
    - parser.seek
    - typing.cast
    - parser.get_bytes
    - <builtin>.tuple
    - signer.is_absolute
    - c.isdigit
    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 0x7f970b78b790>
    - <ast.Constant object at 0x7f970b78bb50>
    - <ast.Constant object at 0x7f970b78bd30>
    - <ast.Constant object at 0x7f970b78b9d0>
    - <ast.Constant object at 0x7f970b78b7c0>
    - <ast.Constant object at 0x7f970b78b220>
    - <ast.Constant object at 0x7f970b78b040>
    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: 476
    functionName: dns.dnssec._sign
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - dns.name.from_unicode
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - contextlib.contextmanager
    - rrname.is_wild
    - dns.rdtypes.rrsigbase.sigtime_to_posixtime
    - dns.dnssecalgs.get_algorithm_cls
    - dns.dnssec.to_timestamp
    - rrname.split
    - dns.dnssec.key_id
    - text.encode
    - dns.name.from_wire
    - byte_.isdigit
    - parser.get_uint8
    - rdata.to_digestable
    - label.encode
    - <builtin>.int
    - rrsig.to_wire
    - <builtin>.list
    - rrname.derelativize
    - signer.derelativize
    - dns.dnssec.SimpleDeny.ok_to_sign
    - what.isdigit
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - value.timestamp
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - algorithms.get
    - dns.dnssec._make_rrsig_signature_data
    - rrname.is_absolute
    - dns.name.from_wire_parser
    - calendar.timegm
    - rrsig.signer.to_digestable
    - signing_key.sign
    - labels.extend
    - Algorithm.make
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - parser.restore_furthest
    - <builtin>.sorted
    - key.to_wire
    - labels.append
    - <builtin>.tuple
    - dns.dnssec._get_rrname_rdataset
    - rrname.to_digestable
    - parser.seek
    - typing.cast
    - encodings.idna.ToASCII
    - parser.get_bytes
    - signer.is_absolute
    - c.isdigit
    - rrsig_template.replace
    linkageType: pythonLinkage
    raised:
    - TypeError
    - 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: 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 0x7f970b0001f0>
    - <ast.Constant object at 0x7f970b000940>
    argNames:
    - public_key
    - algorithm
    - flags
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 670
    functionName: dns.dnssec._make_dnskey
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - algorithms.get
    - public_key.to_dnskey
    - dns.dnssecalgs.get_algorithm_cls
    - 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 0x7f970b7246d0>
    argNames:
    - algorithm
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: dns.dnssecalgs.get_algorithm_cls
    functionSourceFile: dns.dnssecalgs
    functionUses: 8
    functionsReached:
    - Algorithm.make
    - algorithms.get
    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 0x7f970b11bf70>
    - <ast.Constant object at 0x7f970b11b190>
    argNames:
    - public_key
    - algorithm
    - flags
    - protocol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 705
    functionName: dns.dnssec._make_cdnskey
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - algorithms.get
    - public_key.to_dnskey
    - dns.dnssec._make_dnskey
    - dns.dnssecalgs.get_algorithm_cls
    - 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: 743
    functionName: dns.dnssec.nsec3_hash
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - domain.canonicalize
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - algorithm.upper
    - str.maketrans
    - text.encode
    - base64.b32encode
    - bytes.fromhex
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - hashlib.sha1
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - output.translate
    - c.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: 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 0x7f970acdb820>
    argNames:
    - rrset
    - algorithms
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 804
    functionName: dns.dnssec.make_ds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - rdtype_text.replace
    - dns.name.from_unicode
    - c.lower
    - dshash.digest
    - <builtin>.set
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataclass.to_text
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - dns.dnssec.make_cds
    - <builtin>.chr
    - algorithm.upper
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - dns.dnssec.key_id
    - text.encode
    - res.append
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - dns.dnssec.dnskey_rdataset_to_cds_rdataset
    - <builtin>.int
    - <builtin>.list
    - RdataType.to_text
    - dns.rdata.get_rdata_class
    - dns.ttl.make
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - hashlib.sha256
    - _algorithms.add
    - dns.rdata.GenericRdata.from_wire_parser
    - dns.rdataset.ImmutableRdataset.add
    - dns.ttl.from_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - hashlib.sha1
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdataset.from_rdata_list
    - res.extend
    - <builtin>.ord
    - <builtin>.len
    - RdataClass.to_text
    - _rdata_classes.get
    - dns.rdatatype.to_text
    - name.canonicalize
    - hashlib.sha384
    - dshash.update
    - text.isdigit
    - labels.extend
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - key.to_wire
    - labels.append
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - dns.dnssec._get_rrname_rdataset
    - dns.dnssec.cds_rdataset_to_ds_rdataset
    - typing.cast
    - dns.dnssec.make_ds
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - dns.rdataset.ImmutableRdataset.update_ttl
    linkageType: pythonLinkage
    raised:
    - UnsupportedAlgorithm
    - 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: _algorithms.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdataset
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 862
    functionName: dns.dnssec.cds_rdataset_to_ds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - c.lower
    - dns.rdataset.ImmutableRdataset.add
    - res.append
    - dns.ttl.from_text
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.from_rdata_list
    - <builtin>.int
    - <builtin>.len
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    - 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 0x7f970a4484c0>
    argNames:
    - name
    - rdataset
    - algorithm
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 891
    functionName: dns.dnssec.dnskey_rdataset_to_cds_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - rdtype_text.replace
    - dns.name.from_unicode
    - c.lower
    - dshash.digest
    - dns.rdataset.Rdataset.update_ttl
    - dns.dnssec.SimpleDeny.ok_to_create_ds
    - dns.rdataclass.to_text
    - dns.rdatatype.RdataType.make
    - dns.rdataset.Rdataset.__init__
    - dns.name._maybe_convert_to_binary
    - dns.dnssec.SimpleDeny.ok_to_validate_ds
    - dns.dnssec.make_cds
    - <builtin>.chr
    - algorithm.upper
    - contextlib.contextmanager
    - dns.exception.ExceptionWrapper
    - parser.get_remaining
    - dns.dnssec.key_id
    - text.encode
    - res.append
    - byte_.isdigit
    - dns.rdata.GenericRdata.__init__
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.rdata.get_rdata_class
    - dns.ttl.make
    - dns.rdataclass.RdataClass.make
    - dns.name.Name.__init__
    - importlib.import_module
    - hashlib.sha256
    - dns.rdata.GenericRdata.from_wire_parser
    - RdataType.to_text
    - dns.rdataset.ImmutableRdataset.add
    - dns.ttl.from_text
    - dns.name._validate_labels
    - dns.wire.Parser
    - hashlib.sha1
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - dns.rdataset.from_rdata_list
    - <builtin>.ord
    - RdataClass.to_text
    - <builtin>.len
    - _rdata_classes.get
    - dns.rdatatype.to_text
    - name.canonicalize
    - hashlib.sha384
    - dshash.update
    - text.isdigit
    - labels.extend
    - parser.restrict_to
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.getattr
    - key.to_wire
    - labels.append
    - dns.rdata.from_wire_parser
    - <builtin>.tuple
    - typing.cast
    - dns.dnssec.make_ds
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdata.from_wire
    - c.isdigit
    - 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.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - rdataset
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 924
    functionName: dns.dnssec.dnskey_rdataset_to_cdnskey_rdataset
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - c.lower
    - dns.rdataset.ImmutableRdataset.add
    - res.append
    - dns.ttl.from_text
    - <builtin>.isinstance
    - dns.rdataset.Rdataset.update_ttl
    - dns.rdataset.from_rdata_list
    - <builtin>.int
    - <builtin>.len
    - dns.rdataset.Rdataset.__init__
    - <builtin>.super
    - dns.ttl.make
    - text.isdigit
    - c.isdigit
    - 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 0x7f970a5ce520>
    - <ast.Constant object at 0x7f970a5ce8b0>
    - <ast.Constant object at 0x7f970a5ceac0>
    - <ast.Constant object at 0x7f970a5cec10>
    - <ast.Constant object at 0x7f970a5ce6d0>
    - <ast.Constant object at 0x7f970a5ce400>
    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: 951
    functionName: dns.dnssec.default_rrset_signer
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - <builtin>.set
    - dns.dnssecalgs.get_algorithm_cls_from_dnskey
    - dns.name._maybe_convert_to_binary
    - dns.dnssec._sign
    - <builtin>.chr
    - contextlib.contextmanager
    - rrname.is_wild
    - dns.rdtypes.rrsigbase.sigtime_to_posixtime
    - dns.dnssecalgs.get_algorithm_cls
    - dns.dnssec.to_timestamp
    - rrname.split
    - dns.dnssec.key_id
    - text.encode
    - dns.name.from_wire
    - byte_.isdigit
    - parser.get_uint8
    - rdata.to_digestable
    - label.encode
    - <builtin>.int
    - rrsig.to_wire
    - <builtin>.list
    - rrname.derelativize
    - signer.derelativize
    - dns.dnssec.SimpleDeny.ok_to_sign
    - what.isdigit
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.wire.Parser
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - value.timestamp
    - <builtin>.ord
    - time.time
    - <builtin>.len
    - algorithms.get
    - dns.dnssec._make_rrsig_signature_data
    - rrname.is_absolute
    - dns.name.from_wire_parser
    - calendar.timegm
    - rrsig.signer.to_digestable
    - signing_key.sign
    - labels.extend
    - Algorithm.make
    - txn.add
    - dns.name.is_all_ascii
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - parser.restore_furthest
    - <builtin>.sorted
    - key.to_wire
    - dns.dnssec._need_pyca
    - labels.append
    - <builtin>.tuple
    - dns.dnssec._get_rrname_rdataset
    - rrname.to_digestable
    - parser.seek
    - typing.cast
    - encodings.idna.ToASCII
    - parser.get_bytes
    - signer.is_absolute
    - c.isdigit
    - rrsig_template.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1187
    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 0x7f970af594c0>
    - <ast.Constant object at 0x7f970af59490>
    - <ast.Constant object at 0x7f970af59700>
    - <ast.Constant object at 0x7f970af59760>
    - <ast.Constant object at 0x7f970af59640>
    - <ast.Constant object at 0x7f970af59670>
    - <ast.Constant object at 0x7f970af59220>
    - <ast.Constant object at 0x7f970af59b80>
    - <ast.Constant object at 0x7f970af59550>
    - <ast.Constant object at 0x7f970af59850>
    - <ast.Constant object at 0x7f970af596d0>
    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: 993
    functionName: dns.dnssec.sign_zone
    functionSourceFile: dns.dnssec
    functionUses: 0
    functionsReached:
    - name.is_subdomain
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - <builtin>.set
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - text.encode
    - Bitmap.from_rdtypes
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - _txn.add
    - <builtin>.int
    - <builtin>.list
    - txn.get_node
    - dns.dnssec._sign_zone_nsec._txn_add_nsec
    - ksks.append
    - dns.name.Name.__init__
    - functools.partial
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - txn.get
    - zone.get_soa
    - txn.iterate_names
    - _txn.get
    - labels.extend
    - txn.add
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - dns.dnssec._sign_zone_nsec
    - <builtin>.sorted
    - labels.append
    - contextlib.nullcontext
    - <builtin>.tuple
    - zsks.append
    - typing.cast
    - dns.rrset.RRset.__init__
    - zone.writer
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    - 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: 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 0x7f970a26fac0>
    argNames:
    - zone
    - txn
    - rrset_signer
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1108
    functionName: dns.dnssec._sign_zone_nsec
    functionSourceFile: dns.dnssec
    functionUses: 1
    functionsReached:
    - name.is_subdomain
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - <builtin>.set
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - r.add
    - Bitmap.from_rdtypes
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - txn.get_node
    - dns.dnssec._sign_zone_nsec._txn_add_nsec
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - txn.get
    - zone.get_soa
    - txn.iterate_names
    - labels.extend
    - txn.add
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.sorted
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - c.isdigit
    - dns.rdtypes.ANY.NSEC.NSEC.__init__
    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 0x7f970a5a9dc0>
    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: 1115
    functionName: dns.dnssec._sign_zone_nsec._txn_add_nsec
    functionSourceFile: dns.dnssec
    functionUses: 2
    functionsReached:
    - dns.name.from_unicode
    - dns.rrset.from_rdata
    - <builtin>.set
    - r.update_ttl
    - dns.name._maybe_convert_to_binary
    - c.isdigit
    - <builtin>.chr
    - r.add
    - Bitmap.from_rdtypes
    - text.encode
    - dns.rrset.from_rdata_list
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - txn.get_node
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - txn.add
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - typing.cast
    - dns.rrset.RRset.__init__
    - encodings.idna.ToASCII
    - <builtin>.super
    - dns.rdtypes.ANY.NSEC.NSEC.__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: 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>.tuple
    - <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: zone.get_soa
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: txn.iterate_names
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.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.DSDigest.make
    - <builtin>.super
    - <builtin>.len
    - dns.dnssectypes.Algorithm.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.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: 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 0x7f970a5b0b80>
    - <ast.Constant object at 0x7f970a5b03a0>
    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:
    - dns.rdata._hexify
    - <builtin>.range
    - data.decode
    - kw.pop
    - <builtin>.len
    - separator.join
    - kw.copy
    - binascii.hexlify
    - dns.rdata._wordbreak
    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 0x7f970ad9c490>
    - <ast.Constant object at 0x7f970ad9c670>
    - <ast.Constant object at 0x7f970ad9cca0>
    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:
    - dns.dnssectypes.DSDigest.make
    - tok.get_uint16
    - tok.get_string
    - tok.get_uint8
    - <builtin>.len
    - binascii.unhexlify
    - dns.dnssectypes.Algorithm.make
    - <builtin>.super
    - tok.concatenate_remaining_identifiers
    - dns.rdtypes.dsbase.DSBase.__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 0x7f970b7874c0>
    - <ast.Constant object at 0x7f970b787910>
    - <ast.Constant object at 0x7f970b787580>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 74
    functionName: dns.rdtypes.dsbase.DSBase._to_wire
    functionSourceFile: dns.rdtypes.dsbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970afbb8e0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 80
    functionName: dns.rdtypes.dsbase.DSBase.from_wire_parser
    functionSourceFile: dns.rdtypes.dsbase
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.dnssectypes.DSDigest.make
    - <builtin>.len
    - dns.rdtypes.dsbase.DSBase.__init__
    - parser.get_struct
    - dns.dnssectypes.Algorithm.make
    - <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.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.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:
    - enum.IntFlag.__init__
    - <builtin>.super
    - dns.dnssectypes.Algorithm.make
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970a68bb20>
    - <ast.Constant object at 0x7f970a68b100>
    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:
    - base64.b64encode
    - <builtin>.range
    - dns.rdata._base64ify
    - data.decode
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    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 0x7f970a68b280>
    - <ast.Constant object at 0x7f970a68b850>
    - <ast.Constant object at 0x7f970a68b1f0>
    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_uint16
    - tok.get_string
    - enum.IntFlag.__init__
    - tok.get_uint8
    - base64.b64decode
    - dns.rdtypes.dnskeybase.DNSKEYBase.__init__
    - dns.dnssectypes.Algorithm.make
    - 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 0x7f970afbb6d0>
    - <ast.Constant object at 0x7f970afbbb20>
    - <ast.Constant object at 0x7f970afbb4c0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: dns.rdtypes.dnskeybase.DNSKEYBase._to_wire
    functionSourceFile: dns.rdtypes.dnskeybase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970afbb880>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 71
    functionName: dns.rdtypes.dnskeybase.DNSKEYBase.from_wire_parser
    functionSourceFile: dns.rdtypes.dnskeybase
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - enum.IntFlag.__init__
    - dns.rdtypes.dnskeybase.DNSKEYBase.__init__
    - parser.get_struct
    - dns.dnssectypes.Algorithm.make
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970ad9c670>
    - <ast.Constant object at 0x7f970ad9cca0>
    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 0x7f970ad9c5b0>
    - <ast.Constant object at 0x7f970ad9c790>
    - <ast.Constant object at 0x7f970ad9c1f0>
    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
    - <builtin>.isinstance
    - Bitmap.from_text
    - <builtin>.tuple
    - <builtin>.super
    - dns.rdtypes.ANY.NSEC.NSEC.__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: 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 0x7f970a5b0c40>
    - <ast.Constant object at 0x7f970a5b0160>
    - <ast.Constant object at 0x7f970a5b0550>
    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 0x7f970a5b05b0>
    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:
    - <builtin>.isinstance
    - Bitmap.from_wire_parser
    - <builtin>.tuple
    - parser.get_name
    - <builtin>.super
    - dns.rdtypes.ANY.NSEC.NSEC.__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: 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.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.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 0x7f970a68bd60>
    - <ast.Constant object at 0x7f970a68bb50>
    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:
    - pn.x.to_bytes
    - int.bit_length
    - pn.n.to_bytes
    - struct.pack
    - dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes
    - pn.parameter_numbers.q.to_bytes
    - pn.y.to_bytes
    - int.to_bytes
    - dns.dnssecalgs.ecdsa.PublicECDSA.encode_key_bytes
    - pn.parameter_numbers.g.to_bytes
    - dns.dnssecalgs.dsa.PublicDSA.encode_key_bytes
    - dns.dnssecalgs.rsa.PublicRSA.encode_key_bytes
    - math.ceil
    - pn.n.bit_length
    - pn.parameter_numbers.p.to_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 26
    functionName: dns.dnssecalgs.ecdsa.PublicECDSA.encode_key_bytes
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 1
    functionsReached:
    - pn.x.to_bytes
    - pn.y.to_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 15
    functionName: dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: dns.dnssecalgs.rsa.PublicRSA.encode_key_bytes
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 1
    functionsReached:
    - int.bit_length
    - pn.n.to_bytes
    - struct.pack
    - int.to_bytes
    - math.ceil
    - pn.n.bit_length
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 26
    functionName: dns.dnssecalgs.dsa.PublicDSA.encode_key_bytes
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 1
    functionsReached:
    - struct.pack
    - pn.parameter_numbers.q.to_bytes
    - pn.y.to_bytes
    - pn.parameter_numbers.g.to_bytes
    - pn.parameter_numbers.p.to_bytes
    linkageType: pythonLinkage
    raised:
    - ValueError
    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 0x7f970afbb640>
    - <ast.Constant object at 0x7f970afbb9a0>
    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 0x7f970afbb820>
    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 0x7f970afbb400>
    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.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.strftime
    - time.gmtime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.gmtime
    functionSourceFile: time
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.strftime
    functionSourceFile: time
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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:
    - <builtin>.super
    - dns.dnssectypes.Algorithm.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: 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 0x7f970aaa56a0>
    - <ast.Constant object at 0x7f970aaa5d60>
    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:
    - base64.b64encode
    - <builtin>.range
    - RdataType.to_text
    - dns.rdata._base64ify
    - data.decode
    - <builtin>.len
    - separator.join
    - time.strftime
    - dns.rdtypes.rrsigbase.posixtime_to_sigtime
    - dns.rdata._wordbreak
    - dns.rdatatype.to_text
    - time.gmtime
    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 0x7f970a455790>
    - <ast.Constant object at 0x7f970a455040>
    - <ast.Constant object at 0x7f970a4553d0>
    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:
    - tok.get_ttl
    - tok.get_name
    - dns.rdatatype.from_text
    - tok.get_string
    - dns.rdtypes.rrsigbase.RRSIGBase.__init__
    - dns.rdtypes.rrsigbase.sigtime_to_posixtime
    - dns.dnssectypes.Algorithm.make
    - tok.get_int
    - <builtin>.int
    - <builtin>.len
    - base64.b64decode
    - dns.dnssectypes.Algorithm.from_text
    - calendar.timegm
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - what.isdigit
    - RdataType.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssectypes.Algorithm.from_text
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a6b7700>
    - <ast.Constant object at 0x7f970a6b78e0>
    - <ast.Constant object at 0x7f970a6b7100>
    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:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a722f10>
    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_remaining
    - dns.dnssectypes.Algorithm.make
    - parser.get_name
    - parser.get_struct
    - dns.rdtypes.rrsigbase.RRSIGBase.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.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 0x7f970b78fe20>
    - <ast.Constant object at 0x7f970b78ffa0>
    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 0x7f970a722370>
    - <ast.Constant object at 0x7f970a722b50>
    - <ast.Constant object at 0x7f970a722340>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 47
    functionName: dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.from_text
    functionSourceFile: dns.rdtypes.ANY.NSEC3PARAM
    functionUses: 0
    functionsReached:
    - tok.get_uint16
    - tok.get_string
    - tok.get_uint8
    - dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.__init__
    - binascii.unhexlify
    - <builtin>.super
    - salt.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: 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 0x7f970a6b7e50>
    - <ast.Constant object at 0x7f970a6b7b80>
    - <ast.Constant object at 0x7f970a6b7280>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM._to_wire
    functionSourceFile: dns.rdtypes.ANY.NSEC3PARAM
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a6b7eb0>
    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_counted_bytes
    - <builtin>.super
    - parser.get_struct
    - dns.rdtypes.ANY.NSEC3PARAM.NSEC3PARAM.__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: 4
    functionLinenumber: -1
    functionName: dns.dnssecalgs
    functionSourceFile: dns.dnssecalgs
    functionUses: 0
    functionsReached:
    - dns._features.have
    - dns._features._tuple_from_text
    - <builtin>.int
    - importlib.metadata.version
    - <builtin>.tuple
    - int_parts.append
    - version.split
    - requirement.split
    - dns._features._version_check
    - _cache.get
    - itertools.takewhile
    - algorithms.update
    - _requirements.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: 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 0x7f970aa42ac0>
    - <ast.Constant object at 0x7f970aa42850>
    argNames:
    - algorithm
    - algorithm_cls
    - name
    - oid
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 88
    functionName: dns.dnssecalgs.register_algorithm_cls
    functionSourceFile: dns.dnssecalgs
    functionUses: 0
    functionsReached:
    - dns.name.from_unicode
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - text.encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.from_text
    - dns.name.IDNA2003Codec.encode
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.bytes
    - labels.extend
    - Algorithm.make
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.issubclass
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.isdigit
    linkageType: pythonLinkage
    raised:
    - TypeError
    - 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.dnssecalgs.eddsa
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 12
    functionName: dns.dnssecalgs.eddsa.PublicEDDSA.verify
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 22
    functionName: dns.dnssecalgs.eddsa.PublicEDDSA.from_dnskey
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey.from_public_bytes
    - <builtin>.isinstance
    - abc.ABC.key_cls.from_public_bytes
    - 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
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey.from_public_bytes
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: abc.ABC.key_cls.from_public_bytes
    functionSourceFile: abc
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.asymmetric.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.ec.EllipticCurvePublicKey.from_public_bytes
    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 0x7f970afe5a90>
    - <ast.Constant object at 0x7f970afe5f70>
    argNames:
    - self
    - data
    - verify
    - deterministic
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 32
    functionName: dns.dnssecalgs.eddsa.PrivateEDDSA.sign
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached:
    - int.from_bytes
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - abc.ABC.public_cls
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 4
    functionsReached:
    - abc.ABC.public_cls
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 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:
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - int.from_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 18
    functionName: dns.dnssecalgs.ecdsa.PublicECDSA.verify
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 4
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - int.from_bytes
    - 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: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 45
    functionName: dns.dnssecalgs.eddsa.PrivateEDDSA.generate
    functionSourceFile: dns.dnssecalgs.eddsa
    functionUses: 0
    functionsReached:
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAPrivateKey.generate
    - abc.ABC.key_cls.generate
    - cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey.generate
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey.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: abc.ABC.key_cls.generate
    functionSourceFile: abc
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssecalgs.cryptography
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - public_pem
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 23
    functionName: dns.dnssecalgs.cryptography.CryptographyPublicKey.from_pem
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.serialization.load_pem_public_key
    - <builtin>.isinstance
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.serialization.load_pem_public_key
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 27
    functionName: dns.dnssecalgs.cryptography.CryptographyPublicKey.to_pem
    functionSourceFile: dns.dnssecalgs.cryptography
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: abc.ABC.public_cls
    functionSourceFile: abc
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f970b724cd0>
    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:
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - <builtin>.isinstance
    - 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 0x7f970aed5430>
    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.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: 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.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: 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: 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: 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: 41
    functionName: dns.dnssecalgs.dsa.PublicDSA.from_dnskey
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 0
    functionsReached:
    - struct.unpack
    - int.from_bytes
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAPublicNumbers
    - cryptography.hazmat.backends.default_backend
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - cryptography.hazmat.primitives.asymmetric.dsa.DSAParameterNumbers
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.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.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 0x7f970aebefd0>
    - <ast.Constant object at 0x7f970aebe3a0>
    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:
    - cryptography.hazmat.primitives.asymmetric.utils.decode_dss_signature
    - int.from_bytes
    - struct.pack
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - int.to_bytes
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - abc.ABC.public_cls
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    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: 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: 2
    argDefaultValues: []
    argNames:
    - cls
    - key_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 97
    functionName: dns.dnssecalgs.dsa.PrivateDSA.generate
    functionSourceFile: dns.dnssecalgs.dsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.dsa.generate_private_key
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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.ecdsa
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.asymmetric.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: 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:
    - int.from_bytes
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicNumbers
    - cryptography.hazmat.backends.default_backend
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicNumbers
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970aec74f0>
    - <ast.Constant object at 0x7f970aec78b0>
    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:
    - cryptography.hazmat.primitives.asymmetric.utils.decode_dss_signature
    - int.from_bytes
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - int.to_bytes
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - abc.ABC.public_cls
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    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.backends.default_backend
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.ec.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.ec.generate_private_key
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.hashes.SHA256
    functionSourceFile: cryptography
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.dnssecalgs.ecdsa.PublicECDSAP256SHA256
    functionSourceFile: dns.dnssecalgs.ecdsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.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.asymmetric.ec.SECP384R1
    - cryptography.hazmat.primitives.hashes.SHA384
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.asymmetric.ec.SECP384R1
    functionSourceFile: cryptography
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.dnssecalgs.rsa
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    functionSourceFile: cryptography
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: int.bit_length
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pn.n.bit_length
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pn.n.to_bytes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 36
    functionName: dns.dnssecalgs.rsa.PublicRSA.from_dnskey
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - struct.unpack
    - cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicNumbers
    - int.from_bytes
    - <builtin>.isinstance
    - cryptography.hazmat.backends.default_backend
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.asymmetric.rsa.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 0x7f970a4556d0>
    - <ast.Constant object at 0x7f970a4554f0>
    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:
    - int.from_bytes
    - <builtin>.isinstance
    - cryptography.hazmat.primitives.asymmetric.ec.ECDSA
    - dns.dnssecalgs.ecdsa.PublicECDSA.verify
    - dns.dnssecalgs.rsa.PublicRSA.verify
    - cryptography.hazmat.primitives.asymmetric.utils.encode_dss_signature
    - abc.ABC.public_cls
    - dns.dnssecalgs.dsa.PublicDSA.verify
    - dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__
    - cryptography.hazmat.primitives.asymmetric.padding.PKCS1v15
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - key_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 74
    functionName: dns.dnssecalgs.rsa.PrivateRSA.generate
    functionSourceFile: dns.dnssecalgs.rsa
    functionUses: 0
    functionsReached:
    - cryptography.hazmat.primitives.asymmetric.rsa.generate_private_key
    - dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__
    - <builtin>.isinstance
    - 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: 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.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.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 0x7f970a6204f0>
    argNames:
    - self
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: dns.btreezone.Node.__init__
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - enum.IntFlag.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 48
    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: 51
    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: 54
    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: 57
    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: 63
    functionName: dns.btreezone.ImmutableNode.__init__
    functionSourceFile: dns.btreezone
    functionUses: 1
    functionsReached:
    - <builtin>.tuple
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset
    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 0x7f970ad85e80>
    - <ast.Constant object at 0x7f970aabe760>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    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 0x7f970aabe430>
    - <ast.Constant object at 0x7f970aabee20>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    - create
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    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 0x7f970aa4fb20>
    argNames:
    - self
    - rdclass
    - rdtype
    - covers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 93
    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: 101
    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: 104
    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: 109
    functionName: dns.btreezone.Delegations.get_delegation
    functionSourceFile: dns.btreezone
    functionUses: 4
    functionsReached:
    - cursor.seek
    - prev.key
    - name.fullcompare
    - cursor.prev
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 130
    functionName: dns.btreezone.Delegations.is_glue
    functionSourceFile: dns.btreezone
    functionUses: 3
    functionsReached:
    - name.fullcompare
    - cursor.seek
    - cursor.prev
    - prev.key
    - dns.btreezone.Delegations.get_delegation
    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 0x7f970a687490>
    argNames:
    - self
    - zone
    - replacement
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 141
    functionName: dns.btreezone.WritableVersion.__init__
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - dns.btree.BTreeDict
    - <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: 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: 153
    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: 161
    functionName: dns.btreezone.WritableVersion._maybe_cow_with_name
    functionSourceFile: dns.btreezone
    functionUses: 2
    functionsReached:
    - name.fullcompare
    - dns.btreezone.Delegations.is_glue
    - cursor.seek
    - prev.key
    - cursor.prev
    - dns.btreezone.Delegations.get_delegation
    - typing.cast
    - dns.btreezone.WritableVersion._is_origin
    - <builtin>.super
    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: 172
    functionName: dns.btreezone.WritableVersion.update_glue_flag
    functionSourceFile: dns.btreezone
    functionUses: 3
    functionsReached:
    - elt.value
    - <builtin>.isinstance
    - cursor.seek
    - ename.is_subdomain
    - updates.append
    - cursor.next
    - typing.cast
    - elt.key
    - new_node.rdatasets.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: 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: 203
    functionName: dns.btreezone.WritableVersion.delete_node
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - dns.btreezone.WritableVersion.update_glue_flag
    - elt.value
    - <builtin>.isinstance
    - cursor.seek
    - new_node.rdatasets.extend
    - ename.is_subdomain
    - updates.append
    - cursor.next
    - typing.cast
    - elt.key
    - node.is_delegation
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 213
    functionName: dns.btreezone.WritableVersion.put_rdataset
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - dns.btreezone.WritableVersion._is_origin
    - node.replace_rdataset
    - elt.value
    - cursor.prev
    - prev.key
    - dns.btreezone.WritableVersion.update_glue_flag
    - name.fullcompare
    - cursor.seek
    - updates.append
    - cursor.next
    - elt.key
    - <builtin>.isinstance
    - dns.btreezone.Delegations.is_glue
    - ename.is_subdomain
    - dns.btreezone.Delegations.get_delegation
    - typing.cast
    - <builtin>.super
    - dns.btreezone.WritableVersion._maybe_cow_with_name
    - new_node.rdatasets.extend
    - node.is_origin_or_glue
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 226
    functionName: dns.btreezone.WritableVersion.delete_rdataset
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - dns.btreezone.WritableVersion._is_origin
    - elt.value
    - cursor.prev
    - prev.key
    - dns.btreezone.WritableVersion.update_glue_flag
    - name.fullcompare
    - cursor.seek
    - <builtin>.len
    - cursor.next
    - node.delete_rdataset
    - updates.append
    - elt.key
    - <builtin>.isinstance
    - dns.btreezone.Delegations.is_glue
    - ename.is_subdomain
    - dns.btreezone.Delegations.get_delegation
    - typing.cast
    - <builtin>.super
    - dns.btreezone.WritableVersion._maybe_cow_with_name
    - new_node.rdatasets.extend
    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: 251
    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: 268
    functionName: dns.btreezone.ImmutableVersion.__init__
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - version.nodes.get
    - <builtin>.isinstance
    - typing.cast.make_immutable
    - <builtin>.tuple
    - typing.cast
    - dns.btreezone.ImmutableNode.__init__
    - <builtin>.super
    - dns.rdataset.ImmutableRdataset
    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: 287
    functionName: dns.btreezone.ImmutableVersion.bounds
    functionSourceFile: dns.btreezone
    functionUses: 0
    functionsReached:
    - c.next
    - typing.cast.cursor
    - left.key
    - c.prev
    - right.key
    - <builtin>.len
    - right.value
    - typing.cast
    - right_key.fullcompare
    - dns.name.Name
    - c.seek
    - <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: 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 0x7f970a6369a0>
    - <ast.Constant object at 0x7f970a636430>
    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 0x7f970a636a00>
    - <ast.Constant object at 0x7f970a636310>
    - <ast.Constant object at 0x7f970a636100>
    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:
    - dns.rdtypes.mxbase.MXBase.__init__
    - tok.get_name
    - <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 0x7f970a636880>
    - <ast.Constant object at 0x7f970a636c40>
    - <ast.Constant object at 0x7f970a489a00>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 52
    functionName: dns.rdtypes.mxbase.MXBase._to_wire
    functionSourceFile: dns.rdtypes.mxbase
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a489790>
    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:
    - dns.rdtypes.mxbase.MXBase.__init__
    - parser.get_uint16
    - <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: 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:
    - by_priority.keys
    - <builtin>.sorted
    - collections.defaultdict
    - <builtin>.len
    - <builtin>.list
    - rdata._processing_priority
    - random.shuffle
    - dns.rdtypes.util._priority_table
    - ordered.extend
    - dns.rdtypes.util.priority_processing_order
    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 0x7f970aeaf100>
    - <ast.Constant object at 0x7f970aa4ff70>
    - <ast.Constant object at 0x7f970aa4fe80>
    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 0x7f970a6e8df0>
    - <ast.Constant object at 0x7f970a6e85e0>
    - <ast.Constant object at 0x7f970a6e89d0>
    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>.super
    - <builtin>.len
    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 0x7f970aabe1c0>
    - <ast.Constant object at 0x7f970aabe6a0>
    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:
    - dns.rdata._hexify
    - <builtin>.range
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    - binascii.hexlify
    - 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 0x7f970a41ac10>
    - <ast.Constant object at 0x7f970a41ae80>
    - <ast.Constant object at 0x7f970a41a040>
    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:
    - <builtin>.range
    - tok.get_string
    - text.encode
    - dns.rdtypes.euibase.EUIBase.__init__
    - text.replace
    - <builtin>.len
    - binascii.unhexlify
    - <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 0x7f970a6e8100>
    - <ast.Constant object at 0x7f970a6e8b80>
    - <ast.Constant object at 0x7f970a6e8a90>
    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 0x7f970a6e86d0>
    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>.super
    - dns.rdtypes.euibase.EUIBase.__init__
    - parser.get_bytes
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.txtbase
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - strings
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: dns.rdtypes.txtbase.TXTBase.__init__
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.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 0x7f970a8a6970>
    - <ast.Constant object at 0x7f970a8a6760>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 59
    functionName: dns.rdtypes.txtbase.TXTBase.to_text
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.bytearray
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    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 0x7f970a8b6ee0>
    - <ast.Constant object at 0x7f970a8b6ac0>
    - <ast.Constant object at 0x7f970a8b6f40>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 73
    functionName: dns.rdtypes.txtbase.TXTBase.from_text
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.txtbase.TXTBase.__init__
    - tok.get_remaining
    - token.is_identifier
    - <builtin>.len
    - token.is_quoted_string
    - <builtin>.super
    - token.unescape_to_bytes
    - strings.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: 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 0x7f970b117790>
    - <ast.Constant object at 0x7f970b1173d0>
    - <ast.Constant object at 0x7f970b117340>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 98
    functionName: dns.rdtypes.txtbase.TXTBase._to_wire
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - dns.renderer.prefixed_length
    - length.to_bytes
    - file.write
    - output.seek
    - output.write
    - output.tell
    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 0x7f970b72b730>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 104
    functionName: dns.rdtypes.txtbase.TXTBase.from_wire_parser
    functionSourceFile: dns.rdtypes.txtbase
    functionUses: 0
    functionsReached:
    - dns.rdtypes.txtbase.TXTBase.__init__
    - parser.get_counted_bytes
    - parser.remaining
    - <builtin>.len
    - <builtin>.super
    - strings.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.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>.super
    - <builtin>.len
    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 0x7f970a3c82b0>
    - <ast.Constant object at 0x7f970a3c8190>
    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 0x7f970aaab820>
    - <ast.Constant object at 0x7f970aaabd60>
    - <ast.Constant object at 0x7f970aaabc10>
    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:
    - tok.get_uint16
    - dns.rdtypes.ANY.URI.URI.__init__
    - tok.get
    - <builtin>.len
    - target.is_quoted_string
    - <builtin>.super
    - 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 0x7f970a687e80>
    - <ast.Constant object at 0x7f970a6874c0>
    - <ast.Constant object at 0x7f970a687430>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: dns.rdtypes.ANY.URI.URI._to_wire
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a6c8670>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 64
    functionName: dns.rdtypes.ANY.URI.URI.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.URI
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.ANY.URI.URI.__init__
    - <builtin>.len
    - parser.get_struct
    - <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: 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:
    - by_priority.keys
    - <builtin>.enumerate
    - dns.rdtypes.util.weighted_processing_order
    - <builtin>.sorted
    - collections.defaultdict
    - ordered.append
    - <builtin>.len
    - <builtin>.list
    - rdata._processing_priority
    - random.uniform
    - <builtin>.sum
    - dns.rdtypes.util._priority_table
    - rdata._processing_weight
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a6c8df0>
    - <ast.Constant object at 0x7f970a6c86a0>
    - <ast.Constant object at 0x7f970a6c8130>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 26
    functionName: dns.rdtypes.ANY.DNAME.DNAME._to_wire
    functionSourceFile: dns.rdtypes.ANY.DNAME
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.GPOS
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - what
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 26
    functionName: dns.rdtypes.ANY.GPOS._validate_float_string
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 3
    functionsReached:
    - left.decode
    - right.decode
    - <builtin>.len
    - what.split
    - what.isdigit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: what.split
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: left.decode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: right.decode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - latitude
    - longitude
    - altitude
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 53
    functionName: dns.rdtypes.ANY.GPOS.GPOS.__init__
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 2
    functionsReached:
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - <builtin>.isinstance
    - left.decode
    - right.decode
    - <builtin>.len
    - what.split
    - <builtin>.str
    - <builtin>.super
    - what.isdigit
    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 0x7f970a6e87c0>
    - <ast.Constant object at 0x7f970a6e8d00>
    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 0x7f970a620940>
    - <ast.Constant object at 0x7f970a620bb0>
    - <ast.Constant object at 0x7f970a6201c0>
    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.GPOS.__init__
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - tok.get_string
    - <builtin>.isinstance
    - left.decode
    - right.decode
    - <builtin>.len
    - what.split
    - <builtin>.str
    - <builtin>.super
    - what.isdigit
    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 0x7f970a620c70>
    - <ast.Constant object at 0x7f970a620fd0>
    - <ast.Constant object at 0x7f970a620310>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 92
    functionName: dns.rdtypes.ANY.GPOS.GPOS._to_wire
    functionSourceFile: dns.rdtypes.ANY.GPOS
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa4ffa0>
    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:
    - dns.rdtypes.ANY.GPOS.GPOS.__init__
    - parser.get_counted_bytes
    - dns.rdtypes.ANY.GPOS._validate_float_string
    - <builtin>.isinstance
    - left.decode
    - right.decode
    - <builtin>.len
    - what.split
    - <builtin>.str
    - <builtin>.super
    - what.isdigit
    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 0x7f970a937880>
    - <ast.Constant object at 0x7f970aeaf910>
    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:
    - dns.rdata._hexify
    - <builtin>.range
    - data.decode
    - kw.pop
    - <builtin>.len
    - separator.join
    - kw.copy
    - binascii.hexlify
    - dns.rdata._wordbreak
    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 0x7f970a489bb0>
    - <ast.Constant object at 0x7f970a489220>
    - <ast.Constant object at 0x7f970a489370>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.rdtypes.ANY.SSHFP.SSHFP.from_text
    functionSourceFile: dns.rdtypes.ANY.SSHFP
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - dns.rdtypes.ANY.SSHFP.SSHFP.__init__
    - binascii.unhexlify
    - 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 0x7f970a489a60>
    - <ast.Constant object at 0x7f970a4894c0>
    - <ast.Constant object at 0x7f970a4891c0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: dns.rdtypes.ANY.SSHFP.SSHFP._to_wire
    functionSourceFile: dns.rdtypes.ANY.SSHFP
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aa4ff70>
    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_remaining
    - dns.rdtypes.ANY.SSHFP.SSHFP.__init__
    - <builtin>.super
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.AMTRELAY
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 30
    functionName: dns.rdtypes.ANY.AMTRELAY.Relay.relay
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - precedence
    - discovery_optional
    - relay_type
    - relay
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970a41a070>
    - <ast.Constant object at 0x7f970a41acd0>
    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 0x7f970a6e81c0>
    - <ast.Constant object at 0x7f970a6e8fa0>
    - <ast.Constant object at 0x7f970a6e87f0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 59
    functionName: dns.rdtypes.ANY.AMTRELAY.AMTRELAY.from_text
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached:
    - tok.get_uint8
    - <builtin>.bool
    - dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__
    - <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 0x7f970a840b80>
    - <ast.Constant object at 0x7f970a840ca0>
    - <ast.Constant object at 0x7f970a8403a0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 75
    functionName: dns.rdtypes.ANY.AMTRELAY.AMTRELAY._to_wire
    functionSourceFile: dns.rdtypes.ANY.AMTRELAY
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970ad98520>
    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:
    - Relay.from_wire_parser
    - <builtin>.bool
    - dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__
    - parser.get_struct
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970a489070>
    - <ast.Constant object at 0x7f970a489fa0>
    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>.isinstance
    - <builtin>.bytearray
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    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 0x7f970aa4fe20>
    - <ast.Constant object at 0x7f970aa4fa30>
    - <ast.Constant object at 0x7f970aa4f340>
    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:
    - <builtin>.super
    - tok.get_string
    - 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 0x7f970aa4fa00>
    - <ast.Constant object at 0x7f970aa4fa90>
    - <ast.Constant object at 0x7f970aa4f430>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: dns.rdtypes.ANY.HINFO.HINFO._to_wire
    functionSourceFile: dns.rdtypes.ANY.HINFO
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a9371f0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 61
    functionName: dns.rdtypes.ANY.HINFO.HINFO.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.HINFO
    functionUses: 0
    functionsReached:
    - parser.get_counted_bytes
    - <builtin>.super
    - 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 0x7f970ad98490>
    - <ast.Constant object at 0x7f970ad986a0>
    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>.isinstance
    - <builtin>.bytearray
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    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 0x7f970a41a580>
    - <ast.Constant object at 0x7f970a41a400>
    - <ast.Constant object at 0x7f970a41ad30>
    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_string
    - tag.isalnum
    - dns.rdtypes.ANY.CAA.CAA.__init__
    - tok.get_uint8
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a41a730>
    - <ast.Constant object at 0x7f970a41a100>
    - <ast.Constant object at 0x7f970a41a040>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: dns.rdtypes.ANY.CAA.CAA._to_wire
    functionSourceFile: dns.rdtypes.ANY.CAA
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a620b80>
    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_remaining
    - parser.get_counted_bytes
    - tag.isalnum
    - dns.rdtypes.ANY.CAA.CAA.__init__
    - parser.get_uint8
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.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:
    - dns.rdata._hexify
    - <builtin>.range
    - <builtin>.isinstance
    - data.decode
    - <builtin>.int
    - <builtin>.len
    - separator.join
    - binascii.hexlify
    - dns.rdata._wordbreak
    - <builtin>.super
    - dns.rdtypes.util.parse_formatted_hex
    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 0x7f970a9376a0>
    - <ast.Constant object at 0x7f970a9373d0>
    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 0x7f970a489340>
    - <ast.Constant object at 0x7f970a4899a0>
    - <ast.Constant object at 0x7f970a489a00>
    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:
    - dns.rdata._hexify
    - tok.get_uint16
    - <builtin>.range
    - <builtin>.isinstance
    - tok.get_identifier
    - data.decode
    - <builtin>.int
    - <builtin>.len
    - separator.join
    - binascii.hexlify
    - <builtin>.super
    - dns.rdata._wordbreak
    - dns.rdtypes.ANY.NID.NID.__init__
    - dns.rdtypes.util.parse_formatted_hex
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a489be0>
    - <ast.Constant object at 0x7f970a489e20>
    - <ast.Constant object at 0x7f970a489280>
    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
    - struct.pack
    - <builtin>.int
    - <builtin>.len
    - file.write
    - dns.rdtypes.util.parse_formatted_hex
    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 0x7f970a489c40>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 45
    functionName: dns.rdtypes.ANY.NID.NID.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.NID
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdata._hexify
    - <builtin>.range
    - <builtin>.isinstance
    - data.decode
    - <builtin>.int
    - <builtin>.len
    - separator.join
    - parser.get_uint16
    - binascii.hexlify
    - <builtin>.super
    - dns.rdata._wordbreak
    - dns.rdtypes.ANY.NID.NID.__init__
    - dns.rdtypes.util.parse_formatted_hex
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.EUI64
    functionSourceFile: dns.rdtypes.ANY.EUI64
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.RP
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - mbox
    - txt
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: dns.rdtypes.ANY.RP.RP.__init__
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970a41aa30>
    - <ast.Constant object at 0x7f970a41a7f0>
    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 0x7f970a620e20>
    - <ast.Constant object at 0x7f970a620880>
    - <ast.Constant object at 0x7f970a6207c0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 43
    functionName: dns.rdtypes.ANY.RP.RP.from_text
    functionSourceFile: dns.rdtypes.ANY.RP
    functionUses: 0
    functionsReached:
    - tok.get_name
    - <builtin>.super
    - dns.rdtypes.ANY.RP.RP.__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 0x7f970a6200a0>
    - <ast.Constant object at 0x7f970a620be0>
    - <ast.Constant object at 0x7f970a620970>
    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 0x7f970a6e8460>
    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:
    - <builtin>.super
    - parser.get_name
    - dns.rdtypes.ANY.RP.RP.__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.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 0x7f970a8400a0>
    - <ast.Constant object at 0x7f970a6e89d0>
    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:
    - base64.b64encode
    - <builtin>.range
    - dns.rdata._base64ify
    - data.decode
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    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 0x7f970a6e85b0>
    - <ast.Constant object at 0x7f970a6e8f70>
    - <ast.Constant object at 0x7f970a6e8430>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 40
    functionName: dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.from_text
    functionSourceFile: dns.rdtypes.ANY.OPENPGPKEY
    functionUses: 0
    functionsReached:
    - base64.b64decode
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.__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 0x7f970a6e8fa0>
    - <ast.Constant object at 0x7f970a6e8610>
    - <ast.Constant object at 0x7f970a6e8a60>
    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 0x7f970ad98250>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 51
    functionName: dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.OPENPGPKEY
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - dns.rdtypes.ANY.OPENPGPKEY.OPENPGPKEY.__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.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:
    - dns.rdata._hexify
    - <builtin>.range
    - <builtin>.isinstance
    - data.decode
    - <builtin>.int
    - <builtin>.len
    - separator.join
    - binascii.hexlify
    - dns.rdata._wordbreak
    - <builtin>.super
    - dns.rdtypes.util.parse_formatted_hex
    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 0x7f970a489940>
    - <ast.Constant object at 0x7f970a489b20>
    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 0x7f970aa4ff40>
    - <ast.Constant object at 0x7f970aa4f730>
    - <ast.Constant object at 0x7f970aa4f5b0>
    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:
    - dns.rdata._hexify
    - tok.get_uint16
    - <builtin>.range
    - <builtin>.isinstance
    - tok.get_identifier
    - data.decode
    - <builtin>.int
    - <builtin>.len
    - separator.join
    - binascii.hexlify
    - dns.rdtypes.ANY.L64.L64.__init__
    - dns.rdata._wordbreak
    - <builtin>.super
    - dns.rdtypes.util.parse_formatted_hex
    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 0x7f970aa4f460>
    - <ast.Constant object at 0x7f970aa4f8b0>
    - <ast.Constant object at 0x7f970aa4f7f0>
    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
    - struct.pack
    - <builtin>.int
    - <builtin>.len
    - file.write
    - dns.rdtypes.util.parse_formatted_hex
    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 0x7f970a82bbe0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 45
    functionName: dns.rdtypes.ANY.L64.L64.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.L64
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdata._hexify
    - <builtin>.range
    - <builtin>.isinstance
    - data.decode
    - <builtin>.int
    - <builtin>.len
    - separator.join
    - parser.get_uint16
    - binascii.hexlify
    - dns.rdtypes.ANY.L64.L64.__init__
    - dns.rdata._wordbreak
    - <builtin>.super
    - dns.rdtypes.util.parse_formatted_hex
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a840820>
    - <ast.Constant object at 0x7f970a840460>
    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>.isinstance
    - <builtin>.bytearray
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    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 0x7f970a6e8910>
    - <ast.Constant object at 0x7f970a6e8790>
    - <ast.Constant object at 0x7f970a6e8df0>
    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_string
    - <builtin>.len
    - dns.rdtypes.ANY.ISDN.ISDN.__init__
    - <builtin>.super
    - tok.get_remaining
    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 0x7f970a6e88e0>
    - <ast.Constant object at 0x7f970a6e8cd0>
    - <ast.Constant object at 0x7f970a6e8310>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdtypes.ANY.ISDN.ISDN._to_wire
    functionSourceFile: dns.rdtypes.ANY.ISDN
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    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 0x7f970a6207f0>
    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
    - dns.rdtypes.ANY.ISDN.ISDN.__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.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 0x7f970aa4f1c0>
    - <ast.Constant object at 0x7f970aa4f2e0>
    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 0x7f970a82be80>
    - <ast.Constant object at 0x7f970a82bdc0>
    - <ast.Constant object at 0x7f970a82bf70>
    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:
    - <builtin>.super
    - tok.get_name
    - tok.get_uint16
    - dns.rdtypes.ANY.LP.LP.__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 0x7f970aabef10>
    - <ast.Constant object at 0x7f970aabe100>
    - <ast.Constant object at 0x7f970aabe640>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: dns.rdtypes.ANY.LP.LP._to_wire
    functionSourceFile: dns.rdtypes.ANY.LP
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aabe220>
    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
    - <builtin>.super
    - parser.get_name
    - dns.rdtypes.ANY.LP.LP.__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.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 0x7f970b06c970>
    - <ast.Constant object at 0x7f970b06c460>
    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:
    - base64.b64encode
    - servers.append
    - <builtin>.len
    - server.choose_relativity
    - x.to_unicode
    - binascii.hexlify
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970b6392e0>
    - <ast.Constant object at 0x7f970b639f70>
    - <ast.Constant object at 0x7f970b639ee0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.rdtypes.ANY.HIP.HIP.from_text
    functionSourceFile: dns.rdtypes.ANY.HIP
    functionUses: 0
    functionsReached:
    - tok.get_string
    - servers.append
    - dns.rdtypes.ANY.HIP.HIP.__init__
    - tok.get_uint8
    - binascii.unhexlify
    - base64.b64decode
    - tok.as_name
    - <builtin>.super
    - tok.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: 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 0x7f970a636a00>
    - <ast.Constant object at 0x7f970a636310>
    - <ast.Constant object at 0x7f970a636100>
    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:
    - server.to_wire
    - file.write
    - struct.pack
    - <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: 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 0x7f970a9744f0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: dns.rdtypes.ANY.HIP.HIP.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.HIP
    functionUses: 0
    functionsReached:
    - parser.remaining
    - servers.append
    - dns.rdtypes.ANY.HIP.HIP.__init__
    - parser.get_name
    - parser.get_struct
    - parser.get_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.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 0x7f970a8b6ee0>
    - <ast.Constant object at 0x7f970a8b6ac0>
    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 0x7f970b117e50>
    - <ast.Constant object at 0x7f970b117520>
    - <ast.Constant object at 0x7f970b117850>
    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 0x7f970b117d90>
    - <ast.Constant object at 0x7f970b117910>
    - <ast.Constant object at 0x7f970b117bb0>
    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:
    - btext.split
    - part.isdigit
    - text.encode
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.int
    - <builtin>.ord
    - <builtin>.len
    - file.write
    - dns.ipv4.inet_aton
    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 0x7f970a687760>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: dns.rdtypes.ANY.L32.L32.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.L32
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.ANY.L32.L32.__init__
    - <builtin>.super
    - parser.get_uint16
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970b982d00>
    - <ast.Constant object at 0x7f970a636940>
    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:
    - Scheme.to_text
    - RdataType.to_text
    - dns.rdatatype.to_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Scheme.to_text
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f970a636550>
    - <ast.Constant object at 0x7f970a636310>
    - <ast.Constant object at 0x7f970a6361c0>
    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:
    - dns.rdatatype.from_text
    - tok.get_name
    - tok.get_string
    - tok.get_uint16
    - Scheme.make
    - dns.rdtypes.ANY.DSYNC.DSYNC.__init__
    - <builtin>.super
    - RdataType.from_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970b72b280>
    - <ast.Constant object at 0x7f970b72bfd0>
    - <ast.Constant object at 0x7f970a6289d0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: dns.rdtypes.ANY.DSYNC.DSYNC._to_wire
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aaab100>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 69
    functionName: dns.rdtypes.ANY.DSYNC.DSYNC.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.DSYNC
    functionUses: 0
    functionsReached:
    - parser.get_name
    - parser.get_struct
    - Scheme.make
    - dns.rdtypes.ANY.DSYNC.DSYNC.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.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:
    - <builtin>.int
    - _ctype_by_name.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_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 0x7f970a41a5e0>
    - <ast.Constant object at 0x7f970a41a190>
    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:
    - base64.b64encode
    - _ctype_by_value.get
    - <builtin>.range
    - dns.dnssectypes.Algorithm.to_text
    - dns.rdata._base64ify
    - data.decode
    - <builtin>.len
    - separator.join
    - <builtin>.str
    - dns.rdtypes.ANY.CERT._ctype_to_text
    - dns.rdata._wordbreak
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970a937c40>
    - <ast.Constant object at 0x7f970a937d00>
    - <ast.Constant object at 0x7f970a937520>
    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:
    - tok.get_string
    - tok.get_uint16
    - _ctype_by_name.get
    - dns.rdtypes.ANY.CERT.CERT.__init__
    - <builtin>.int
    - dns.rdtypes.ANY.CERT._ctype_from_text
    - base64.b64decode
    - dns.dnssectypes.Algorithm.from_text
    - 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 0x7f970a620520>
    - <ast.Constant object at 0x7f970a620bb0>
    - <ast.Constant object at 0x7f970a620af0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: dns.rdtypes.ANY.CERT.CERT._to_wire
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970ad98670>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 110
    functionName: dns.rdtypes.ANY.CERT.CERT.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.CERT
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - parser.get_remaining
    - dns.rdtypes.ANY.CERT.CERT.__init__
    - parser.get_struct
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.LOC
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - <builtin>.range
    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:
    - <builtin>.pow
    - dns.rdtypes.ANY.LOC._exponent_of
    - <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 0x7f970afe5d90>
    - <ast.Name object at 0x7f970afe5b80>
    - <ast.Name object at 0x7f970afe5910>
    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>.isinstance
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - <builtin>.int
    - <builtin>.round
    - <builtin>.tuple
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - <builtin>.super
    - <builtin>.float
    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 0x7f970aa63370>
    - <ast.Constant object at 0x7f970aa63490>
    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 0x7f970b787dc0>
    - <ast.Constant object at 0x7f970b787670>
    - <ast.Constant object at 0x7f970b787940>
    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:
    - dns.rdtypes.ANY.LOC._exponent_of
    - <builtin>.enumerate
    - tok.get_int
    - t.isdigit
    - seconds.isdigit
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - tok.get_remaining
    - <builtin>.int
    - <builtin>.round
    - milliseconds.isdigit
    - <builtin>.pow
    - tok.get_string
    - <builtin>.len
    - dns.rdtypes.ANY.LOC._encode_size
    - dns.rdtypes.ANY.LOC.LOC.__init__
    - <builtin>.float
    - t.split
    - <builtin>.isinstance
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - <builtin>.tuple
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970aecf940>
    - <ast.Constant object at 0x7f970aecf6a0>
    - <ast.Constant object at 0x7f970aecf790>
    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
    - dns.rdtypes.ANY.LOC._exponent_of
    - <builtin>.enumerate
    - struct.pack
    - <builtin>.int
    - file.write
    - dns.rdtypes.ANY.LOC._encode_size
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970b11b0a0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 309
    functionName: dns.rdtypes.ANY.LOC.LOC.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.LOC
    functionUses: 0
    functionsReached:
    - <builtin>.pow
    - dns.rdtypes.ANY.LOC._decode_size
    - <builtin>.isinstance
    - <builtin>.int
    - dns.rdtypes.ANY.LOC._check_coordinate_list
    - <builtin>.round
    - <builtin>.tuple
    - parser.get_struct
    - dns.rdtypes.ANY.LOC._float_to_tuple
    - dns.rdtypes.ANY.LOC.LOC.__init__
    - <builtin>.super
    - <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: 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>.tuple
    - <builtin>.super
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 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 0x7f970a47d610>
    - <ast.Constant object at 0x7f970a47da00>
    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:
    - base64.b32encode
    - next.rstrip
    - dns.rdtypes.ANY.NSEC3.NSEC3._next_text
    - binascii.hexlify
    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 0x7f970ab22b50>
    - <ast.Constant object at 0x7f970ab22520>
    - <ast.Constant object at 0x7f970ab225e0>
    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:
    - dns.rdtypes.ANY.NSEC3.NSEC3.__init__
    - tok.get_uint16
    - <builtin>.isinstance
    - tok.get_string
    - Bitmap.from_text
    - tok.get_uint8
    - <builtin>.len
    - binascii.unhexlify
    - base64.b32decode
    - <builtin>.tuple
    - next.endswith
    - <builtin>.super
    - salt.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: 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 0x7f970afccc10>
    - <ast.Constant object at 0x7f970afcc100>
    - <ast.Constant object at 0x7f970afcc820>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: dns.rdtypes.ANY.NSEC3.NSEC3._to_wire
    functionSourceFile: dns.rdtypes.ANY.NSEC3
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a68b7c0>
    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_counted_bytes
    - dns.rdtypes.ANY.NSEC3.NSEC3.__init__
    - <builtin>.isinstance
    - Bitmap.from_wire_parser
    - <builtin>.tuple
    - parser.get_struct
    - <builtin>.super
    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 0x7f970a68b940>
    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:
    - dns.name.from_unicode
    - next.rstrip
    - dns.name._maybe_convert_to_binary
    - <builtin>.chr
    - dns.rdtypes.ANY.NSEC3.NSEC3._next_text
    - text.encode
    - base64.b32encode
    - byte_.isdigit
    - label.encode
    - <builtin>.int
    - <builtin>.list
    - dns.name.Name.__init__
    - dns.name._validate_labels
    - dns.name.IDNA2003Codec.encode
    - dns.name.from_text
    - <builtin>.ord
    - <builtin>.len
    - labels.extend
    - dns.name.is_all_ascii
    - <builtin>.isinstance
    - struct.pack
    - labels.append
    - <builtin>.tuple
    - encodings.idna.ToASCII
    - c.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: 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>.tuple
    - <builtin>.super
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970a4787c0>
    - <ast.Constant object at 0x7f970a478400>
    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 0x7f970a478f10>
    - <ast.Constant object at 0x7f970a478ac0>
    - <ast.Constant object at 0x7f970a4782e0>
    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
    - tok.get_uint16
    - <builtin>.isinstance
    - Bitmap.from_text
    - <builtin>.tuple
    - dns.rdtypes.ANY.CSYNC.CSYNC.__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 0x7f970a68b0a0>
    - <ast.Constant object at 0x7f970a68b400>
    - <ast.Constant object at 0x7f970a68b340>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: dns.rdtypes.ANY.CSYNC.CSYNC._to_wire
    functionSourceFile: dns.rdtypes.ANY.CSYNC
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a68be50>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 65
    functionName: dns.rdtypes.ANY.CSYNC.CSYNC.from_wire_parser
    functionSourceFile: dns.rdtypes.ANY.CSYNC
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - Bitmap.from_wire_parser
    - <builtin>.tuple
    - parser.get_struct
    - dns.rdtypes.ANY.CSYNC.CSYNC.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.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 0x7f970aebe520>
    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 0x7f970a551970>
    - <ast.Constant object at 0x7f970a551af0>
    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:
    - base64.b64encode
    - <builtin>.range
    - dns.rdata._base64ify
    - data.decode
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    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 0x7f970afbb2e0>
    - <ast.Constant object at 0x7f970afbbbb0>
    - <ast.Constant object at 0x7f970afbb580>
    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
    - tok.get_uint16
    - tok.get_string
    - base64.b64decode
    - dns.rdtypes.ANY.TKEY.TKEY.__init__
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    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 0x7f970afe5460>
    - <ast.Constant object at 0x7f970afe5820>
    - <ast.Constant object at 0x7f970afe5970>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: dns.rdtypes.ANY.TKEY.TKEY._to_wire
    functionSourceFile: dns.rdtypes.ANY.TKEY
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970a5b0a90>
    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_counted_bytes
    - parser.get_name
    - parser.get_struct
    - dns.rdtypes.ANY.TKEY.TKEY.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.ANY.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 0x7f970b74e4f0>
    - <ast.Constant object at 0x7f970b74e7c0>
    - <ast.Constant object at 0x7f970b74e670>
    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:
    - flags_str.split
    - tok.get_string
    - tok.as_uint16
    - tok.as_uint8
    - tok.get
    - base64.b64decode
    - tok.concatenate_remaining_identifiers
    - tok.as_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: 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 0x7f970a551f40>
    - <ast.Constant object at 0x7f970a5511c0>
    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>.isinstance
    - <builtin>.bytearray
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    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 0x7f970a6833d0>
    - <ast.Constant object at 0x7f970a6830d0>
    - <ast.Constant object at 0x7f970a683220>
    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:
    - <builtin>.super
    - tok.get_string
    - dns.rdtypes.ANY.X25.X25.__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 0x7f970a683e80>
    - <ast.Constant object at 0x7f970a6833a0>
    - <ast.Constant object at 0x7f970afa3100>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns.rdtypes.ANY.X25.X25._to_wire
    functionSourceFile: dns.rdtypes.ANY.X25
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970afbb820>
    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:
    - parser.get_counted_bytes
    - <builtin>.super
    - dns.rdtypes.ANY.X25.X25.__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.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 0x7f970a68b7f0>
    - <ast.Constant object at 0x7f970a68baf0>
    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:
    - base64.b64encode
    - <builtin>.range
    - dns.rdata._base64ify
    - data.decode
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    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 0x7f970a68bb50>
    - <ast.Constant object at 0x7f970a68b490>
    - <ast.Constant object at 0x7f970a68b250>
    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
    - base64.b64decode
    - tok.concatenate_remaining_identifiers
    - <builtin>.super
    - Gateway.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: 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 0x7f970b11bf40>
    - <ast.Constant object at 0x7f970b11baf0>
    - <ast.Constant object at 0x7f970b11b100>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: dns.rdtypes.IN.IPSECKEY.IPSECKEY._to_wire
    functionSourceFile: dns.rdtypes.IN.IPSECKEY
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970afcc400>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 80
    functionName: dns.rdtypes.IN.IPSECKEY.IPSECKEY.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.IPSECKEY
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.IN.IPSECKEY.IPSECKEY.__init__
    - Gateway.from_wire_parser
    - parser.get_struct
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970a478400>
    - <ast.Constant object at 0x7f970a478610>
    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:
    - base64.b64encode
    - <builtin>.range
    - dns.rdata._base64ify
    - data.decode
    - <builtin>.len
    - separator.join
    - dns.rdata._wordbreak
    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 0x7f970afccc40>
    - <ast.Constant object at 0x7f970afccbe0>
    - <ast.Constant object at 0x7f970afcc5b0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 41
    functionName: dns.rdtypes.IN.DHCID.DHCID.from_text
    functionSourceFile: dns.rdtypes.IN.DHCID
    functionUses: 0
    functionsReached:
    - base64.b64decode
    - tok.concatenate_remaining_identifiers
    - <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 0x7f970afcca60>
    - <ast.Constant object at 0x7f970afcc7c0>
    - <ast.Constant object at 0x7f970afcce20>
    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 0x7f970afcce80>
    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:
    - parser.get_remaining
    - <builtin>.super
    - 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 0x7f970a47df40>
    - <ast.Constant object at 0x7f970a47d910>
    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 0x7f970a47dee0>
    - <ast.Constant object at 0x7f970a47dfd0>
    - <ast.Constant object at 0x7f970a47d760>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 47
    functionName: dns.rdtypes.IN.SRV.SRV.from_text
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - tok.get_name
    - tok.get_uint16
    - dns.rdtypes.IN.SRV.SRV.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970b78b8e0>
    - <ast.Constant object at 0x7f970b78b850>
    - <ast.Constant object at 0x7f970b78b9d0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: dns.rdtypes.IN.SRV.SRV._to_wire
    functionSourceFile: dns.rdtypes.IN.SRV
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970ab22730>
    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:
    - by_priority.keys
    - <builtin>.enumerate
    - dns.rdtypes.util.weighted_processing_order
    - <builtin>.sorted
    - collections.defaultdict
    - ordered.append
    - <builtin>.len
    - <builtin>.list
    - rdata._processing_priority
    - random.uniform
    - <builtin>.sum
    - dns.rdtypes.util._priority_table
    - rdata._processing_weight
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.rdata.Rdata._as_bool
    - dns.ipv6.inet_ntoa
    - binascii.unhexlify
    - value.encode
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_ipv6_address
    - btext.split
    - dns.rdata.Rdata._as_uint16
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - dns.ipv4.canonicalize
    - dns.rdata.Rdata._as_int
    - m.group
    - dns.ipv6.canonicalize
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - dns.rdata.Rdata._as_ipv4_address
    - chunks.append
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.bytes
    - _leading_zero.match
    - <builtin>.range
    - dns.rdata.Rdata._as_uint8
    - <builtin>.isinstance
    - struct.pack
    - dns.rdata.Rdata._as_bytes
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 49
    functionName: dns.rdtypes.IN.APL.APLItem.__str__
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: dns.rdtypes.IN.APL.APLItem.to_wire
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 0
    functionsReached:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - _v4_ending.match
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.range
    - struct.pack
    - <builtin>.isinstance
    - file.write
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - items
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 88
    functionName: dns.rdtypes.IN.APL.APL.__init__
    functionSourceFile: dns.rdtypes.IN.APL
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    - <builtin>.super
    - <builtin>.isinstance
    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 0x7f970a5b0d90>
    - <ast.Constant object at 0x7f970a5b0580>
    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 0x7f970afe5730>
    - <ast.Constant object at 0x7f970afe5790>
    - <ast.Constant object at 0x7f970afe5b50>
    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.rdata.Rdata._as_bool
    - dns.ipv6.inet_ntoa
    - binascii.unhexlify
    - value.encode
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_ipv6_address
    - tok.get_remaining
    - btext.split
    - dns.rdata.Rdata._as_uint16
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - item.split
    - dns.ipv6.inet_aton
    - dns.rdata.Rdata._as_int
    - dns.ipv4.canonicalize
    - m.group
    - dns.ipv6.canonicalize
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - rest.split
    - items.append
    - dns.rdata.Rdata._as_ipv4_address
    - chunks.append
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.bytes
    - _leading_zero.match
    - token.unescape
    - dns.rdtypes.IN.APL.APL.__init__
    - <builtin>.range
    - dns.rdata.Rdata._as_uint8
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.tuple
    - <builtin>.super
    - dns.rdtypes.IN.APL.APLItem.__init__
    - dns.rdata.Rdata._as_bytes
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: item.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rest.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aed5580>
    - <ast.Constant object at 0x7f970aed5fd0>
    - <ast.Constant object at 0x7f970aed5190>
    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 0x7f970aed52e0>
    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:
    - parser.remaining
    - dns.rdata.Rdata._as_bool
    - dns.ipv6.inet_ntoa
    - codecs.encode
    - binascii.unhexlify
    - dns.rdata.Rdata._as_bytes
    - value.encode
    - dns.ipv4.inet_ntoa
    - dns.rdata.Rdata._as_ipv6_address
    - btext.split
    - dns.rdata.Rdata._as_uint16
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - dns.rdata.Rdata._as_int
    - dns.ipv4.canonicalize
    - m.group
    - dns.ipv6.canonicalize
    - binascii.hexlify
    - dns.ipv4.inet_aton
    - items.append
    - dns.rdata.Rdata._as_ipv4_address
    - chunks.append
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.bytes
    - _leading_zero.match
    - parser.get_struct
    - dns.rdtypes.IN.APL.APL.__init__
    - <builtin>.range
    - dns.rdata.Rdata._as_uint8
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.tuple
    - parser.get_bytes
    - dns.rdtypes.IN.APL.APLItem.__init__
    - <builtin>.super
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: codecs.encode
    functionSourceFile: codecs
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.IN.NSAP_PTR
    functionSourceFile: dns.rdtypes.IN.NSAP_PTR
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.IN.AAAA
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rdclass
    - rdtype
    - address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: dns.rdtypes.IN.AAAA.AAAA.__init__
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f970afbb850>
    - <ast.Constant object at 0x7f970afbb550>
    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 0x7f970afbbbb0>
    - <ast.Constant object at 0x7f970afbb4c0>
    - <ast.Constant object at 0x7f970afbb580>
    argNames:
    - cls
    - rdclass
    - rdtype
    - tok
    - origin
    - relativize
    - relativize_to
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: dns.rdtypes.IN.AAAA.AAAA.from_text
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 0
    functionsReached:
    - dns.rdtypes.IN.AAAA.AAAA.__init__
    - <builtin>.super
    - 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 0x7f970afbbeb0>
    - <ast.Constant object at 0x7f970afbba90>
    - <ast.Constant object at 0x7f970afbbac0>
    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:
    - binascii.unhexlify
    - btext.split
    - part.isdigit
    - text.encode
    - _colon_colon_start.match
    - _colon_colon_end.match
    - btext.startswith
    - <builtin>.int
    - dns.ipv6.inet_aton
    - m.group
    - dns.ipv4.inet_aton
    - btext.endswith
    - <builtin>.ord
    - _v4_ending.match
    - <builtin>.len
    - <builtin>.range
    - <builtin>.isinstance
    - struct.pack
    - file.write
    - canonical.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970aecfcd0>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.rdtypes.IN.AAAA.AAAA.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.AAAA
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.IN.AAAA.AAAA.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.IN.NAPTR
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - file
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 27
    functionName: dns.rdtypes.IN.NAPTR._write_string
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 1
    functionsReached:
    - file.write
    - struct.pack
    - <builtin>.len
    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 0x7f970aa63c40>
    - <ast.Constant object at 0x7f970aa63c70>
    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>.isinstance
    - <builtin>.bytearray
    - qstring.encode
    - <builtin>.chr
    - dns.rdata._escapify
    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 0x7f970aa42850>
    - <ast.Constant object at 0x7f970aa42c70>
    - <ast.Constant object at 0x7f970aa425b0>
    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
    - tok.get_uint16
    - tok.get_string
    - dns.rdtypes.IN.NAPTR.NAPTR.__init__
    - <builtin>.super
    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 0x7f970a68be50>
    - <ast.Constant object at 0x7f970a68bf10>
    - <ast.Constant object at 0x7f970a68b8e0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: dns.rdtypes.IN.NAPTR.NAPTR._to_wire
    functionSourceFile: dns.rdtypes.IN.NAPTR
    functionUses: 0
    functionsReached:
    - file.write
    - dns.rdtypes.IN.NAPTR._write_string
    - struct.pack
    - <builtin>.len
    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 0x7f970b11beb0>
    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_counted_bytes
    - <builtin>.range
    - parser.get_name
    - parser.get_struct
    - dns.rdtypes.IN.NAPTR.NAPTR.__init__
    - <builtin>.super
    - strings.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 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:
    - by_priority.keys
    - <builtin>.sorted
    - collections.defaultdict
    - <builtin>.len
    - <builtin>.list
    - rdata._processing_priority
    - random.shuffle
    - dns.rdtypes.util._priority_table
    - ordered.extend
    - dns.rdtypes.util.priority_processing_order
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970b11b790>
    - <ast.Constant object at 0x7f970b11b6a0>
    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 0x7f970a68bfd0>
    - <ast.Constant object at 0x7f970a68b6a0>
    - <ast.Constant object at 0x7f970a68bd60>
    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 0x7f970a68ba90>
    - <ast.Constant object at 0x7f970a68be80>
    - <ast.Constant object at 0x7f970a68b7c0>
    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:
    - btext.split
    - part.isdigit
    - text.encode
    - struct.pack
    - <builtin>.isinstance
    - <builtin>.int
    - <builtin>.ord
    - <builtin>.len
    - file.write
    - dns.ipv4.inet_aton
    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 0x7f970a68bb50>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 49
    functionName: dns.rdtypes.IN.A.A.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.A
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - <builtin>.super
    - dns.rdtypes.IN.A.A.__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.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 0x7f970aecf7c0>
    - <ast.Constant object at 0x7f970aecfaf0>
    argNames:
    - self
    - origin
    - relativize
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: dns.rdtypes.IN.WKS.WKS.to_text
    functionSourceFile: dns.rdtypes.IN.WKS
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - bits.append
    - <builtin>.range
    - <builtin>.enumerate
    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 0x7f970afe53a0>
    - <ast.Constant object at 0x7f970afe5850>
    - <ast.Constant object at 0x7f970b000220>
    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:
    - socket.getprotobyname
    - <builtin>.range
    - tok.get_string
    - dns.rdtypes.IN.WKS.WKS.__init__
    - <builtin>.bytearray
    - <builtin>.int
    - socket.getservbyname
    - <builtin>.len
    - dns.rdata._truncate_bitmap
    - token.unescape
    - value.isdigit
    - bitmap.append
    - protocol.isdigit
    - <builtin>.super
    - tok.get_remaining
    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 0x7f970aebe970>
    - <ast.Constant object at 0x7f970aebecd0>
    - <ast.Constant object at 0x7f970aebe070>
    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:
    - btext.split
    - part.isdigit
    - text.encode
    - <builtin>.isinstance
    - struct.pack
    - <builtin>.int
    - <builtin>.ord
    - <builtin>.len
    - file.write
    - dns.ipv4.inet_aton
    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 0x7f970b74e580>
    argNames:
    - cls
    - rdclass
    - rdtype
    - parser
    - origin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 96
    functionName: dns.rdtypes.IN.WKS.WKS.from_wire_parser
    functionSourceFile: dns.rdtypes.IN.WKS
    functionUses: 0
    functionsReached:
    - parser.get_remaining
    - dns.rdtypes.IN.WKS.WKS.__init__
    - parser.get_uint8
    - parser.get_bytes
    - <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.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 0x7f970a5b0fa0>
    - <ast.Constant object at 0x7f970a5b0f10>
    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 0x7f970a5b09d0>
    - <ast.Constant object at 0x7f970a5b02e0>
    - <ast.Constant object at 0x7f970a5b0700>
    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:
    - <builtin>.super
    - tok.get_name
    - dns.rdtypes.IN.PX.PX.__init__
    - tok.get_uint16
    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 0x7f970aed5370>
    - <ast.Constant object at 0x7f970aed5190>
    - <ast.Constant object at 0x7f970aed5fd0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: dns.rdtypes.IN.PX.PX._to_wire
    functionSourceFile: dns.rdtypes.IN.PX
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970afcc2b0>
    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:
    - <builtin>.super
    - parser.get_uint16
    - 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:
    - by_priority.keys
    - <builtin>.sorted
    - collections.defaultdict
    - <builtin>.len
    - <builtin>.list
    - rdata._processing_priority
    - random.shuffle
    - dns.rdtypes.util._priority_table
    - ordered.extend
    - dns.rdtypes.util.priority_processing_order
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f970afa3b50>
    - <ast.Constant object at 0x7f970afa3850>
    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 0x7f970a5511f0>
    - <ast.Constant object at 0x7f970a551040>
    - <ast.Constant object at 0x7f970a551d30>
    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:
    - address.encode
    - tok.get_string
    - <builtin>.len
    - binascii.unhexlify
    - dns.rdtypes.IN.NSAP.NSAP.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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 0x7f970afe59a0>
    - <ast.Constant object at 0x7f970afe56a0>
    - <ast.Constant object at 0x7f970afe5af0>
    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 0x7f970afe5730>
    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
    - dns.rdtypes.IN.NSAP.NSAP.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dns.rdtypes.IN.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 0x7f970a5b0e80>
    - <ast.Constant object at 0x7f970a5b0eb0>
    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 0x7f970a5b0490>
    - <ast.Constant object at 0x7f970a5b0070>
    - <ast.Constant object at 0x7f970a5b0580>
    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:
    - dns.rdtypes.CH.A.A.__init__
    - tok.get_name
    - <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 0x7f970afcc160>
    - <ast.Constant object at 0x7f970afcc5e0>
    - <ast.Constant object at 0x7f970afcc6d0>
    argNames:
    - self
    - file
    - compress
    - origin
    - canonicalize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: dns.rdtypes.CH.A.A._to_wire
    functionSourceFile: dns.rdtypes.CH.A
    functionUses: 0
    functionsReached:
    - file.write
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f970afcc580>
    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:
    - dns.rdtypes.CH.A.A.__init__
    - parser.get_uint16
    - <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.rdtypes.CH
    functionSourceFile: dns.rdtypes.CH
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_token':
  - 37
  - 38
  '...fuzz_token.TestOneInput':
  - 24
  - 26
  - 23
  '...fuzz_token.main':
  - 32
  - 33
  - 34
  dns:
  - 18
  dns._asyncbackend.Socket.__aexit__:
  - 49
  dns._asyncio_backend:
  - 3
  - 127
  dns._asyncio_backend.Backend.make_socket:
  - 261
  - 230
  - 231
  - 232
  - 235
  - 236
  - 243
  - 244
  - 245
  - 249
  - 250
  dns._asyncio_backend.Backend.sleep:
  - 267
  dns._asyncio_backend.Backend.wait_for:
  - 276
  dns._asyncio_backend.DatagramSocket.__init__:
  - 68
  dns._asyncio_backend.DatagramSocket.close:
  - 89
  dns._asyncio_backend.DatagramSocket.getpeername:
  - 92
  dns._asyncio_backend.DatagramSocket.getsockname:
  - 95
  dns._asyncio_backend.DatagramSocket.recvfrom:
  - 83
  - 84
  - 79
  dns._asyncio_backend.DatagramSocket.sendto:
  - 74
  - 75
  dns._asyncio_backend.StreamSocket.__init__:
  - 103
  dns._asyncio_backend.StreamSocket.close:
  - 115
  dns._asyncio_backend.StreamSocket.getpeercert:
  - 124
  dns._asyncio_backend.StreamSocket.getpeername:
  - 118
  dns._asyncio_backend.StreamSocket.getsockname:
  - 121
  dns._asyncio_backend.StreamSocket.recv:
  - 112
  dns._asyncio_backend.StreamSocket.sendall:
  - 108
  - 109
  dns._asyncio_backend._DatagramProtocol.close:
  - 52
  - 53
  dns._asyncio_backend._DatagramProtocol.connection_lost:
  - 41
  - 42
  - 49
  - 47
  dns._asyncio_backend._DatagramProtocol.datagram_received:
  - 33
  - 34
  dns._asyncio_backend._DatagramProtocol.error_received:
  - 37
  - 38
  dns._asyncio_backend._HTTPTransport.__init__:
  - 201
  - 205
  - 206
  - 207
  dns._asyncio_backend._NetworkBackend.__init__:
  - 145
  - 140
  dns._asyncio_backend._NetworkBackend.connect_tcp:
  - 160
  - 162
  - 163
  - 164
  - 167
  - 168
  - 170
  - 171
  - 172
  - 173
  - 178
  - 154
  - 155
  - 156
  - 157
  - 158
  dns._asyncio_backend._NetworkBackend.sleep:
  - 189
  dns._asyncio_backend._get_running_loop:
  - 19
  - 21
  dns._asyncio_backend._maybe_wait_for:
  - 57
  - 59
  dns._ddr:
  - 17
  dns._ddr._SVCBInfo.ddr_check_certificate:
  - 34
  - 35
  - 36
  dns._ddr._SVCBInfo.ddr_tls_check_async:
  - 64
  - 73
  - 74
  - 59
  - 60
  - 61
  - 62
  - 63
  dns._ddr._SVCBInfo.ddr_tls_check_sync:
  - 47
  - 48
  - 49
  - 52
  - 53
  - 54
  - 55
  - 56
  dns._ddr._SVCBInfo.make_tls_context:
  - 42
  dns._ddr._extract_nameservers_from_svcb:
  - 79
  - 82
  - 84
  - 85
  - 87
  - 88
  - 90
  - 91
  - 95
  - 96
  - 97
  - 99
  - 100
  - 102
  - 107
  - 108
  - 112
  - 113
  - 115
  - 116
  - 118
  - 119
  - 121
  - 122
  - 124
  - 125
  dns._ddr._get_nameservers_async:
  - 144
  - 147
  - 148
  - 150
  - 151
  dns._ddr._get_nameservers_sync:
  - 130
  - 133
  - 134
  - 136
  - 137
  dns._features._tuple_from_text:
  - 10
  - 12
  - 13
  - 14
  - 17
  - 20
  dns._features._version_check:
  - 32
  - 34
  - 36
  - 40
  - 41
  - 42
  - 26
  dns._features.force:
  - 78
  dns._features.have:
  - 64
  - 69
  - 70
  - 51
  - 60
  - 61
  - 63
  dns._immutable_ctx:
  - 10
  dns._immutable_ctx._Immutable:
  - 14
  dns._immutable_ctx._Immutable.__delattr__:
  - 32
  - 29
  dns._immutable_ctx._Immutable.__setattr__:
  - 26
  - 23
  dns._immutable_ctx._immutable_init:
  - 44
  dns._immutable_ctx._immutable_init.nf:
  - 40
  - 42
  - 37
  dns._immutable_ctx.immutable:
  - 49
  - 52
  - 53
  - 54
  dns._immutable_ctx.immutable.ncls:
  - 66
  dns._immutable_ctx.immutable.ncls.__init__:
  - 64
  dns._immutable_ctx.immutable.ncls.__setstate__:
  - 70
  dns._tls_util.convert_verify_to_cafile_and_capath:
  - 12
  - 13
  - 15
  dns._trio_backend:
  - 105
  - 3
  - 15
  dns._trio_backend.Backend.make_socket:
  - 225
  - 226
  - 227
  - 228
  - 230
  - 233
  - 237
  - 207
  - 239
  - 210
  - 211
  - 212
  - 214
  - 216
  - 218
  - 223
  dns._trio_backend.Backend.sleep:
  - 245
  dns._trio_backend.Backend.wait_for:
  - 251
  dns._trio_backend.DatagramSocket.__init__:
  - 34
  dns._trio_backend.DatagramSocket.close:
  - 53
  dns._trio_backend.DatagramSocket.getpeername:
  - 56
  dns._trio_backend.DatagramSocket.getsockname:
  - 59
  dns._trio_backend.DatagramSocket.recvfrom:
  - 48
  - 49
  dns._trio_backend.DatagramSocket.sendto:
  - 40
  - 42
  - 38
  - 39
  dns._trio_backend.StreamSocket.__init__:
  - 67
  dns._trio_backend.StreamSocket.close:
  - 82
  dns._trio_backend.StreamSocket.getpeercert:
  - 97
  - 98
  - 99
  - 100
  dns._trio_backend.StreamSocket.getpeername:
  - 88
  - 85
  - 86
  dns._trio_backend.StreamSocket.getsockname:
  - 91
  - 92
  - 94
  dns._trio_backend.StreamSocket.recv:
  - 77
  - 78
  dns._trio_backend.StreamSocket.sendall:
  - 72
  - 73
  dns._trio_backend._HTTPTransport.__init__:
  - 184
  - 178
  - 182
  - 183
  dns._trio_backend._NetworkBackend.__init__:
  - 117
  dns._trio_backend._NetworkBackend.connect_tcp:
  - 128
  - 129
  - 130
  - 131
  - 133
  - 135
  - 136
  - 137
  - 140
  - 141
  - 143
  - 144
  - 149
  - 150
  - 151
  - 154
  - 155
  - 127
  dns._trio_backend._NetworkBackend.sleep:
  - 166
  dns._trio_backend._maybe_timeout:
  - 20
  - 21
  - 23
  dns.asyncbackend.get_backend:
  - 38
  - 39
  - 41
  - 44
  - 45
  - 48
  - 30
  dns.asyncbackend.get_default_backend:
  - 83
  - 84
  - 87
  dns.asyncbackend.set_default_backend:
  - 91
  - 100
  dns.asyncbackend.sniff:
  - 56
  - 64
  - 76
  - 69
  dns.asyncquery:
  - 18
  - 59
  dns.asyncquery._http3:
  - 721
  - 724
  - 727
  - 731
  - 733
  - 737
  - 739
  - 740
  - 743
  - 746
  - 749
  - 750
  - 753
  - 754
  - 755
  - 756
  - 757
  - 764
  - 765
  dns.asyncquery._inbound_xfr:
  - 848
  - 851
  - 852
  - 854
  - 855
  - 856
  - 858
  - 859
  - 860
  - 861
  - 866
  - 867
  - 871
  - 872
  - 873
  - 875
  - 876
  - 877
  - 878
  - 888
  - 889
  - 891
  dns.asyncquery._maybe_get_resolver:
  - 522
  - 526
  dns.asyncquery._read_exactly:
  - 350
  - 347
  - 348
  - 342
  dns.asyncquery._source_tuple:
  - 73
  - 69
  - 70
  - 71
  dns.asyncquery._timeout:
  - 83
  - 84
  - 85
  - 86
  dns.asyncquery.https:
  - 650
  - 657
  - 658
  - 664
  - 665
  - 674
  - 675
  - 548
  - 676
  - 677
  - 688
  - 561
  - 693
  - 566
  - 567
  - 569
  - 700
  - 573
  - 701
  - 575
  - 576
  - 578
  - 581
  - 584
  - 587
  - 588
  - 590
  - 593
  - 594
  - 598
  - 599
  - 614
  - 617
  - 621
  - 627
  - 629
  - 636
  - 637
  - 639
  dns.asyncquery.inbound_xfr:
  - 928
  - 932
  - 907
  - 943
  - 946
  - 947
  - 916
  - 917
  - 950
  - 919
  - 920
  - 921
  - 923
  - 924
  - 925
  - 926
  - 927
  dns.asyncquery.quic:
  - 827
  - 802
  - 834
  - 804
  - 835
  - 809
  - 811
  - 812
  - 785
  - 817
  - 818
  - 821
  - 822
  - 824
  - 825
  - 826
  - 795
  - 798
  dns.asyncquery.receive_tcp:
  - 363
  - 371
  - 372
  - 373
  - 374
  - 375
  dns.asyncquery.receive_udp:
  - 164
  - 134
  - 167
  - 173
  - 177
  - 147
  - 148
  - 152
  - 154
  dns.asyncquery.send_tcp:
  - 321
  - 329
  - 330
  - 335
  - 336
  - 337
  - 338
  dns.asyncquery.send_udp:
  - 97
  - 114
  - 115
  - 116
  - 117
  dns.asyncquery.tcp:
  - 417
  - 418
  - 422
  - 423
  - 425
  - 426
  - 427
  - 397
  - 431
  - 432
  - 441
  - 411
  - 412
  - 413
  dns.asyncquery.tls:
  - 480
  - 481
  - 482
  - 483
  - 485
  - 486
  - 487
  - 461
  - 498
  - 499
  - 476
  - 477
  - 478
  - 511
  dns.asyncquery.udp:
  - 224
  - 226
  - 227
  - 197
  - 210
  - 211
  - 212
  - 213
  - 214
  - 215
  - 243
  - 217
  - 218
  - 219
  - 220
  dns.asyncquery.udp_with_fallback:
  - 284
  - 301
  - 263
  dns.asyncresolver:
  - 18
  dns.asyncresolver.Resolver:
  - 46
  dns.asyncresolver.Resolver.canonical_name:
  - 225
  - 211
  dns.asyncresolver.Resolver.resolve:
  - 71
  - 103
  - 105
  - 74
  - 75
  - 76
  - 78
  - 110
  - 83
  - 89
  - 90
  - 91
  - 92
  - 61
  - 94
  dns.asyncresolver.Resolver.resolve_address:
  - 137
  - 138
  - 116
  - 134
  dns.asyncresolver.Resolver.resolve_name:
  - 147
  - 165
  - 166
  - 169
  - 170
  - 171
  - 172
  - 173
  - 174
  - 175
  - 178
  - 179
  - 180
  - 181
  - 185
  - 194
  - 198
  - 201
  - 204
  dns.asyncresolver.Resolver.try_ddr:
  - 256
  - 257
  - 232
  - 251
  - 252
  - 255
  dns.asyncresolver.canonical_name:
  - 345
  - 351
  dns.asyncresolver.get_default_resolver:
  - 267
  - 268
  - 269
  dns.asyncresolver.make_resolver_at:
  - 423
  - 424
  - 426
  - 427
  - 429
  - 430
  - 431
  - 432
  - 406
  dns.asyncresolver.reset_default_resolver:
  - 282
  - 275
  dns.asyncresolver.resolve:
  - 297
  - 306
  dns.asyncresolver.resolve_address:
  - 329
  - 323
  dns.asyncresolver.resolve_at:
  - 466
  - 467
  - 453
  dns.asyncresolver.resolve_name:
  - 341
  - 335
  dns.asyncresolver.try_ddr:
  - 361
  - 355
  dns.asyncresolver.zone_for_name:
  - 385
  - 389
  - 395
  - 371
  - 377
  - 378
  - 379
  - 380
  - 381
  dns.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__:
  - 256
  - 252
  dns.btreezone.Delegations.get_delegation:
  - 110
  - 117
  - 118
  - 119
  - 120
  - 122
  - 123
  - 125
  dns.btreezone.Delegations.is_glue:
  - 131
  - 132
  - 133
  - 134
  - 135
  dns.btreezone.ImmutableNode.__init__:
  - 64
  - 66
  - 67
  dns.btreezone.ImmutableNode.find_rdataset:
  - 80
  - 78
  dns.btreezone.ImmutableNode.get_rdataset:
  - 89
  - 91
  dns.btreezone.ImmutableVersion.__init__:
  - 269
  - 274
  - 277
  - 278
  - 279
  - 280
  - 282
  - 283
  - 285
  dns.btreezone.ImmutableVersion.bounds:
  - 288
  - 314
  - 315
  - 316
  - 317
  - 323
  - 324
  - 325
  - 327
  - 329
  - 330
  - 332
  - 333
  - 334
  - 335
  - 340
  - 343
  - 344
  - 346
  - 348
  dns.btreezone.Node.__init__:
  - 40
  - 44
  - 39
  dns.btreezone.WritableVersion.__init__:
  - 142
  - 143
  - 144
  - 146
  - 149
  - 151
  dns.btreezone.WritableVersion._is_origin:
  - 156
  dns.btreezone.WritableVersion._maybe_cow_with_name:
  - 168
  - 164
  - 165
  - 166
  dns.btreezone.WritableVersion.delete_node:
  - 204
  - 205
  - 206
  - 207
  - 208
  - 209
  - 211
  dns.btreezone.WritableVersion.delete_rdataset:
  - 232
  - 233
  - 235
  - 236
  - 237
  - 238
  dns.btreezone.WritableVersion.put_rdataset:
  - 224
  - 216
  - 217
  - 218
  - 221
  - 222
  - 223
  dns.btreezone.WritableVersion.update_glue_flag:
  - 199
  - 200
  - 173
  - 174
  - 177
  - 178
  - 180
  - 181
  - 183
  - 184
  - 185
  - 187
  - 188
  - 190
  - 191
  dns.btreezone.Zone:
  - 358
  dns.dnssec:
  - 168
  - 1193
  - 18
  - 175
  dns.dnssec.SimpleDeny.__init__:
  - 149
  dns.dnssec._find_candidate_keys:
  - 297
  - 298
  - 299
  - 302
  - 305
  - 308
  dns.dnssec._get_rrname_rdataset:
  - 317
  dns.dnssec._make_cdnskey:
  - 731
  - 733
  - 711
  dns.dnssec._make_dnskey:
  - 676
  - 695
  - 698
  - 699
  - 701
  - 702
  dns.dnssec._make_rrsig_signature_data:
  - 641
  - 644
  - 645
  - 647
  - 649
  - 650
  - 652
  - 654
  - 655
  - 656
  - 657
  - 658
  - 659
  - 660
  - 663
  - 608
  - 624
  - 625
  - 628
  - 629
  - 631
  - 635
  - 638
  dns.dnssec._sign:
  - 534
  - 536
  - 539
  - 550
  - 551
  - 553
  - 555
  - 556
  - 557
  - 564
  - 565
  - 566
  - 569
  - 572
  - 581
  - 586
  - 589
  - 593
  - 594
  - 598
  - 600
  - 489
  dns.dnssec._sign_zone_nsec:
  - 1152
  - 1177
  - 1155
  - 1162
  - 1163
  - 1164
  - 1165
  - 1166
  - 1169
  - 1173
  - 1174
  - 1113
  - 1178
  - 1147
  - 1181
  - 1182
  - 1151
  dns.dnssec._sign_zone_nsec._txn_add_nsec:
  - 1123
  - 1124
  - 1127
  - 1128
  - 1130
  - 1132
  - 1133
  - 1136
  - 1143
  - 1144
  - 1145
  dns.dnssec._validate:
  - 448
  - 453
  - 460
  - 461
  - 462
  - 465
  - 466
  - 469
  - 442
  - 411
  - 445
  - 446
  dns.dnssec._validate_rrsig:
  - 384
  - 387
  - 390
  - 391
  - 394
  - 373
  - 341
  - 376
  - 377
  - 380
  - 381
  - 382
  dns.dnssec._validate_signature:
  - 330
  - 325
  - 327
  dns.dnssec.algorithm_from_text:
  - 80
  - 73
  dns.dnssec.algorithm_to_text:
  - 91
  - 84
  dns.dnssec.cds_rdataset_to_ds_rdataset:
  - 865
  - 874
  - 877
  - 878
  - 879
  - 888
  dns.dnssec.default_rrset_signer:
  - 964
  - 966
  - 977
  - 978
  - 990
  dns.dnssec.dnskey_rdataset_to_cdnskey_rdataset:
  - 934
  - 937
  - 938
  - 939
  - 948
  - 927
  dns.dnssec.dnskey_rdataset_to_cds_rdataset:
  - 897
  - 916
  - 919
  - 920
  - 921
  dns.dnssec.key_id:
  - 109
  - 116
  - 118
  - 122
  - 124
  - 125
  dns.dnssec.make_cds:
  - 264
  - 283
  - 284
  dns.dnssec.make_ds:
  - 189
  - 218
  - 221
  - 222
  - 225
  - 229
  - 231
  - 233
  - 234
  - 235
  - 236
  - 237
  - 238
  - 242
  - 243
  - 244
  - 245
  - 247
  - 248
  - 249
  - 251
  - 252
  - 253
  - 255
  dns.dnssec.make_ds_rdataset:
  - 838
  - 839
  - 809
  - 841
  - 842
  - 845
  - 847
  - 849
  - 850
  - 851
  - 852
  - 854
  - 857
  - 858
  - 859
  - 829
  - 831
  dns.dnssec.nsec3_hash:
  - 771
  - 772
  - 776
  - 779
  - 749
  - 781
  - 782
  - 783
  - 798
  - 789
  - 790
  - 791
  - 794
  - 795
  - 796
  - 766
  - 799
  dns.dnssec.sign_zone:
  - 1057
  - 1058
  - 1059
  - 1060
  - 1062
  - 1063
  - 1065
  - 1070
  - 1071
  - 1073
  - 1075
  - 1079
  - 1080
  - 1081
  - 1082
  - 1085
  - 1087
  - 1088
  - 1090
  - 1093
  - 1105
  - 1007
  dns.dnssec.to_timestamp:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 95
  dns.dnssecalgs:
  - 33
  - 12
  - 31
  dns.dnssecalgs.base.GenericPrivateKey.from_pem:
  - 85
  dns.dnssecalgs.base.GenericPrivateKey.public_key:
  - 78
  dns.dnssecalgs.base.GenericPrivateKey.sign:
  - 74
  dns.dnssecalgs.base.GenericPrivateKey.to_pem:
  - 89
  dns.dnssecalgs.base.GenericPublicKey._ensure_algorithm_key_combination:
  - 29
  dns.dnssecalgs.base.GenericPublicKey.encode_key_bytes:
  - 25
  dns.dnssecalgs.base.GenericPublicKey.from_dnskey:
  - 46
  dns.dnssecalgs.base.GenericPublicKey.from_pem:
  - 51
  dns.dnssecalgs.base.GenericPublicKey.to_dnskey:
  - 40
  - 33
  - 34
  dns.dnssecalgs.base.GenericPublicKey.to_pem:
  - 56
  dns.dnssecalgs.base.GenericPublicKey.verify:
  - 21
  dns.dnssecalgs.cryptography.CryptographyPrivateKey.__init__:
  - 40
  - 42
  dns.dnssecalgs.cryptography.CryptographyPrivateKey.from_pem:
  - 56
  - 55
  dns.dnssecalgs.cryptography.CryptographyPrivateKey.public_key:
  - 49
  dns.dnssecalgs.cryptography.CryptographyPrivateKey.to_pem:
  - 64
  - 60
  - 61
  - 63
  dns.dnssecalgs.cryptography.CryptographyPublicKey.__init__:
  - 16
  - 14
  dns.dnssecalgs.cryptography.CryptographyPublicKey.from_pem:
  - 24
  - 25
  dns.dnssecalgs.cryptography.CryptographyPublicKey.to_pem:
  - 28
  dns.dnssecalgs.dsa.PrivateDSA.generate:
  - 98
  - 99
  dns.dnssecalgs.dsa.PrivateDSA.sign:
  - 77
  - 78
  - 79
  - 81
  - 84
  - 88
  - 89
  - 90
  - 92
  - 93
  dns.dnssecalgs.dsa.PublicDSA:
  - 16
  dns.dnssecalgs.dsa.PublicDSA.encode_key_bytes:
  - 33
  - 34
  - 35
  - 36
  - 37
  - 27
  - 28
  - 30
  dns.dnssecalgs.dsa.PublicDSA.from_dnskey:
  - 42
  - 44
  - 54
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 62
  dns.dnssecalgs.dsa.PublicDSA.verify:
  - 24
  - 21
  - 22
  dns.dnssecalgs.ecdsa.PrivateECDSA.generate:
  - 74
  - 75
  - 76
  dns.dnssecalgs.ecdsa.PrivateECDSA.sign:
  - 65
  - 68
  - 69
  - 56
  - 57
  - 61
  - 62
  - 63
  dns.dnssecalgs.ecdsa.PublicECDSA.encode_key_bytes:
  - 27
  - 28
  - 29
  dns.dnssecalgs.ecdsa.PublicECDSA.from_dnskey:
  - 33
  - 36
  - 37
  - 39
  - 40
  - 41
  dns.dnssecalgs.ecdsa.PublicECDSA.verify:
  - 24
  - 21
  - 22
  dns.dnssecalgs.ecdsa.PublicECDSAP256SHA256:
  - 83
  - 84
  dns.dnssecalgs.ecdsa.PublicECDSAP384SHA384:
  - 94
  - 95
  dns.dnssecalgs.eddsa.PrivateEDDSA.generate:
  - 46
  dns.dnssecalgs.eddsa.PrivateEDDSA.sign:
  - 40
  - 41
  - 38
  - 39
  dns.dnssecalgs.eddsa.PublicEDDSA.encode_key_bytes:
  - 16
  - 17
  dns.dnssecalgs.eddsa.PublicEDDSA.from_dnskey:
  - 24
  - 25
  - 23
  dns.dnssecalgs.eddsa.PublicEDDSA.verify:
  - 13
  dns.dnssecalgs.get_algorithm_cls:
  - 61
  - 53
  - 62
  - 63
  dns.dnssecalgs.get_algorithm_cls_from_dnskey:
  - 71
  - 80
  - 81
  - 82
  - 83
  - 85
  dns.dnssecalgs.register_algorithm_cls:
  - 106
  - 108
  - 110
  - 111
  - 113
  - 114
  - 116
  - 117
  - 119
  - 120
  - 122
  - 94
  dns.dnssecalgs.rsa.PrivateRSA.generate:
  - 75
  - 76
  - 79
  dns.dnssecalgs.rsa.PrivateRSA.sign:
  - 65
  - 66
  - 67
  - 69
  - 70
  dns.dnssecalgs.rsa.PublicRSA.encode_key_bytes:
  - 33
  - 23
  - 24
  - 25
  - 26
  - 27
  - 28
  - 30
  - 31
  dns.dnssecalgs.rsa.PublicRSA.from_dnskey:
  - 37
  - 39
  - 41
  - 42
  - 46
  - 47
  - 48
  - 49
  dns.dnssecalgs.rsa.PublicRSA.verify:
  - 20
  dns.dnssecalgs.rsa.PublicRSAMD5:
  - 86
  dns.dnssecalgs.rsa.PublicRSASHA1:
  - 95
  dns.dnssecalgs.rsa.PublicRSASHA1NSEC3SHA1:
  - 104
  dns.dnssecalgs.rsa.PublicRSASHA256:
  - 113
  dns.dnssecalgs.rsa.PublicRSASHA512:
  - 122
  dns.dnssectypes:
  - 18
  dns.dnssectypes.DSDigest:
  - 51
  dns.dnssectypes.NSEC3Hash:
  - 65
  dns.e164:
  - 18
  - 27
  dns.e164.from_e164:
  - 48
  - 33
  - 49
  - 47
  dns.e164.query:
  - 105
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 113
  - 93
  dns.e164.to_e164:
  - 76
  - 77
  - 78
  - 79
  - 81
  - 82
  - 83
  - 85
  - 57
  dns.edns:
  - 18
  dns.edns.CookieOption.__init__:
  - 457
  - 459
  - 454
  dns.edns.CookieOption.from_wire_parser:
  - 483
  dns.edns.CookieOption.to_text:
  - 472
  - 473
  - 474
  dns.edns.CookieOption.to_wire:
  - 464
  - 465
  - 466
  - 463
  dns.edns.ECSOption:
  - 194
  dns.edns.ECSOption.__init__:
  - 197
  - 232
  - 233
  - 207
  - 208
  - 239
  - 210
  - 240
  - 212
  - 214
  - 215
  - 216
  - 217
  - 219
  - 221
  - 222
  - 223
  dns.edns.ECSOption.from_text:
  - 290
  - 294
  - 299
  - 271
  - 273
  - 275
  - 276
  - 248
  - 281
  - 282
  - 283
  - 285
  - 286
  dns.edns.ECSOption.from_wire_parser:
  - 320
  - 321
  - 323
  - 327
  - 315
  - 316
  - 317
  - 318
  dns.edns.ECSOption.to_wire:
  - 305
  - 306
  - 303
  dns.edns.EDECode:
  - 331
  dns.edns.EDEOption:
  - 365
  dns.edns.EDEOption.__init__:
  - 377
  - 370
  - 379
  - 380
  dns.edns.EDEOption.from_wire_parser:
  - 416
  - 418
  - 422
  - 412
  - 413
  - 415
  dns.edns.EDEOption.to_text:
  - 386
  - 387
  - 388
  - 389
  - 390
  - 393
  dns.edns.EDEOption.to_wire:
  - 398
  - 399
  - 400
  - 402
  - 403
  dns.edns.GenericOption:
  - 163
  dns.edns.GenericOption.__init__:
  - 170
  - 171
  dns.edns.GenericOption.from_wire_parser:
  - 190
  dns.edns.GenericOption.to_wire:
  - 174
  - 175
  dns.edns.NSIDOption.__init__:
  - 427
  dns.edns.NSIDOption.from_wire_parser:
  - 449
  dns.edns.NSIDOption.to_text:
  - 440
  - 442
  - 438
  dns.edns.NSIDOption.to_wire:
  - 432
  - 431
  dns.edns.Option:
  - 69
  dns.edns.Option.__eq__:
  - 129
  - 125
  - 127
  dns.edns.Option.__ge__:
  - 149
  - 151
  dns.edns.Option.__gt__:
  - 154
  - 156
  dns.edns.Option.__init__:
  - 72
  - 76
  dns.edns.Option.__le__:
  - 144
  - 146
  dns.edns.Option.__lt__:
  - 139
  - 141
  dns.edns.Option.__ne__:
  - 136
  - 132
  - 134
  dns.edns.Option.__str__:
  - 159
  dns.edns.Option._cmp:
  - 112
  - 116
  - 117
  - 118
  - 120
  dns.edns.Option.from_wire_parser:
  - 100
  dns.edns.Option.to_generic:
  - 96
  - 90
  - 94
  dns.edns.Option.to_wire:
  - 79
  dns.edns.OptionType:
  - 36
  dns.edns.ReportChannelOption.__init__:
  - 489
  dns.edns.ReportChannelOption.from_wire_parser:
  - 502
  dns.edns.ReportChannelOption.to_text:
  - 496
  dns.edns.ReportChannelOption.to_wire:
  - 493
  dns.edns.get_option_class:
  - 521
  - 522
  - 515
  dns.edns.option_from_wire:
  - 560
  - 561
  - 562
  - 547
  dns.edns.option_from_wire_parser:
  - 530
  - 539
  - 540
  - 541
  dns.edns.register_type:
  - 566
  dns.entropy:
  - 114
  - 110
  dns.entropy.EntropyPool.__init__:
  - 36
  - 37
  - 39
  - 40
  - 41
  - 43
  dns.entropy.EntropyPool._maybe_seed:
  - 66
  - 67
  - 69
  - 71
  - 73
  - 74
  - 61
  - 63
  dns.entropy.EntropyPool._stir:
  - 49
  - 50
  dns.entropy.EntropyPool.random_16:
  - 89
  dns.entropy.EntropyPool.random_32:
  - 92
  dns.entropy.EntropyPool.random_8:
  - 78
  - 79
  - 80
  - 81
  - 82
  dns.entropy.EntropyPool.random_between:
  - 96
  - 98
  - 107
  - 101
  dns.entropy.EntropyPool.stir:
  - 58
  dns.entropy.between:
  - 128
  - 130
  - 127
  dns.entropy.random_16:
  - 120
  - 121
  - 123
  dns.enum:
  - 21
  dns.enum.IntEnum._check_value:
  - 35
  - 36
  - 38
  - 39
  dns.enum.IntEnum._missing_:
  - 27
  - 28
  - 29
  dns.enum.IntEnum._short_name:
  - 97
  dns.enum.IntEnum.from_text:
  - 44
  - 49
  - 50
  - 52
  - 53
  - 54
  - 55
  - 56
  dns.enum.IntEnum.make:
  - 73
  - 86
  - 87
  - 88
  - 89
  dns.enum.IntEnum.to_text:
  - 66
  - 67
  - 68
  - 61
  - 63
  dns.exception:
  - 18
  dns.exception.AlgorithmKeyMismatch:
  - 148
  dns.exception.DNSException:
  - 52
  - 29
  dns.exception.DNSException.__init__:
  - 66
  - 67
  - 69
  - 56
  - 57
  - 59
  - 60
  - 62
  - 63
  dns.exception.DNSException.__str__:
  - 112
  - 106
  - 108
  - 109
  dns.exception.DNSException._check_kwargs:
  - 81
  - 83
  dns.exception.DNSException._check_params:
  - 72
  - 75
  - 76
  dns.exception.DNSException._fmt_kwargs:
  - 97
  - 98
  - 100
  - 88
  - 94
  - 95
  dns.exception.DeniedByPolicy:
  - 156
  dns.exception.ExceptionWrapper.__exit__:
  - 167
  dns.exception.FormError:
  - 116
  dns.exception.SyntaxError:
  - 120
  dns.exception.Timeout:
  - 132
  dns.exception.Timeout.__init__:
  - 140
  dns.exception.TooBig:
  - 128
  dns.exception.UnexpectedEnd:
  - 124
  dns.exception.UnsupportedAlgorithm:
  - 144
  dns.exception.ValidationFailure:
  - 152
  dns.flags:
  - 18
  dns.flags._from_text:
  - 53
  - 54
  - 55
  dns.flags._to_text:
  - 64
  - 61
  - 62
  - 63
  dns.flags.edns_from_text:
  - 88
  - 94
  dns.flags.edns_to_text:
  - 104
  - 98
  dns.flags.from_text:
  - 74
  - 68
  dns.flags.to_text:
  - 84
  - 78
  dns.grange:
  - 18
  dns.grange.from_text:
  - 65
  - 69
  - 42
  - 45
  - 46
  - 47
  - 50
  - 51
  - 54
  - 26
  - 59
  - 61
  - 62
  dns.immutable.Dict.__getitem__:
  - 31
  dns.immutable.Dict.__hash__:
  - 34
  - 36
  - 37
  - 38
  dns.immutable.Dict.__init__:
  - 17
  - 26
  - 27
  - 23
  dns.immutable.Dict.__iter__:
  - 46
  dns.immutable.Dict.__len__:
  - 43
  dns.immutable.constify:
  - 64
  - 65
  - 66
  - 67
  - 50
  - 53
  - 54
  - 55
  - 57
  - 60
  - 61
  - 62
  - 63
  dns.inet:
  - 18
  dns.inet.af_for_address:
  - 91
  - 76
  - 87
  dns.inet.any_for_af:
  - 176
  - 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:
  - 99
  - 100
  - 101
  - 18
  - 27
  dns.ipv6.canonicalize:
  - 217
  - 210
  dns.ipv6.inet_aton:
  - 128
  - 131
  - 133
  - 135
  - 137
  - 142
  - 143
  - 144
  - 145
  - 146
  - 152
  - 153
  - 156
  - 157
  - 162
  - 163
  - 164
  - 168
  - 169
  - 170
  - 173
  - 174
  - 176
  - 177
  - 179
  - 181
  - 182
  - 184
  - 190
  - 105
  - 118
  - 119
  - 123
  - 124
  - 125
  - 126
  dns.ipv6.inet_ntoa:
  - 31
  - 39
  - 41
  - 44
  - 46
  - 50
  - 51
  - 52
  - 53
  - 62
  - 63
  - 64
  - 67
  - 71
  - 74
  - 77
  - 80
  - 81
  - 83
  - 87
  - 90
  - 92
  - 95
  dns.ipv6.is_mapped:
  - 206
  - 199
  dns.message:
  - 18
  dns.message.AnswerForNXDOMAIN:
  - 102
  dns.message.BadEDNS:
  - 62
  dns.message.BadTSIG:
  - 67
  dns.message.ChainTooLong:
  - 98
  dns.message.ChainingResult:
  - 967
  dns.message.CopyMode:
  - 1849
  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:
  - 789
  - 790
  dns.message.Message._make_tsig:
  - 667
  - 678
  dns.message.Message._parse_special_rr_header:
  - 956
  - 949
  - 950
  - 957
  dns.message.Message.additional:
  - 199
  dns.message.Message.answer:
  - 181
  dns.message.Message.authority:
  - 190
  dns.message.Message.edns:
  - 847
  dns.message.Message.ednsflags:
  - 864
  - 861
  - 854
  - 863
  dns.message.Message.extended_errors:
  - 934
  - 935
  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:
  - 930
  dns.message.Message.get_rrset:
  - 485
  - 445
  dns.message.Message.had_tsig:
  - 785
  dns.message.Message.is_response:
  - 289
  - 312
  - 292
  - 301
  - 303
  - 309
  - 310
  - 280
  - 313
  - 286
  dns.message.Message.keyalgorithm:
  - 761
  - 762
  dns.message.Message.keyname:
  - 754
  dns.message.Message.mac:
  - 769
  - 770
  dns.message.Message.opcode:
  - 915
  - 919
  dns.message.Message.options:
  - 876
  - 877
  dns.message.Message.payload:
  - 868
  - 869
  dns.message.Message.question:
  - 172
  dns.message.Message.rcode:
  - 897
  - 901
  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:
  - 922
  - 927
  dns.message.Message.set_rcode:
  - 904
  - 908
  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:
  - 777
  - 778
  dns.message.Message.use_edns:
  - 801
  - 835
  - 837
  - 838
  - 841
  - 824
  - 826
  - 828
  dns.message.Message.use_tsig:
  - 736
  - 738
  - 740
  - 690
  - 724
  - 727
  - 728
  - 730
  - 731
  - 732
  - 733
  - 735
  dns.message.Message.want_dnssec:
  - 891
  - 883
  - 893
  - 894
  dns.message.MessageSection:
  - 110
  dns.message.NoPreviousName:
  - 106
  dns.message.NotQueryResponse:
  - 94
  dns.message.QueryMessage.canonical_name:
  - 1089
  - 1076
  dns.message.QueryMessage.resolve_chaining:
  - 1027
  - 1030
  - 1062
  - 1000
  - 1033
  - 1065
  - 1035
  - 1066
  - 1038
  - 1039
  - 1040
  - 1070
  - 1073
  - 1015
  - 1017
  - 1051
  - 1053
  - 1055
  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:
  - 1419
  dns.message._TextReader.__init__:
  - 1441
  dns.message._TextReader._header_line:
  - 1456
  - 1458
  - 1460
  - 1461
  - 1462
  - 1464
  - 1465
  - 1466
  - 1468
  - 1469
  - 1470
  - 1472
  - 1473
  - 1476
  - 1477
  - 1478
  - 1480
  - 1481
  - 1482
  - 1483
  - 1485
  - 1486
  - 1487
  - 1488
  - 1489
  - 1490
  - 1491
  - 1494
  dns.message._TextReader._make_message:
  - 1609
  - 1610
  - 1612
  - 1613
  - 1614
  - 1615
  - 1616
  dns.message._TextReader._question_line:
  - 1507
  - 1509
  - 1510
  - 1514
  - 1515
  - 1516
  - 1523
  - 1524
  - 1527
  - 1497
  - 1530
  - 1501
  - 1502
  - 1503
  dns.message._TextReader._rr_line:
  - 1540
  - 1541
  - 1542
  - 1546
  - 1548
  - 1549
  - 1553
  - 1554
  - 1555
  - 1563
  - 1564
  - 1565
  - 1572
  - 1573
  - 1576
  - 1577
  - 1579
  - 1581
  - 1582
  - 1583
  - 1591
  - 1595
  - 1605
  - 1606
  - 1533
  dns.message._TextReader.read:
  - 1632
  - 1660
  - 1635
  - 1640
  - 1659
  - 1642
  - 1662
  - 1645
  - 1647
  - 1650
  - 1621
  - 1657
  - 1627
  - 1628
  - 1661
  - 1630
  - 1631
  dns.message._WireReader:
  - 1112
  dns.message._WireReader.__init__:
  - 1139
  dns.message._WireReader._add_error:
  - 1167
  dns.message._WireReader._get_question:
  - 1156
  - 1157
  - 1158
  - 1159
  - 1162
  - 1151
  dns.message._WireReader._get_section:
  - 1170
  - 1179
  - 1181
  - 1182
  - 1183
  - 1186
  - 1187
  - 1193
  - 1197
  - 1202
  - 1203
  - 1208
  - 1209
  - 1215
  - 1216
  - 1218
  - 1219
  - 1220
  - 1221
  - 1222
  - 1224
  - 1225
  - 1226
  - 1227
  - 1228
  - 1229
  - 1232
  - 1234
  - 1236
  - 1241
  - 1247
  - 1249
  - 1259
  - 1260
  - 1262
  - 1264
  - 1265
  - 1266
  dns.message._WireReader.read:
  - 1280
  - 1281
  - 1283
  - 1284
  - 1288
  - 1289
  - 1291
  - 1292
  - 1293
  - 1294
  - 1296
  - 1297
  - 1299
  - 1300
  - 1271
  - 1274
  - 1276
  - 1279
  dns.message._message_factory_from_opcode:
  - 1104
  - 1105
  - 1102
  dns.message.from_file:
  - 1740
  - 1741
  - 1743
  - 1745
  - 1719
  dns.message.from_text:
  - 1674
  - 1708
  - 1711
  dns.message.from_wire:
  - 1378
  - 1410
  - 1412
  - 1320
  - 1387
  - 1398
  - 1400
  dns.message.make_query:
  - 1824
  - 1825
  - 1764
  - 1830
  - 1832
  - 1834
  - 1836
  - 1838
  - 1842
  - 1843
  - 1844
  - 1819
  - 1820
  - 1821
  - 1822
  - 1823
  dns.message.make_response:
  - 1920
  - 1921
  - 1922
  - 1923
  - 1924
  - 1927
  - 1928
  - 1930
  - 1931
  - 1934
  - 1867
  - 1906
  - 1908
  - 1909
  - 1910
  - 1912
  - 1914
  - 1915
  - 1917
  - 1918
  - 1919
  dns.name:
  - 898
  - 37
  - 1137
  - 18
  - 1138
  - 1140
  - 1141
  - 310
  - 311
  - 1142
  - 313
  - 314
  - 315
  - 316
  - 895
  dns.name.AbsoluteConcatenation:
  - 112
  dns.name.BadEscape:
  - 87
  dns.name.BadLabelType:
  - 95
  dns.name.BadPointer:
  - 91
  dns.name.EmptyLabel:
  - 83
  dns.name.IDNA2003Codec:
  - 200
  dns.name.IDNA2003Codec.__init__:
  - 210
  - 203
  dns.name.IDNA2003Codec.decode:
  - 224
  - 225
  - 226
  - 227
  - 230
  dns.name.IDNA2003Codec.encode:
  - 216
  - 219
  - 214
  dns.name.IDNA2008Codec:
  - 236
  dns.name.IDNA2008Codec.__init__:
  - 267
  - 245
  dns.name.IDNA2008Codec.decode:
  - 295
  - 296
  - 297
  - 299
  - 302
  - 303
  - 304
  - 305
  dns.name.IDNA2008Codec.encode:
  - 289
  - 274
  - 276
  - 277
  - 278
  - 281
  - 284
  - 286
  - 287
  dns.name.IDNACodec:
  - 176
  dns.name.IDNACodec.decode:
  - 192
  - 196
  - 189
  - 191
  dns.name.IDNACodec.is_idna:
  - 182
  dns.name.IDNAException:
  - 127
  dns.name.IDNAException.__init__:
  - 135
  dns.name.LabelTooLong:
  - 108
  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:
  - 49
  dns.name.NameTooLong:
  - 104
  dns.name.NeedAbsoluteNameOrOrigin:
  - 99
  dns.name.NeedSubdomainOfOrigin:
  - 139
  dns.name.NoIDNA2008:
  - 122
  dns.name.NoParent:
  - 117
  dns.name._absolute_predecessor:
  - 1185
  - 1186
  - 1189
  - 1192
  - 1194
  - 1199
  - 1200
  - 1201
  - 1202
  - 1203
  - 1204
  - 1182
  - 1183
  dns.name._absolute_successor:
  - 1218
  - 1251
  - 1224
  - 1257
  - 1258
  - 1229
  - 1261
  - 1231
  - 1264
  - 1236
  - 1240
  - 1242
  - 1215
  dns.name._escapify:
  - 165
  - 166
  - 168
  - 169
  - 147
  - 150
  - 154
  - 155
  - 156
  - 157
  - 158
  dns.name._handle_relativity_and_call:
  - 1281
  - 1282
  - 1283
  - 1284
  - 1286
  - 1287
  - 1288
  - 1279
  dns.name._maybe_convert_to_binary:
  - 356
  - 359
  - 358
  - 351
  dns.name._pad_to_max_label:
  - 1168
  - 1169
  - 1172
  - 1166
  dns.name._pad_to_max_name:
  - 1153
  - 1155
  - 1156
  - 1160
  - 1161
  - 1162
  - 1150
  dns.name._validate_labels:
  - 321
  - 332
  - 336
  - 337
  - 339
  - 341
  - 344
  - 346
  dns.name._wire_length:
  - 1146
  dns.name._wire_length.<lambda1>:
  - 1146
  dns.name.from_text:
  - 1026
  - 1028
  - 1029
  - 1030
  - 1031
  - 1032
  - 1033
  - 1034
  - 1035
  - 1036
  - 1042
  - 1045
  - 1047
  - 1049
  - 1050
  - 1051
  - 1053
  - 1055
  - 1061
  - 1063
  - 1064
  - 1066
  - 1067
  - 1068
  - 1069
  - 990
  - 1004
  - 1005
  - 1007
  - 1016
  - 1017
  - 1019
  dns.name.from_unicode:
  - 904
  - 921
  - 923
  - 930
  - 932
  - 934
  - 935
  - 936
  - 937
  - 938
  - 939
  - 940
  - 941
  - 947
  - 950
  - 952
  - 954
  - 955
  - 956
  - 958
  - 960
  - 966
  - 968
  - 969
  - 971
  - 973
  - 974
  - 975
  dns.name.from_wire:
  - 1129
  - 1130
  - 1109
  - 1127
  dns.name.from_wire_parser:
  - 1090
  - 1091
  - 1093
  - 1094
  - 1095
  - 1096
  - 1097
  - 1100
  - 1103
  - 1104
  - 1105
  - 1076
  dns.name.is_all_ascii:
  - 979
  - 980
  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:
  - 48
  dns.opcode.from_flags:
  - 72
  - 65
  dns.opcode.from_text:
  - 52
  - 61
  dns.opcode.is_update:
  - 108
  - 101
  dns.opcode.to_flags:
  - 76
  dns.opcode.to_text:
  - 88
  - 97
  dns.query:
  - 18
  - 68
  - 69
  dns.query.BadResponse:
  - 191
  dns.query.HTTPVersion:
  - 428
  dns.query.NoDOH:
  - 195
  dns.query.NoDOQ:
  - 200
  dns.query.UDPMode:
  - 1531
  dns.query.UnexpectedSource:
  - 187
  dns.query._HTTPTransport.__init__:
  - 144
  - 145
  - 146
  - 140
  dns.query._NetworkBackend.__init__:
  - 78
  dns.query._NetworkBackend.connect_tcp:
  - 88
  - 89
  - 90
  - 91
  - 92
  - 94
  - 96
  - 97
  - 98
  - 101
  - 102
  - 103
  - 104
  - 105
  - 107
  - 113
  - 114
  - 115
  - 117
  - 120
  dns.query._addresses_equal:
  - 257
  - 258
  dns.query._check_status:
  - 660
  - 661
  - 663
  - 664
  - 666
  - 668
  - 670
  dns.query._compute_times:
  - 209
  - 210
  dns.query._connect:
  - 1194
  - 1195
  - 1197
  - 1198
  - 1199
  - 1200
  dns.query._destination_and_source:
  - 288
  - 320
  - 291
  - 294
  - 295
  - 296
  - 298
  - 306
  - 311
  - 317
  - 318
  - 319
  dns.query._expiration_for_this_attempt:
  - 65
  - 63
  dns.query._find_header:
  - 651
  - 653
  - 654
  dns.query._http3:
  - 704
  - 706
  - 732
  - 712
  - 715
  - 718
  - 719
  - 720
  - 721
  - 690
  - 722
  - 723
  - 693
  - 724
  - 696
  - 731
  - 700
  - 703
  dns.query._inbound_xfr:
  - 1551
  - 1554
  - 1555
  - 1556
  - 1557
  - 1558
  - 1560
  - 1561
  - 1562
  - 1567
  - 1568
  - 1572
  - 1573
  - 1575
  - 1576
  - 1577
  - 1578
  - 1588
  - 1589
  - 1591
  dns.query._make_dot_ssl_context:
  - 1322
  dns.query._make_socket:
  - 408
  - 410
  - 407
  dns.query._matches_destination:
  - 273
  - 267
  - 269
  - 270
  dns.query._maybe_get_resolver:
  - 419
  - 423
  dns.query._net_read:
  - 1088
  - 1089
  - 1091
  - 1094
  - 1096
  - 1080
  dns.query._net_write:
  - 1101
  - 1106
  - 1109
  - 1111
  - 1113
  dns.query._remaining:
  - 56
  - 57
  - 54
  dns.query._tls_handshake:
  - 1280
  - 1282
  - 1277
  dns.query._udp_recv:
  - 744
  - 738
  - 746
  dns.query._udp_send:
  - 750
  - 756
  - 757
  - 759
  - 761
  dns.query._wait_for:
  - 224
  - 226
  - 228
  - 230
  - 232
  - 233
  - 234
  - 237
  - 238
  - 240
  dns.query._wait_for_readable:
  - 245
  dns.query._wait_for_writable:
  - 249
  dns.query.default_socket_factory:
  - 176
  dns.query.https:
  - 514
  - 644
  - 645
  - 519
  - 520
  - 522
  - 526
  - 528
  - 529
  - 531
  - 534
  - 537
  - 540
  - 541
  - 543
  - 544
  - 545
  - 549
  - 564
  - 566
  - 569
  - 577
  - 584
  - 585
  - 587
  - 461
  - 598
  - 605
  - 606
  - 612
  - 620
  - 621
  - 622
  - 632
  - 637
  dns.query.inbound_xfr:
  - 1760
  - 1761
  - 1763
  - 1765
  - 1769
  - 1770
  - 1771
  - 1772
  - 1774
  - 1780
  - 1783
  - 1784
  - 1785
  - 1724
  dns.query.make_socket:
  - 353
  - 329
  - 346
  - 348
  - 349
  - 350
  dns.query.make_ssl_context:
  - 1313
  - 1314
  - 1290
  - 1305
  - 1306
  - 1311
  dns.query.make_ssl_socket:
  - 388
  - 389
  - 390
  - 392
  - 364
  dns.query.quic:
  - 1508
  - 1509
  - 1447
  - 1512
  - 1513
  - 1514
  - 1515
  - 1516
  - 1517
  - 1488
  - 1491
  - 1524
  - 1525
  - 1495
  - 1498
  - 1499
  - 1502
  dns.query.receive_tcp:
  - 1154
  - 1179
  - 1180
  - 1181
  - 1182
  - 1183
  dns.query.receive_udp:
  - 864
  - 806
  - 878
  - 881
  - 887
  - 857
  - 858
  - 891
  - 893
  - 862
  dns.query.send_tcp:
  - 1121
  - 1134
  - 1135
  - 1140
  - 1141
  - 1142
  - 1143
  dns.query.send_udp:
  - 770
  - 786
  - 787
  - 788
  - 789
  dns.query.tcp:
  - 1248
  - 1249
  - 1250
  - 1215
  - 1252
  - 1256
  - 1258
  - 1260
  - 1261
  - 1262
  - 1266
  - 1247
  dns.query.tls:
  - 1408
  - 1409
  - 1411
  - 1386
  - 1418
  - 1419
  - 1420
  - 1390
  - 1421
  - 1339
  - 1425
  - 1402
  - 1403
  - 1404
  dns.query.udp:
  - 960
  - 961
  - 964
  - 966
  - 967
  - 913
  - 983
  - 955
  - 956
  - 959
  dns.query.udp_with_fallback:
  - 1049
  - 1005
  - 1065
  dns.query.xfr:
  - 1696
  - 1697
  - 1698
  - 1699
  - 1703
  - 1704
  - 1705
  - 1612
  - 1708
  - 1709
  - 1710
  - 1687
  - 1688
  - 1689
  - 1690
  - 1691
  - 1692
  - 1695
  dns.query.xfr.DummyTransactionManager.writer:
  - 1685
  dns.quic:
  - 8
  - 39
  dns.quic._asyncio.AsyncioQuicConnection.__init__:
  - 97
  - 98
  - 99
  - 95
  dns.quic._asyncio.AsyncioQuicConnection._handle_events:
  - 162
  - 163
  - 165
  - 166
  - 168
  - 169
  - 170
  - 171
  - 172
  - 173
  - 175
  - 177
  - 178
  - 179
  - 180
  - 181
  - 182
  - 186
  - 187
  - 188
  - 189
  - 190
  - 191
  - 193
  - 194
  - 195
  - 196
  - 197
  - 198
  - 201
  - 204
  dns.quic._asyncio.AsyncioQuicConnection._receiver:
  - 129
  - 130
  - 106
  - 107
  - 110
  - 113
  - 116
  - 119
  - 121
  - 124
  dns.quic._asyncio.AsyncioQuicConnection._sender:
  - 144
  - 146
  - 147
  - 150
  - 151
  - 153
  - 156
  - 157
  dns.quic._asyncio.AsyncioQuicConnection._wait_for_wake_timer:
  - 139
  - 140
  dns.quic._asyncio.AsyncioQuicConnection._wakeup:
  - 135
  dns.quic._asyncio.AsyncioQuicConnection.close:
  - 229
  - 230
  - 231
  - 233
  - 235
  - 236
  - 238
  - 239
  - 243
  - 244
  - 247
  - 248
  dns.quic._asyncio.AsyncioQuicConnection.make_stream:
  - 224
  - 218
  - 221
  - 223
  dns.quic._asyncio.AsyncioQuicConnection.run:
  - 211
  - 213
  - 214
  dns.quic._asyncio.AsyncioQuicConnection.write:
  - 208
  - 207
  dns.quic._asyncio.AsyncioQuicManager.__aexit__:
  - 273
  - 274
  - 275
  dns.quic._asyncio.AsyncioQuicManager.__init__:
  - 255
  dns.quic._asyncio.AsyncioQuicManager.connect:
  - 264
  - 260
  - 263
  dns.quic._asyncio.AsyncioQuicStream.__aexit__:
  - 89
  - 87
  dns.quic._asyncio.AsyncioQuicStream.__init__:
  - 29
  - 30
  dns.quic._asyncio.AsyncioQuicStream._add_input:
  - 74
  - 76
  dns.quic._asyncio.AsyncioQuicStream._wait_for_wake_up:
  - 34
  dns.quic._asyncio.AsyncioQuicStream.close:
  - 79
  dns.quic._asyncio.AsyncioQuicStream.receive:
  - 64
  - 65
  - 66
  - 67
  - 59
  - 60
  - 61
  - 62
  dns.quic._asyncio.AsyncioQuicStream.send:
  - 70
  - 71
  dns.quic._asyncio.AsyncioQuicStream.wait_for:
  - 43
  - 38
  - 39
  dns.quic._asyncio.AsyncioQuicStream.wait_for_end:
  - 50
  - 51
  - 54
  dns.quic._asyncio_manager_factory:
  - 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__:
  - 98
  - 99
  - 100
  - 102
  - 103
  - 106
  - 108
  - 109
  - 110
  - 111
  - 112
  - 114
  dns.quic._sync.SyncQuicConnection._drain_wakeup:
  - 130
  dns.quic._sync.SyncQuicConnection._handle_events:
  - 171
  - 172
  - 174
  - 175
  - 177
  - 178
  - 179
  - 181
  - 182
  - 183
  - 185
  - 187
  - 188
  - 189
  - 191
  - 192
  - 193
  - 196
  - 197
  - 198
  - 199
  - 200
  - 201
  - 204
  - 206
  - 207
  - 208
  dns.quic._sync.SyncQuicConnection._read:
  - 121
  - 125
  dns.quic._sync.SyncQuicConnection._worker:
  - 164
  - 166
  - 136
  - 137
  - 138
  - 142
  - 143
  - 144
  - 145
  - 147
  - 148
  - 150
  - 151
  - 153
  dns.quic._sync.SyncQuicConnection.close:
  - 256
  - 257
  - 258
  - 250
  - 252
  - 253
  - 255
  dns.quic._sync.SyncQuicConnection.close_stream:
  - 246
  dns.quic._sync.SyncQuicConnection.make_stream:
  - 240
  - 234
  - 237
  - 239
  dns.quic._sync.SyncQuicConnection.run:
  - 228
  - 230
  - 231
  dns.quic._sync.SyncQuicConnection.send_data:
  - 224
  - 225
  - 223
  dns.quic._sync.SyncQuicConnection.send_headers:
  - 217
  - 218
  - 219
  dns.quic._sync.SyncQuicConnection.write:
  - 212
  - 213
  dns.quic._sync.SyncQuicManager.__exit__:
  - 304
  - 305
  - 303
  dns.quic._sync.SyncQuicManager.__init__:
  - 265
  - 266
  dns.quic._sync.SyncQuicManager.closed:
  - 287
  dns.quic._sync.SyncQuicManager.connect:
  - 281
  - 282
  - 278
  dns.quic._sync.SyncQuicManager.save_session_ticket:
  - 291
  dns.quic._sync.SyncQuicManager.save_token:
  - 295
  dns.quic._sync.SyncQuicStream.__exit__:
  - 90
  - 92
  dns.quic._sync.SyncQuicStream.__init__:
  - 33
  - 34
  - 35
  dns.quic._sync.SyncQuicStream._add_input:
  - 80
  - 78
  dns.quic._sync.SyncQuicStream.close:
  - 84
  dns.quic._sync.SyncQuicStream.receive:
  - 64
  - 66
  - 68
  - 69
  - 71
  - 60
  - 61
  - 62
  dns.quic._sync.SyncQuicStream.send:
  - 74
  - 75
  dns.quic._sync.SyncQuicStream.wait_for:
  - 41
  - 45
  - 39
  dns.quic._sync.SyncQuicStream.wait_for_end:
  - 56
  - 51
  - 53
  dns.quic._trio.TrioQuicConnection.__init__:
  - 90
  - 91
  - 92
  - 93
  dns.quic._trio.TrioQuicConnection._handle_events:
  - 137
  - 138
  - 140
  - 141
  - 143
  - 144
  - 145
  - 146
  - 147
  - 148
  - 150
  - 152
  - 153
  - 154
  - 155
  - 156
  - 157
  - 161
  - 162
  - 163
  - 164
  - 165
  - 166
  - 168
  - 169
  - 170
  - 171
  - 172
  - 174
  - 177
  dns.quic._trio.TrioQuicConnection._worker:
  - 128
  - 99
  - 100
  - 101
  - 131
  - 103
  - 132
  - 105
  - 106
  - 114
  - 115
  - 117
  - 118
  - 120
  - 121
  - 126
  - 127
  dns.quic._trio.TrioQuicConnection.close:
  - 208
  - 209
  - 210
  - 212
  - 214
  - 215
  - 216
  dns.quic._trio.TrioQuicConnection.make_stream:
  - 193
  - 194
  - 196
  - 198
  - 199
  - 201
  - 202
  dns.quic._trio.TrioQuicConnection.run:
  - 186
  - 188
  - 189
  - 190
  dns.quic._trio.TrioQuicConnection.write:
  - 180
  - 182
  - 183
  dns.quic._trio.TrioQuicManager.__aexit__:
  - 248
  - 249
  - 247
  dns.quic._trio.TrioQuicManager.__init__:
  - 228
  dns.quic._trio.TrioQuicManager.connect:
  - 234
  - 237
  - 238
  dns.quic._trio.TrioQuicStream.__aexit__:
  - 82
  - 84
  dns.quic._trio.TrioQuicStream.__init__:
  - 29
  - 30
  dns.quic._trio.TrioQuicStream._add_input:
  - 69
  - 71
  dns.quic._trio.TrioQuicStream.close:
  - 74
  dns.quic._trio.TrioQuicStream.receive:
  - 49
  - 50
  - 52
  - 54
  - 55
  - 56
  - 58
  - 59
  - 60
  - 61
  dns.quic._trio.TrioQuicStream.send:
  - 65
  - 66
  dns.quic._trio.TrioQuicStream.wait_for:
  - 34
  - 38
  dns.quic._trio.TrioQuicStream.wait_for_end:
  - 43
  - 46
  dns.quic._trio_context_factory:
  - 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:
  - 80
  dns.rcode.from_flags:
  - 97
  - 109
  dns.rcode.from_text:
  - 84
  - 93
  dns.rcode.to_flags:
  - 113
  - 122
  dns.rcode.to_text:
  - 130
  - 139
  - 141
  dns.rdata:
  - 18
  dns.rdata.GenericRdata:
  - 615
  dns.rdata.GenericRdata.__init__:
  - 629
  dns.rdata.GenericRdata._to_wire:
  - 655
  dns.rdata.GenericRdata.from_text:
  - 644
  - 645
  - 647
  - 648
  - 649
  - 650
  - 652
  dns.rdata.GenericRdata.from_wire_parser:
  - 662
  dns.rdata.GenericRdata.to_text:
  - 638
  dns.rdata.NoRelativeRdataOrdering:
  - 53
  dns.rdata.Rdata:
  - 132
  dns.rdata.Rdata.__eq__:
  - 353
  - 355
  - 339
  - 341
  - 346
  - 348
  - 351
  dns.rdata.Rdata.__ge__:
  - 385
  - 386
  - 391
  dns.rdata.Rdata.__getstate__:
  - 168
  - 167
  dns.rdata.Rdata.__gt__:
  - 400
  - 394
  - 395
  dns.rdata.Rdata.__hash__:
  - 403
  dns.rdata.Rdata.__init__:
  - 148
  - 141
  - 149
  dns.rdata.Rdata.__le__:
  - 376
  - 377
  - 382
  dns.rdata.Rdata.__lt__:
  - 368
  - 373
  - 367
  dns.rdata.Rdata.__ne__:
  - 360
  - 362
  - 364
  dns.rdata.Rdata.__repr__:
  - 269
  - 270
  - 273
  - 276
  - 278
  - 281
  dns.rdata.Rdata.__setstate__:
  - 177
  - 172
  - 173
  - 174
  dns.rdata.Rdata.__str__:
  - 286
  dns.rdata.Rdata._as_bool:
  - 579
  dns.rdata.Rdata._as_bytes:
  - 488
  - 489
  - 490
  - 491
  - 492
  - 496
  - 498
  dns.rdata.Rdata._as_int:
  - 547
  - 549
  - 551
  dns.rdata.Rdata._as_ipv4_address:
  - 557
  - 558
  - 559
  - 560
  - 561
  - 562
  dns.rdata.Rdata._as_ipv6_address:
  - 568
  - 569
  - 570
  - 571
  - 572
  - 573
  dns.rdata.Rdata._as_name:
  - 507
  - 508
  - 509
  dns.rdata.Rdata._as_rdataclass:
  - 474
  dns.rdata.Rdata._as_rdatatype:
  - 478
  dns.rdata.Rdata._as_ttl:
  - 586
  - 587
  - 588
  - 589
  dns.rdata.Rdata._as_tuple:
  - 602
  - 598
  dns.rdata.Rdata._as_uint16:
  - 523
  - 525
  dns.rdata.Rdata._as_uint32:
  - 531
  - 533
  dns.rdata.Rdata._as_uint48:
  - 539
  - 541
  dns.rdata.Rdata._as_uint8:
  - 515
  - 517
  dns.rdata.Rdata._cmp:
  - 289
  - 321
  - 322
  - 325
  - 329
  - 331
  - 333
  - 308
  - 311
  - 312
  - 315
  - 318
  - 319
  dns.rdata.Rdata._get_all_slots:
  - 153
  - 154
  dns.rdata.Rdata._processing_order:
  - 608
  - 609
  dns.rdata.Rdata.covers:
  - 180
  dns.rdata.Rdata.extended_rdatatype:
  - 201
  - 194
  dns.rdata.Rdata.replace:
  - 451
  - 458
  - 428
  - 461
  - 464
  - 465
  - 466
  - 440
  - 444
  - 445
  - 447
  dns.rdata.Rdata.to_digestable:
  - 264
  - 259
  dns.rdata.Rdata.to_generic:
  - 256
  - 250
  - 254
  dns.rdata.Rdata.to_text:
  - 209
  dns.rdata.Rdata.to_wire:
  - 232
  - 237
  - 242
  - 245
  - 246
  - 247
  dns.rdata.RdatatypeExists:
  - 894
  dns.rdata._base64ify:
  - 88
  - 84
  dns.rdata._escapify:
  - 97
  - 99
  - 100
  - 101
  - 102
  - 105
  - 106
  - 107
  - 108
  - 109
  dns.rdata._hexify:
  - 80
  - 76
  dns.rdata._truncate_bitmap:
  - 120
  - 121
  - 116
  dns.rdata._wordbreak:
  - 65
  - 66
  - 67
  - 68
  - 61
  dns.rdata.from_text:
  - 769
  - 770
  - 771
  - 773
  - 774
  - 775
  - 777
  - 779
  - 781
  - 782
  - 783
  - 789
  - 792
  - 793
  - 800
  - 801
  - 807
  - 808
  - 811
  - 812
  - 813
  - 733
  dns.rdata.from_wire:
  - 888
  - 889
  - 890
  - 862
  dns.rdata.from_wire_parser:
  - 846
  - 847
  - 848
  - 850
  - 851
  - 823
  dns.rdata.get_rdata_class:
  - 673
  - 674
  - 675
  - 676
  - 677
  - 678
  - 679
  - 681
  - 682
  - 684
  - 688
  - 689
  - 694
  dns.rdata.load_all_types:
  - 711
  - 712
  - 716
  - 717
  - 701
  dns.rdata.register_type:
  - 928
  - 930
  - 933
  - 935
  - 910
  - 926
  - 927
  dns.rdataclass:
  - 18
  dns.rdataclass.RdataClass:
  - 25
  dns.rdataclass.UnknownRdataclass:
  - 58
  dns.rdataclass.from_text:
  - 76
  - 62
  dns.rdataclass.is_metaclass:
  - 101
  - 94
  dns.rdataclass.to_text:
  - 80
  - 90
  dns.rdataset:
  - 18
  dns.rdataset.DifferingCovers:
  - 40
  dns.rdataset.ImmutableRdataset:
  - 359
  dns.rdataset.ImmutableRdataset.__copy__:
  - 409
  dns.rdataset.ImmutableRdataset.__init__:
  - 369
  - 364
  - 366
  dns.rdataset.ImmutableRdataset.copy:
  - 412
  dns.rdataset.ImmutableRdataset.difference:
  - 421
  dns.rdataset.ImmutableRdataset.intersection:
  - 418
  dns.rdataset.ImmutableRdataset.symmetric_difference:
  - 424
  dns.rdataset.ImmutableRdataset.union:
  - 415
  dns.rdataset.IncompatibleTypes:
  - 45
  dns.rdataset.Rdataset:
  - 49
  dns.rdataset.Rdataset.__eq__:
  - 194
  - 186
  - 188
  dns.rdataset.Rdataset.__init__:
  - 60
  - 71
  dns.rdataset.Rdataset.__ne__:
  - 197
  dns.rdataset.Rdataset.__repr__:
  - 167
  - 170
  - 173
  - 175
  - 178
  dns.rdataset.Rdataset.__str__:
  - 183
  dns.rdataset.Rdataset._clone:
  - 78
  dns.rdataset.Rdataset._rdata_repr:
  - 164
  dns.rdataset.Rdataset._rdata_repr.maybe_truncate:
  - 160
  dns.rdataset.Rdataset.add:
  - 128
  - 129
  - 130
  - 131
  - 132
  - 134
  - 104
  - 136
  - 137
  - 138
  - 126
  dns.rdataset.Rdataset.intersection_update:
  - 145
  - 146
  dns.rdataset.Rdataset.match:
  - 338
  - 335
  dns.rdataset.Rdataset.processing_order:
  - 354
  - 351
  - 343
  dns.rdataset.Rdataset.to_text:
  - 256
  - 258
  - 259
  - 261
  - 263
  - 264
  - 233
  - 234
  - 235
  - 265
  - 271
  - 208
  - 240
  - 241
  - 245
  - 251
  - 252
  - 253
  dns.rdataset.Rdataset.to_wire:
  - 322
  - 323
  - 324
  - 325
  - 326
  - 327
  - 306
  - 311
  - 312
  - 313
  - 282
  - 317
  - 318
  - 319
  dns.rdataset.Rdataset.union_update:
  - 141
  - 142
  dns.rdataset.Rdataset.update:
  - 155
  - 156
  - 149
  dns.rdataset.Rdataset.update_ttl:
  - 94
  - 97
  - 86
  - 95
  dns.rdataset.from_rdata:
  - 508
  - 502
  dns.rdataset.from_rdata_list:
  - 483
  - 489
  - 492
  - 493
  - 494
  - 495
  - 496
  dns.rdataset.from_text:
  - 473
  - 479
  dns.rdataset.from_text_list:
  - 455
  - 456
  - 457
  - 458
  - 459
  - 460
  - 463
  - 437
  dns.rdatatype:
  - 18
  dns.rdatatype.RdataType:
  - 27
  dns.rdatatype.RdataType._extra_from_text:
  - 128
  - 130
  - 133
  dns.rdatatype.RdataType._extra_to_text:
  - 137
  - 138
  - 139
  - 140
  dns.rdatatype.UnknownRdatatype:
  - 163
  dns.rdatatype.from_text:
  - 181
  - 167
  dns.rdatatype.is_metatype:
  - 199
  dns.rdatatype.is_singleton:
  - 226
  - 213
  dns.rdatatype.register_type:
  - 248
  - 235
  - 247
  dns.rdatatype.to_text:
  - 185
  - 195
  dns.rdtypes:
  - 18
  dns.rdtypes.ANY:
  - 18
  dns.rdtypes.ANY.AFSDB.AFSDB:
  - 24
  dns.rdtypes.ANY.AFSDB.AFSDB.hostname:
  - 44
  dns.rdtypes.ANY.AFSDB.AFSDB.subtype:
  - 39
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY:
  - 36
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY.__init__:
  - 48
  - 45
  - 46
  - 47
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY._to_wire:
  - 77
  - 78
  - 79
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY.from_text:
  - 64
  - 66
  - 67
  - 68
  - 70
  - 71
  - 62
  - 63
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY.from_wire_parser:
  - 83
  - 84
  - 86
  - 87
  dns.rdtypes.ANY.AMTRELAY.AMTRELAY.to_text:
  - 53
  dns.rdtypes.ANY.AVC.AVC:
  - 24
  dns.rdtypes.ANY.CAA.CAA:
  - 28
  dns.rdtypes.ANY.CAA.CAA.__init__:
  - 35
  - 36
  - 37
  - 38
  - 40
  dns.rdtypes.ANY.CAA.CAA._to_wire:
  - 55
  - 56
  - 58
  - 59
  - 60
  dns.rdtypes.ANY.CAA.CAA.from_text:
  - 49
  - 50
  - 51
  - 52
  dns.rdtypes.ANY.CAA.CAA.from_wire_parser:
  - 64
  - 65
  - 66
  - 67
  dns.rdtypes.ANY.CAA.CAA.to_text:
  - 43
  dns.rdtypes.ANY.CDNSKEY.CDNSKEY:
  - 33
  dns.rdtypes.ANY.CDS.CDS:
  - 24
  dns.rdtypes.ANY.CERT.CERT:
  - 70
  dns.rdtypes.ANY.CERT.CERT.__init__:
  - 79
  - 80
  - 81
  - 82
  - 83
  dns.rdtypes.ANY.CERT.CERT._to_wire:
  - 106
  - 107
  - 103
  dns.rdtypes.ANY.CERT.CERT.from_text:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 95
  dns.rdtypes.ANY.CERT.CERT.from_wire_parser:
  - 112
  - 113
  - 111
  dns.rdtypes.ANY.CERT.CERT.to_text:
  - 88
  - 86
  - 87
  dns.rdtypes.ANY.CERT._ctype_from_text:
  - 56
  - 58
  - 55
  dns.rdtypes.ANY.CERT._ctype_to_text:
  - 65
  - 62
  - 63
  dns.rdtypes.ANY.CNAME.CNAME:
  - 24
  dns.rdtypes.ANY.CSYNC.CSYNC:
  - 35
  dns.rdtypes.ANY.CSYNC.CSYNC.__init__:
  - 40
  - 41
  - 42
  - 43
  - 44
  - 45
  dns.rdtypes.ANY.CSYNC.CSYNC._to_wire:
  - 61
  - 62
  dns.rdtypes.ANY.CSYNC.CSYNC.from_text:
  - 56
  - 57
  - 58
  - 55
  dns.rdtypes.ANY.CSYNC.CSYNC.from_wire_parser:
  - 66
  - 67
  - 68
  dns.rdtypes.ANY.CSYNC.CSYNC.to_text:
  - 48
  dns.rdtypes.ANY.DLV.DLV:
  - 24
  dns.rdtypes.ANY.DNAME.DNAME:
  - 24
  dns.rdtypes.ANY.DNAME.DNAME._to_wire:
  - 27
  dns.rdtypes.ANY.DNSKEY.DNSKEY:
  - 33
  dns.rdtypes.ANY.DS.DS:
  - 24
  dns.rdtypes.ANY.DSYNC.DSYNC:
  - 33
  dns.rdtypes.ANY.DSYNC.DSYNC.__init__:
  - 40
  - 41
  - 42
  - 43
  - 44
  dns.rdtypes.ANY.DSYNC.DSYNC._to_wire:
  - 64
  - 65
  - 66
  dns.rdtypes.ANY.DSYNC.DSYNC.from_text:
  - 57
  - 58
  - 59
  - 60
  - 61
  dns.rdtypes.ANY.DSYNC.DSYNC.from_wire_parser:
  - 72
  - 70
  - 71
  dns.rdtypes.ANY.DSYNC.DSYNC.to_text:
  - 49
  - 47
  dns.rdtypes.ANY.DSYNC.Scheme:
  - 18
  dns.rdtypes.ANY.DSYNC.UnknownScheme:
  - 14
  dns.rdtypes.ANY.EUI48.EUI48:
  - 25
  dns.rdtypes.ANY.EUI64.EUI64:
  - 25
  dns.rdtypes.ANY.GPOS.GPOS:
  - 47
  dns.rdtypes.ANY.GPOS.GPOS.__init__:
  - 64
  - 65
  - 66
  - 71
  - 74
  - 54
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 61
  - 62
  - 63
  dns.rdtypes.ANY.GPOS.GPOS._to_wire:
  - 96
  - 97
  - 99
  - 100
  - 101
  - 103
  - 104
  - 93
  - 95
  dns.rdtypes.ANY.GPOS.GPOS.float_altitude:
  - 125
  - 126
  dns.rdtypes.ANY.GPOS.GPOS.float_latitude:
  - 115
  - 116
  dns.rdtypes.ANY.GPOS.GPOS.float_longitude:
  - 120
  - 121
  dns.rdtypes.ANY.GPOS.GPOS.from_text:
  - 88
  - 89
  - 90
  - 87
  dns.rdtypes.ANY.GPOS.GPOS.from_wire_parser:
  - 108
  - 109
  - 110
  - 111
  dns.rdtypes.ANY.GPOS.GPOS.to_text:
  - 80
  - 79
  dns.rdtypes.ANY.GPOS._validate_float_string:
  - 34
  - 37
  - 39
  - 41
  - 27
  - 29
  - 31
  dns.rdtypes.ANY.HINFO.HINFO:
  - 28
  dns.rdtypes.ANY.HINFO.HINFO.__init__:
  - 35
  - 36
  - 37
  dns.rdtypes.ANY.HINFO.HINFO._to_wire:
  - 51
  - 53
  - 54
  - 55
  - 57
  - 58
  dns.rdtypes.ANY.HINFO.HINFO.from_text:
  - 48
  - 46
  - 47
  dns.rdtypes.ANY.HINFO.HINFO.from_wire_parser:
  - 64
  - 62
  - 63
  dns.rdtypes.ANY.HINFO.HINFO.to_text:
  - 40
  dns.rdtypes.ANY.HIP.HIP:
  - 30
  dns.rdtypes.ANY.HIP.HIP.__init__:
  - 37
  - 38
  - 39
  - 40
  - 41
  dns.rdtypes.ANY.HIP.HIP._to_wire:
  - 68
  - 69
  - 70
  - 71
  - 72
  - 73
  - 74
  dns.rdtypes.ANY.HIP.HIP.from_text:
  - 64
  - 65
  - 58
  - 59
  - 60
  - 62
  - 63
  dns.rdtypes.ANY.HIP.HIP.from_wire_parser:
  - 78
  - 79
  - 80
  - 82
  - 83
  - 84
  - 85
  dns.rdtypes.ANY.HIP.HIP.to_text:
  - 44
  - 45
  - 48
  - 49
  - 50
  - 51
  dns.rdtypes.ANY.ISDN.ISDN:
  - 28
  dns.rdtypes.ANY.ISDN.ISDN.__init__:
  - 35
  - 36
  - 37
  dns.rdtypes.ANY.ISDN.ISDN._to_wire:
  - 64
  - 65
  - 66
  - 68
  - 69
  - 61
  - 63
  dns.rdtypes.ANY.ISDN.ISDN.from_text:
  - 52
  - 53
  - 54
  - 55
  - 58
  dns.rdtypes.ANY.ISDN.ISDN.from_wire_parser:
  - 73
  - 74
  - 75
  - 78
  dns.rdtypes.ANY.ISDN.ISDN.to_text:
  - 40
  - 42
  - 43
  - 46
  dns.rdtypes.ANY.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__:
  - 242
  - 243
  dns.rdtypes.svcbbase.ALPNParam.__init__.<lambda1>:
  - 243
  dns.rdtypes.svcbbase.ALPNParam.from_value:
  - 248
  dns.rdtypes.svcbbase.ALPNParam.from_wire_parser:
  - 257
  - 258
  - 259
  - 260
  dns.rdtypes.svcbbase.ALPNParam.to_text:
  - 251
  - 252
  dns.rdtypes.svcbbase.ALPNParam.to_wire:
  - 264
  - 265
  - 263
  dns.rdtypes.svcbbase.ECHParam.__init__:
  - 379
  dns.rdtypes.svcbbase.ECHParam.from_value:
  - 385
  - 386
  - 383
  dns.rdtypes.svcbbase.ECHParam.from_wire_parser:
  - 394
  - 395
  dns.rdtypes.svcbbase.ECHParam.to_text:
  - 389
  dns.rdtypes.svcbbase.ECHParam.to_wire:
  - 398
  dns.rdtypes.svcbbase.GenericParam:
  - 169
  dns.rdtypes.svcbbase.GenericParam.__init__:
  - 172
  dns.rdtypes.svcbbase.GenericParam.from_value:
  - 180
  - 183
  dns.rdtypes.svcbbase.GenericParam.from_wire_parser:
  - 194
  - 190
  - 191
  dns.rdtypes.svcbbase.GenericParam.to_text:
  - 186
  dns.rdtypes.svcbbase.GenericParam.to_wire:
  - 197
  dns.rdtypes.svcbbase.IPv4HintParam.__init__:
  - 323
  dns.rdtypes.svcbbase.IPv4HintParam.from_value:
  - 329
  - 330
  dns.rdtypes.svcbbase.IPv4HintParam.from_wire_parser:
  - 338
  - 339
  - 340
  - 341
  dns.rdtypes.svcbbase.IPv4HintParam.to_text:
  - 333
  dns.rdtypes.svcbbase.IPv4HintParam.to_wire:
  - 344
  - 345
  dns.rdtypes.svcbbase.IPv6HintParam.__init__:
  - 351
  dns.rdtypes.svcbbase.IPv6HintParam.from_value:
  - 357
  - 358
  dns.rdtypes.svcbbase.IPv6HintParam.from_wire_parser:
  - 368
  - 369
  - 366
  - 367
  dns.rdtypes.svcbbase.IPv6HintParam.to_text:
  - 361
  dns.rdtypes.svcbbase.IPv6HintParam.to_wire:
  - 372
  - 373
  dns.rdtypes.svcbbase.MandatoryParam.__init__:
  - 204
  - 206
  - 207
  - 210
  - 212
  dns.rdtypes.svcbbase.MandatoryParam.from_value:
  - 216
  - 217
  dns.rdtypes.svcbbase.MandatoryParam.from_wire_parser:
  - 226
  - 227
  - 228
  - 231
  - 232
  dns.rdtypes.svcbbase.MandatoryParam.to_text:
  - 220
  dns.rdtypes.svcbbase.MandatoryParam.to_wire:
  - 235
  - 236
  dns.rdtypes.svcbbase.NoDefaultALPNParam.from_value:
  - 280
  dns.rdtypes.svcbbase.NoDefaultALPNParam.from_wire_parser:
  - 290
  dns.rdtypes.svcbbase.OHTTPParam.from_value:
  - 413
  dns.rdtypes.svcbbase.OHTTPParam.from_wire_parser:
  - 423
  dns.rdtypes.svcbbase.Param:
  - 160
  dns.rdtypes.svcbbase.ParamKey:
  - 29
  dns.rdtypes.svcbbase.PortParam.__init__:
  - 301
  dns.rdtypes.svcbbase.PortParam.from_value:
  - 305
  - 306
  dns.rdtypes.svcbbase.PortParam.from_wire_parser:
  - 313
  - 314
  dns.rdtypes.svcbbase.PortParam.to_wire:
  - 317
  dns.rdtypes.svcbbase.SVCBBase:
  - 463
  dns.rdtypes.svcbbase.SVCBBase.__init__:
  - 480
  - 481
  - 482
  - 485
  - 488
  - 489
  - 470
  - 471
  - 472
  - 473
  - 474
  - 475
  - 477
  dns.rdtypes.svcbbase.SVCBBase._processing_order:
  - 587
  dns.rdtypes.svcbbase.SVCBBase._to_wire:
  - 551
  - 552
  - 553
  - 554
  - 556
  - 558
  - 559
  dns.rdtypes.svcbbase.SVCBBase.from_text:
  - 512
  - 513
  - 514
  - 515
  - 516
  - 547
  - 518
  - 548
  - 521
  - 522
  - 523
  - 525
  - 527
  - 528
  - 532
  - 533
  - 536
  - 540
  dns.rdtypes.svcbbase.SVCBBase.from_wire_parser:
  - 576
  - 577
  - 578
  - 580
  - 563
  - 564
  - 565
  - 569
  - 570
  - 571
  - 574
  - 575
  dns.rdtypes.svcbbase.SVCBBase.to_text:
  - 493
  - 495
  - 497
  - 498
  - 500
  - 501
  - 502
  - 506
  dns.rdtypes.svcbbase.UnknownParamKey:
  - 25
  dns.rdtypes.svcbbase._escapify:
  - 91
  - 92
  - 93
  - 94
  - 95
  dns.rdtypes.svcbbase._split:
  - 136
  - 143
  - 144
  - 149
  - 150
  - 154
  dns.rdtypes.svcbbase._unescape:
  - 131
  - 102
  - 105
  - 110
  - 111
  - 115
  - 116
  - 120
  - 124
  - 126
  - 127
  dns.rdtypes.svcbbase._validate_and_define:
  - 448
  - 449
  - 450
  - 452
  - 454
  - 455
  - 457
  - 444
  - 445
  - 447
  dns.rdtypes.svcbbase._validate_key:
  - 66
  - 69
  - 70
  - 71
  - 73
  - 76
  - 77
  dns.rdtypes.svcbbase.key_to_text:
  - 81
  dns.rdtypes.tlsabase.TLSABase:
  - 28
  dns.rdtypes.tlsabase.TLSABase.__init__:
  - 35
  - 36
  - 37
  - 38
  - 39
  dns.rdtypes.tlsabase.TLSABase._to_wire:
  - 61
  - 62
  - 63
  dns.rdtypes.tlsabase.TLSABase.from_text:
  - 53
  - 54
  - 55
  - 56
  - 57
  - 58
  dns.rdtypes.tlsabase.TLSABase.from_wire_parser:
  - 67
  - 68
  - 69
  dns.rdtypes.tlsabase.TLSABase.to_text:
  - 42
  - 43
  - 44
  dns.rdtypes.txtbase:
  - 18
  dns.rdtypes.txtbase.TXTBase:
  - 34
  dns.rdtypes.txtbase.TXTBase.__init__:
  - 44
  - 52
  - 53
  - 54
  - 56
  dns.rdtypes.txtbase.TXTBase.__init__.<lambda1>:
  - 54
  dns.rdtypes.txtbase.TXTBase._to_wire:
  - 99
  - 100
  - 101
  dns.rdtypes.txtbase.TXTBase.from_text:
  - 96
  - 83
  - 84
  - 87
  - 88
  - 91
  - 93
  - 94
  dns.rdtypes.txtbase.TXTBase.from_wire_parser:
  - 106
  - 107
  - 108
  - 109
  dns.rdtypes.txtbase.TXTBase.to_text:
  - 67
  - 68
  dns.rdtypes.util.Bitmap:
  - 125
  dns.rdtypes.util.Bitmap.__init__:
  - 131
  - 134
  - 135
  - 137
  - 139
  - 142
  - 144
  dns.rdtypes.util.Bitmap.from_rdtypes:
  - 192
  - 193
  - 194
  - 171
  - 175
  - 177
  - 178
  - 182
  - 183
  - 184
  - 185
  dns.rdtypes.util.Bitmap.from_text:
  - 162
  - 163
  - 164
  - 166
  - 167
  dns.rdtypes.util.Bitmap.from_wire_parser:
  - 204
  - 205
  - 206
  - 207
  - 208
  dns.rdtypes.util.Bitmap.to_text:
  - 149
  - 151
  - 152
  - 153
  - 154
  - 155
  - 156
  dns.rdtypes.util.Bitmap.to_wire:
  - 197
  - 198
  - 199
  dns.rdtypes.util.Gateway:
  - 34
  dns.rdtypes.util.Gateway.__init__:
  - 41
  - 39
  dns.rdtypes.util.Gateway._check:
  - 48
  - 49
  - 52
  - 54
  - 55
  - 56
  - 58
  - 59
  - 60
  - 61
  dns.rdtypes.util.Gateway.from_text:
  - 81
  - 82
  - 83
  - 84
  - 89
  dns.rdtypes.util.Gateway.from_wire_parser:
  - 111
  - 113
  - 114
  - 115
  - 116
  - 117
  - 118
  - 121
  dns.rdtypes.util.Gateway.to_text:
  - 67
  - 69
  - 71
  - 72
  - 73
  dns.rdtypes.util.Gateway.to_wire:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 103
  - 93
  - 95
  dns.rdtypes.util._priority_table:
  - 212
  - 213
  - 214
  dns.rdtypes.util.parse_formatted_hex:
  - 264
  - 266
  - 259
  - 262
  dns.rdtypes.util.priority_processing_order:
  - 224
  - 226
  - 227
  - 219
  - 220
  - 222
  dns.rdtypes.util.weighted_processing_order:
  - 235
  - 236
  - 238
  - 240
  - 242
  - 243
  - 244
  - 245
  - 246
  - 247
  - 252
  - 254
  dns.renderer:
  - 18
  dns.renderer.Renderer:
  - 59
  dns.renderer.Renderer.__init__:
  - 104
  - 106
  - 107
  - 108
  - 117
  dns.renderer.Renderer._rollback:
  - 128
  - 129
  - 131
  - 132
  - 133
  - 134
  - 123
  dns.renderer.Renderer._set_section:
  - 138
  - 147
  - 148
  dns.renderer.Renderer._temporarily_seek_to:
  - 162
  - 164
  - 165
  - 167
  dns.renderer.Renderer._track_size:
  - 154
  - 155
  - 156
  - 157
  dns.renderer.Renderer._write_tsig:
  - 300
  - 304
  - 305
  - 306
  - 307
  - 308
  - 310
  - 311
  - 314
  - 315
  dns.renderer.Renderer.add_edns:
  - 237
  - 234
  - 229
  dns.renderer.Renderer.add_multi_tsig:
  - 289
  - 290
  - 293
  - 294
  - 296
  - 276
  - 284
  - 286
  dns.renderer.Renderer.add_opt:
  - 226
  - 204
  - 210
  - 214
  - 216
  - 220
  - 221
  - 222
  dns.renderer.Renderer.add_question:
  - 170
  - 172
  - 173
  - 174
  - 175
  dns.renderer.Renderer.add_rdataset:
  - 200
  - 199
  - 198
  - 191
  dns.renderer.Renderer.add_rrset:
  - 185
  - 186
  - 179
  - 187
  dns.renderer.Renderer.add_tsig:
  - 257
  - 258
  - 261
  - 262
  - 250
  - 252
  - 254
  dns.renderer.Renderer.get_wire:
  - 339
  - 341
  dns.renderer.Renderer.release_reserved:
  - 353
  dns.renderer.Renderer.reserve:
  - 344
  - 345
  - 347
  dns.renderer.Renderer.write_header:
  - 326
  - 325
  - 318
  - 327
  dns.renderer.prefixed_length:
  - 42
  - 43
  - 44
  - 45
  - 47
  - 49
  - 51
  - 55
  dns.resolver:
  - 18
  - 50
  dns.resolver.Answer:
  - 248
  dns.resolver.Answer.__delitem__:
  - 312
  dns.resolver.Answer.__getattr__:
  - 289
  - 291
  - 293
  - 295
  - 286
  - 287
  dns.resolver.Answer.__getitem__:
  - 307
  dns.resolver.Answer.__init__:
  - 283
  - 278
  dns.resolver.Answer.__iter__:
  - 304
  dns.resolver.Answer.__len__:
  - 301
  dns.resolver.Answers:
  - 318
  dns.resolver.BaseResolver:
  - 907
  dns.resolver.BaseResolver.__init__:
  - 937
  - 948
  - 949
  - 950
  - 951
  - 952
  - 953
  dns.resolver.BaseResolver._compute_timeout:
  - 1070
  - 1072
  - 1074
  - 1075
  - 1083
  - 1085
  dns.resolver.BaseResolver._enrich_nameservers:
  - 1193
  - 1194
  - 1196
  - 1198
  - 1199
  - 1200
  - 1205
  - 1213
  - 1214
  dns.resolver.BaseResolver._get_qnames_to_try:
  - 1123
  - 1092
  - 1125
  - 1095
  - 1096
  - 1098
  - 1099
  - 1100
  - 1103
  - 1110
  - 1114
  - 1115
  - 1116
  - 1119
  dns.resolver.BaseResolver.nameservers:
  - 1239
  - 1231
  dns.resolver.BaseResolver.read_registry:
  - 1056
  - 1053
  - 1055
  dns.resolver.BaseResolver.read_resolv_conf:
  - 1026
  - 1027
  - 1030
  - 1031
  - 1032
  - 1034
  - 1035
  - 1036
  - 1038
  - 1041
  - 1043
  - 1046
  - 982
  - 999
  - 1001
  - 1006
  - 1008
  - 1009
  - 1011
  - 1014
  - 1017
  - 1018
  - 1019
  - 1020
  - 1023
  dns.resolver.BaseResolver.reset:
  - 956
  - 958
  - 959
  dns.resolver.BaseResolver.set_flags:
  - 1178
  dns.resolver.BaseResolver.use_edns:
  - 1168
  - 1170
  - 1151
  dns.resolver.BaseResolver.use_tsig:
  - 1134
  dns.resolver.Cache:
  - 426
  dns.resolver.Cache.__init__:
  - 433
  - 436
  - 429
  dns.resolver.Cache._maybe_clean:
  - 449
  - 439
  - 441
  - 442
  - 444
  - 445
  - 446
  - 447
  dns.resolver.Cache.flush:
  - 496
  - 497
  - 501
  - 486
  dns.resolver.Cache.get:
  - 464
  - 465
  - 466
  - 453
  dns.resolver.Cache.put:
  - 473
  - 482
  dns.resolver.CacheBase.__init__:
  - 393
  - 394
  dns.resolver.CacheBase.get_statistics_snapshot:
  - 419
  - 412
  dns.resolver.CacheBase.hits:
  - 402
  dns.resolver.CacheBase.misses:
  - 407
  dns.resolver.CacheBase.reset_statistics:
  - 397
  - 399
  dns.resolver.CacheStatistics:
  - 377
  dns.resolver.CacheStatistics.clone:
  - 388
  dns.resolver.EmptyHostAnswers:
  - 322
  dns.resolver.HostAnswers:
  - 326
  dns.resolver.HostAnswers.addresses:
  - 366
  dns.resolver.HostAnswers.addresses_and_families:
  - 353
  - 354
  - 355
  - 356
  - 359
  - 360
  - 361
  - 349
  - 350
  - 351
  dns.resolver.HostAnswers.canonical_name:
  - 370
  - 371
  dns.resolver.HostAnswers.make:
  - 337
  - 338
  - 340
  dns.resolver.LRUCache:
  - 526
  dns.resolver.LRUCache.__init__:
  - 536
  - 540
  - 542
  - 543
  dns.resolver.LRUCache.flush:
  - 612
  - 622
  - 623
  - 624
  - 625
  - 631
  dns.resolver.LRUCache.get:
  - 553
  - 564
  - 565
  - 570
  - 571
  - 575
  dns.resolver.LRUCache.get_hits_for_key:
  - 584
  - 581
  - 583
  dns.resolver.LRUCache.put:
  - 608
  - 590
  - 599
  - 600
  - 601
  - 603
  - 605
  - 607
  dns.resolver.LRUCache.set_max_size:
  - 548
  dns.resolver.LRUCacheNode:
  - 505
  dns.resolver.LifetimeTimeout:
  - 164
  dns.resolver.LifetimeTimeout.__init__:
  - 173
  dns.resolver.LifetimeTimeout._fmt_kwargs:
  - 176
  - 177
  - 178
  dns.resolver.NXDOMAIN:
  - 55
  dns.resolver.NXDOMAIN.__add__:
  - 108
  - 109
  - 110
  - 111
  - 112
  - 113
  - 114
  - 115
  - 117
  dns.resolver.NXDOMAIN.__init__:
  - 65
  dns.resolver.NXDOMAIN.__str__:
  - 80
  - 81
  - 83
  - 87
  dns.resolver.NXDOMAIN._check_kwargs:
  - 68
  - 70
  - 72
  - 74
  - 76
  dns.resolver.NXDOMAIN.canonical_name:
  - 98
  - 99
  - 92
  - 93
  - 95
  dns.resolver.NXDOMAIN.qnames:
  - 120
  dns.resolver.NXDOMAIN.response:
  - 135
  dns.resolver.NXDOMAIN.responses:
  - 127
  dns.resolver.NoAnswer:
  - 189
  dns.resolver.NoAnswer.__init__:
  - 197
  dns.resolver.NoAnswer._fmt_kwargs:
  - 200
  dns.resolver.NoMetaqueries:
  - 240
  dns.resolver.NoNameservers:
  - 207
  dns.resolver.NoNameservers.__init__:
  - 222
  dns.resolver.NoNameservers._fmt_kwargs:
  - 225
  - 226
  - 227
  dns.resolver.NoResolverConfiguration:
  - 244
  dns.resolver.NoRootSOA:
  - 236
  dns.resolver.NotAbsolute:
  - 232
  dns.resolver.Resolver:
  - 1244
  dns.resolver.Resolver.canonical_name:
  - 1489
  - 1475
  dns.resolver.Resolver.query:
  - 1371
  - 1366
  - 1359
  dns.resolver.Resolver.resolve:
  - 1312
  - 1345
  - 1314
  - 1319
  - 1258
  - 1325
  - 1326
  - 1327
  - 1328
  - 1330
  - 1338
  - 1340
  - 1309
  dns.resolver.Resolver.resolve_address:
  - 1384
  - 1404
  - 1403
  - 1400
  dns.resolver.Resolver.resolve_name:
  - 1413
  - 1431
  - 1432
  - 1435
  - 1436
  - 1437
  - 1438
  - 1439
  - 1440
  - 1441
  - 1444
  - 1445
  - 1446
  - 1447
  - 1451
  - 1460
  - 1464
  - 1467
  - 1468
  dns.resolver.Resolver.try_ddr:
  - 1517
  - 1518
  - 1521
  - 1522
  - 1523
  - 1498
  dns.resolver.YXDOMAIN:
  - 143
  dns.resolver._Resolution:
  - 637
  dns.resolver._Resolution.__init__:
  - 658
  - 659
  - 660
  - 661
  - 663
  - 664
  - 667
  dns.resolver._Resolution.next_nameserver:
  - 769
  - 770
  - 775
  - 777
  - 778
  - 761
  - 763
  dns.resolver._Resolution.next_request:
  - 736
  - 705
  - 706
  - 741
  - 710
  - 742
  - 733
  - 713
  - 688
  - 720
  - 721
  - 722
  - 727
  - 697
  - 698
  - 701
  - 702
  dns.resolver._Resolution.query_result:
  - 896
  - 898
  - 899
  - 788
  - 791
  - 793
  - 795
  - 800
  - 801
  - 802
  - 803
  - 804
  - 807
  - 808
  - 809
  - 811
  - 817
  - 818
  - 819
  - 821
  - 826
  - 827
  - 830
  - 832
  - 834
  - 840
  - 842
  - 843
  - 844
  - 847
  - 851
  - 855
  - 857
  - 859
  - 865
  - 868
  - 869
  - 875
  - 876
  - 877
  - 879
  - 881
  - 892
  - 893
  - 894
  dns.resolver._errors_to_text:
  - 156
  - 158
  - 159
  dns.resolver._getaddrinfo:
  - 1920
  - 1921
  - 1922
  - 1844
  - 1850
  - 1851
  - 1863
  - 1869
  - 1870
  - 1875
  - 1876
  - 1882
  - 1883
  - 1884
  - 1895
  - 1898
  - 1900
  - 1902
  - 1905
  - 1908
  - 1912
  - 1916
  - 1917
  - 1918
  - 1919
  dns.resolver._getfqdn:
  - 1971
  - 1972
  - 1974
  dns.resolver._gethostbyaddr:
  - 2021
  - 2022
  - 2024
  - 2025
  - 2026
  - 2027
  - 2001
  - 2006
  - 2011
  - 2014
  dns.resolver._gethostbyname:
  - 1983
  dns.resolver._gethostbyname_ex:
  - 1993
  - 1994
  - 1989
  dns.resolver._getnameinfo:
  - 1952
  - 1954
  - 1957
  - 1958
  - 1961
  - 1930
  - 1962
  - 1963
  - 1964
  - 1966
  - 1936
  - 1937
  - 1940
  - 1944
  - 1945
  - 1946
  - 1949
  - 1951
  dns.resolver.canonical_name:
  - 1641
  - 1647
  dns.resolver.get_default_resolver:
  - 1536
  - 1534
  - 1535
  dns.resolver.make_resolver_at:
  - 1768
  - 1769
  - 1771
  - 1772
  - 1774
  - 1775
  - 1776
  - 1751
  dns.resolver.override_system_resolver:
  - 2033
  - 2046
  - 2047
  dns.resolver.query:
  - 1602
  - 1595
  - 1605
  dns.resolver.reset_default_resolver:
  - 1549
  - 1542
  dns.resolver.resolve:
  - 1563
  - 1572
  dns.resolver.resolve_address:
  - 1625
  - 1619
  dns.resolver.resolve_at:
  - 1809
  - 1796
  dns.resolver.resolve_name:
  - 1637
  - 1631
  dns.resolver.restore_system_resolver:
  - 2059
  dns.resolver.try_ddr:
  - 1657
  - 1651
  dns.resolver.zone_for_name:
  - 1667
  - 1692
  - 1693
  - 1694
  - 1695
  - 1696
  - 1698
  - 1700
  - 1707
  - 1708
  - 1709
  - 1713
  - 1717
  - 1721
  - 1722
  - 1724
  - 1725
  - 1726
  - 1727
  - 1728
  - 1729
  - 1740
  dns.reversename:
  - 18
  - 27
  - 28
  dns.reversename.from_address:
  - 64
  - 66
  - 36
  - 56
  - 57
  - 58
  - 61
  dns.reversename.to_address:
  - 96
  - 97
  - 98
  - 100
  - 101
  - 102
  - 104
  - 74
  - 91
  - 92
  - 93
  - 95
  dns.rrset:
  - 18
  dns.rrset.RRset:
  - 31
  dns.rrset.RRset.__eq__:
  - 89
  - 90
  - 92
  - 94
  dns.rrset.RRset.__init__:
  - 50
  - 52
  dns.rrset.RRset.__repr__:
  - 66
  - 67
  - 68
  - 73
  - 75
  - 77
  - 81
  - 63
  dns.rrset.RRset.__str__:
  - 86
  dns.rrset.RRset._clone:
  - 57
  dns.rrset.RRset.full_match:
  - 121
  - 124
  - 126
  dns.rrset.RRset.match:
  - 97
  - 108
  - 109
  - 111
  dns.rrset.RRset.to_rdataset:
  - 184
  - 180
  dns.rrset.RRset.to_text:
  - 138
  - 154
  dns.rrset.RRset.to_wire:
  - 165
  - 173
  dns.rrset.from_rdata:
  - 281
  - 287
  dns.rrset.from_rdata_list:
  - 265
  - 266
  - 268
  - 271
  - 272
  - 273
  - 274
  - 275
  - 254
  dns.rrset.from_text:
  - 243
  - 244
  - 237
  dns.rrset.from_text_list:
  - 226
  - 198
  - 216
  - 217
  - 218
  - 219
  - 220
  - 221
  - 222
  - 223
  dns.serial:
  - 3
  dns.serial.Serial.__add__:
  - 64
  - 66
  - 74
  - 70
  dns.serial.Serial.__eq__:
  - 16
  - 17
  - 15
  dns.serial.Serial.__gt__:
  - 46
  - 47
  - 48
  - 50
  - 52
  dns.serial.Serial.__iadd__:
  - 80
  - 84
  - 78
  dns.serial.Serial.__isub__:
  - 113
  - 107
  - 109
  dns.serial.Serial.__lt__:
  - 33
  - 35
  - 29
  - 30
  - 31
  dns.serial.Serial.__ne__:
  - 24
  - 22
  - 23
  dns.serial.Serial.__sub__:
  - 99
  - 103
  - 93
  - 95
  dns.set.Set:
  - 22
  dns.set.Set.__add__:
  - 208
  dns.set.Set.__and__:
  - 205
  dns.set.Set.__copy__:
  - 96
  - 98
  dns.set.Set.__delitem__:
  - 270
  - 271
  dns.set.Set.__getitem__:
  - 264
  - 265
  - 267
  dns.set.Set.__iadd__:
  - 225
  dns.set.Set.__iand__:
  - 221
  dns.set.Set.__init__:
  - 34
  - 39
  - 40
  - 41
  - 44
  dns.set.Set.__ior__:
  - 217
  dns.set.Set.__isub__:
  - 229
  dns.set.Set.__iter__:
  - 261
  dns.set.Set.__ixor__:
  - 233
  dns.set.Set.__len__:
  - 258
  dns.set.Set.__ne__:
  - 255
  dns.set.Set.__or__:
  - 202
  dns.set.Set.__repr__:
  - 47
  dns.set.Set.__sub__:
  - 211
  dns.set.Set.__xor__:
  - 214
  dns.set.Set._clone:
  - 74
  - 86
  - 90
  - 91
  - 92
  dns.set.Set.add:
  - 50
  - 52
  dns.set.Set.clear:
  - 248
  - 249
  dns.set.Set.copy:
  - 101
  - 103
  dns.set.Set.difference:
  - 185
  - 186
  - 179
  dns.set.Set.difference_update:
  - 133
  - 137
  - 139
  - 140
  - 142
  - 143
  dns.set.Set.discard:
  - 64
  - 66
  dns.set.Set.intersection:
  - 168
  - 174
  - 175
  dns.set.Set.intersection_update:
  - 128
  - 129
  - 118
  - 122
  - 124
  dns.set.Set.isdisjoint:
  - 305
  - 306
  - 303
  dns.set.Set.issubset:
  - 282
  - 285
  - 284
  - 277
  dns.set.Set.issuperset:
  - 297
  - 290
  - 298
  - 295
  dns.set.Set.pop:
  - 69
  - 70
  dns.set.Set.remove:
  - 56
  dns.set.Set.symmetric_difference:
  - 198
  - 197
  - 190
  dns.set.Set.symmetric_difference_update:
  - 146
  - 148
  - 150
  - 151
  - 153
  - 154
  - 155
  dns.set.Set.union:
  - 163
  - 164
  - 158
  dns.set.Set.union_update:
  - 106
  - 110
  - 112
  - 114
  - 115
  dns.set.Set.update:
  - 245
  - 244
  - 237
  dns.tokenizer:
  - 18
  dns.tokenizer.Token:
  - 45
  dns.tokenizer.Token.__eq__:
  - 91
  dns.tokenizer.Token.__init__:
  - 59
  dns.tokenizer.Token.__ne__:
  - 96
  dns.tokenizer.Token.unescape:
  - 128
  - 129
  - 131
  - 133
  - 104
  - 107
  - 112
  - 113
  - 117
  - 118
  - 122
  - 126
  dns.tokenizer.Token.unescape_to_bytes:
  - 192
  - 161
  - 194
  - 195
  - 166
  - 167
  - 171
  - 172
  - 176
  - 180
  - 182
  - 183
  dns.tokenizer.Tokenizer:
  - 199
  dns.tokenizer.Tokenizer.__init__:
  - 256
  - 257
  - 260
  - 261
  - 237
  - 275
  - 251
  - 252
  - 253
  - 255
  dns.tokenizer.Tokenizer._get_char:
  - 288
  - 290
  - 281
  - 283
  - 284
  - 287
  dns.tokenizer.Tokenizer._unget_char:
  - 307
  - 317
  dns.tokenizer.Tokenizer.as_identifier:
  - 726
  - 719
  dns.tokenizer.Tokenizer.as_int:
  - 633
  - 626
  - 635
  - 637
  dns.tokenizer.Tokenizer.as_name:
  - 622
  - 620
  - 614
  - 623
  dns.tokenizer.Tokenizer.as_string:
  - 712
  - 714
  - 703
  dns.tokenizer.Tokenizer.as_uint16:
  - 662
  - 660
  - 653
  - 661
  dns.tokenizer.Tokenizer.as_uint32:
  - 680
  - 673
  - 681
  dns.tokenizer.Tokenizer.as_uint48:
  - 688
  - 696
  - 695
  dns.tokenizer.Tokenizer.as_uint8:
  - 640
  - 648
  - 647
  dns.tokenizer.Tokenizer.concatenate_remaining_identifiers:
  - 583
  - 596
  - 597
  - 598
  - 600
  - 603
  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:
  - 761
  dns.tokenizer.Tokenizer.get_eol_as_token:
  - 753
  - 754
  - 747
  dns.tokenizer.Tokenizer.get_identifier:
  - 561
  - 554
  dns.tokenizer.Tokenizer.get_int:
  - 488
  - 494
  dns.tokenizer.Tokenizer.get_name:
  - 736
  - 744
  - 743
  dns.tokenizer.Tokenizer.get_remaining:
  - 577
  - 578
  - 564
  - 573
  - 574
  - 575
  dns.tokenizer.Tokenizer.get_string:
  - 542
  - 551
  dns.tokenizer.Tokenizer.get_ttl:
  - 773
  - 764
  - 772
  - 775
  dns.tokenizer.Tokenizer.get_uint16:
  - 517
  - 509
  dns.tokenizer.Tokenizer.get_uint32:
  - 520
  - 528
  dns.tokenizer.Tokenizer.get_uint48:
  - 539
  - 531
  dns.tokenizer.Tokenizer.get_uint8:
  - 497
  - 506
  dns.tokenizer.Tokenizer.next:
  - 475
  - 476
  - 470
  dns.tokenizer.Tokenizer.skip_whitespace:
  - 323
  - 335
  - 336
  - 337
  - 338
  dns.tokenizer.Tokenizer.unget:
  - 465
  - 454
  dns.tokenizer.Tokenizer.where:
  - 298
  dns.tokenizer.UngetBufferFull:
  - 41
  dns.transaction.AlreadyEnded:
  - 82
  dns.transaction.DeleteNotExact:
  - 74
  dns.transaction.ReadOnly:
  - 78
  dns.transaction.Transaction.__exit__:
  - 562
  - 563
  - 564
  - 566
  dns.transaction.Transaction.__iter__:
  - 284
  - 285
  dns.transaction.Transaction._add:
  - 420
  - 425
  - 426
  - 427
  - 428
  - 429
  - 431
  - 432
  - 437
  - 443
  - 445
  - 446
  - 447
  - 449
  - 450
  - 451
  - 452
  - 453
  - 454
  - 457
  - 459
  - 460
  dns.transaction.Transaction._changed:
  - 606
  dns.transaction.Transaction._check_ended:
  - 529
  dns.transaction.Transaction._check_read_only:
  - 156
  dns.transaction.Transaction._checked_delete_name:
  - 552
  - 550
  - 551
  dns.transaction.Transaction._checked_delete_rdataset:
  - 545
  - 546
  - 547
  dns.transaction.Transaction._checked_put_rdataset:
  - 540
  - 541
  - 542
  dns.transaction.Transaction._delete:
  - 512
  - 513
  - 514
  - 518
  - 519
  - 522
  - 524
  - 465
  - 470
  - 471
  - 472
  - 473
  - 474
  - 476
  - 477
  - 480
  - 481
  - 482
  - 485
  - 486
  - 487
  - 488
  - 491
  - 494
  - 495
  - 502
  - 503
  - 504
  - 506
  - 507
  - 508
  - 509
  - 510
  dns.transaction.Transaction._delete_name:
  - 585
  dns.transaction.Transaction._delete_rdataset:
  - 592
  dns.transaction.Transaction._end:
  - 533
  - 535
  dns.transaction.Transaction._end_transaction:
  - 610
  dns.transaction.Transaction._get_node:
  - 638
  dns.transaction.Transaction._get_rdataset:
  - 575
  dns.transaction.Transaction._iterate_names:
  - 634
  dns.transaction.Transaction._iterate_rdatasets:
  - 630
  dns.transaction.Transaction._name_exists:
  - 599
  dns.transaction.Transaction._origin_information:
  - 651
  dns.transaction.Transaction._put_rdataset:
  - 581
  dns.transaction.Transaction._raise_if_not_empty:
  - 386
  dns.transaction.Transaction._rdataset_from_args:
  - 391
  - 392
  - 393
  - 394
  - 397
  - 400
  - 402
  - 406
  - 407
  - 408
  - 413
  dns.transaction.Transaction._set_origin:
  - 621
  dns.transaction.Transaction.add:
  - 160
  - 170
  - 171
  - 172
  dns.transaction.Transaction.changed:
  - 288
  - 296
  - 295
  dns.transaction.Transaction.check_delete_name:
  - 349
  - 358
  dns.transaction.Transaction.check_delete_rdataset:
  - 336
  - 346
  dns.transaction.Transaction.check_put_rdataset:
  - 324
  - 333
  dns.transaction.Transaction.commit:
  - 299
  - 309
  dns.transaction.Transaction.delete:
  - 196
  - 213
  - 214
  - 215
  dns.transaction.Transaction.delete_exact:
  - 218
  - 236
  - 237
  - 238
  dns.transaction.Transaction.get:
  - 135
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 146
  dns.transaction.Transaction.get_node:
  - 153
  - 149
  dns.transaction.Transaction.iterate_names:
  - 378
  - 379
  - 373
  dns.transaction.Transaction.iterate_rdatasets:
  - 369
  - 370
  - 363
  dns.transaction.Transaction.name_exists:
  - 241
  - 242
  - 243
  - 244
  - 245
  dns.transaction.Transaction.replace:
  - 192
  - 191
  - 193
  - 175
  dns.transaction.Transaction.rollback:
  - 312
  - 321
  dns.transaction.Transaction.update_serial:
  - 264
  - 265
  - 267
  - 268
  - 269
  - 270
  - 272
  - 273
  - 275
  - 277
  - 279
  - 280
  - 281
  - 253
  dns.transaction.TransactionManager.from_wire_origin:
  - 65
  - 66
  - 67
  dns.transaction.TransactionManager.get_class:
  - 61
  dns.transaction.TransactionManager.origin_information:
  - 36
  dns.transaction.TransactionManager.reader:
  - 20
  dns.transaction.TransactionManager.writer:
  - 24
  dns.transaction._ensure_immutable_node:
  - 92
  - 94
  dns.transaction._ensure_immutable_rdataset:
  - 88
  - 86
  dns.tsig:
  - 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:
  - 20
  dns.versioned.Zone.__init__:
  - 67
  - 68
  - 69
  - 70
  - 76
  - 77
  - 78
  - 79
  - 52
  dns.versioned.Zone._commit_version:
  - 263
  dns.versioned.Zone._commit_version_unlocked:
  - 258
  - 259
  - 252
  - 253
  - 255
  dns.versioned.Zone._end_read:
  - 240
  - 239
  dns.versioned.Zone._end_write:
  - 249
  dns.versioned.Zone._end_write_unlocked:
  - 245
  dns.versioned.Zone._get_next_version_id:
  - 266
  dns.versioned.Zone._maybe_wakeup_one_waiter_unlocked:
  - 171
  - 172
  - 173
  dns.versioned.Zone._prune_versions_unlocked:
  - 194
  - 197
  - 182
  - 190
  - 191
  dns.versioned.Zone.find_node:
  - 275
  - 277
  dns.versioned.Zone.find_rdataset:
  - 289
  - 291
  - 292
  dns.versioned.Zone.get_rdataset:
  - 304
  - 305
  - 301
  - 303
  dns.versioned.Zone.reader:
  - 96
  - 97
  - 103
  - 104
  - 105
  - 106
  - 107
  - 109
  - 110
  - 113
  - 85
  - 117
  - 118
  - 88
  - 90
  - 91
  - 94
  dns.versioned.Zone.set_max_versions:
  - 200
  - 203
  - 205
  - 215
  dns.versioned.Zone.set_max_versions.policy:
  - 213
  dns.versioned.Zone.set_pruning_policy:
  - 235
  - 220
  - 231
  dns.versioned.Zone.writer:
  - 129
  - 165
  - 135
  - 167
  - 144
  - 145
  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:
  - 12
  dns.wire.Parser.__init__:
  - 24
  - 25
  - 26
  - 15
  dns.wire.Parser.get_bytes:
  - 34
  - 38
  dns.wire.Parser.get_counted_bytes:
  - 42
  - 43
  dns.wire.Parser.get_name:
  - 64
  - 65
  - 66
  dns.wire.Parser.get_remaining:
  - 46
  dns.wire.Parser.get_struct:
  - 61
  dns.wire.Parser.get_uint16:
  - 52
  dns.wire.Parser.get_uint32:
  - 55
  dns.wire.Parser.get_uint48:
  - 58
  dns.wire.Parser.get_uint8:
  - 49
  dns.wire.Parser.restore_furthest:
  - 96
  dns.wire.Parser.restrict_to:
  - 88
  - 84
  - 79
  dns.wire.Parser.seek:
  - 72
  dns.xfr.Inbound:
  - 57
  dns.xfr.Inbound.__exit__:
  - 265
  - 266
  dns.xfr.Inbound.__init__:
  - 96
  - 68
  - 83
  - 84
  - 87
  - 88
  - 95
  dns.xfr.Inbound.process_message:
  - 128
  - 133
  - 137
  - 140
  - 141
  - 143
  - 144
  - 149
  - 153
  - 168
  - 171
  - 174
  - 178
  - 186
  - 192
  - 193
  - 196
  - 198
  - 199
  - 207
  - 208
  - 209
  - 211
  - 218
  - 223
  - 232
  - 105
  - 233
  - 113
  - 114
  - 115
  - 116
  - 242
  - 245
  - 246
  - 248
  - 249
  - 122
  - 123
  - 125
  dns.xfr.SerialWentBackwards:
  - 49
  dns.xfr.TransferError:
  - 40
  dns.xfr.TransferError.__init__:
  - 43
  - 44
  dns.xfr.UseTCP:
  - 53
  dns.xfr.extract_serial_from_query:
  - 354
  - 357
  - 359
  - 361
  - 364
  - 346
  dns.xfr.make_query:
  - 282
  - 301
  - 302
  - 304
  - 306
  - 308
  - 309
  - 310
  - 311
  - 312
  - 318
  - 322
  - 323
  - 334
  - 335
  - 336
  - 339
  - 340
  - 341
  dns.zone:
  - 18
  dns.zone.BadZone:
  - 54
  dns.zone.DigestVerificationFailure:
  - 82
  dns.zone.ImmutableVersion.__init__:
  - 1088
  - 1094
  - 1095
  - 1097
  - 1098
  - 1101
  - 1081
  dns.zone.ImmutableVersionedNode.__init__:
  - 928
  - 929
  - 926
  dns.zone.ImmutableVersionedNode.find_rdataset:
  - 939
  - 941
  dns.zone.ImmutableVersionedNode.get_rdataset:
  - 952
  - 950
  dns.zone.NoDigest:
  - 78
  dns.zone.NoNS:
  - 62
  dns.zone.NoSOA:
  - 58
  dns.zone.Transaction.__init__:
  - 1109
  dns.zone.Transaction._changed:
  - 1152
  - 1148
  dns.zone.Transaction._delete_name:
  - 1136
  dns.zone.Transaction._delete_rdataset:
  - 1141
  dns.zone.Transaction._end_transaction:
  - 1157
  - 1158
  - 1159
  - 1160
  - 1162
  - 1164
  - 1167
  - 1173
  dns.zone.Transaction._get_node:
  - 1192
  dns.zone.Transaction._get_rdataset:
  - 1126
  dns.zone.Transaction._iterate_names:
  - 1188
  dns.zone.Transaction._iterate_rdatasets:
  - 1184
  - 1182
  - 1183
  dns.zone.Transaction._name_exists:
  - 1145
  dns.zone.Transaction._origin_information:
  - 1201
  - 1196
  - 1197
  dns.zone.Transaction._put_rdataset:
  - 1131
  dns.zone.Transaction._set_origin:
  - 1177
  dns.zone.Transaction._setup_version:
  - 1120
  - 1122
  dns.zone.UnknownOrigin:
  - 66
  dns.zone.UnsupportedDigestHashAlgorithm:
  - 74
  dns.zone.UnsupportedDigestScheme:
  - 70
  dns.zone.Version.__init__:
  - 979
  - 982
  dns.zone.Version._validate_name:
  - 986
  dns.zone.Version.get_node:
  - 989
  - 990
  dns.zone.Version.get_rdataset:
  - 1001
  - 998
  - 999
  dns.zone.Version.items:
  - 1007
  dns.zone.Version.keys:
  - 1004
  dns.zone.VersionedNode.__init__:
  - 918
  dns.zone.WritableVersion.__init__:
  - 1025
  - 1014
  - 1015
  - 1016
  - 1021
  dns.zone.WritableVersion._maybe_cow:
  - 1052
  dns.zone.WritableVersion._maybe_cow_with_name:
  - 1030
  - 1031
  - 1032
  - 1033
  - 1034
  - 1042
  - 1044
  - 1046
  dns.zone.WritableVersion.delete_node:
  - 1056
  - 1058
  - 1055
  dns.zone.WritableVersion.delete_rdataset:
  - 1072
  - 1073
  - 1074
  dns.zone.WritableVersion.put_rdataset:
  - 1064
  - 1063
  dns.zone.Zone:
  - 118
  dns.zone.Zone.__contains__:
  - 230
  dns.zone.Zone.__delitem__:
  - 210
  dns.zone.Zone.__eq__:
  - 168
  - 174
  - 176
  dns.zone.Zone.__getitem__:
  - 202
  dns.zone.Zone.__init__:
  - 160
  - 164
  - 143
  - 155
  - 156
  - 157
  - 158
  dns.zone.Zone.__iter__:
  - 214
  dns.zone.Zone.__ne__:
  - 185
  - 190
  dns.zone.Zone.__setitem__:
  - 206
  dns.zone.Zone._commit_version:
  - 898
  dns.zone.Zone._compute_digest:
  - 804
  - 805
  - 807
  - 810
  - 815
  - 816
  - 817
  - 818
  - 819
  - 824
  - 827
  - 828
  - 829
  - 830
  - 831
  dns.zone.Zone._validate_name:
  - 195
  - 196
  - 197
  - 199
  dns.zone.Zone.check_origin:
  - 768
  - 753
  - 761
  - 766
  dns.zone.Zone.compute_digest:
  - 840
  - 838
  - 839
  dns.zone.Zone.delete_node:
  - 288
  - 298
  - 299
  dns.zone.Zone.delete_rdataset:
  - 426
  - 427
  - 428
  - 429
  - 430
  - 431
  - 432
  - 433
  - 403
  dns.zone.Zone.find_node:
  - 257
  - 236
  - 252
  - 253
  - 254
  - 255
  dns.zone.Zone.find_rdataset:
  - 309
  - 343
  - 344
  - 345
  - 346
  - 347
  dns.zone.Zone.find_rrset:
  - 467
  - 505
  - 506
  - 507
  - 508
  - 509
  - 510
  dns.zone.Zone.get:
  - 226
  - 227
  dns.zone.Zone.get_node:
  - 264
  - 282
  dns.zone.Zone.get_rdataset:
  - 392
  - 356
  dns.zone.Zone.get_rrset:
  - 554
  - 519
  dns.zone.Zone.get_soa:
  - 774
  - 780
  - 783
  - 789
  - 790
  - 792
  - 793
  - 796
  dns.zone.Zone.items:
  - 223
  dns.zone.Zone.iterate_rdatas:
  - 614
  - 615
  - 616
  - 617
  - 618
  - 621
  - 622
  - 596
  dns.zone.Zone.iterate_rdatasets:
  - 582
  - 583
  - 584
  - 585
  - 586
  - 589
  - 564
  dns.zone.Zone.keys:
  - 217
  dns.zone.Zone.origin_information:
  - 879
  dns.zone.Zone.reader:
  - 868
  dns.zone.Zone.replace_rdataset:
  - 456
  - 458
  - 459
  - 438
  dns.zone.Zone.to_file:
  - 660
  - 661
  - 663
  - 667
  - 668
  - 671
  - 673
  - 675
  - 676
  - 679
  - 681
  - 683
  - 684
  - 686
  - 687
  - 689
  - 690
  - 692
  - 693
  - 694
  - 696
  - 697
  - 698
  - 704
  - 707
  - 708
  - 710
  - 711
  - 633
  dns.zone.Zone.to_text:
  - 746
  - 747
  - 748
  - 749
  - 721
  dns.zone.Zone.values:
  - 220
  dns.zone.Zone.verify_digest:
  - 848
  - 852
  - 853
  - 856
  - 858
  - 859
  dns.zone.Zone.writer:
  - 872
  - 871
  dns.zone._from_text:
  - 1227
  - 1229
  - 1230
  - 1231
  - 1232
  - 1240
  - 1245
  - 1246
  dns.zone._validate_name:
  - 96
  - 97
  - 99
  - 100
  - 105
  - 110
  - 91
  dns.zone.from_file:
  - 1385
  - 1386
  - 1388
  - 1390
  - 1392
  - 1336
  dns.zone.from_text:
  - 1262
  - 1310
  dns.zone.from_xfr:
  - 1440
  - 1441
  - 1413
  - 1446
  - 1447
  - 1448
  - 1449
  - 1450
  - 1452
  - 1453
  - 1454
  - 1455
  - 1456
  - 1458
  - 1459
  - 1439
  dns.zonefile:
  - 18
  dns.zonefile.CNAMEAndOtherData:
  - 43
  dns.zonefile.RRSetsReaderManager.origin_information:
  - 653
  dns.zonefile.RRSetsReaderManager.writer:
  - 647
  dns.zonefile.RRsetsReaderTransaction.__init__:
  - 564
  dns.zonefile.RRsetsReaderTransaction._changed:
  - 607
  dns.zonefile.RRsetsReaderTransaction._delete_name:
  - 587
  - 588
  - 589
  - 590
  - 591
  dns.zonefile.RRsetsReaderTransaction._end_transaction:
  - 610
  - 612
  - 613
  - 616
  - 617
  - 618
  dns.zonefile.RRsetsReaderTransaction._get_node:
  - 577
  - 572
  - 573
  - 574
  - 575
  dns.zonefile.RRsetsReaderTransaction._get_rdataset:
  - 568
  dns.zonefile.RRsetsReaderTransaction._name_exists:
  - 601
  - 602
  dns.zonefile.Reader:
  - 89
  dns.zonefile.Reader.__init__:
  - 130
  - 134
  - 105
  - 139
  - 109
  - 111
  - 123
  - 125
  - 126
  - 127
  dns.zonefile.Reader._eat_line:
  - 144
  - 143
  dns.zonefile.Reader._generate_line:
  - 384
  - 385
  - 412
  - 413
  - 414
  - 417
  - 418
  - 420
  - 421
  - 423
  - 424
  - 426
  - 431
  - 432
  - 434
  - 435
  - 438
  - 324
  - 326
  - 455
  - 329
  - 332
  - 333
  - 334
  - 460
  - 342
  - 343
  - 350
  - 353
  - 354
  - 357
  - 359
  - 361
  - 371
  - 372
  - 373
  - 379
  - 383
  dns.zonefile.Reader._generate_line._calculate_index:
  - 394
  - 395
  dns.zonefile.Reader._generate_line._format_index:
  - 400
  - 402
  - 403
  - 406
  - 407
  - 408
  - 409
  dns.zonefile.Reader._get_identifier:
  - 148
  - 149
  dns.zonefile.Reader._parse_modify:
  - 280
  - 281
  - 282
  - 291
  - 292
  - 293
  - 294
  - 297
  - 298
  - 299
  - 300
  - 305
  - 306
  - 307
  - 308
  - 312
  - 313
  - 315
  - 317
  dns.zonefile.Reader._rr_line:
  - 256
  - 259
  - 263
  - 266
  - 272
  - 275
  - 154
  - 157
  - 160
  - 162
  - 163
  - 164
  - 166
  - 167
  - 170
  - 172
  - 175
  - 176
  - 178
  - 179
  - 182
  - 187
  - 190
  - 195
  - 198
  - 201
  - 203
  - 208
  - 209
  - 212
  - 214
  - 217
  - 222
  - 224
  - 226
  - 229
  - 232
  - 234
  - 239
  dns.zonefile.Reader.read:
  - 513
  - 514
  - 515
  - 517
  - 519
  - 520
  - 523
  - 524
  - 528
  - 540
  - 541
  - 543
  - 544
  - 550
  - 551
  - 553
  - 554
  - 556
  - 557
  - 463
  - 471
  - 472
  - 473
  - 474
  - 475
  - 485
  - 488
  - 490
  - 491
  - 493
  - 496
  - 497
  - 501
  - 502
  - 503
  - 505
  - 507
  - 508
  - 509
  - 510
  - 511
  dns.zonefile.UnknownOrigin:
  - 39
  dns.zonefile._check_cname_and_other_data:
  - 47
  - 48
  - 49
  - 52
  - 53
  - 58
  dns.zonefile._upper_dollarize:
  - 82
  - 83
  dns.zonefile.read_rrsets:
  - 675
  - 724
  - 725
  - 726
  - 727
  - 728
  - 729
  - 730
  - 731
  - 732
  - 733
  - 736
  - 737
  - 738
  - 741
  - 742
  - 743
  - 744
  - 755
  dns.zonetypes:
  - 3
  dns.zonetypes.DigestHashAlgorithm:
  - 24
  dns.zonetypes.DigestScheme:
  - 14
Fuzzer filename: /src/fuzz_token.py
Inheritance:
  dns._asyncbackend.Backend: []
  dns._asyncbackend.DatagramSocket:
  - Socket
  dns._asyncbackend.NullContext: []
  dns._asyncbackend.NullTransport: []
  dns._asyncbackend.Socket: []
  dns._asyncbackend.StreamSocket:
  - Socket
  dns._asyncio_backend.Backend: []
  dns._asyncio_backend.DatagramSocket: []
  dns._asyncio_backend.StreamSocket: []
  dns._asyncio_backend._DatagramProtocol: []
  dns._asyncio_backend._HTTPTransport: []
  dns._asyncio_backend._NetworkBackend:
  - _CoreAsyncNetworkBackend
  dns._ddr._SVCBInfo: []
  dns._immutable_ctx._Immutable: []
  dns._immutable_ctx.immutable.ncls:
  - cls
  - _Immutable
  dns._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.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'
