All classes:
- ipykernel.thread.BaseThread
- ipykernel.control.ControlThread
- ipykernel.heartbeat.Heartbeat
- ipykernel.iostream.IOPubThread
- ipykernel.iostream.BackgroundSocket
- ipykernel.iostream.OutStream
- ipykernel.utils.LazyDict
- ipykernel.kernelbase.Kernel
- ipykernel.compiler.XCachingCompiler
- ipykernel.debugger._FakeCode
- ipykernel.debugger._FakeFrame
- ipykernel.debugger._DummyPyDB
- ipykernel.debugger.VariableExplorer
- ipykernel.debugger.DebugpyMessageQueue
- ipykernel.debugger.DebugpyClient
- ipykernel.debugger.Debugger
- ipykernel.comm.comm.BaseComm
- ipykernel.comm.comm.Comm
- ipykernel.comm.manager.CommManager
- ipykernel.eventloops.loop_wx.TimerFrame
- ipykernel.eventloops.loop_wx.IPWxApp
- ipykernel.eventloops.loop_tk.BasicAppWrapper
- ipykernel.eventloops.loop_tk.TimedAppWrapper
- ipykernel.gui.gtkembed.GTKEmbed
- ipykernel.gui.gtk3embed.GTKEmbed
- ipykernel.displayhook.ZMQDisplayHook
- ipykernel.displayhook.ZMQShellDisplayHook
- ipykernel.zmqshell.ZMQDisplayPublisher
- ipykernel.zmqshell.KernelMagics
- ipykernel.zmqshell.ZMQInteractiveShell
- ipykernel.ipkernel.IPythonKernel
- ipykernel.ipkernel.Kernel
- ipykernel.parentpoller.ParentPollerUnix
- ipykernel.parentpoller.ParentPollerWindows
- ipykernel.socket_pair.SocketPair
- ipykernel.subshell.SubshellThread
- ipykernel.subshell_manager.SubshellManager
- ipykernel.shellchannel.ShellChannelThread
- ipykernel.kernelapp.IPKernelApp
- ipykernel.trio_runner.TrioRunner
- ipykernel.kernelspec.InstallIPythonKernelSpecApp
- ipykernel.log.EnginePUBHandler
- ipykernel.inprocess.channels.InProcessChannel
- ipykernel.inprocess.channels.InProcessHBChannel
- ipykernel.inprocess.client.InProcessKernelClient
- ipykernel.inprocess.manager.InProcessKernelManager
- ipykernel.inprocess.socket.DummySocket
- ipykernel.inprocess.ipkernel.InProcessKernel
- ipykernel.inprocess.ipkernel.InProcessInteractiveShell
- ipykernel.inprocess.blocking.BlockingInProcessChannel
- ipykernel.inprocess.blocking.BlockingInProcessStdInChannel
- ipykernel.inprocess.blocking.BlockingInProcessKernelClient
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_unpack_roundtrip'
    functionSourceFile: '...fuzz_unpack_roundtrip'
    functionUses: 0
    functionsReached:
    - atheris.Fuzz
    - '...fuzz_unpack_roundtrip.main'
    - atheris.Setup
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - fdp
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: '...fuzz_unpack_roundtrip.ConsumeRandomLengthBufferList'
    functionSourceFile: '...fuzz_unpack_roundtrip'
    functionUses: 1
    functionsReached:
    - buffers.append
    - fdp.ConsumeBytes
    - fdp.ConsumeIntInRange
    - <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: fdp.ConsumeIntInRange
    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>.range
    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: fdp.ConsumeBytes
    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: buffers.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: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 30
    functionName: '...fuzz_unpack_roundtrip.TestOneInput'
    functionSourceFile: '...fuzz_unpack_roundtrip'
    functionUses: 0
    functionsReached:
    - buffers.append
    - ipykernel.serialize.unpack_apply_message
    - ipykernel.serialize.pack_apply_message
    - <builtin>.len
    - '...fuzz_unpack_roundtrip.ConsumeRandomLengthBufferList'
    - fdp.ConsumeBytes
    - <builtin>.range
    - atheris.FuzzedDataProvider
    - fdp.ConsumeIntInRange
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 48
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: ipykernel.serialize.unpack_apply_message
    functionSourceFile: ipykernel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.serialize.pack_apply_message
    functionSourceFile: ipykernel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 45
    functionName: '...fuzz_unpack_roundtrip.main'
    functionSourceFile: '...fuzz_unpack_roundtrip'
    functionUses: 1
    functionsReached:
    - atheris.Fuzz
    - atheris.Setup
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel
    functionSourceFile: ipykernel
    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: ipykernel.connect
    functionSourceFile: ipykernel.connect
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fbceef5b310>
    argNames:
    - app
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: ipykernel.connect.get_connection_file
    functionSourceFile: ipykernel.connect
    functionUses: 5
    functionsReached:
    - traitlets.utils.filefind
    - IPython.core.application.BaseIPythonApplication.instance
    - IPython.core.application.BaseIPythonApplication.initialized
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.application.BaseIPythonApplication.initialized
    functionSourceFile: IPython
    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: IPython.core.application.BaseIPythonApplication.instance
    functionSourceFile: IPython
    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: traitlets.utils.filefind
    functionSourceFile: traitlets
    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:
    - connection_file
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 40
    functionName: ipykernel.connect._find_connection_file
    functionSourceFile: ipykernel.connect
    functionUses: 4
    functionsReached:
    - jupyter_client.find_connection_file
    - traitlets.utils.filefind
    - IPython.core.application.BaseIPythonApplication.initialized
    - IPython.core.application.BaseIPythonApplication.instance
    - ipykernel.connect.get_connection_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.find_connection_file
    functionSourceFile: jupyter_client
    functionUses: 5
    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 0x7fbceeecee50>
    - <ast.Constant object at 0x7fbceeece760>
    argNames:
    - connection_file
    - unpack
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 52
    functionName: ipykernel.connect.get_connection_info
    functionSourceFile: ipykernel.connect
    functionUses: 2
    functionsReached:
    - jupyter_client.find_connection_file
    - info.get
    - json.loads
    - traitlets.utils.filefind
    - IPython.core.application.BaseIPythonApplication.initialized
    - ipykernel.connect._find_connection_file
    - IPython.core.application.BaseIPythonApplication.instance
    - <builtin>.open
    - f.read
    - ipykernel.connect.get_connection_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: f.read
    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: json.loads
    functionSourceFile: json
    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.get
    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:
    - <ast.Constant object at 0x7fbceeb87ac0>
    - <ast.Constant object at 0x7fbceeb87370>
    argNames:
    - connection_file
    - argv
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 90
    functionName: ipykernel.connect.connect_qtconsole
    functionSourceFile: ipykernel.connect
    functionUses: 0
    functionsReached:
    - jupyter_client.find_connection_file
    - subprocess.Popen
    - traitlets.utils.filefind
    - IPython.core.application.BaseIPythonApplication.initialized
    - ipykernel.connect._find_connection_file
    - IPython.core.application.BaseIPythonApplication.instance
    - ipykernel.connect.get_connection_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 8
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: ipykernel.kernelapp
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - ipykernel.kernelapp.main
    - app.initialize
    - kernel_flags.update
    - kernel_aliases.update
    - IPython.core.application.BaseIPythonApplication.instance
    - app.start
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: kernel_aliases.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: kernel_flags.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: traitlets.traitlets.Dict
    functionSourceFile: traitlets
    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: ipykernel.kernelapp.IPKernelApp
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - traitlets.traitlets.Instance
    - <builtin>.int
    - traitlets.traitlets.Integer.tag
    - traitlets.traitlets.Bool
    - traitlets.traitlets.Unicode
    - traitlets.traitlets.default
    - traitlets.traitlets.Integer
    - traitlets.traitlets.Bool.tag
    - traitlets.traitlets.Type
    - traitlets.traitlets.Dict
    - IPython.core.application.catch_config_error
    - os.environ.get
    - traitlets.traitlets.Type.tag
    - jupyter_client.session.Session
    - traitlets.traitlets.DottedObjectName.tag
    - traitlets.traitlets.DottedObjectName
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Type
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Type.tag
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session
    functionSourceFile: jupyter_client
    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: traitlets.traitlets.Instance
    functionSourceFile: traitlets
    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: traitlets.traitlets.Unicode
    functionSourceFile: traitlets
    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: traitlets.traitlets.default
    functionSourceFile: traitlets
    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: 162
    functionName: ipykernel.kernelapp.IPKernelApp._default_connection_dir
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - jupyter_core.paths.jupyter_runtime_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_core.paths.jupyter_runtime_dir
    functionSourceFile: jupyter_core
    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: 166
    functionName: ipykernel.kernelapp.IPKernelApp.abs_connection_file
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - pathlib.Path
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path
    functionSourceFile: pathlib
    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: <builtin>.str
    functionSourceFile: <builtin>
    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: traitlets.traitlets.Bool
    functionSourceFile: traitlets
    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: traitlets.traitlets.Bool.tag
    functionSourceFile: traitlets
    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: traitlets.traitlets.DottedObjectName
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.DottedObjectName.tag
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.environ.get
    functionSourceFile: os
    functionUses: 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: <builtin>.int
    functionSourceFile: <builtin>
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Integer
    functionSourceFile: traitlets
    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: traitlets.traitlets.Integer.tag
    functionSourceFile: traitlets
    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: 205
    functionName: ipykernel.kernelapp.IPKernelApp.init_crash_handler
    functionSourceFile: ipykernel.kernelapp
    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
    - etype
    - evalue
    - tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 209
    functionName: ipykernel.kernelapp.IPKernelApp.excepthook
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - traceback.print_exception
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traceback.print_exception
    functionSourceFile: traceback
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 214
    functionName: ipykernel.kernelapp.IPKernelApp.init_poller
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - ipykernel.parentpoller.ParentPollerUnix.__init__
    - <builtin>.super
    - ipykernel.parentpoller.ParentPollerWindows.__init__
    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 0x7fbcef130970>
    - <ast.Constant object at 0x7fbcef130520>
    argNames:
    - self
    - interrupt_handle
    - parent_handle
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 75
    functionName: ipykernel.parentpoller.ParentPollerWindows.__init__
    functionSourceFile: ipykernel.parentpoller
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - ImportError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fbceef25a60>
    argNames:
    - self
    - parent_pid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: ipykernel.parentpoller.ParentPollerUnix.__init__
    functionSourceFile: ipykernel.parentpoller
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 225
    functionName: ipykernel.kernelapp.IPKernelApp._try_bind_socket
    functionSourceFile: ipykernel.kernelapp
    functionUses: 5
    functionsReached:
    - jupyter_client.session.Session.bind_to_random_port
    - jupyter_client.session.Session.bind
    - pathlib.Path.exists
    - pathlib.Path
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.bind_to_random_port
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.bind
    functionSourceFile: jupyter_client
    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: pathlib.Path.exists
    functionSourceFile: pathlib
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - port
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 244
    functionName: ipykernel.kernelapp.IPKernelApp._bind_socket
    functionSourceFile: ipykernel.kernelapp
    functionUses: 4
    functionsReached:
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - pathlib.Path.exists
    - jupyter_client.session.Session.bind_to_random_port
    - jupyter_client.session.Session.bind
    - pathlib.Path
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 264
    functionName: ipykernel.kernelapp.IPKernelApp.write_connection_file
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - jupyter_client.find_connection_file
    - <builtin>.dict
    - pathlib.Path.exists
    - info.get
    - <builtin>.isinstance
    - json.loads
    - traitlets.utils.filefind
    - IPython.core.application.BaseIPythonApplication.initialized
    - ipykernel.connect.get_connection_info
    - ipykernel.connect._find_connection_file
    - pathlib.Path
    - ipykernel.kernelapp.IPKernelApp.write_connection_file
    - IPython.core.application.BaseIPythonApplication.instance
    - <builtin>.open
    - f.read
    - ipykernel.connect.get_connection_file
    - IPython.core.application.BaseIPythonApplication.log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.isinstance
    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: IPython.core.application.BaseIPythonApplication.log.debug
    functionSourceFile: IPython
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 292
    functionName: ipykernel.kernelapp.IPKernelApp.cleanup_connection_file
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - pathlib.Path.unlink
    - pathlib.Path
    - IPython.core.application.BaseIPythonApplication.log.debug
    - IPython.core.application.BaseIPythonApplication.cleanup_ipc_files
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path.unlink
    functionSourceFile: pathlib
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.application.BaseIPythonApplication.cleanup_ipc_files
    functionSourceFile: IPython
    functionUses: 1
    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: 1
    functionLinenumber: 303
    functionName: ipykernel.kernelapp.IPKernelApp.init_connection_file
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.exit
    - traitlets.utils.filefind
    - atexit.register
    - IPython.core.application.BaseIPythonApplication.load_connection_file
    - pathlib.Path.parent.mkdir
    - IPython.core.application.BaseIPythonApplication.log.error
    - pathlib.Path
    - os.getpid
    - IPython.core.application.BaseIPythonApplication.log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.getpid
    functionSourceFile: os
    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: pathlib.Path.parent.mkdir
    functionSourceFile: pathlib
    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: atexit.register
    functionSourceFile: atexit
    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: IPython.core.application.BaseIPythonApplication.load_connection_file
    functionSourceFile: IPython
    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: IPython.core.application.BaseIPythonApplication.log.error
    functionSourceFile: IPython
    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: IPython.core.application.BaseIPythonApplication.exit
    functionSourceFile: IPython
    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: 3
    functionLinenumber: 324
    functionName: ipykernel.kernelapp.IPKernelApp.init_sockets
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - handler.setFormatter
    - ipykernel.kernelapp.IPKernelApp.init_iopub
    - threading.current_thread
    - ipykernel.shellchannel.ShellChannelThread.__init__
    - jupyter_client.session.Session.start
    - jupyter_client.session.Session.getsockopt
    - jupyter_client.session.Session
    - jupyter_client.session.Session.connect
    - logging.Formatter
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - <builtin>.super
    - atexit.register
    - ipykernel.control.ControlThread.__init__
    - <builtin>.hasattr
    - ipykernel.kernelapp.IPKernelApp.init_control
    - logging.getLogger
    - IPython.core.application.BaseIPythonApplication.log.info
    - IPython.core.application.BaseIPythonApplication.log.debug
    - logger.addHandler
    - jupyter_client.session.Session.socket
    - asyncio.Lock
    - jupyter_client.session.Session.bind_to_random_port
    - jupyter_client.session.Session.bind
    - pathlib.Path
    - <builtin>.range
    - logging.StreamHandler
    - pathlib.Path.exists
    - os.getpid
    - zmq.Context
    - ipykernel.kernelapp.IPKernelApp.configure_tornado_logger
    - ipykernel.kernelapp.IPKernelApp._bind_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: IPython.core.application.BaseIPythonApplication.log.info
    functionSourceFile: IPython
    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: zmq.Context
    functionSourceFile: zmq
    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: jupyter_client.session.Session.socket
    functionSourceFile: jupyter_client
    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>.hasattr
    functionSourceFile: <builtin>
    functionUses: 48
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 350
    functionName: ipykernel.kernelapp.IPKernelApp.init_control
    functionSourceFile: ipykernel.kernelapp
    functionUses: 2
    functionsReached:
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - <builtin>.super
    - pathlib.Path.exists
    - threading.current_thread
    - ipykernel.shellchannel.ShellChannelThread.__init__
    - jupyter_client.session.Session.socket
    - asyncio.Lock
    - ipykernel.control.ControlThread.__init__
    - jupyter_client.session.Session.bind_to_random_port
    - jupyter_client.session.Session.bind
    - jupyter_client.session.Session.getsockopt
    - <builtin>.hasattr
    - pathlib.Path
    - IPython.core.application.BaseIPythonApplication.log.debug
    - <builtin>.range
    - ipykernel.kernelapp.IPKernelApp._bind_socket
    - jupyter_client.session.Session.connect
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 378
    functionName: ipykernel.kernelapp.IPKernelApp.init_iopub
    functionSourceFile: ipykernel.kernelapp
    functionUses: 2
    functionsReached:
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - pathlib.Path.exists
    - handler.setFormatter
    - logger.addHandler
    - jupyter_client.session.Session.start
    - jupyter_client.session.Session.socket
    - logging.getLogger
    - jupyter_client.session.Session.bind_to_random_port
    - jupyter_client.session.Session.bind
    - pathlib.Path
    - <builtin>.range
    - jupyter_client.session.Session
    - ipykernel.kernelapp.IPKernelApp.configure_tornado_logger
    - ipykernel.kernelapp.IPKernelApp._bind_socket
    - logging.Formatter
    - logging.StreamHandler
    - IPython.core.application.BaseIPythonApplication.log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.getsockopt
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.connect
    functionSourceFile: jupyter_client
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 9
    functionName: ipykernel.control.ControlThread.__init__
    functionSourceFile: ipykernel.control
    functionUses: 3
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - context
    - shell_socket
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: ipykernel.shellchannel.ShellChannelThread.__init__
    functionSourceFile: ipykernel.shellchannel
    functionUses: 3
    functionsReached:
    - <builtin>.super
    - asyncio.Lock
    - threading.current_thread
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 632
    functionName: ipykernel.kernelapp.IPKernelApp.configure_tornado_logger
    functionSourceFile: ipykernel.kernelapp
    functionUses: 3
    functionsReached:
    - handler.setFormatter
    - logger.addHandler
    - logging.getLogger
    - logging.StreamHandler
    - logging.Formatter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.start
    functionSourceFile: jupyter_client
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 390
    functionName: ipykernel.kernelapp.IPKernelApp.init_heartbeat
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - ipykernel.heartbeat.Heartbeat.__init__
    - traitlets.traitlets.Instance.start
    - s.bind
    - pathlib.Path.exists
    - threading.Thread.start
    - jupyter_client.session.Session.start
    - socket.socket
    - jupyter_client.session.Session
    - ipykernel.heartbeat.Heartbeat.pick_port
    - jupyter_client.localinterfaces.localhost
    - s.getsockname
    - threading.Thread.__init__
    - pathlib.Path
    - zmq.Context
    - s.close
    - IPython.core.application.BaseIPythonApplication.log.debug
    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 0x7fbcef018190>
    argNames:
    - self
    - context
    - addr
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 30
    functionName: ipykernel.heartbeat.Heartbeat.__init__
    functionSourceFile: ipykernel.heartbeat
    functionUses: 2
    functionsReached:
    - s.bind
    - pathlib.Path.exists
    - socket.socket
    - ipykernel.heartbeat.Heartbeat.pick_port
    - jupyter_client.localinterfaces.localhost
    - s.getsockname
    - threading.Thread.__init__
    - pathlib.Path
    - s.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Instance.start
    functionSourceFile: traitlets
    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: threading.Thread.start
    functionSourceFile: threading
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 21
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 400
    functionName: ipykernel.kernelapp.IPKernelApp.close
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.stop
    - traitlets.traitlets.Instance.context.term
    - threading.Thread.join
    - ipykernel.thread.BaseThread.stop
    - <builtin>.getattr
    - ipykernel.kernelapp.IPKernelApp.reset_io
    - jupyter_client.session.Session.join
    - jupyter_client.session.Session.close
    - jupyter_client.session.Session.term
    - socket.close
    - tornado.ioloop.IOLoop.add_callback
    - jupyter_client.session.Session.context.term
    - threading.Thread.is_alive
    - jupyter_client.session.Session.is_alive
    - queue.Queue.io_loop.add_callback
    - jupyter_client.session.Session.background_socket.io_loop.add_callback
    - IPython.core.application.BaseIPythonApplication.log.info
    - IPython.core.application.BaseIPythonApplication.log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 516
    functionName: ipykernel.kernelapp.IPKernelApp.reset_io
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Instance.context.term
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.term
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.context.term
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.stop
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.close
    functionSourceFile: jupyter_client
    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: threading.Thread.is_alive
    functionSourceFile: threading
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.is_alive
    functionSourceFile: jupyter_client
    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: 1
    functionLinenumber: 28
    functionName: ipykernel.thread.BaseThread.stop
    functionSourceFile: ipykernel.thread
    functionUses: 1
    functionsReached:
    - queue.Queue.io_loop.add_callback
    - jupyter_client.session.Session.background_socket.io_loop.add_callback
    - tornado.ioloop.IOLoop.add_callback
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.join
    functionSourceFile: threading
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.join
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: socket.close
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 436
    functionName: ipykernel.kernelapp.IPKernelApp.log_connection_info
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    - <builtin>.int
    - pathlib.Path
    - <builtin>.str
    - <builtin>.print
    - IPython.core.application.BaseIPythonApplication.log.info
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 24
    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: 1
    functionLinenumber: 472
    functionName: ipykernel.kernelapp.IPKernelApp.init_blackhole
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - <builtin>.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 481
    functionName: ipykernel.kernelapp.IPKernelApp.init_io
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - io.TextIOWrapper
    - <builtin>.isinstance
    - ipykernel.kernelapp.IPKernelApp.patch_io
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - io.FileIO
    - <builtin>.hasattr
    - <builtin>.str
    - IPython.core.application.BaseIPythonApplication.log.handlers.stream.buffer.fileno
    - sys.stderr.flush
    - functools.partial
    - sys.stdout.flush
    - IPython.core.application.BaseIPythonApplication.log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: functools.partial
    functionSourceFile: functools
    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: zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    functionSourceFile: zmq
    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: sys.stdout.flush
    functionSourceFile: sys
    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: sys.stderr.flush
    functionSourceFile: sys
    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: IPython.core.application.BaseIPythonApplication.log.handlers.stream.buffer.fileno
    functionSourceFile: IPython
    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: io.FileIO
    functionSourceFile: io
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.TextIOWrapper
    functionSourceFile: io
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 525
    functionName: ipykernel.kernelapp.IPKernelApp.patch_io
    functionSourceFile: ipykernel.kernelapp
    functionUses: 2
    functionsReached:
    - <builtin>.hasattr
    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 0x7fbcef7427f0>
    - <ast.Constant object at 0x7fbcef742190>
    argNames:
    - file
    - all_threads
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 539
    functionName: ipykernel.kernelapp.IPKernelApp.patch_io.enable
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - faulthandler.enable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: faulthandler.enable
    functionSourceFile: faulthandler
    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.Attribute object at 0x7fbcef742970>
    - <ast.Constant object at 0x7fbcef742a60>
    - <ast.Constant object at 0x7fbcef742550>
    argNames:
    - signum
    - file
    - all_threads
    - chain
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 547
    functionName: ipykernel.kernelapp.IPKernelApp.patch_io.register
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - faulthandler.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: faulthandler.register
    functionSourceFile: faulthandler
    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: 1
    functionLinenumber: 554
    functionName: ipykernel.kernelapp.IPKernelApp.init_signal
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - signal.signal
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: signal.signal
    functionSourceFile: signal
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 558
    functionName: ipykernel.kernelapp.IPKernelApp.init_kernel
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - kernel.record_ports
    - traitlets.traitlets.Dict.items
    - jupyter_client.session.Session.start
    - threading.Thread.start
    - jupyter_client.session.Session
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Dict.items
    functionSourceFile: traitlets
    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: kernel.record_ports
    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: ipykernel.kernelapp.IPKernelApp.init_kernel.<lambda1>
    functionSourceFile: ipykernel.kernelapp
    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: 595
    functionName: ipykernel.kernelapp.IPKernelApp.init_gui_pylab
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - IPython.core.shellapp.InteractiveShellApp.init_gui_pylab
    - os.environ.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - etype
    - evalue
    - stb
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 616
    functionName: ipykernel.kernelapp.IPKernelApp.init_gui_pylab.print_tb
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - IPython.core.shellapp.InteractiveShellApp.shell.InteractiveTB.stb2text
    - IPython.core.application.BaseIPythonApplication.shell.InteractiveTB.stb2text
    - ipykernel.kernelapp.IPKernelApp.shell.InteractiveTB.stb2text
    - <builtin>.print
    - jupyter_client.connect.ConnectionFileMixin.shell.InteractiveTB.stb2text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.shellapp.InteractiveShellApp.shell.InteractiveTB.stb2text
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.connect.ConnectionFileMixin.shell.InteractiveTB.stb2text
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.kernelapp.IPKernelApp.shell.InteractiveTB.stb2text
    functionSourceFile: ipykernel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.application.BaseIPythonApplication.shell.InteractiveTB.stb2text
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.shellapp.InteractiveShellApp.init_gui_pylab
    functionSourceFile: IPython
    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: 626
    functionName: ipykernel.kernelapp.IPKernelApp.init_shell
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - <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: logging.getLogger
    functionSourceFile: logging
    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: logging.StreamHandler
    functionSourceFile: logging
    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: logging.Formatter
    functionSourceFile: logging
    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: handler.setFormatter
    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: logger.addHandler
    functionSourceFile: <builtin>
    functionUses: 4
    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: 646
    functionName: ipykernel.kernelapp.IPKernelApp._init_asyncio_patch
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - asyncio.get_event_loop_policy
    - sys.platform.startswith
    - <builtin>.type
    - asyncio.set_event_loop_policy
    - asyncio.WindowsSelectorEventLoopPolicy
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.platform.startswith
    functionSourceFile: sys
    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: asyncio.get_event_loop_policy
    functionSourceFile: asyncio
    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>.type
    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: asyncio.WindowsSelectorEventLoopPolicy
    functionSourceFile: asyncio
    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: asyncio.set_event_loop_policy
    functionSourceFile: asyncio
    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: 1
    functionLinenumber: 683
    functionName: ipykernel.kernelapp.IPKernelApp.init_pdb
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.application.catch_config_error
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 22
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fbceec36040>
    argNames:
    - self
    - argv
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 700
    functionName: ipykernel.kernelapp.IPKernelApp.initialize
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - ipykernel.kernelapp.IPKernelApp.init_iopub
    - threading.current_thread
    - ipykernel.shellchannel.ShellChannelThread.__init__
    - socket.socket
    - <builtin>.type
    - io.FileIO
    - jupyter_client.session.Session.getsockopt
    - ipykernel.parentpoller.ParentPollerWindows.__init__
    - jupyter_client.session.Session
    - jupyter_client.session.Session.connect
    - ipykernel.heartbeat.Heartbeat.__init__
    - traitlets.traitlets.Instance.start
    - ipykernel.kernelapp.IPKernelApp.init_poller
    - jupyter_client.find_connection_file
    - logging.Formatter
    - ipykernel.control.ControlThread.__init__
    - ipykernel.heartbeat.Heartbeat.pick_port
    - <builtin>.isinstance
    - info.get
    - logger.addHandler
    - ipykernel.kernelapp.IPKernelApp.log_connection_info
    - jupyter_client.session.Session.bind
    - ipykernel.parentpoller.ParentPollerUnix.__init__
    - ipykernel.kernelapp.IPKernelApp.init_pdb
    - <builtin>.str
    - <builtin>.open
    - sys.stdout.flush
    - IPython.core.application.BaseIPythonApplication.init_extensions
    - ipykernel.kernelapp.IPKernelApp.init_gui_pylab
    - threading.Thread.start
    - IPython.core.application.BaseIPythonApplication.load_connection_file
    - ipykernel.connect.get_connection_info
    - pathlib.Path.parent.mkdir
    - os.environ.get
    - IPython.core.application.BaseIPythonApplication.log.handlers.stream.buffer.fileno
    - <builtin>.range
    - zmq.Context
    - ipykernel.kernelapp.IPKernelApp.configure_tornado_logger
    - handler.setFormatter
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - ipykernel.kernelapp.IPKernelApp.init_shell
    - functools.partial
    - <builtin>.super
    - <builtin>.getattr
    - <builtin>.hasattr
    - asyncio.set_event_loop_policy
    - IPython.core.application.BaseIPythonApplication.instance
    - IPython.core.application.BaseIPythonApplication.log.info
    - ipykernel.kernelapp.IPKernelApp.init_kernel
    - IPython.core.shellapp.InteractiveShellApp.init_gui_pylab
    - asyncio.Lock
    - IPython.core.application.BaseIPythonApplication.log.error
    - pathlib.Path
    - ipykernel.kernelapp.IPKernelApp.init_connection_file
    - json.loads
    - ipykernel.kernelapp.IPKernelApp.init_io
    - traitlets.utils.filefind
    - ipykernel.kernelapp.IPKernelApp.write_connection_file
    - io.TextIOWrapper
    - traitlets.traitlets.Dict.items
    - jupyter_client.session.Session.start
    - ipykernel.connect._find_connection_file
    - jupyter_client.localinterfaces.localhost
    - IPython.core.application.BaseIPythonApplication.init_code
    - <builtin>.int
    - ipykernel.kernelapp.IPKernelApp.init_signal
    - IPython.core.application.BaseIPythonApplication.initialized
    - ipykernel.kernelapp.IPKernelApp.init_sockets
    - IPython.core.application.BaseIPythonApplication.log.debug
    - asyncio.get_event_loop_policy
    - jupyter_client.session.Session.socket
    - jupyter_client.session.Session.bind_to_random_port
    - asyncio.WindowsSelectorEventLoopPolicy
    - logging.StreamHandler
    - f.read
    - ipykernel.kernelapp.IPKernelApp.init_blackhole
    - s.bind
    - pathlib.Path.exists
    - threading.Thread.__init__
    - <builtin>.print
    - IPython.core.application.BaseIPythonApplication.exit
    - IPython.core.application.BaseIPythonApplication.init_path
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - sys.platform.startswith
    - atexit.register
    - s.getsockname
    - ipykernel.kernelapp.IPKernelApp.init_control
    - logging.getLogger
    - signal.signal
    - ipykernel.kernelapp.IPKernelApp.patch_io
    - sys.stderr.flush
    - s.close
    - kernel.record_ports
    - os.getpid
    - ipykernel.kernelapp.IPKernelApp._bind_socket
    - ipykernel.kernelapp.IPKernelApp.init_heartbeat
    - ipykernel.connect.get_connection_file
    - ipykernel.kernelapp.IPKernelApp._init_asyncio_patch
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 42
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.application.BaseIPythonApplication.init_path
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.application.BaseIPythonApplication.init_extensions
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.application.BaseIPythonApplication.init_code
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 739
    functionName: ipykernel.kernelapp.IPKernelApp.start
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - queue.Queue.io_loop.current
    - jupyter_client.session.Session.shell.run_line_magic
    - IPython.core.application.BaseIPythonApplication.subapp.start
    - trio.run
    - signal.signal
    - jupyter_client.session.Session.background_socket.io_loop.current
    - jupyter_client.session.Session.start
    - ipykernel.trio_runner.TrioRunner.initialize
    - jupyter_client.session.Session.shell.set_trio_runner
    - threading.Thread.start
    - ipykernel.trio_runner.TrioRunner.run
    - ipykernel.trio_runner.TrioRunner.__init__
    - tornado.ioloop.IOLoop.current
    - threading.Thread
    - bg_thread.start
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.application.BaseIPythonApplication.subapp.start
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.io_loop.current
    functionSourceFile: jupyter_client
    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: queue.Queue.io_loop.current
    functionSourceFile: queue
    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: tornado.ioloop.IOLoop.current
    functionSourceFile: tornado
    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: 16
    functionName: ipykernel.trio_runner.TrioRunner.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - kernel
    - io_loop
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: ipykernel.trio_runner.TrioRunner.initialize
    functionSourceFile: ipykernel.trio_runner
    functionUses: 1
    functionsReached:
    - jupyter_client.session.Session.shell.run_line_magic
    - jupyter_client.session.Session.shell.set_trio_runner
    - threading.Thread
    - bg_thread.start
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 40
    functionName: ipykernel.trio_runner.TrioRunner.run
    functionSourceFile: ipykernel.trio_runner
    functionUses: 1
    functionsReached:
    - trio.run
    - signal.signal
    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: 766
    functionName: ipykernel.kernelapp.main
    functionSourceFile: ipykernel.kernelapp
    functionUses: 1
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.instance
    - app.start
    - app.initialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: app.initialize
    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: app.start
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.trio_runner
    functionSourceFile: ipykernel.trio_runner
    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: jupyter_client.session.Session.shell.set_trio_runner
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.shell.run_line_magic
    functionSourceFile: jupyter_client
    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: ipykernel.trio_runner.TrioRunner.initialize.<lambda1>
    functionSourceFile: ipykernel.trio_runner
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: threading.Thread
    functionSourceFile: threading
    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: bg_thread.start
    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: []
    argNames:
    - self
    - signum
    - frame
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 32
    functionName: ipykernel.trio_runner.TrioRunner.interrupt
    functionSourceFile: ipykernel.trio_runner
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - exc
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 44
    functionName: ipykernel.trio_runner.TrioRunner.run.log_nursery_exc
    functionSourceFile: ipykernel.trio_runner
    functionUses: 0
    functionsReached:
    - logging.error
    - <builtin>.type
    - traceback.format_exception
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traceback.format_exception
    functionSourceFile: traceback
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logging.error
    functionSourceFile: logging
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: ipykernel.trio_runner.TrioRunner.run.trio_main
    functionSourceFile: ipykernel.trio_runner
    functionUses: 0
    functionsReached:
    - trio.lowlevel.current_trio_token
    - trio.sleep_forever
    - 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.lowlevel.current_trio_token
    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.open_nursery
    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.sleep_forever
    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.run
    functionSourceFile: trio
    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
    - async_fn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 61
    functionName: ipykernel.trio_runner.TrioRunner.__call__
    functionSourceFile: ipykernel.trio_runner
    functionUses: 0
    functionsReached:
    - trio.from_thread.run
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - coro
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: ipykernel.trio_runner.TrioRunner.__call__.loc
    functionSourceFile: ipykernel.trio_runner
    functionUses: 0
    functionsReached:
    - trio.CancelScope
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trio.from_thread.run
    functionSourceFile: trio
    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: ipykernel.heartbeat
    functionSourceFile: ipykernel.heartbeat
    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: jupyter_client.localinterfaces.localhost
    functionSourceFile: jupyter_client
    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: threading.Thread.__init__
    functionSourceFile: threading
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 46
    functionName: ipykernel.heartbeat.Heartbeat.pick_port
    functionSourceFile: ipykernel.heartbeat
    functionUses: 5
    functionsReached:
    - s.bind
    - pathlib.Path.exists
    - socket.socket
    - s.getsockname
    - pathlib.Path
    - s.close
    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: socket.socket
    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: s.bind
    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: s.getsockname
    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: s.close
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: ipykernel.heartbeat.Heartbeat._try_bind_socket
    functionSourceFile: ipykernel.heartbeat
    functionUses: 2
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 66
    functionName: ipykernel.heartbeat.Heartbeat._bind_socket
    functionSourceFile: ipykernel.heartbeat
    functionUses: 1
    functionsReached:
    - s.bind
    - pathlib.Path.exists
    - socket.socket
    - ipykernel.heartbeat.Heartbeat.pick_port
    - s.getsockname
    - <builtin>.str
    - pathlib.Path
    - <builtin>.range
    - ipykernel.heartbeat.Heartbeat._try_bind_socket
    - s.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 92
    functionName: ipykernel.heartbeat.Heartbeat.run
    functionSourceFile: ipykernel.heartbeat
    functionUses: 0
    functionsReached:
    - zmq.device
    - s.bind
    - pathlib.Path.exists
    - socket.socket
    - jupyter_client.session.Session.socket
    - ipykernel.heartbeat.Heartbeat.pick_port
    - ipykernel.heartbeat.Heartbeat._bind_socket
    - <builtin>.str
    - s.getsockname
    - pathlib.Path
    - <builtin>.range
    - ipykernel.heartbeat.Heartbeat._try_bind_socket
    - s.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.device
    functionSourceFile: zmq
    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: ipykernel.control
    functionSourceFile: ipykernel.control
    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: ipykernel.thread
    functionSourceFile: ipykernel.thread
    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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 14
    functionName: ipykernel.thread.BaseThread.__init__
    functionSourceFile: ipykernel.thread
    functionUses: 0
    functionsReached:
    - queue.Queue.io_loop
    - <builtin>.super
    - tornado.ioloop.IOLoop
    - jupyter_client.session.Session.background_socket.io_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: queue.Queue.io_loop
    functionSourceFile: queue
    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: tornado.ioloop.IOLoop
    functionSourceFile: tornado
    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: jupyter_client.session.Session.background_socket.io_loop
    functionSourceFile: jupyter_client
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: ipykernel.thread.BaseThread.run
    functionSourceFile: ipykernel.thread
    functionUses: 0
    functionsReached:
    - queue.Queue.io_loop.close
    - queue.Queue.io_loop.start
    - jupyter_client.session.Session.background_socket.io_loop.close
    - tornado.ioloop.IOLoop.close
    - jupyter_client.session.Session.background_socket.io_loop.start
    - tornado.ioloop.IOLoop.start
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.io_loop.start
    functionSourceFile: queue
    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: tornado.ioloop.IOLoop.start
    functionSourceFile: tornado
    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: jupyter_client.session.Session.background_socket.io_loop.start
    functionSourceFile: jupyter_client
    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: queue.Queue.io_loop.close
    functionSourceFile: queue
    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: jupyter_client.session.Session.background_socket.io_loop.close
    functionSourceFile: jupyter_client
    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: tornado.ioloop.IOLoop.close
    functionSourceFile: tornado
    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: queue.Queue.io_loop.add_callback
    functionSourceFile: queue
    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: jupyter_client.session.Session.background_socket.io_loop.add_callback
    functionSourceFile: jupyter_client
    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: tornado.ioloop.IOLoop.add_callback
    functionSourceFile: tornado
    functionUses: 6
    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: ipykernel.parentpoller
    functionSourceFile: ipykernel.parentpoller
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: ipykernel.parentpoller.ParentPollerUnix.run
    functionSourceFile: ipykernel.parentpoller
    functionUses: 0
    functionsReached:
    - traitlets.log.get_logger.debug
    - os.getppid
    - <builtin>.type
    - os._exit
    - traitlets.log.get_logger.warning
    - traitlets.log.get_logger
    - time.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: os.getppid
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.log.get_logger
    functionSourceFile: traitlets
    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: traitlets.log.get_logger.debug
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.log.get_logger.warning
    functionSourceFile: traitlets
    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: os._exit
    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: time.sleep
    functionSourceFile: time
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 8
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 97
    functionName: ipykernel.parentpoller.ParentPollerWindows.run
    functionSourceFile: ipykernel.parentpoller
    functionUses: 0
    functionsReached:
    - <builtin>.callable
    - _thread.interrupt_main
    - ctypes.windll.kernel32.ResetEvent
    - platform.architecture
    - os._exit
    - signal.getsignal
    - traitlets.log.get_logger.warning
    - traitlets.log.get_logger
    - <builtin>.len
    - handles.append
    - arch.startswith
    - ctypes.windll.kernel32.WaitForMultipleObjects
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handles.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: platform.architecture
    functionSourceFile: platform
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arch.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.windll.kernel32.WaitForMultipleObjects
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.kernel32.ResetEvent
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: signal.getsignal
    functionSourceFile: signal
    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>.callable
    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: _thread.interrupt_main
    functionSourceFile: _thread
    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: 1
    functionLinenumber: -1
    functionName: ipykernel.ipkernel
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - threading.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 47
    functionName: ipykernel.ipkernel._create_comm
    functionSourceFile: ipykernel.ipkernel
    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: threading.Lock
    functionSourceFile: threading
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 57
    functionName: ipykernel.ipkernel._get_comm_manager
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - traitlets.config.LoggingConfigurable.__init__
    - comm.base_comm.CommManager.__init__
    - ipykernel.comm.manager.CommManager.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 24
    functionName: ipykernel.comm.manager.CommManager.__init__
    functionSourceFile: ipykernel.comm.manager
    functionUses: 1
    functionsReached:
    - traitlets.config.LoggingConfigurable.__init__
    - comm.base_comm.CommManager.__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: 1
    functionLinenumber: -1
    functionName: ipykernel.ipkernel.IPythonKernel
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - traitlets.observe_compat
    - traitlets.Bool
    - sys.version.split
    - traitlets.default
    - traitlets.Bool.tag
    - contextlib.contextmanager
    - traitlets.List
    - traitlets.Type
    - traitlets.observe
    - jupyter_client.session.Session
    - traitlets.Any
    - traitlets.List.tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Type
    functionSourceFile: traitlets
    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: traitlets.Bool
    functionSourceFile: traitlets
    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: traitlets.Bool.tag
    functionSourceFile: traitlets
    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: traitlets.Any
    functionSourceFile: traitlets
    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: traitlets.observe
    functionSourceFile: traitlets
    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: traitlets.observe_compat
    functionSourceFile: ''
    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
    - change
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 94
    functionName: ipykernel.ipkernel.IPythonKernel._user_module_changed
    functionSourceFile: ipykernel.ipkernel
    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: traitlets.default
    functionSourceFile: traitlets
    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: 101
    functionName: ipykernel.ipkernel.IPythonKernel._default_user_ns
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <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
    - change
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 106
    functionName: ipykernel.ipkernel.IPythonKernel._user_ns_changed
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.init_user_ns
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.init_user_ns
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 116
    functionName: ipykernel.ipkernel.IPythonKernel.__init__
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - comm.get_comm_manager
    - <builtin>.isinstance
    - <builtin>.super
    - <builtin>.getattr
    - packaging.version.Version
    - platform.mac_ver
    - jupyter_client.session.Session.configurables.append
    - traitlets.Type
    - appnope.nope
    - <builtin>.hasattr
    - ipykernel.eventloops._use_appnope
    - os.environ.get
    - sys.modules.values
    - traitlets.Type.instance
    - ipykernel.kernelbase.Kernel._topic
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.modules.values
    functionSourceFile: sys
    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: traitlets.Type.instance
    functionSourceFile: traitlets
    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
    - topic
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1282
    functionName: ipykernel.kernelbase.Kernel._topic
    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: comm.get_comm_manager
    functionSourceFile: comm
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.configurables.append
    functionSourceFile: jupyter_client
    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: 1
    functionLinenumber: 16
    functionName: ipykernel.eventloops._use_appnope
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - platform.mac_ver
    - packaging.version.Version
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: appnope.nope
    functionSourceFile: appnope
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.List
    functionSourceFile: traitlets
    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: traitlets.List.tag
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.version.split
    functionSourceFile: sys
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 219
    functionName: ipykernel.ipkernel.IPythonKernel.dispatch_debugpy
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - traitlets.config.configurable.SingletonConfigurable.log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.log.debug
    functionSourceFile: traitlets
    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: 229
    functionName: ipykernel.ipkernel.IPythonKernel.banner
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 234
    functionName: ipykernel.ipkernel.IPythonKernel.poll_stopped_queue
    functionSourceFile: ipykernel.ipkernel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 239
    functionName: ipykernel.ipkernel.IPythonKernel.start
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - asyncio.run_coroutine_threadsafe
    - traitlets.config.configurable.SingletonConfigurable.log.warning
    - jupyter_client.session.Session.on_recv
    - ipykernel.ipkernel.IPythonKernel.poll_stopped_queue
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.log.warning
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.on_recv
    functionSourceFile: jupyter_client
    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: asyncio.run_coroutine_threadsafe
    functionSourceFile: asyncio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fbceed43580>
    argNames:
    - self
    - ident
    - parent
    - channel
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 253
    functionName: ipykernel.ipkernel.IPythonKernel.set_parent
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - jupyter_client.session.Session.set_parent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.set_parent
    functionSourceFile: jupyter_client
    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
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 261
    functionName: ipykernel.ipkernel.IPythonKernel.init_metadata
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - md.update
    - <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: md.update
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - parent
    - metadata
    - reply_content
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 277
    functionName: ipykernel.ipkernel.IPythonKernel.finish_metadata
    functionSourceFile: ipykernel.ipkernel
    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 0x7fbcef778c10>
    argNames:
    - self
    - allow_stdin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 290
    functionName: ipykernel.ipkernel.IPythonKernel._forward_input
    functionSourceFile: ipykernel.ipkernel
    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: 303
    functionName: ipykernel.ipkernel.IPythonKernel._restore_input
    functionSourceFile: ipykernel.ipkernel
    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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 316
    functionName: ipykernel.ipkernel.IPythonKernel.execution_count
    functionSourceFile: ipykernel.ipkernel
    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: contextlib.contextmanager
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - future
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 322
    functionName: ipykernel.ipkernel.IPythonKernel._cancel_on_sigint
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - signal.signal
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - future.add_done_callback
    - sigint_future.add_done_callback
    - functools.partial
    - asyncio.Future
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.Future
    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: []
    argNames:
    - f
    - _ignored
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 336
    functionName: ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.cancel_unless_done
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - f.done
    - f.cancel
    - f.cancelled
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.cancelled
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.done
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.cancel
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sigint_future.add_done_callback
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: future.add_done_callback
    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:
    - args
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 348
    functionName: ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.handle_sigint
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - queue.Queue.io_loop.add_callback
    - jupyter_client.session.Session.background_socket.io_loop.add_callback
    - tornado.ioloop.IOLoop.add_callback
    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: 1
    functionLinenumber: 349
    functionName: ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.handle_sigint.set_sigint_result
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - sigint_future.set_result
    - sigint_future.done
    - sigint_future.cancelled
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sigint_future.cancelled
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sigint_future.done
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sigint_future.set_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: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 366
    functionName: ipykernel.ipkernel.IPythonKernel._dummy_context_manager
    functionSourceFile: ipykernel.ipkernel
    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
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 370
    functionName: ipykernel.ipkernel.IPythonKernel.execute_request
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 8
    IfCount: 8
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fbceedf7550>
    - <ast.Constant object at 0x7fbceedf71c0>
    - <ast.Constant object at 0x7fbceedf79a0>
    argNames:
    - self
    - code
    - silent
    - store_history
    - user_expressions
    - allow_stdin
    - cell_meta
    - cell_id
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 374
    functionName: ipykernel.ipkernel.IPythonKernel.do_execute
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.run_cell
    - reply_content.update
    - queue.Queue.background_socket.run_cell_async
    - <builtin>.dict
    - jupyter_client.session.Session.background_socket.should_run_async
    - threading.current_thread
    - zmq.PUB.run_cell_async
    - asyncio.get_event_loop
    - jupyter_client.session.Session.events.trigger
    - <builtin>.type
    - traitlets.HasTraits.run_cell_async
    - traitlets.config.configurable.SingletonConfigurable.background_socket.should_run_async
    - IPython.core.autocall.ZMQExitAutocall.background_socket.run_cell_async
    - dict.fromkeys
    - traitlets.Instance.should_run_async
    - ipykernel.ipkernel.IPythonKernel._restore_input
    - sys.exc_info
    - ipykernel.kernelbase._accepts_parameters
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.should_run_async
    - zmq.DEALER.run_cell_async
    - parameters.values
    - queue.Queue.should_run_async
    - zmq.PUSH.run_cell_async
    - <builtin>.hasattr
    - <builtin>.any
    - queue.Queue.run_cell_async
    - zmq.eventloop.zmqstream.ZMQStream.run_cell_async
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.run_cell_async
    - traitlets.config.configurable.SingletonConfigurable.background_socket.run_cell_async
    - jupyter_client.session.Session.payload_manager.clear_payload
    - jupyter_client.session.Session.should_run_async
    - parameters.get
    - ipykernel.ipkernel.IPythonKernel._forward_input
    - jupyter_client.session.Session.run_cell_async
    - jupyter_client.session.Session.payload_manager.read_payload
    - ipykernel.ipkernel.IPythonKernel.do_execute.<lambda1>
    - traitlets.config.configurable.SingletonConfigurable.log.info
    - asyncio.ensure_future
    - <builtin>.str
    - jupyter_client.session.Session.user_expressions
    - traitlets.HasTraits.should_run_async
    - zmq.PUSH.should_run_async
    - IPython.core.autocall.ZMQExitAutocall.background_socket.should_run_async
    - zmq.eventloop.zmqstream.ZMQStream.should_run_async
    - zmq.DEALER.should_run_async
    - queue.Queue.background_socket.should_run_async
    - inspect.signature
    - traitlets.traitlets.Any.should_run_async
    - IPython.core.autocall.ZMQExitAutocall.should_run_async
    - zmq.PUB.should_run_async
    - jupyter_client.session.Session.background_socket.run_cell_async
    - zmq.STREAM.run_cell_async
    - traitlets.Instance.run_cell_async
    - zmq.STREAM.should_run_async
    - IPython.core.autocall.ZMQExitAutocall.run_cell_async
    - jupyter_client.session.Session.transform_cell
    - traitlets.traitlets.Any.run_cell_async
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - meth
    - param_names
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 76
    functionName: ipykernel.kernelbase._accepts_parameters
    functionSourceFile: ipykernel.kernelbase
    functionUses: 2
    functionsReached:
    - inspect.signature
    - parameters.get
    - parameters.values
    - dict.fromkeys
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.ipkernel.IPythonKernel.do_execute.<lambda1>
    functionSourceFile: ipykernel.ipkernel
    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:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 401
    functionName: ipykernel.ipkernel.IPythonKernel.do_execute.run_cell
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.run_cell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.run_cell
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.transform_cell
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: asyncio.get_event_loop
    functionSourceFile: asyncio
    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: zmq.DEALER.should_run_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.should_run_async
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.should_run_async
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.should_run_async
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.should_run_async
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.background_socket.should_run_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.should_run_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.should_run_async
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.should_run_async
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.should_run_async
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Instance.should_run_async
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.HasTraits.should_run_async
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.should_run_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.should_run_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.should_run_async
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.should_run_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.background_socket.run_cell_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.run_cell_async
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.run_cell_async
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.DEALER.run_cell_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.run_cell_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.HasTraits.run_cell_async
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.run_cell_async
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.run_cell_async
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.run_cell_async
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.run_cell_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.run_cell_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Instance.run_cell_async
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.run_cell_async
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.run_cell_async
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.run_cell_async
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.run_cell_async
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.ensure_future
    functionSourceFile: asyncio
    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: threading.current_thread
    functionSourceFile: threading
    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: jupyter_client.session.Session.events.trigger
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: reply_content.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: traitlets.config.configurable.SingletonConfigurable.log.info
    functionSourceFile: traitlets
    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: jupyter_client.session.Session.user_expressions
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.payload_manager.read_payload
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.payload_manager.clear_payload
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - code
    - cursor_pos
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 521
    functionName: ipykernel.ipkernel.IPythonKernel.do_complete
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.dict
    - IPython.utils.tokenutil.line_at_cursor
    - IPython.core.completer.rectify_completions
    - ipykernel.ipkernel.IPythonKernel._experimental_do_complete
    - comps.append
    - jupyter_client.session.Session.Completer.completions
    - <builtin>.len
    - IPython.core.completer.provisionalcompleter
    - jupyter_client.session.Session.complete
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - code
    - cursor_pos
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 551
    functionName: ipykernel.ipkernel.IPythonKernel._experimental_do_complete
    functionSourceFile: ipykernel.ipkernel
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - <builtin>.dict
    - IPython.core.completer.rectify_completions
    - comps.append
    - jupyter_client.session.Session.Completer.completions
    - <builtin>.len
    - IPython.core.completer.provisionalcompleter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.utils.tokenutil.line_at_cursor
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.complete
    functionSourceFile: jupyter_client
    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
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 543
    functionName: ipykernel.ipkernel.IPythonKernel.do_debug_request
    functionSourceFile: ipykernel.ipkernel
    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: IPython.core.completer.provisionalcompleter
    functionSourceFile: IPython
    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: jupyter_client.session.Session.Completer.completions
    functionSourceFile: jupyter_client
    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: IPython.core.completer.rectify_completions
    functionSourceFile: IPython
    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>.list
    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: comps.append
    functionSourceFile: <builtin>
    functionUses: 2
    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 0x7fbceec58100>
    - <ast.Tuple object at 0x7fbceec58640>
    argNames:
    - self
    - code
    - cursor_pos
    - detail_level
    - omit_sections
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 591
    functionName: ipykernel.ipkernel.IPythonKernel.do_inspect
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - IPython.utils.tokenutil.token_at_cursor
    - jupyter_client.session.Session.object_inspect_mime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.utils.tokenutil.token_at_cursor
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.object_inspect_mime
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fbceee3a940>
    - <ast.Constant object at 0x7fbceee3a3a0>
    - <ast.Constant object at 0x7fbceee3a490>
    - <ast.Constant object at 0x7fbceee3a220>
    - <ast.Constant object at 0x7fbceee3a790>
    - <ast.Constant object at 0x7fbceee3aa30>
    argNames:
    - self
    - hist_access_type
    - output
    - raw
    - session
    - start
    - stop
    - n
    - pattern
    - unique
    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: 619
    functionName: ipykernel.ipkernel.IPythonKernel.do_history
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.history_manager.get_tail
    - <builtin>.list
    - jupyter_client.session.Session.history_manager.search
    - jupyter_client.session.Session.history_manager.get_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: jupyter_client.session.Session.history_manager.get_tail
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.history_manager.get_range
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.history_manager.search
    functionSourceFile: jupyter_client
    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
    - restart
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 655
    functionName: ipykernel.ipkernel.IPythonKernel.do_shutdown
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 661
    functionName: ipykernel.ipkernel.IPythonKernel.do_is_complete
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.input_splitter.check_complete
    - <builtin>.getattr
    - zmq.PUSH.input_splitter.check_complete
    - traitlets.traitlets.Any.input_splitter.check_complete
    - zmq.STREAM.input_splitter.check_complete
    - queue.Queue.input_splitter.check_complete
    - zmq.eventloop.zmqstream.ZMQStream.input_splitter.check_complete
    - IPython.core.autocall.ZMQExitAutocall.input_splitter.check_complete
    - jupyter_client.session.Session.input_splitter.check_complete
    - traitlets.config.configurable.SingletonConfigurable.background_socket.input_splitter.check_complete
    - zmq.PUB.input_splitter.check_complete
    - zmq.DEALER.input_splitter.check_complete
    - IPython.core.autocall.ZMQExitAutocall.background_socket.input_splitter.check_complete
    - traitlets.HasTraits.input_splitter.check_complete
    - traitlets.Instance.input_splitter.check_complete
    - queue.Queue.background_socket.input_splitter.check_complete
    - jupyter_client.session.Session.background_socket.input_splitter.check_complete
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.input_splitter.check_complete
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.background_socket.input_splitter.check_complete
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.HasTraits.input_splitter.check_complete
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.input_splitter.check_complete
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.input_splitter.check_complete
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.input_splitter.check_complete
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.input_splitter.check_complete
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.input_splitter.check_complete
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.input_splitter.check_complete
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.input_splitter.check_complete
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.input_splitter.check_complete
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.DEALER.input_splitter.check_complete
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.input_splitter.check_complete
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.input_splitter.check_complete
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Instance.input_splitter.check_complete
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.input_splitter.check_complete
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 7
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - content
    - bufs
    - msg_id
    - reply_metadata
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 674
    functionName: ipykernel.ipkernel.IPythonKernel.do_apply
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - zmq.PUSH.user_ns.get
    - IPython.core.autocall.ZMQExitAutocall.user_ns.update
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.update
    - zmq.STREAM.user_ns.update
    - <builtin>.type
    - queue.Queue.background_socket.user_ns.get
    - queue.Queue.background_socket.user_ns.pop
    - traitlets.Instance.user_ns.update
    - IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.pop
    - zmq.STREAM.user_ns.pop
    - queue.Queue.user_ns.pop
    - traitlets.Instance.user_ns.get
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - ipykernel.kernelbase.Kernel._topic
    - jupyter_client.session.Session.get_parent
    - traitlets.Instance.user_ns.pop
    - zmq.PUB.user_ns.update
    - IPython.core.autocall.ZMQExitAutocall.user_ns.pop
    - <builtin>.getattr
    - zmq.DEALER.user_ns.get
    - ipykernel.kernelbase.Kernel.send_response
    - zmq.DEALER.user_ns.pop
    - zmq.PUSH.user_ns.pop
    - jupyter_client.session.Session.showtraceback
    - ipyparallel.serialize.unpack_apply_message
    - zmq.eventloop.zmqstream.ZMQStream.user_ns.get
    - <builtin>.exec
    - traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.get
    - zmq.STREAM.user_ns.get
    - zmq.DEALER.user_ns.update
    - ipyparallel.serialize.serialize_object
    - jupyter_client.session.Session.background_socket.user_ns.update
    - zmq.PUB.user_ns.get
    - zmq.PUSH.user_ns.update
    - traitlets.config.configurable.SingletonConfigurable.log.info
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.pop
    - zmq.PUB.user_ns.pop
    - traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.update
    - <builtin>.str
    - traitlets.traitlets.Any.user_ns.update
    - serialize.serialize_object
    - serialize.unpack_apply_message
    - queue.Queue.user_ns.update
    - jupyter_client.session.Session.background_socket.user_ns.pop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.get
    - traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.pop
    - IPython.core.autocall.ZMQExitAutocall.user_ns.get
    - IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.update
    - jupyter_client.session.Session.user_ns.get
    - jupyter_client.session.Session.background_socket.user_ns.get
    - IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.get
    - jupyter_client.session.Session.user_ns.pop
    - jupyter_client.session.Session.session.send
    - zmq.eventloop.zmqstream.ZMQStream.user_ns.pop
    - queue.Queue.background_socket.user_ns.update
    - jupyter_client.session.Session.user_ns.update
    - traitlets.traitlets.Any.user_ns.get
    - traitlets.traitlets.Any.user_ns.pop
    - queue.Queue.user_ns.get
    - zmq.eventloop.zmqstream.ZMQStream.user_ns.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: ipyparallel.serialize.unpack_apply_message
    functionSourceFile: ipyparallel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: serialize.unpack_apply_message
    functionSourceFile: serialize
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.user_ns.update
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.user_ns.update
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.update
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.user_ns.update
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.update
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.DEALER.user_ns.update
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.user_ns.update
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Instance.user_ns.update
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.user_ns.update
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.user_ns.update
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.user_ns.update
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.update
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.user_ns.update
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.user_ns.update
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.user_ns.update
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.exec
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.get
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.user_ns.get
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.user_ns.get
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.DEALER.user_ns.get
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.user_ns.get
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.user_ns.get
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.get
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.user_ns.get
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.user_ns.get
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.user_ns.get
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.user_ns.get
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Instance.user_ns.get
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.user_ns.get
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.user_ns.get
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.get
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.pop
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.user_ns.pop
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.user_ns.pop
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.user_ns.pop
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.pop
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.DEALER.user_ns.pop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.user_ns.pop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.user_ns.pop
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.pop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.user_ns.pop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.user_ns.pop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.user_ns.pop
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.user_ns.pop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.user_ns.pop
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Instance.user_ns.pop
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: serialize.serialize_object
    functionSourceFile: serialize
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipyparallel.serialize.serialize_object
    functionSourceFile: ipyparallel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.showtraceback
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fbceef252e0>
    - <ast.Constant object at 0x7fbceef255e0>
    - <ast.Constant object at 0x7fbceef25ee0>
    - <ast.Constant object at 0x7fbceef25a90>
    - <ast.Constant object at 0x7fbceef256a0>
    - <ast.Constant object at 0x7fbceef250a0>
    - <ast.Constant object at 0x7fbceef254c0>
    argNames:
    - self
    - stream
    - msg_or_type
    - content
    - ident
    - buffers
    - track
    - header
    - metadata
    - channel
    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: 734
    functionName: ipykernel.kernelbase.Kernel.send_response
    functionSourceFile: ipykernel.kernelbase
    functionUses: 1
    functionsReached:
    - jupyter_client.session.Session.get_parent
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session.session.send
    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: 740
    functionName: ipykernel.ipkernel.IPythonKernel.do_clear
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.reset
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.reset
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 753
    functionName: ipykernel.ipkernel.Kernel.__init__
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - warnings.warn
    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: ipykernel.eventloops
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - ipykernel.eventloops.register_integration.decorator
    - ipykernel.eventloops.register_integration
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: platform.mac_ver
    functionSourceFile: platform
    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: packaging.version.Version
    functionSourceFile: packaging
    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:
    - toolkitnames
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: ipykernel.eventloops.register_integration
    functionSourceFile: ipykernel.eventloops
    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:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 51
    functionName: ipykernel.eventloops.register_integration.decorator
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.eventloops.register_integration.decorator.<lambda1>
    functionSourceFile: ipykernel.eventloops
    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:
    - exit_func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 58
    functionName: ipykernel.eventloops.register_integration.decorator.exit_decorator
    functionSourceFile: ipykernel.eventloops
    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:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: ipykernel.eventloops.get_shell_stream
    functionSourceFile: ipykernel.eventloops
    functionUses: 7
    functionsReached:
    - manager.get_shell_channel_to_subshell_pair
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.get_shell_channel_to_subshell_pair
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 81
    functionName: ipykernel.eventloops._notify_stream_qt
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - manager.get_shell_channel_to_subshell_pair
    - IPython.external.qt_for_kernel.enum_helper
    - kernel._qt_notifier.setEnabled
    - functools.lru_cache
    - IPython.external.qt_for_kernel.QtCore.QTimer.singleShot
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - IPython.external.qt_for_kernel.QtCore.QSocketNotifier
    - jupyter_client.session.Session.getsockopt
    - <builtin>.hasattr
    - kernel._qt_notifier.activated.connect
    - functools.partial
    - ipykernel.eventloops.get_shell_stream
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: functools.lru_cache
    functionSourceFile: functools
    functionUses: 2
    functionsReached: []
    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: 1
    functionLinenumber: 92
    functionName: ipykernel.eventloops._notify_stream_qt.enum_helper
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - operator.attrgetter
    - name.rpartition
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.rpartition
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: operator.attrgetter
    functionSourceFile: operator
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 95
    functionName: ipykernel.eventloops._notify_stream_qt.exit_loop
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - kernel._qt_notifier.setEnabled
    - kernel.app.qt_event_loop.quit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel._qt_notifier.setEnabled
    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: kernel.app.qt_event_loop.quit
    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: []
    argNames:
    - shell_stream
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 100
    functionName: ipykernel.eventloops._notify_stream_qt.process_stream_events_wrap
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel._qt_notifier.setEnabled
    - ipykernel.eventloops._notify_stream_qt.exit_loop
    - functools.partial.flush
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main.flush
    - kernel.app.qt_event_loop.quit
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.flush
    functionSourceFile: functools
    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: zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main.flush
    functionSourceFile: zmq
    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: IPython.external.qt_for_kernel.enum_helper
    functionSourceFile: IPython
    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: IPython.external.qt_for_kernel.QtCore.QSocketNotifier
    functionSourceFile: IPython
    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: kernel._qt_notifier.activated.connect
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - delay
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 123
    functionName: ipykernel.eventloops._notify_stream_qt._schedule_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - IPython.external.qt_for_kernel.enum_helper
    - <builtin>.int
    - kernel._qt_timer.start
    - kernel._qt_timer.setSingleShot
    - kernel._qt_timer.setTimerType
    - <builtin>.hasattr
    - kernel._qt_timer.timeout.connect
    - IPython.external.qt_for_kernel.QtCore.QTimer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.external.qt_for_kernel.QtCore.QTimer
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel._qt_timer.setSingleShot
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel._qt_timer.setTimerType
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel._qt_timer.timeout.connect
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel._qt_timer.start
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.external.qt_for_kernel.QtCore.QTimer.singleShot
    functionSourceFile: IPython
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 149
    functionName: ipykernel.eventloops.loop_qt
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - manager.get_shell_channel_to_subshell_pair
    - IPython.external.qt_for_kernel.enum_helper
    - kernel._qt_notifier.setEnabled
    - functools.lru_cache
    - functools.partial
    - IPython.external.qt_for_kernel.QtCore.QTimer.singleShot
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - el.exec
    - IPython.external.qt_for_kernel.QtCore.QSocketNotifier
    - jupyter_client.session.Session.getsockopt
    - <builtin>.hasattr
    - kernel._qt_notifier.activated.connect
    - el.exec_
    - ipykernel.eventloops.get_shell_stream
    - ipykernel.eventloops._notify_stream_qt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: el.exec
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: el.exec_
    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:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 168
    functionName: ipykernel.eventloops.loop_qt_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel.app.exit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel.app.exit
    functionSourceFile: <builtin>
    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:
    - app
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: ipykernel.eventloops._loop_wx
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - app.MainLoop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: app.MainLoop
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 185
    functionName: ipykernel.eventloops.loop_wx
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.getattr
    - signal.signal
    - ipykernel.eventloops._loop_wx
    - <builtin>.callable
    - app.MainLoop
    - signal.getsignal
    - wx.App.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kernel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 192
    functionName: ipykernel.eventloops.loop_wx.TimerFrame.__init__
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - manager.get_shell_channel_to_subshell_pair
    - <builtin>.int
    - wx.Frame.Bind
    - wx.Frame.__init__
    - ipykernel.eventloops.get_shell_stream
    - wx.Timer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: wx.Frame.__init__
    functionSourceFile: wx
    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: wx.Timer
    functionSourceFile: wx
    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: wx.Frame.Bind
    functionSourceFile: wx
    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: 205
    functionName: ipykernel.eventloops.loop_wx.TimerFrame.wake
    functionSourceFile: ipykernel.eventloops
    functionUses: 2
    functionsReached:
    - jupyter_client.session.Session.flush
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.flush
    functionSourceFile: jupyter_client
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 213
    functionName: ipykernel.eventloops.loop_wx.TimerFrame.on_timer
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.flush
    - ipykernel.eventloops.loop_wx.TimerFrame.wake
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 216
    functionName: ipykernel.eventloops.loop_wx.TimerFrame.on_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.flush
    - ipykernel.eventloops.loop_wx.TimerFrame.wake
    - wx.Frame.Destroy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: wx.Frame.Destroy
    functionSourceFile: wx
    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: 224
    functionName: ipykernel.eventloops.loop_wx.IPWxApp.OnInit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - manager.get_shell_channel_to_subshell_pair
    - <builtin>.int
    - wx.Frame.Show
    - wx.Frame.Bind
    - wx.Frame.__init__
    - ipykernel.eventloops.loop_wx.TimerFrame.__init__
    - ipykernel.eventloops.get_shell_stream
    - wx.Timer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: wx.Frame.Show
    functionSourceFile: wx
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: wx.App.__init__
    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:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 246
    functionName: ipykernel.eventloops.loop_wx_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - wx.Exit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: wx.Exit
    functionSourceFile: wx
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 6
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 254
    functionName: ipykernel.eventloops.loop_tk
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - manager.get_shell_channel_to_subshell_pair
    - <builtin>.int
    - tkinter.Tk.mainloop
    - nest_asyncio.apply
    - ipykernel.eventloops.loop_tk.BasicAppWrapper.__init__
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - ipykernel.eventloops.loop_tk.TimedAppWrapper.__init__
    - tkinter.Tk.tk.createfilehandler
    - jupyter_client.session.Session.getsockopt
    - <builtin>.hasattr
    - tkinter.Tk
    - tkinter.Tk.after
    - functools.partial
    - tkinter.Tk.withdraw
    - ipykernel.eventloops.get_shell_stream
    - kernel.app_wrapper.start
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tkinter.Tk
    functionSourceFile: tkinter
    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
    - app
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 266
    functionName: ipykernel.eventloops.loop_tk.BasicAppWrapper.__init__
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - tkinter.Tk.withdraw
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tkinter.Tk.withdraw
    functionSourceFile: tkinter
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 270
    functionName: ipykernel.eventloops.loop_tk.exit_loop
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - tkinter.Tk.destroy
    - jupyter_client.session.Session.getsockopt
    - tkinter.Tk.tk.deletefilehandler
    - tkinter.Tk.quit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tkinter.Tk.tk.deletefilehandler
    functionSourceFile: tkinter
    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: tkinter.Tk.quit
    functionSourceFile: tkinter
    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: tkinter.Tk.destroy
    functionSourceFile: tkinter
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - shell_stream
    - a
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 277
    functionName: ipykernel.eventloops.loop_tk.process_stream_events_wrap
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - functools.partial.flush
    - tkinter.Tk.quit
    - tkinter.Tk.destroy
    - tkinter.Tk.tk.deletefilehandler
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main.flush
    - jupyter_client.session.Session.getsockopt
    - ipykernel.eventloops.loop_tk.exit_loop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - delay
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 284
    functionName: ipykernel.eventloops.loop_tk._schedule_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - tkinter.Tk.after
    - <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: tkinter.Tk.after
    functionSourceFile: tkinter
    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: tkinter.Tk.tk.createfilehandler
    functionSourceFile: tkinter
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tkinter.Tk.mainloop
    functionSourceFile: tkinter
    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: nest_asyncio.apply
    functionSourceFile: nest_asyncio
    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
    - app
    - shell_stream
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 314
    functionName: ipykernel.eventloops.loop_tk.TimedAppWrapper.__init__
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - tkinter.Tk.withdraw
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 319
    functionName: ipykernel.eventloops.loop_tk.TimedAppWrapper.func
    functionSourceFile: ipykernel.eventloops
    functionUses: 2
    functionsReached:
    - jupyter_client.session.Session.flush
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 322
    functionName: ipykernel.eventloops.loop_tk.TimedAppWrapper.on_timer
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - ipykernel.eventloops.loop_tk.TimedAppWrapper.func
    - loop.run_until_complete
    - jupyter_client.session.Session.flush
    - asyncio.get_event_loop
    - tkinter.Tk.after
    - kernel.log.exception
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.run_until_complete
    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: kernel.log.exception
    functionSourceFile: <builtin>
    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: 3
    functionLinenumber: 330
    functionName: ipykernel.eventloops.loop_tk.TimedAppWrapper.start
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - tkinter.Tk.mainloop
    - ipykernel.eventloops.loop_tk.TimedAppWrapper.func
    - loop.run_until_complete
    - jupyter_client.session.Session.flush
    - asyncio.get_event_loop
    - kernel.log.exception
    - tkinter.Tk.after
    - ipykernel.eventloops.loop_tk.TimedAppWrapper.on_timer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel.app_wrapper.start
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 339
    functionName: ipykernel.eventloops.loop_tk_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel.app_wrapper.app.destroy
    - kernel.app_wrapper.app.quit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel.app_wrapper.app.quit
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel.app_wrapper.app.destroy
    functionSourceFile: <builtin>
    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:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 351
    functionName: ipykernel.eventloops.loop_gtk
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - ipykernel.gui.gtkembed.GTKEmbed.__init__
    - ipykernel.gui.gtkembed.GTKEmbed.start
    - gobject.idle_add
    - gtk.main
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kernel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 32
    functionName: ipykernel.gui.gtkembed.GTKEmbed.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: ipykernel.gui.gtkembed.GTKEmbed.start
    functionSourceFile: ipykernel.gui.gtkembed
    functionUses: 1
    functionsReached:
    - gobject.idle_add
    - gtk.main
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 361
    functionName: ipykernel.eventloops.loop_gtk_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel._gtk.stop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel._gtk.stop
    functionSourceFile: <builtin>
    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:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 367
    functionName: ipykernel.eventloops.loop_gtk3
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - gi.repository.Gtk.main
    - ipykernel.gui.gtk3embed.GTKEmbed.__init__
    - ipykernel.gui.gtk3embed.GTKEmbed.start
    - gi.repository.GObject.idle_add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kernel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 35
    functionName: ipykernel.gui.gtk3embed.GTKEmbed.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: ipykernel.gui.gtk3embed.GTKEmbed.start
    functionSourceFile: ipykernel.gui.gtk3embed
    functionUses: 1
    functionsReached:
    - gi.repository.Gtk.main
    - gi.repository.GObject.idle_add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 377
    functionName: ipykernel.eventloops.loop_gtk3_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel._gtk.stop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 383
    functionName: ipykernel.eventloops.loop_cocoa
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - threading.Event.is_set
    - ipykernel._eventloop_macos._utf8
    - manager.get_shell_channel_to_subshell_pair
    - ipykernel._eventloop_macos._NSApp
    - <builtin>.isinstance
    - CoreFoundation.CFRunLoopRun
    - objc.sel_registerName
    - ipykernel._eventloop_macos.mainloop
    - s.encode
    - ipykernel._eventloop_macos.C
    - jupyter_client.session.Session.flush
    - ipykernel._eventloop_macos.n
    - objc.objc_getClass
    - <builtin>.print
    - threading.Event.clear
    - ipykernel.eventloops.get_shell_stream
    - ipykernel._eventloop_macos._stop_after
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - etype
    - value
    - tb
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 392
    functionName: ipykernel.eventloops.loop_cocoa.handle_int
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - ipykernel._eventloop_macos._utf8
    - ipykernel._eventloop_macos._NSApp
    - <builtin>.isinstance
    - objc.sel_registerName
    - ipykernel._eventloop_macos.stop
    - ipykernel._eventloop_macos._wake
    - threading.Event.set
    - s.encode
    - ipykernel._eventloop_macos.C
    - ipykernel._eventloop_macos.n
    - sys.excepthook
    - objc.objc_getClass
    - ctypes.c_void_p
    - <builtin>.print
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fbceeed31c0>
    - <ast.Constant object at 0x7fbceeed3a90>
    argNames:
    - timer
    - loop
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 124
    functionName: ipykernel._eventloop_macos.stop
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 2
    functionsReached:
    - ipykernel._eventloop_macos._utf8
    - <builtin>.isinstance
    - ipykernel._eventloop_macos._NSApp
    - objc.sel_registerName
    - ipykernel._eventloop_macos._wake
    - threading.Event.set
    - s.encode
    - ipykernel._eventloop_macos.C
    - ipykernel._eventloop_macos.n
    - objc.objc_getClass
    - ctypes.c_void_p
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.excepthook
    functionSourceFile: sys
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fbceef0c5e0>
    argNames:
    - duration
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 161
    functionName: ipykernel._eventloop_macos.mainloop
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 1
    functionsReached:
    - threading.Event.is_set
    - ipykernel._eventloop_macos._utf8
    - <builtin>.isinstance
    - ipykernel._eventloop_macos._NSApp
    - objc.sel_registerName
    - CoreFoundation.CFRunLoopRun
    - s.encode
    - ipykernel._eventloop_macos.C
    - ipykernel._eventloop_macos.n
    - objc.objc_getClass
    - threading.Event.clear
    - ipykernel._eventloop_macos._stop_after
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 423
    functionName: ipykernel.eventloops.loop_cocoa_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - ipykernel._eventloop_macos._utf8
    - <builtin>.isinstance
    - ipykernel._eventloop_macos._NSApp
    - objc.sel_registerName
    - ipykernel._eventloop_macos.stop
    - ipykernel._eventloop_macos._wake
    - threading.Event.set
    - s.encode
    - ipykernel._eventloop_macos.C
    - ipykernel._eventloop_macos.n
    - objc.objc_getClass
    - ctypes.c_void_p
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 431
    functionName: ipykernel.eventloops.loop_asyncio
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - manager.get_shell_channel_to_subshell_pair
    - loop.run_forever
    - functools.partial
    - asyncio.set_event_loop
    - loop.add_reader
    - ipykernel.eventloops.get_shell_stream
    - loop.is_running
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - asyncio.get_event_loop
    - loop.close
    - jupyter_client.session.Session.getsockopt
    - loop.is_closed
    - asyncio.new_event_loop
    - loop.call_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: loop.is_running
    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: loop.is_closed
    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: asyncio.new_event_loop
    functionSourceFile: asyncio
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.set_event_loop
    functionSourceFile: asyncio
    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:
    - shell_stream
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 447
    functionName: ipykernel.eventloops.loop_asyncio.process_stream_events
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - loop.stop
    - functools.partial.flush
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main.flush
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.stop
    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: loop.add_reader
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.call_soon
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.run_forever
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.close
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 473
    functionName: ipykernel.eventloops.loop_asyncio_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - loop.run_until_complete
    - loop.is_running
    - asyncio.get_event_loop
    - loop.stop
    - ipykernel.eventloops.loop_asyncio_exit.close_loop
    - loop.shutdown_asyncgens
    - loop.close
    - loop.is_closed
    - <builtin>.hasattr
    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: 479
    functionName: ipykernel.eventloops.loop_asyncio_exit.close_loop
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - <builtin>.hasattr
    - loop.shutdown_asyncgens
    - loop.stop
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.shutdown_asyncgens
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 5
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - gui
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 493
    functionName: ipykernel.eventloops.set_qt_api_env_from_gui
    functionSourceFile: ipykernel.eventloops
    functionUses: 3
    functionsReached:
    - IPython.external.qt_loaders.loaded_api
    - <builtin>.print
    - os.environ.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: IPython.external.qt_loaders.loaded_api
    functionSourceFile: IPython
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - gui
    - kernel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 585
    functionName: ipykernel.eventloops.make_qt_app_for_kernel
    functionSourceFile: ipykernel.eventloops
    functionUses: 2
    functionsReached:
    - IPython.external.qt_for_kernel.QtCore.QEventLoop
    - ipykernel.eventloops.set_qt_api_env_from_gui
    - IPython.external.qt_loaders.loaded_api
    - <builtin>.hasattr
    - os.environ.get
    - <builtin>.print
    - IPython.lib.guisupport.get_app_qt4
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.lib.guisupport.get_app_qt4
    functionSourceFile: IPython
    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: IPython.external.qt_for_kernel.QtCore.QEventLoop
    functionSourceFile: IPython
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 5
    IfCount: 10
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fbceec1ea30>
    argNames:
    - gui
    - kernel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 602
    functionName: ipykernel.eventloops.enable_gui
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - IPython.external.qt_for_kernel.QtCore.QEventLoop
    - <builtin>.getattr
    - traitlets.config.application.Application.initialized
    - ipykernel.eventloops.set_qt_api_env_from_gui
    - IPython.external.qt_loaders.loaded_api
    - traitlets.config.application.Application.instance
    - loop_map.keys
    - <builtin>.hasattr
    - <builtin>.delattr
    - gui.startswith
    - ipykernel.eventloops.make_qt_app_for_kernel
    - os.environ.get
    - <builtin>.print
    - IPython.lib.guisupport.get_app_qt4
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    - 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_map.keys
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.application.Application.initialized
    functionSourceFile: traitlets
    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: traitlets.config.application.Application.instance
    functionSourceFile: traitlets
    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>.delattr
    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: gui.startswith
    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: ipykernel.gui
    functionSourceFile: ipykernel.gui
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.gui.gtk3embed
    functionSourceFile: ipykernel.gui.gtk3embed
    functionUses: 0
    functionsReached:
    - gi.require_version
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gi.require_version
    functionSourceFile: gi
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gi.repository.GObject.idle_add
    functionSourceFile: gi
    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: gi.repository.Gtk.main
    functionSourceFile: gi
    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: 48
    functionName: ipykernel.gui.gtk3embed.GTKEmbed._wire_kernel
    functionSourceFile: ipykernel.gui.gtk3embed
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - ipykernel.gui.gtk3embed.GTKEmbed._hijack_gtk
    - gi.repository.GObject.timeout_add
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 76
    functionName: ipykernel.gui.gtk3embed.GTKEmbed._hijack_gtk
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gi.repository.GObject.timeout_add
    functionSourceFile: gi
    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: 58
    functionName: ipykernel.gui.gtk3embed.GTKEmbed.iterate_kernel
    functionSourceFile: ipykernel.gui.gtk3embed
    functionUses: 0
    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: 1
    functionLinenumber: 67
    functionName: ipykernel.gui.gtk3embed.GTKEmbed.stop
    functionSourceFile: ipykernel.gui.gtk3embed
    functionUses: 0
    functionsReached:
    - sys.exit
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.exit
    functionSourceFile: sys
    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:
    - args
    - kw
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 91
    functionName: ipykernel.gui.gtk3embed.GTKEmbed._hijack_gtk.dummy
    functionSourceFile: ipykernel.gui.gtk3embed
    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: ipykernel._eventloop_macos
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 0
    functionsReached:
    - ctypes.CFUNCTYPE
    - ctypes.cdll.LoadLibrary
    - threading.Event
    - ctypes.c_void_p.in_dll
    - ctypes.util.find_library
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.util.find_library
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.cdll.LoadLibrary
    functionSourceFile: ctypes
    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:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 24
    functionName: ipykernel._eventloop_macos._utf8
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 9
    functionsReached:
    - <builtin>.isinstance
    - s.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: s.encode
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 31
    functionName: ipykernel._eventloop_macos.n
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 7
    functionsReached:
    - ipykernel._eventloop_macos._utf8
    - <builtin>.isinstance
    - objc.sel_registerName
    - s.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: objc.sel_registerName
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - classname
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 36
    functionName: ipykernel._eventloop_macos.C
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 7
    functionsReached:
    - ipykernel._eventloop_macos._utf8
    - <builtin>.isinstance
    - s.encode
    - objc.objc_getClass
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: objc.objc_getClass
    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: ctypes.c_void_p.in_dll
    functionSourceFile: ctypes
    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: 3
    functionLinenumber: 80
    functionName: ipykernel._eventloop_macos._NSApp
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 5
    functionsReached:
    - ipykernel._eventloop_macos._utf8
    - <builtin>.isinstance
    - objc.sel_registerName
    - s.encode
    - ipykernel._eventloop_macos.C
    - ipykernel._eventloop_macos.n
    - objc.objc_getClass
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - NSApp
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 86
    functionName: ipykernel._eventloop_macos._wake
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 3
    functionsReached:
    - ipykernel._eventloop_macos._utf8
    - <builtin>.isinstance
    - objc.sel_registerName
    - s.encode
    - ipykernel._eventloop_macos.C
    - ipykernel._eventloop_macos.n
    - objc.objc_getClass
    - ctypes.c_void_p
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_void_p
    functionSourceFile: ctypes
    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: threading.Event
    functionSourceFile: threading
    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: threading.Event.set
    functionSourceFile: threading
    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: ctypes.CFUNCTYPE
    functionSourceFile: ctypes
    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:
    - delay
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 143
    functionName: ipykernel._eventloop_macos._stop_after
    functionSourceFile: ipykernel._eventloop_macos
    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: threading.Event.clear
    functionSourceFile: threading
    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: threading.Event.is_set
    functionSourceFile: threading
    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: CoreFoundation.CFRunLoopRun
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.gui.gtkembed
    functionSourceFile: ipykernel.gui.gtkembed
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gobject.idle_add
    functionSourceFile: gobject
    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: gtk.main
    functionSourceFile: gtk
    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: 45
    functionName: ipykernel.gui.gtkembed.GTKEmbed._wire_kernel
    functionSourceFile: ipykernel.gui.gtkembed
    functionUses: 0
    functionsReached:
    - gobject.timeout_add
    - <builtin>.int
    - ipykernel.gui.gtkembed.GTKEmbed._hijack_gtk
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 73
    functionName: ipykernel.gui.gtkembed.GTKEmbed._hijack_gtk
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gobject.timeout_add
    functionSourceFile: gobject
    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: 55
    functionName: ipykernel.gui.gtkembed.GTKEmbed.iterate_kernel
    functionSourceFile: ipykernel.gui.gtkembed
    functionUses: 0
    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: 1
    functionLinenumber: 64
    functionName: ipykernel.gui.gtkembed.GTKEmbed.stop
    functionSourceFile: ipykernel.gui.gtkembed
    functionUses: 0
    functionsReached:
    - sys.exit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kw
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: ipykernel.gui.gtkembed.GTKEmbed._hijack_gtk.dummy
    functionSourceFile: ipykernel.gui.gtkembed
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.zmqshell
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.interactiveshell.InteractiveShellABC.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: 1
    functionLinenumber: -1
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - traitlets.Bool
    - traitlets.CBytes
    - traitlets.default
    - traitlets.Bool.tag
    - jupyter_client.session.Session
    - traitlets.Any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.CBytes
    functionSourceFile: traitlets
    functionUses: 1
    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: 72
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.__init__
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.compilerop.CachingCompiler._parent_header.set
    - <builtin>.super
    - jupyter_client.session.Session._parent_header.set
    - contextvars.ContextVar.set
    - 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: 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: jupyter_client.session.Session._parent_header.set
    functionSourceFile: jupyter_client
    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: IPython.core.compilerop.CachingCompiler._parent_header.set
    functionSourceFile: IPython
    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: contextvars.ContextVar.set
    functionSourceFile: contextvars
    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: 1
    functionLinenumber: 79
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.parent_header
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._parent_header.get
    - contextvars.ContextVar.get
    - IPython.core.compilerop.CachingCompiler._parent_header.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: jupyter_client.session.Session._parent_header.get
    functionSourceFile: jupyter_client
    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: contextvars.ContextVar.get
    functionSourceFile: contextvars
    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: IPython.core.compilerop.CachingCompiler._parent_header.get
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 85
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.set_parent
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.extract_header
    - jupyter_client.session.Session._parent_header.set
    - IPython.core.compilerop.CachingCompiler._parent_header.set
    - contextvars.ContextVar.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: jupyter_client.session.extract_header
    functionSourceFile: jupyter_client
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher._flush_streams
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - sys.stderr.flush
    - sys.stdout.flush
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 97
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher._default_thread_local
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - threading.local
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.local
    functionSourceFile: threading
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher._hooks
    functionSourceFile: ipykernel.zmqshell
    functionUses: 2
    functionsReached:
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fbceed43220>
    argNames:
    - self
    - data
    - metadata
    - transient
    - update
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 110
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.publish
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - math.isinf
    - math.isnan
    - <builtin>.type
    - IPython.core.compilerop.CachingCompiler.session.msg
    - IPython.core.compilerop.CachingCompiler.session.send
    - traitlets.traitlets.Any._hooks
    - IPython.core.displayhook.DisplayHook._hooks
    - ipykernel.jsonutil.json_clean
    - ipykernel.zmqshell.ZMQDisplayPublisher._hooks
    - <builtin>.getattr
    - IPython.core.history.HistoryOutput
    - <builtin>.int
    - jupyter_client.session.Session.send
    - IPython.core.compilerop.CachingCompiler._hooks
    - <builtin>.float
    - binascii.b2a_base64
    - jupyter_client.session.Session.msg
    - <builtin>.hasattr
    - IPython.core.compilerop.CachingCompiler._validate_data
    - outputs.setdefault
    - obj.items
    - jupyter_client.session.Session._flush_streams
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - IPython.core.compilerop.CachingCompiler._flush_streams
    - IPython.core.displayhook.DisplayHook._validate_data
    - <builtin>.str
    - IPython.core.displayhook.DisplayHook._flush_streams
    - <builtin>.map
    - jupyter_client.session.Session._validate_data
    - obj.strftime
    - ipykernel.jsonutil.encode_images
    - jupyter_client.session.Session._hooks
    - <builtin>.set
    - <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: IPython.core.history.HistoryOutput
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: outputs.setdefault
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook._flush_streams
    functionSourceFile: IPython
    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: IPython.core.compilerop.CachingCompiler._flush_streams
    functionSourceFile: IPython
    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: jupyter_client.session.Session._flush_streams
    functionSourceFile: jupyter_client
    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: IPython.core.compilerop.CachingCompiler._validate_data
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._validate_data
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook._validate_data
    functionSourceFile: IPython
    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:
    - format_dict
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 52
    functionName: ipykernel.jsonutil.encode_images
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 1
    IfCount: 12
    argCount: 1
    argDefaultValues: []
    argNames:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 77
    functionName: ipykernel.jsonutil.json_clean
    functionSourceFile: ipykernel.jsonutil
    functionUses: 13
    functionsReached:
    - <builtin>.list
    - <builtin>.int
    - <builtin>.repr
    - <builtin>.isinstance
    - math.isinf
    - binascii.b2a_base64.decode
    - math.isnan
    - <builtin>.float
    - binascii.b2a_base64
    - obj.strftime
    - <builtin>.type
    - <builtin>.len
    - <builtin>.hasattr
    - <builtin>.str
    - ipykernel.jsonutil.json_clean
    - <builtin>.set
    - obj.items
    - <builtin>.map
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.msg
    functionSourceFile: jupyter_client
    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: IPython.core.compilerop.CachingCompiler.session.msg
    functionSourceFile: IPython
    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: traitlets.traitlets.Any._hooks
    functionSourceFile: traitlets
    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: IPython.core.displayhook.DisplayHook._hooks
    functionSourceFile: IPython
    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: IPython.core.compilerop.CachingCompiler._hooks
    functionSourceFile: IPython
    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: jupyter_client.session.Session._hooks
    functionSourceFile: jupyter_client
    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: IPython.core.compilerop.CachingCompiler.session.send
    functionSourceFile: IPython
    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: jupyter_client.session.Session.send
    functionSourceFile: jupyter_client
    functionUses: 3
    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 0x7fbcef7a7eb0>
    argNames:
    - self
    - wait
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 182
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.clear_output
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.dict
    - math.isinf
    - math.isnan
    - <builtin>.type
    - IPython.core.compilerop.CachingCompiler.session.msg
    - IPython.core.compilerop.CachingCompiler.session.send
    - traitlets.traitlets.Any._hooks
    - IPython.core.displayhook.DisplayHook._hooks
    - ipykernel.jsonutil.json_clean
    - ipykernel.zmqshell.ZMQDisplayPublisher._hooks
    - <builtin>.int
    - jupyter_client.session.Session.send
    - IPython.core.compilerop.CachingCompiler._hooks
    - <builtin>.float
    - binascii.b2a_base64
    - jupyter_client.session.Session.msg
    - <builtin>.hasattr
    - obj.items
    - jupyter_client.session.Session._flush_streams
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - IPython.core.compilerop.CachingCompiler._flush_streams
    - <builtin>.str
    - IPython.core.displayhook.DisplayHook._flush_streams
    - <builtin>.map
    - obj.strftime
    - jupyter_client.session.Session._hooks
    - <builtin>.set
    - <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
    - hook
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 210
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.register_hook
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.compilerop.CachingCompiler._hooks.append
    - IPython.core.displayhook.DisplayHook._hooks.append
    - jupyter_client.session.Session._hooks.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: IPython.core.compilerop.CachingCompiler._hooks.append
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook._hooks.append
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._hooks.append
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - hook
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 229
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.unregister_hook
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.compilerop.CachingCompiler._hooks.remove
    - jupyter_client.session.Session._hooks.remove
    - IPython.core.displayhook.DisplayHook._hooks.remove
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.compilerop.CachingCompiler._hooks.remove
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._hooks.remove
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook._hooks.remove
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.zmqshell.KernelMagics
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.magic.line_magic
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.magic.line_magic
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fbceee74310>
    - <ast.Constant object at 0x7fbceee747c0>
    argNames:
    - self
    - parameter_s
    - last_call
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 263
    functionName: ipykernel.zmqshell.KernelMagics.edit
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.magic.Magics.parse_options
    - IPython.core.magics.CodeMagics._find_edit_target
    - IPython.core.magic.Magics.shell.payload_manager.write_payload
    - pathlib.Path
    - <builtin>.str
    - <builtin>.print
    - pathlib.Path.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.magic.Magics.parse_options
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.magics.CodeMagics._find_edit_target
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path.resolve
    functionSourceFile: pathlib
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.magic.Magics.shell.payload_manager.write_payload
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arg_s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 361
    functionName: ipykernel.zmqshell.KernelMagics.clear
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.magic.Magics.shell.system
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.magic.Magics.shell.system
    functionSourceFile: IPython
    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
    - arg_s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 376
    functionName: ipykernel.zmqshell.KernelMagics.less
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - arg_s.endswith
    - IPython.core.page.page
    - fid.read
    - IPython.core.magic.Magics.shell.pycolorize
    - IPython.utils.openpy.read_py_file
    - <builtin>.open
    linkageType: pythonLinkage
    raised:
    - UsageError
    returnType: N/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_s.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: IPython.utils.openpy.read_py_file
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.magic.Magics.shell.pycolorize
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fid.read
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.page.page
    functionSourceFile: IPython
    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
    - arg_s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 398
    functionName: ipykernel.zmqshell.KernelMagics.man
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.magic.Magics.shell.getoutput
    - IPython.core.page.page
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.magic.Magics.shell.getoutput
    functionSourceFile: IPython
    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
    - arg_s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 404
    functionName: ipykernel.zmqshell.KernelMagics.connect_info
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - pathlib.Path
    - <builtin>.str
    - jupyter_core.paths.jupyter_runtime_dir
    - <builtin>.print
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arg_s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 441
    functionName: ipykernel.zmqshell.KernelMagics.qtconsole
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.utils.process.arg_split
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.utils.process.arg_split
    functionSourceFile: IPython
    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
    - arg_s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 454
    functionName: ipykernel.zmqshell.KernelMagics.autosave
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - IPython.display.display
    - <builtin>.print
    - IPython.display.Javascript
    linkageType: pythonLinkage
    raised:
    - UsageError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.display.Javascript
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.display.display
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arg_s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 481
    functionName: ipykernel.zmqshell.KernelMagics.subshell
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - manager.subshell_id_from_thread_id
    - <builtin>.getattr
    - threading.current_thread
    - IPython.core.application.BaseIPythonApplication.initialized
    - threading.main_thread
    - manager.list_subshell
    - os.getpid
    - IPython.core.application.BaseIPythonApplication.instance
    - <builtin>.print
    - threading.active_count
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/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.subshell_id_from_thread_id
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.list_subshell
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.main_thread
    functionSourceFile: threading
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.active_count
    functionSourceFile: threading
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 517
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.__init__
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._parent_header.set
    - <builtin>.super
    - 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: 1
    functionLinenumber: -1
    functionName: ipykernel.zmqshell.ZMQInteractiveShell
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - traitlets.default
    - traitlets.Type
    - traitlets.observe
    - jupyter_client.session.Session
    - traitlets.CBool
    - traitlets.Any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 539
    functionName: ipykernel.zmqshell.ZMQInteractiveShell._default_banner1
    functionSourceFile: ipykernel.zmqshell
    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: traitlets.CBool
    functionSourceFile: traitlets
    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: 553
    functionName: ipykernel.zmqshell.ZMQInteractiveShell._default_exiter
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - change
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 557
    functionName: ipykernel.zmqshell.ZMQInteractiveShell._update_exit_now
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - traitlets.Any.io_loop.call_later
    - traitlets.traitlets.Any.kernel.io_loop.call_later
    - jupyter_client.session.Session.kernel.io_loop.call_later
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.kernel.io_loop.call_later
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Any.io_loop.call_later
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.kernel.io_loop.call_later
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    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 0x7fbceef3f8b0>
    argNames:
    - self
    - gui
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 572
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.enable_gui
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.external.qt_for_kernel.QtCore.QEventLoop
    - <builtin>.getattr
    - traitlets.config.application.Application.initialized
    - ipykernel.eventloops.set_qt_api_env_from_gui
    - IPython.external.qt_loaders.loaded_api
    - traitlets.config.application.Application.instance
    - loop_map.keys
    - <builtin>.hasattr
    - <builtin>.delattr
    - gui.startswith
    - ipykernel.eventloops.make_qt_app_for_kernel
    - ipykernel.eventloops.enable_gui
    - os.environ.get
    - <builtin>.print
    - IPython.lib.guisupport.get_app_qt4
    linkageType: pythonLinkage
    raised:
    - UsageError
    returnType: 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: 582
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.init_environment
    functionSourceFile: ipykernel.zmqshell
    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.Constant object at 0x7fbcef4e19a0>
    - <ast.Constant object at 0x7fbcef4e1ac0>
    - <ast.Constant object at 0x7fbcef4e1730>
    argNames:
    - self
    - strg
    - start
    - screen_lines
    - pager_cmd
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 597
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.payloadpage_page
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - <builtin>.dict
    - <builtin>.isinstance
    - jupyter_client.session.Session.payload_manager.write_payload
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.payload_manager.write_payload
    functionSourceFile: jupyter_client
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 625
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.init_hooks
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - jupyter_client.session.Session.set_hook
    - IPython.core.page.as_hook
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.page.as_hook
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.set_hook
    functionSourceFile: jupyter_client
    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: 630
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.init_data_pub
    functionSourceFile: ipykernel.zmqshell
    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
    - pub
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 648
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.data_pub
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.data_pub_class
    - <builtin>.hasattr
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.data_pub_class
    functionSourceFile: jupyter_client
    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: 1
    functionLinenumber: 651
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.ask_exit
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - jupyter_client.session.Session.payload_manager.write_payload
    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: 660
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.run_cell
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - etype
    - evalue
    - stb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 665
    functionName: ipykernel.zmqshell.ZMQInteractiveShell._showtraceback
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - queue.Queue.displayhook.session.send
    - queue.Queue.displayhook.topic.replace
    - <builtin>.list
    - math.isinf
    - math.isnan
    - traitlets.config.configurable.SingletonConfigurable.background_socket.displayhook.topic.replace
    - <builtin>.type
    - zmq.DEALER.displayhook.session.send
    - IPython.core.interactiveshell.InteractiveShell.displayhook.topic.replace
    - zmq.PUB.displayhook.topic.replace
    - ipykernel.jsonutil.json_clean
    - jupyter_client.session.Session.displayhook.topic.replace
    - traitlets.config.configurable.SingletonConfigurable.background_socket.displayhook.session.send
    - traitlets.HasTraits.displayhook.session.send
    - traitlets.traitlets.Any.displayhook.topic.replace
    - <builtin>.int
    - zmq.PUSH.displayhook.topic.replace
    - zmq.eventloop.zmqstream.ZMQStream.displayhook.topic.replace
    - IPython.core.autocall.ZMQExitAutocall.background_socket.displayhook.topic.replace
    - <builtin>.float
    - binascii.b2a_base64
    - IPython.core.autocall.ZMQExitAutocall.displayhook.topic.replace
    - queue.Queue.background_socket.displayhook.session.send
    - traitlets.HasTraits.displayhook.topic.replace
    - traitlets.traitlets.Any.displayhook.session.send
    - <builtin>.hasattr
    - traitlets.config.configurable.SingletonConfigurable.displayhook.topic.replace
    - zmq.DEALER.displayhook.topic.replace
    - obj.items
    - jupyter_client.session.Session.background_socket.displayhook.topic.replace
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - zmq.STREAM.displayhook.topic.replace
    - zmq.eventloop.zmqstream.ZMQStream.displayhook.session.send
    - queue.Queue.background_socket.displayhook.topic.replace
    - IPython.core.autocall.ZMQExitAutocall.displayhook.session.send
    - IPython.core.autocall.ZMQExitAutocall.background_socket.displayhook.session.send
    - <builtin>.str
    - sys.stderr.flush
    - <builtin>.map
    - sys.stdout.flush
    - zmq.STREAM.displayhook.session.send
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.displayhook.session.send
    - traitlets.config.configurable.SingletonConfigurable.displayhook.session.send
    - obj.strftime
    - zmq.PUSH.displayhook.session.send
    - <builtin>.set
    - <builtin>.len
    - IPython.core.interactiveshell.InteractiveShell.displayhook.session.send
    - zmq.PUB.displayhook.session.send
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.displayhook.topic.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: queue.Queue.displayhook.topic.replace
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.displayhook.topic.replace
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.background_socket.displayhook.topic.replace
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.displayhook.topic.replace
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.displayhook.topic.replace
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.displayhook.topic.replace
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.displayhook.topic.replace
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.displayhook.topic.replace
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.displayhook.topic.replace
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.interactiveshell.InteractiveShell.displayhook.topic.replace
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.displayhook.topic.replace
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.HasTraits.displayhook.topic.replace
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.displayhook.topic.replace
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.displayhook.topic.replace
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.DEALER.displayhook.topic.replace
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.displayhook.topic.replace
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.displayhook.topic.replace
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.background_socket.displayhook.session.send
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.displayhook.session.send
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.eventloop.zmqstream.ZMQStream.displayhook.session.send
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.displayhook.session.send
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.interactiveshell.InteractiveShell.displayhook.session.send
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.displayhook.session.send
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.DEALER.displayhook.session.send
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.displayhook.session.send
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.displayhook.session.send
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.displayhook.session.send
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.displayhook.session.send
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.displayhook.session.send
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.displayhook.session.send
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.HasTraits.displayhook.session.send
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.displayhook.session.send
    functionSourceFile: zmq
    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 0x7fbcef0054c0>
    argNames:
    - self
    - text
    - replace
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 695
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.set_next_input
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - jupyter_client.session.Session.payload_manager.write_payload
    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: 1
    functionLinenumber: 713
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.parent_header
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._parent_header.set
    - jupyter_client.session.Session._parent_header.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 717
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.set_parent
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - sys.stdout.set_parent
    - jupyter_client.session.Session.data_pub.set_parent
    - jupyter_client.session.Session.display_pub.set_parent
    - sys.stderr.set_parent
    - <builtin>.hasattr
    - jupyter_client.session.Session.displayhook.set_parent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.displayhook.set_parent
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.display_pub.set_parent
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.data_pub.set_parent
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.stdout.set_parent
    functionSourceFile: sys
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.stderr.set_parent
    functionSourceFile: sys
    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: 733
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.get_parent
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 742
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.init_magics
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.magics_manager.register_alias
    - <builtin>.super
    - jupyter_client.session.Session.register_magics
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.register_magics
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.magics_manager.register_alias
    functionSourceFile: jupyter_client
    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: 748
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.init_virtualenv
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cmd
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 755
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.system_piped
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.utils._process_win32.AvoidUNCPath
    - jupyter_client.session.Session.var_expand
    - cmd.rstrip
    - ipykernel.zmqshell.ZMQInteractiveShell.system_piped
    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: cmd.rstrip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.var_expand
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.utils._process_win32.AvoidUNCPath
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.interactiveshell.InteractiveShellABC.register
    functionSourceFile: IPython
    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: ipykernel.displayhook
    functionSourceFile: ipykernel.displayhook
    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
    - session
    - pub_socket
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: ipykernel.displayhook.ZMQDisplayHook.__init__
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - contextvars.ContextVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 34
    functionName: ipykernel.displayhook.ZMQDisplayHook.get_execution_count
    functionSourceFile: ipykernel.displayhook
    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
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: ipykernel.displayhook.ZMQDisplayHook.__call__
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - sys.stderr.flush
    - ipykernel.displayhook.ZMQDisplayHook.get_execution_count
    - <builtin>.repr
    - sys.stdout.flush
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 60
    functionName: ipykernel.displayhook.ZMQDisplayHook.parent_header
    functionSourceFile: ipykernel.displayhook
    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
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: ipykernel.displayhook.ZMQDisplayHook.set_parent
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - jupyter_client.session.extract_header
    linkageType: 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: ipykernel.displayhook.ZMQShellDisplayHook
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    - traitlets.Any
    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: 85
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.__init__
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - contextvars.ContextVar.set
    - contextvars.ContextVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.parent_header
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - contextvars.ContextVar.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 97
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.set_parent
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - jupyter_client.session.extract_header
    - contextvars.ContextVar.set
    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: 103
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.start_displayhook
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.msg
    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: 115
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.write_output_prompt
    functionSourceFile: ipykernel.displayhook
    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.Constant object at 0x7fbceee45cd0>
    argNames:
    - self
    - format_dict
    - md_dict
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 120
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.write_format_data
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - math.isinf
    - math.isnan
    - <builtin>.type
    - ipykernel.jsonutil.json_clean
    - <builtin>.int
    - <builtin>.float
    - binascii.b2a_base64
    - <builtin>.hasattr
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - <builtin>.str
    - <builtin>.map
    - obj.strftime
    - ipykernel.jsonutil.encode_images
    - <builtin>.set
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 126
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.finish_displayhook
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - sys.stderr.flush
    - sys.stdout.flush
    - jupyter_client.session.Session.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.jsonutil
    functionSourceFile: ipykernel.jsonutil
    functionUses: 0
    functionsReached:
    - datetime.datetime.strptime
    - 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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.strptime
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.isnan
    functionSourceFile: math
    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: math.isinf
    functionSourceFile: math
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.float
    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: binascii.b2a_base64
    functionSourceFile: binascii
    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: binascii.b2a_base64.decode
    functionSourceFile: binascii
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.map
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <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: 0
    functionLinenumber: -1
    functionName: obj.items
    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.strftime
    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: ipykernel.comm
    functionSourceFile: ipykernel.comm
    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: ipykernel.comm.manager
    functionSourceFile: ipykernel.comm.manager
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Instance
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: 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: ipykernel.comm.manager.CommManager
    functionSourceFile: ipykernel.comm.manager
    functionUses: 0
    functionsReached:
    - traitlets.Dict
    - traitlets.Instance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Dict
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: comm.base_comm.CommManager.__init__
    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: traitlets.config.LoggingConfigurable.__init__
    functionSourceFile: traitlets
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 7
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - msg
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 30
    functionName: ipykernel.comm.manager.CommManager.comm_open
    functionSourceFile: ipykernel.comm.manager
    functionUses: 0
    functionsReached:
    - traitlets.config.LoggingConfigurable.register_comm
    - traitlets.config.LoggingConfigurable.__init__
    - kwargs.pop
    - BaseComm.__init__
    - comm.close
    - ipykernel.comm.comm.Comm.__init__
    - logger.error
    - warnings.warn
    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 0x7fbcef1030d0>
    - <ast.Constant object at 0x7fbcef103520>
    - <ast.Constant object at 0x7fbcef103c70>
    - <ast.Constant object at 0x7fbcef103cd0>
    - <ast.Constant object at 0x7fbcef103940>
    argNames:
    - self
    - target_name
    - data
    - metadata
    - buffers
    - show_warning
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 76
    functionName: ipykernel.comm.comm.Comm.__init__
    functionSourceFile: ipykernel.comm.comm
    functionUses: 1
    functionsReached:
    - traitlets.config.LoggingConfigurable.__init__
    - kwargs.pop
    - BaseComm.__init__
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.LoggingConfigurable.register_comm
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logger.error
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: comm.close
    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: ipykernel.comm.comm
    functionSourceFile: ipykernel.comm.comm
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fbceef3f310>
    - <ast.Constant object at 0x7fbceef3f520>
    - <ast.Constant object at 0x7fbceef3f8e0>
    argNames:
    - self
    - msg_type
    - data
    - metadata
    - buffers
    - keys
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 24
    functionName: ipykernel.comm.comm.BaseComm.publish_msg
    functionSourceFile: ipykernel.comm.comm
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.dict
    - math.isinf
    - math.isnan
    - <builtin>.type
    - ipykernel.jsonutil.json_clean
    - jupyter_client.session.Session.get_parent
    - <builtin>.int
    - <builtin>.float
    - binascii.b2a_base64
    - <builtin>.hasattr
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - ipykernel.comm.comm.BaseComm.kernel.session.send
    - <builtin>.str
    - <builtin>.map
    - obj.strftime
    - jupyter_client.session.Session.instance
    - <builtin>.set
    - <builtin>.len
    - jupyter_client.session.Session.initialized
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.initialized
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.instance
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.get_parent
    functionSourceFile: jupyter_client
    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: ipykernel.comm.comm.BaseComm.kernel.session.send
    functionSourceFile: ipykernel
    functionUses: 1
    functionsReached: []
    linkageType: 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: ipykernel.comm.comm.Comm
    functionSourceFile: ipykernel.comm.comm
    functionUses: 0
    functionsReached:
    - traitlets.Bytes
    - traitlets.Bool
    - traitlets.default
    - traitlets.Unicode
    - jupyter_client.session.Session
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Unicode
    functionSourceFile: traitlets
    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: traitlets.Bytes
    functionSourceFile: traitlets
    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: 67
    functionName: ipykernel.comm.comm.Comm._default_kernel
    functionSourceFile: ipykernel.comm.comm
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.instance
    - jupyter_client.session.Session.initialized
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 73
    functionName: ipykernel.comm.comm.Comm._default_comm_id
    functionSourceFile: ipykernel.comm.comm
    functionUses: 0
    functionsReached:
    - uuid.uuid4
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: uuid.uuid4
    functionSourceFile: uuid
    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: kwargs.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: BaseComm.__init__
    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: 1
    functionLinenumber: -1
    functionName: ipykernel.kernelbase
    functionSourceFile: ipykernel.kernelbase
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: inspect.signature
    functionSourceFile: inspect
    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: dict.fromkeys
    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: parameters.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: parameters.values
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.any
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.kernelbase.Kernel
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - traitlets.traitlets.Float.tag
    - traitlets.traitlets.Instance
    - traitlets.traitlets.Bool
    - traitlets.traitlets.observe
    - traitlets.traitlets.default
    - traitlets.traitlets.Integer
    - traitlets.traitlets.Bool.tag
    - traitlets.traitlets.Float
    - traitlets.traitlets.Dict
    - traitlets.traitlets.Unicode
    - jupyter_client.session.Session
    - traitlets.traitlets.List
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.observe
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - change
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: ipykernel.kernelbase.Kernel._update_eventloop
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.background_socket.io_loop.current
    - loop.add_callback
    - queue.Queue.io_loop.current
    - tornado.ioloop.IOLoop.current
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.add_callback
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.List
    functionSourceFile: traitlets
    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: 126
    functionName: ipykernel.kernelbase.Kernel._shell_streams_default
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - change
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 137
    functionName: ipykernel.kernelbase.Kernel._shell_streams_changed
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <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: 168
    functionName: ipykernel.kernelbase.Kernel._default_ident
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - uuid.uuid4
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 220
    functionName: ipykernel.kernelbase.Kernel._parent_header
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.get_parent
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Float
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Float.tag
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 300
    functionName: ipykernel.kernelbase.Kernel.__init__
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._shell_parent_ident.set
    - <builtin>.super
    - <builtin>.getattr
    - jupyter_client.session.Session._shell_parent.set
    - ipykernel.kernelbase._accepts_parameters
    - inspect.signature
    - ipykernel.utils.LazyDict.__init__
    - contextvars.copy_context
    - parameters.values
    - asyncio.Lock
    - parameters.get
    - dict.fromkeys
    - <builtin>.any
    - 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: jupyter_client.session.Session._shell_parent.set
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session._shell_parent_ident.set
    functionSourceFile: jupyter_client
    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: contextvars.copy_context
    functionSourceFile: contextvars
    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: ipykernel.kernelbase.Kernel.__init__.<dict5>.<lambda1>
    functionSourceFile: ipykernel.kernelbase
    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: ipykernel.kernelbase.Kernel.__init__.<dict5>.<lambda2>
    functionSourceFile: ipykernel.kernelbase
    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: jupyter_client.session.Session._get_shell_context_var
    functionSourceFile: jupyter_client
    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: 1
    functionLinenumber: -1
    functionName: ipykernel.kernelbase.Kernel.__init__.<lambda2>
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._get_shell_context_var
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dict
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 25
    functionName: ipykernel.utils.LazyDict.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: asyncio.Lock
    functionSourceFile: asyncio
    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
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 344
    functionName: ipykernel.kernelbase.Kernel.dispatch_control
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.process_control
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.process_control
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 11
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 350
    functionName: ipykernel.kernelbase.Kernel.process_control
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._publish_status_and_flush
    - jupyter_client.session.Session.log.error
    - jupyter_client.session.Session._publish_status
    - ipykernel.eventloops.loop_tk.shell_stream.session.deserialize
    - jupyter_client.session.Session.session.deserialize
    - jupyter_client.session.Session.set_parent
    - ipykernel.eventloops.loop_tk.shell_stream.session.feed_identities
    - jupyter_client.session.Session.control_handlers.get
    - inspect.isawaitable
    - jupyter_client.session.Session.log.debug
    - sys.stderr.flush
    - jupyter_client.session.Session.session.feed_identities
    - sys.stdout.flush
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.eventloops.loop_tk.shell_stream.session.feed_identities
    functionSourceFile: ipykernel
    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: jupyter_client.session.Session.session.feed_identities
    functionSourceFile: jupyter_client
    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: ipykernel.eventloops.loop_tk.shell_stream.session.deserialize
    functionSourceFile: ipykernel
    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: jupyter_client.session.Session.session.deserialize
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.log.error
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.log.debug
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session._publish_status
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.control_handlers.get
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.isawaitable
    functionSourceFile: inspect
    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: jupyter_client.session.Session._publish_status_and_flush
    functionSourceFile: jupyter_client
    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
    - stream
    - msg
    - idents
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 387
    functionName: ipykernel.kernelbase.Kernel.should_handle
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 21
    ICount: 23
    IfCount: 14
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fbceee4f160>
    argNames:
    - subshell_id
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 398
    functionName: ipykernel.kernelbase.Kernel.dispatch_shell
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - threading.current_thread
    - <builtin>.len
    - inspect.isawaitable
    - sys.stderr.flush
    - sys.stdout.flush
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 496
    functionName: ipykernel.kernelbase.Kernel.pre_handler_hook
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - signal.signal
    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: 501
    functionName: ipykernel.kernelbase.Kernel.post_handler_hook
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - signal.signal
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 505
    functionName: ipykernel.kernelbase.Kernel.enter_eventloop
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - tornado.ioloop.IOLoop.call_later
    - jupyter_client.session.Session.background_socket.io_loop.call_later
    - ipykernel.kernelbase.Kernel.enter_eventloop.schedule_next
    - queue.Queue.io_loop.call_later
    - jupyter_client.session.Session.log.debug
    - jupyter_client.session.Session.log.info
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.log.info
    functionSourceFile: jupyter_client
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 514
    functionName: ipykernel.kernelbase.Kernel.enter_eventloop.advance_eventloop
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - traitlets.traitlets.Any.eventloop
    - tornado.ioloop.IOLoop.call_later
    - queue.Queue.eventloop
    - jupyter_client.session.Session
    - zmq.DEALER.eventloop
    - queue.Queue.background_socket.eventloop
    - jupyter_client.session.Session.background_socket.eventloop
    - jupyter_client.session.Session.eventloop
    - IPython.core.autocall.ZMQExitAutocall.background_socket.eventloop
    - ipykernel.kernelbase.Kernel.enter_eventloop.schedule_next
    - traitlets.HasTraits.eventloop
    - queue.Queue.io_loop.call_later
    - jupyter_client.session.Session.log.debug
    - zmq.PUSH.eventloop
    - jupyter_client.session.Session.log.info
    - zmq.PUB.eventloop
    - jupyter_client.session.Session.log.error
    - traitlets.config.configurable.SingletonConfigurable.background_socket.eventloop
    - jupyter_client.session.Session.background_socket.io_loop.call_later
    - zmq.STREAM.eventloop
    - IPython.core.autocall.ZMQExitAutocall.eventloop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.eventloop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any.eventloop
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.background_socket.eventloop
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUSH.eventloop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.background_socket.eventloop
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.eventloop
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.eventloop
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.background_socket.eventloop
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.HasTraits.eventloop
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.STREAM.eventloop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.eventloop
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.DEALER.eventloop
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.autocall.ZMQExitAutocall.eventloop
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 529
    functionName: ipykernel.kernelbase.Kernel.enter_eventloop.schedule_next
    functionSourceFile: ipykernel.kernelbase
    functionUses: 2
    functionsReached:
    - jupyter_client.session.Session.log.debug
    - tornado.ioloop.IOLoop.call_later
    - queue.Queue.io_loop.call_later
    - jupyter_client.session.Session.background_socket.io_loop.call_later
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tornado.ioloop.IOLoop.call_later
    functionSourceFile: tornado
    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: queue.Queue.io_loop.call_later
    functionSourceFile: queue
    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: jupyter_client.session.Session.background_socket.io_loop.call_later
    functionSourceFile: jupyter_client
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 542
    functionName: ipykernel.kernelbase.Kernel._create_control_lock
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - asyncio.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 7
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 546
    functionName: ipykernel.kernelbase.Kernel.start
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - queue.Queue.io_loop.current
    - jupyter_client.session.Session.shell_stream.on_recv
    - jupyter_client.session.Session.control_thread.io_loop.add_callback
    - functools.wraps
    - functools.partial
    - jupyter_client.session.Session._publish_status
    - contextvars.copy_context
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - asyncio.Lock
    - jupyter_client.session.Session.shell_channel_thread.manager.set_on_recv_callback
    - jupyter_client.session.Session.background_socket.io_loop.current
    - jupyter_client.session.Session.control_stream.on_recv
    - tornado.ioloop.IOLoop.current
    - ipykernel.utils._async_in_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: jupyter_client.session.Session.control_stream.on_recv
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.control_thread.io_loop.add_callback
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.shell_channel_thread.manager.set_on_recv_callback
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.shell_stream.on_recv
    functionSourceFile: jupyter_client
    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 0x7fbcef12fbe0>
    argNames:
    - f
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 44
    functionName: ipykernel.utils._async_in_context
    functionSourceFile: ipykernel.utils
    functionUses: 4
    functionsReached:
    - contextvars.copy_context
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 574
    functionName: ipykernel.kernelbase.Kernel.shell_channel_thread_main
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - threading.current_thread
    - jupyter_client.session.Session.log.error
    - ipykernel.eventloops.loop_tk.shell_stream.session.deserialize
    - jupyter_client.session.Session.session.deserialize
    - ipykernel.eventloops.loop_tk.shell_stream.session.feed_identities
    - traitlets.config.configurable.SingletonConfigurable.manager.get_shell_channel_to_subshell_socket
    - IPython.core.interactiveshell.InteractiveShell.manager.get_shell_channel_to_subshell_socket
    - jupyter_client.session.Session.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    - traitlets.traitlets.Any.manager.get_shell_channel_to_subshell_socket
    - socket.send_multipart
    - jupyter_client.session.Session.session.feed_identities
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.configurable.SingletonConfigurable.manager.get_shell_channel_to_subshell_socket
    functionSourceFile: traitlets
    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: IPython.core.interactiveshell.InteractiveShell.manager.get_shell_channel_to_subshell_socket
    functionSourceFile: IPython
    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: jupyter_client.session.Session.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    functionSourceFile: jupyter_client
    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: traitlets.traitlets.Any.manager.get_shell_channel_to_subshell_socket
    functionSourceFile: traitlets
    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: socket.send_multipart
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - subshell_id
    - msg
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 597
    functionName: ipykernel.kernelbase.Kernel.shell_main
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.shell_channel_thread.manager.get_subshell_asyncio_lock
    - jupyter_client.session.Session.dispatch_shell
    - threading.current_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: jupyter_client.session.Session.shell_channel_thread.manager.get_subshell_asyncio_lock
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.dispatch_shell
    functionSourceFile: jupyter_client
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ports
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 623
    functionName: ipykernel.kernelbase.Kernel.record_ports
    functionSourceFile: ipykernel.kernelbase
    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
    - code
    - parent
    - execution_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 635
    functionName: ipykernel.kernelbase.Kernel._publish_execute_input
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session._topic
    - jupyter_client.session.Session.session.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._topic
    functionSourceFile: jupyter_client
    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: ipykernel.eventloops.loop_tk.shell_stream.session.send
    functionSourceFile: ipykernel
    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: jupyter_client.session.Session.session.send
    functionSourceFile: jupyter_client
    functionUses: 23
    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 0x7fbcef4e7520>
    argNames:
    - self
    - status
    - channel
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 647
    functionName: ipykernel.kernelbase.Kernel._publish_status
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.get_parent
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session._topic
    - jupyter_client.session.Session.session.send
    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 0x7fbcef130eb0>
    argNames:
    - self
    - status
    - channel
    - stream
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 659
    functionName: ipykernel.kernelbase.Kernel._publish_status_and_flush
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._publish_status
    - traitlets.traitlets.Instance.flush
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Instance.flush
    functionSourceFile: traitlets
    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
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 665
    functionName: ipykernel.kernelbase.Kernel._publish_debug_event
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.get_parent
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session._topic
    - jupyter_client.session.Session.session.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fbcef0fc700>
    argNames:
    - self
    - ident
    - parent
    - channel
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 676
    functionName: ipykernel.kernelbase.Kernel.set_parent
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._shell_parent_ident.set
    - contextvars.copy_context
    - jupyter_client.session.Session._shell_parent.set
    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 0x7fbcef0fc7c0>
    argNames:
    - self
    - channel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 694
    functionName: ipykernel.kernelbase.Kernel.get_parent
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._get_shell_context_var
    - threading.current_thread
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - var
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 722
    functionName: ipykernel.kernelbase.Kernel._get_shell_context_var
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - contextvars.ContextVar.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 768
    functionName: ipykernel.kernelbase.Kernel.init_metadata
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.utcnow
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.utcnow
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.now
    functionSourceFile: datetime
    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
    - parent
    - metadata
    - reply_content
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 779
    functionName: ipykernel.kernelbase.Kernel.finish_metadata
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 10
    IfCount: 9
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 786
    functionName: ipykernel.kernelbase.Kernel.execute_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._publish_execute_input
    - <builtin>.list
    - jupyter_client.session.Session._abort_queues
    - math.isinf
    - math.isnan
    - cell_meta.get
    - <builtin>.type
    - jupyter_client.session.Session.finish_metadata
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - content.get
    - ipykernel.jsonutil.json_clean
    - <builtin>.int
    - _AWAITABLE_MESSAGE.format
    - <builtin>.float
    - jupyter_client.session.Session.init_metadata
    - binascii.b2a_base64
    - <builtin>.hasattr
    - jupyter_client.session.Session.log.debug
    - time.sleep
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - jupyter_client.session.Session.do_execute
    - parent.get
    - <builtin>.str
    - inspect.isawaitable
    - sys.stderr.flush
    - <builtin>.map
    - sys.stdout.flush
    - jupyter_client.session.Session.log.error
    - jupyter_client.session.Session.session.send
    - obj.strftime
    - <builtin>.set
    - <builtin>.len
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: content.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: parent.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: cell_meta.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: jupyter_client.session.Session.init_metadata
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session._publish_execute_input
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.do_execute
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _AWAITABLE_MESSAGE.format
    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: jupyter_client.session.Session.finish_metadata
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session._abort_queues
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fbceeece670>
    - <ast.Constant object at 0x7fbceeece220>
    - <ast.Constant object at 0x7fbceeece8b0>
    argNames:
    - self
    - code
    - silent
    - store_history
    - user_expressions
    - allow_stdin
    - cell_meta
    - cell_id
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 872
    functionName: ipykernel.kernelbase.Kernel.do_execute
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 886
    functionName: ipykernel.kernelbase.Kernel.complete_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - math.isinf
    - math.isnan
    - <builtin>.type
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - ipykernel.jsonutil.json_clean
    - <builtin>.int
    - _AWAITABLE_MESSAGE.format
    - <builtin>.float
    - binascii.b2a_base64
    - jupyter_client.session.Session.do_complete
    - <builtin>.hasattr
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - <builtin>.str
    - inspect.isawaitable
    - <builtin>.map
    - jupyter_client.session.Session.session.send
    - obj.strftime
    - <builtin>.set
    - <builtin>.len
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.do_complete
    functionSourceFile: jupyter_client
    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
    - code
    - cursor_pos
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 907
    functionName: ipykernel.kernelbase.Kernel.do_complete
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 917
    functionName: ipykernel.kernelbase.Kernel.inspect_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - math.isinf
    - math.isnan
    - <builtin>.type
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - content.get
    - ipykernel.jsonutil.json_clean
    - <builtin>.int
    - _AWAITABLE_MESSAGE.format
    - <builtin>.float
    - binascii.b2a_base64
    - <builtin>.hasattr
    - jupyter_client.session.Session.log.debug
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - <builtin>.str
    - inspect.isawaitable
    - <builtin>.map
    - jupyter_client.session.Session.do_inspect
    - jupyter_client.session.Session.session.send
    - obj.strftime
    - <builtin>.set
    - <builtin>.len
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.do_inspect
    functionSourceFile: jupyter_client
    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 0x7fbcef931c70>
    - <ast.Tuple object at 0x7fbcef931be0>
    argNames:
    - self
    - code
    - cursor_pos
    - detail_level
    - omit_sections
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 943
    functionName: ipykernel.kernelbase.Kernel.do_inspect
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 947
    functionName: ipykernel.kernelbase.Kernel.history_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - math.isinf
    - math.isnan
    - jupyter_client.session.Session.do_history
    - <builtin>.type
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - ipykernel.jsonutil.json_clean
    - <builtin>.int
    - _AWAITABLE_MESSAGE.format
    - <builtin>.float
    - binascii.b2a_base64
    - <builtin>.hasattr
    - jupyter_client.session.Session.log.debug
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - <builtin>.str
    - inspect.isawaitable
    - <builtin>.map
    - jupyter_client.session.Session.session.send
    - obj.strftime
    - <builtin>.set
    - <builtin>.len
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.do_history
    functionSourceFile: jupyter_client
    functionUses: 1
    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 0x7fbceec36d60>
    - <ast.Constant object at 0x7fbceec360d0>
    - <ast.Constant object at 0x7fbceec36cd0>
    - <ast.Constant object at 0x7fbceec36070>
    - <ast.Constant object at 0x7fbceec363d0>
    - <ast.Constant object at 0x7fbceec36640>
    argNames:
    - self
    - hist_access_type
    - output
    - raw
    - session
    - start
    - stop
    - n
    - pattern
    - unique
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 967
    functionName: ipykernel.kernelbase.Kernel.do_history
    functionSourceFile: ipykernel.kernelbase
    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
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 982
    functionName: ipykernel.kernelbase.Kernel.connect_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.log.debug
    - jupyter_client.session.Session._recorded_ports.copy
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session.session.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._recorded_ports.copy
    functionSourceFile: jupyter_client
    functionUses: 1
    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: 992
    functionName: ipykernel.kernelbase.Kernel.kernel_info
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - supported_features.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: supported_features.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1011
    functionName: ipykernel.kernelbase.Kernel.kernel_info_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.log.debug
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session.session.send
    - content.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: content.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1020
    functionName: ipykernel.kernelbase.Kernel.comm_info_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - jupyter_client.session.Session.session.send
    - <builtin>.hasattr
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session.comm_manager.comms.items
    - content.get
    - jupyter_client.session.Session.log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.comm_manager.comms.items
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1040
    functionName: ipykernel.kernelbase.Kernel._send_interrupt_children
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - os.getpgid
    - jupyter_client.session.Session.log.error
    - os.killpg
    - <builtin>.hasattr
    - os.getpid
    - os.kill
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.getpgid
    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: os.killpg
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.kill
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1057
    functionName: ipykernel.kernelbase.Kernel.interrupt_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - traceback.format_stack
    - jupyter_client.session.Session.session.send
    - jupyter_client.session.Session._send_interrupt_children
    - <builtin>.type
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._send_interrupt_children
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traceback.format_stack
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 9
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1077
    functionName: ipykernel.kernelbase.Kernel.shutdown_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.do_shutdown
    - jupyter_client.session.Session.shell_stream.io_loop.add_callback
    - _AWAITABLE_MESSAGE.format
    - traitlets.Instance.io_loop.add_callback
    - jupyter_client.session.Session.session.send
    - jupyter_client.session.Session.session.msg
    - ipykernel.eventloops.loop_tk.shell_stream.session.msg
    - jupyter_client.session.Session.control_stream.io_loop.add_callback
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session._at_shutdown
    - inspect.isawaitable
    - tornado.ioloop.IOLoop.add_callback
    - jupyter_client.session.Session.log.debug
    - queue.Queue.io_loop.add_callback
    - jupyter_client.session.Session.background_socket.io_loop.add_callback
    - traitlets.traitlets.Instance.io_loop.add_callback
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.do_shutdown
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.eventloops.loop_tk.shell_stream.session.msg
    functionSourceFile: ipykernel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.session.msg
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._at_shutdown
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.control_stream.io_loop.add_callback
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Instance.io_loop.add_callback
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Instance.io_loop.add_callback
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.shell_stream.io_loop.add_callback
    functionSourceFile: jupyter_client
    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
    - restart
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1107
    functionName: ipykernel.kernelbase.Kernel.do_shutdown
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1113
    functionName: ipykernel.kernelbase.Kernel.is_complete_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - math.isinf
    - math.isnan
    - <builtin>.type
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - ipykernel.jsonutil.json_clean
    - <builtin>.int
    - _AWAITABLE_MESSAGE.format
    - <builtin>.float
    - binascii.b2a_base64
    - <builtin>.hasattr
    - jupyter_client.session.Session.log.debug
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - <builtin>.str
    - inspect.isawaitable
    - <builtin>.map
    - jupyter_client.session.Session.do_is_complete
    - jupyter_client.session.Session.session.send
    - obj.strftime
    - <builtin>.set
    - <builtin>.len
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.do_is_complete
    functionSourceFile: jupyter_client
    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
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1133
    functionName: ipykernel.kernelbase.Kernel.do_is_complete
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1137
    functionName: ipykernel.kernelbase.Kernel.debug_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - math.isinf
    - math.isnan
    - <builtin>.type
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - ipykernel.jsonutil.json_clean
    - jupyter_client.session.Session.do_debug_request
    - <builtin>.int
    - _AWAITABLE_MESSAGE.format
    - <builtin>.float
    - binascii.b2a_base64
    - <builtin>.hasattr
    - jupyter_client.session.Session.log.debug
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - <builtin>.str
    - inspect.isawaitable
    - <builtin>.map
    - jupyter_client.session.Session.session.send
    - obj.strftime
    - <builtin>.set
    - <builtin>.len
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.do_debug_request
    functionSourceFile: jupyter_client
    functionUses: 1
    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 0x7fbcef5f1280>
    argNames:
    - self
    - process
    - name
    - attribute
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1157
    functionName: ipykernel.kernelbase.Kernel.get_process_metric_value
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1170
    functionName: ipykernel.kernelbase.Kernel.usage_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.get_process_metric_value
    - psutil.cpu_count
    - <builtin>.dict
    - <builtin>.sum
    - current_process.children
    - psutil.virtual_memory
    - jupyter_client.session.Session.processes.values
    - jupyter_client.session.Session.session.send
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - <builtin>.hasattr
    - socket.gethostname
    - jupyter_client.session.Session.log.debug
    - psutil.cpu_percent
    - psutil.Process
    - os.getpid
    - current_process.memory_full_info
    - jupyter_client.session.Session.processes.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: socket.gethostname
    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: psutil.Process
    functionSourceFile: psutil
    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: current_process.children
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.processes.get
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.get_process_metric_value
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.processes.values
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_process.memory_full_info
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: psutil.cpu_percent
    functionSourceFile: psutil
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: psutil.cpu_count
    functionSourceFile: psutil
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: psutil.virtual_memory
    functionSourceFile: psutil
    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
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1206
    functionName: ipykernel.kernelbase.Kernel.do_debug_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - socket
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1209
    functionName: ipykernel.kernelbase.Kernel.create_subshell_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - threading.current_thread
    - jupyter_client.session.Session.log.error
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - jupyter_client.session.Session.session.send
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    functionSourceFile: jupyter_client
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - socket
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1229
    functionName: ipykernel.kernelbase.Kernel.delete_subshell_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - threading.current_thread
    - jupyter_client.session.Session.log.error
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - jupyter_client.session.Session.session.send
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - socket
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1257
    functionName: ipykernel.kernelbase.Kernel.list_subshell_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - threading.current_thread
    - jupyter_client.session.Session.log.error
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - jupyter_client.session.Session.session.send
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1290
    functionName: ipykernel.kernelbase.Kernel._post_dummy_stop_aborting_message
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - traitlets.config.configurable.SingletonConfigurable.manager.get_shell_channel_to_subshell_socket
    - IPython.core.interactiveshell.InteractiveShell.manager.get_shell_channel_to_subshell_socket
    - jupyter_client.session.Session.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    - traitlets.traitlets.Any.manager.get_shell_channel_to_subshell_socket
    - socket.send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.send
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fbceef3f0d0>
    argNames:
    - self
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1301
    functionName: ipykernel.kernelbase.Kernel._abort_queues
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.eventloop._schedule_exit
    - tornado.ioloop.IOLoop.call_later
    - jupyter_client.session.Session.shell_stream.flush
    - jupyter_client.session.Session.background_socket.io_loop.call_later
    - jupyter_client.session.Session.shell_channel_thread.manager.set_subshell_aborting
    - jupyter_client.session.Session.shell_channel_thread.io_loop.add_callback
    - <builtin>.hasattr
    - queue.Queue.io_loop.call_later
    - tornado.ioloop.IOLoop.add_callback
    - queue.Queue.io_loop.add_callback
    - jupyter_client.session.Session.background_socket.io_loop.add_callback
    - jupyter_client.session.Session.log.info
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.shell_channel_thread.manager.set_subshell_aborting
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.shell_channel_thread.io_loop.add_callback
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.shell_stream.flush
    functionSourceFile: jupyter_client
    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: 1
    functionLinenumber: 1325
    functionName: ipykernel.kernelbase.Kernel._abort_queues.stop_aborting
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.log.info
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.eventloop._schedule_exit
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - msg
    - idents
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1342
    functionName: ipykernel.kernelbase.Kernel._send_abort_reply
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - md.update
    - jupyter_client.session.Session.init_metadata
    - jupyter_client.session.Session.session.send
    - jupyter_client.session.Session.finish_metadata
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session.log.info
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 1362
    functionName: ipykernel.kernelbase.Kernel._no_raw_input
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - StdinNotImplementedError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fbceebe81c0>
    - <ast.Constant object at 0x7fbceebe85e0>
    argNames:
    - self
    - prompt
    - stream
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1368
    functionName: ipykernel.kernelbase.Kernel.getpass
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.get_parent
    - jupyter_client.session.Session._get_shell_context_var
    - warnings.warn
    - jupyter_client.session.Session._input_request
    linkageType: pythonLinkage
    raised:
    - StdinNotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._input_request
    functionSourceFile: jupyter_client
    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 0x7fbcec2ca670>
    argNames:
    - self
    - prompt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1393
    functionName: ipykernel.kernelbase.Kernel.raw_input
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.get_parent
    - jupyter_client.session.Session._get_shell_context_var
    - <builtin>.str
    - jupyter_client.session.Session._input_request
    linkageType: pythonLinkage
    raised:
    - StdinNotImplementedError
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 6
    IfCount: 6
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fbcec2cae50>
    argNames:
    - self
    - prompt
    - ident
    - parent
    - password
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1410
    functionName: ipykernel.kernelbase.Kernel._input_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.dict
    - ipykernel.eventloops.loop_tk.shell_stream.session.recv
    - math.isinf
    - math.isnan
    - jupyter_client.session.Session.session.recv
    - <builtin>.type
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - ipykernel.jsonutil.json_clean
    - jupyter_client.session.Session.log.warning
    - <builtin>.int
    - <builtin>.float
    - binascii.b2a_base64
    - <builtin>.hasattr
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - jupyter_client.session.Session.stdin_socket.recv_multipart
    - <builtin>.str
    - sys.stderr.flush
    - <builtin>.map
    - sys.stdout.flush
    - jupyter_client.session.Session.log.error
    - jupyter_client.session.Session.session.send
    - obj.strftime
    - zmq.select
    - <builtin>.set
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - KeyboardInterrupt
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.stdin_socket.recv_multipart
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.select
    functionSourceFile: zmq
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.eventloops.loop_tk.shell_stream.session.recv
    functionSourceFile: ipykernel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.session.recv
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.log.warning
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - signum
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1462
    functionName: ipykernel.kernelbase.Kernel._signal_children
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - p.send_signal
    - p.terminate
    - p.kill
    - jupyter_client.session.Session._process_children
    - signal.Signals
    - jupyter_client.session.Session.log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: signal.Signals
    functionSourceFile: signal
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._process_children
    functionSourceFile: jupyter_client
    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: p.terminate
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: p.kill
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: p.send_signal
    functionSourceFile: <builtin>
    functionUses: 1
    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: 1482
    functionName: ipykernel.kernelbase.Kernel._process_children
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - os.getpgid
    - process_group_children.append
    - os.getpgrp
    - psutil.Process
    - kernel_process.children
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kernel_process.children
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.getpgrp
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: process_group_children.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1505
    functionName: ipykernel.kernelbase.Kernel._progressively_terminate_all_children
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.log.debug
    - jupyter_client.session.Session._signal_children
    - asyncio.sleep
    - jupyter_client.session.Session._process_children
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._signal_children
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1526
    functionName: ipykernel.kernelbase.Kernel._at_shutdown
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.session.send
    - jupyter_client.session.Session._topic
    - ipykernel.eventloops.loop_tk.shell_stream.session.send
    - jupyter_client.session.Session.log.debug
    - jupyter_client.session.Session.control_stream.flush
    - jupyter_client.session.Session.log.exception
    - jupyter_client.session.Session._progressively_terminate_all_children
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._progressively_terminate_all_children
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.log.exception
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.control_stream.flush
    functionSourceFile: jupyter_client
    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: 1545
    functionName: ipykernel.kernelbase.Kernel._supports_kernel_subshells
    functionSourceFile: ipykernel.kernelbase
    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: ipykernel.utils
    functionSourceFile: ipykernel.utils
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: ipykernel.utils.LazyDict.__getitem__
    functionSourceFile: ipykernel.utils
    functionUses: 0
    functionsReached:
    - <builtin>.callable
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 32
    functionName: ipykernel.utils.LazyDict.__len__
    functionSourceFile: ipykernel.utils
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: ipykernel.utils.LazyDict.__iter__
    functionSourceFile: ipykernel.utils
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.iter
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.wraps
    functionSourceFile: functools
    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:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: ipykernel.utils._async_in_context.run_in_context
    functionSourceFile: ipykernel.utils
    functionUses: 0
    functionsReached:
    - asyncio.create_task
    - functools.partial
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.create_task
    functionSourceFile: asyncio
    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:
    - f
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: ipykernel.utils._async_in_context.preserve_context
    functionSourceFile: ipykernel.utils
    functionUses: 1
    functionsReached:
    - contextvars.copy_context
    - functools.partial
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    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: 2
    functionLinenumber: 77
    functionName: ipykernel.utils._async_in_context.run_in_context_pre311
    functionSourceFile: ipykernel.utils
    functionUses: 0
    functionsReached:
    - contextvars.copy_context
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - contextvars.copy_context.run
    - ipykernel.utils._async_in_context.preserve_context
    - functools.partial
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.copy_context.run
    functionSourceFile: contextvars
    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: 1
    functionLinenumber: -1
    functionName: ipykernel.debugger
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - co_filename
    - co_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 52
    functionName: ipykernel.debugger._FakeCode.__init__
    functionSourceFile: ipykernel.debugger
    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
    - f_code
    - f_globals
    - f_locals
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: ipykernel.debugger._FakeFrame.__init__
    functionSourceFile: ipykernel.debugger
    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: 72
    functionName: ipykernel.debugger._DummyPyDB.__init__
    functionSourceFile: ipykernel.debugger
    functionUses: 3
    functionsReached:
    - _pydevd_bundle.pydevd_api.PyDevdAPI.VariablePresentation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _pydevd_bundle.pydevd_api.PyDevdAPI.VariablePresentation
    functionSourceFile: _pydevd_bundle
    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: 2
    functionLinenumber: 82
    functionName: ipykernel.debugger.VariableExplorer.__init__
    functionSourceFile: ipykernel.debugger
    functionUses: 2
    functionsReached:
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker
    - _pydevd_bundle.pydevd_api.PyDevdAPI.VariablePresentation
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager
    - ipykernel.debugger._DummyPyDB.__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: _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager
    functionSourceFile: _pydevd_bundle
    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: _pydevd_bundle.pydevd_suspended_frames._FramesTracker
    functionSourceFile: _pydevd_bundle
    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: 4
    functionLinenumber: 89
    functionName: ipykernel.debugger.VariableExplorer.track
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    functionsReached:
    - os.getpid
    - IPython.core.getipython.get_ipython
    - ipykernel.debugger._FakeFrame.__init__
    - str.encode
    - _pydevd_bundle.pydevd_frame_utils.create_frames_list_from_frame
    - ipykernel.debugger._FakeCode.__init__
    - tempfile.gettempdir
    - <builtin>.len
    - ctypes.create_unicode_buffer
    - ipykernel.compiler._convert_to_long_pathname
    - ipykernel.compiler.murmur2_x86
    - <builtin>.str
    - <builtin>.chr
    - <builtin>.ord
    - ipykernel.compiler.get_tmp_directory
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker.track
    - ipykernel.compiler.get_tmp_hash_seed
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler.get_file_name
    - os.environ.get
    - <builtin>.range
    - ipykernel.compiler.<lambda1>
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.getipython.get_ipython
    functionSourceFile: IPython
    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:
    - code
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 87
    functionName: ipykernel.compiler.get_file_name
    functionSourceFile: ipykernel.compiler
    functionUses: 4
    functionsReached:
    - ipykernel.compiler.murmur2_x86
    - ipykernel.compiler.get_tmp_directory
    - ctypes.create_unicode_buffer
    - tempfile.gettempdir
    - ipykernel.compiler.get_tmp_hash_seed
    - <builtin>.len
    - <builtin>.str
    - <builtin>.range
    - os.environ.get
    - os.getpid
    - <builtin>.chr
    - ipykernel.compiler.<lambda1>
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler._convert_to_long_pathname
    - <builtin>.ord
    - str.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: _pydevd_bundle.pydevd_frame_utils.create_frames_list_from_frame
    functionSourceFile: _pydevd_bundle
    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: _pydevd_bundle.pydevd_suspended_frames._FramesTracker.track
    functionSourceFile: _pydevd_bundle
    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: 95
    functionName: ipykernel.debugger.VariableExplorer.untrack_all
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    functionsReached:
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker.untrack_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _pydevd_bundle.pydevd_suspended_frames._FramesTracker.untrack_all
    functionSourceFile: _pydevd_bundle
    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 0x7fbceecd3070>
    argNames:
    - self
    - variable_ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 99
    functionName: ipykernel.debugger.VariableExplorer.get_children_variables
    functionSourceFile: ipykernel.debugger
    functionUses: 2
    functionsReached:
    - variables.get_children_variables
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager.get_variable
    - <builtin>.id
    - x.get_var_data
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager.get_variable
    functionSourceFile: _pydevd_bundle
    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.get_var_data
    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: variables.get_children_variables
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_callback
    - log
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 116
    functionName: ipykernel.debugger.DebugpyMessageQueue.__init__
    functionSourceFile: ipykernel.debugger
    functionUses: 2
    functionsReached:
    - tornado.queues.Queue
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 124
    functionName: ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tornado.queues.Queue
    functionSourceFile: tornado
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 7
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - raw_msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 130
    functionName: ipykernel.debugger.DebugpyMessageQueue._put_message
    functionSourceFile: ipykernel.debugger
    functionUses: 2
    functionsReached:
    - zmq.utils.jsonapi.loads
    - typing.cast
    - tornado.locks.Event.set
    - <builtin>.set
    - ipykernel.debugger.DebugpyClient._forward_event
    - ipykernel.debugger.Debugger._handle_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: zmq.utils.jsonapi.loads
    functionSourceFile: zmq
    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
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 214
    functionName: ipykernel.debugger.DebugpyClient._forward_event
    functionSourceFile: ipykernel.debugger
    functionUses: 3
    functionsReached:
    - tornado.locks.Event.set
    - <builtin>.set
    - ipykernel.debugger.Debugger._handle_event
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 11
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - frame
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 142
    functionName: ipykernel.debugger.DebugpyMessageQueue.put_tcp_frame
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    functionsReached:
    - zmq.utils.jsonapi.loads
    - <builtin>.int
    - ipykernel.debugger.DebugpyMessageQueue._put_message
    - typing.cast
    - tornado.locks.Event.set
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - <builtin>.set
    - <builtin>.len
    - ipykernel.debugger.DebugpyClient._forward_event
    - ipykernel.debugger.Debugger._handle_event
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 189
    functionName: ipykernel.debugger.DebugpyMessageQueue.get_message
    functionSourceFile: ipykernel.debugger
    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
    - log
    - debugpy_stream
    - event_callback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 197
    functionName: ipykernel.debugger.DebugpyClient.__init__
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    functionsReached:
    - tornado.queues.Queue
    - tornado.locks.Event
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - ipykernel.debugger.DebugpyMessageQueue.__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: tornado.locks.Event
    functionSourceFile: tornado
    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: 2
    functionLinenumber: 210
    functionName: ipykernel.debugger.DebugpyClient._get_endpoint
    functionSourceFile: ipykernel.debugger
    functionUses: 5
    functionsReached:
    - ipykernel.debugger.DebugpyClient.get_host_port
    - socket.getsockopt
    - socket.unbind
    - socket.bind_to_random_port
    - <builtin>.str
    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: 1
    functionLinenumber: 263
    functionName: ipykernel.debugger.DebugpyClient.get_host_port
    functionSourceFile: ipykernel.debugger
    functionUses: 7
    functionsReached:
    - socket.bind_to_random_port
    - socket.unbind
    - socket.getsockopt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tornado.locks.Event.set
    functionSourceFile: tornado
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 371
    functionName: ipykernel.debugger.Debugger._handle_event
    functionSourceFile: ipykernel.debugger
    functionUses: 4
    functionsReached:
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 220
    functionName: ipykernel.debugger.DebugpyClient._send_request
    functionSourceFile: ipykernel.debugger
    functionUses: 11
    functionsReached:
    - zmq.utils.jsonapi.dumps
    - <builtin>.str
    - <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: zmq.utils.jsonapi.dumps
    functionSourceFile: zmq
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 239
    functionName: ipykernel.debugger.DebugpyClient._wait_for_response
    functionSourceFile: ipykernel.debugger
    functionUses: 11
    functionsReached:
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 245
    functionName: ipykernel.debugger.DebugpyClient._handle_init_sequence
    functionSourceFile: ipykernel.debugger
    functionUses: 10
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - <builtin>.str
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tornado.locks.Event.wait
    functionSourceFile: tornado
    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: socket.bind_to_random_port
    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: socket.getsockopt
    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: socket.unbind
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 274
    functionName: ipykernel.debugger.DebugpyClient.connect_tcp_socket
    functionSourceFile: ipykernel.debugger
    functionUses: 2
    functionsReached:
    - ipykernel.debugger.DebugpyClient.get_host_port
    - ipykernel.debugger.DebugpyClient._get_endpoint
    - socket.getsockopt
    - socket.unbind
    - socket.bind_to_random_port
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 279
    functionName: ipykernel.debugger.DebugpyClient.disconnect_tcp_socket
    functionSourceFile: ipykernel.debugger
    functionUses: 2
    functionsReached:
    - ipykernel.debugger.DebugpyClient.get_host_port
    - ipykernel.debugger.DebugpyClient._get_endpoint
    - socket.getsockopt
    - tornado.locks.Event
    - socket.unbind
    - socket.bind_to_random_port
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - frame
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 287
    functionName: ipykernel.debugger.DebugpyClient.receive_dap_frame
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - zmq.utils.jsonapi.loads
    - <builtin>.int
    - ipykernel.debugger.DebugpyMessageQueue._put_message
    - typing.cast
    - tornado.locks.Event.set
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - <builtin>.set
    - <builtin>.len
    - ipykernel.debugger.DebugpyClient._forward_event
    - ipykernel.debugger.Debugger._handle_event
    - ipykernel.debugger.DebugpyMessageQueue.put_tcp_frame
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 291
    functionName: ipykernel.debugger.DebugpyClient.send_dap_request
    functionSourceFile: ipykernel.debugger
    functionUses: 9
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fbceef3f2e0>
    - <ast.Constant object at 0x7fbceef3f4f0>
    argNames:
    - self
    - log
    - debugpy_stream
    - event_callback
    - shell_socket
    - session
    - kernel_modules
    - just_my_code
    - filter_internal_frames
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 328
    functionName: ipykernel.debugger.Debugger.__init__
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - ipykernel.debugger.DebugpyMessageQueue.__init__
    - ipykernel.debugger.DebugpyClient.__init__
    - tornado.queues.Queue
    - tornado.locks.Event
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker
    - _pydevd_bundle.pydevd_api.PyDevdAPI.VariablePresentation
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - <builtin>.set
    - ipykernel.debugger.VariableExplorer.__init__
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager
    - ipykernel.debugger._DummyPyDB.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 388
    functionName: ipykernel.debugger.Debugger._forward_message
    functionSourceFile: ipykernel.debugger
    functionUses: 8
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - variables
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 391
    functionName: ipykernel.debugger.Debugger._build_variables_response
    functionSourceFile: ipykernel.debugger
    functionUses: 2
    functionsReached:
    - re.search
    - ipykernel.debugger.Debugger.accept_variable
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - variable_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 513
    functionName: ipykernel.debugger.Debugger.accept_variable
    functionSourceFile: ipykernel.debugger
    functionUses: 3
    functionsReached:
    - re.search
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - thread_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 402
    functionName: ipykernel.debugger.Debugger._accept_stopped_thread
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    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: 5
    functionLinenumber: 408
    functionName: ipykernel.debugger.Debugger.handle_stopped_event
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - ipykernel.debugger.Debugger._forward_message
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.Debugger._accept_stopped_thread
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 421
    functionName: ipykernel.debugger.Debugger.tcp_client
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached: []
    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: 3
    functionLinenumber: 424
    functionName: ipykernel.debugger.Debugger.start
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    functionsReached:
    - ipykernel.debugger.DebugpyClient._get_endpoint
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.pop
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.index
    - socket.bind_to_random_port
    - IPython.core.getipython.get_ipython
    - tempfile.gettempdir
    - socket.getsockopt
    - pathlib.Path.mkdir
    - ctypes.create_unicode_buffer
    - ipykernel.compiler._convert_to_long_pathname
    - socket.unbind
    - pathlib.Path
    - <builtin>.str
    - ipykernel.debugger.DebugpyClient.connect_tcp_socket
    - ipykernel.compiler.get_tmp_directory
    - pathlib.Path.exists
    - ipykernel.debugger.DebugpyClient.get_host_port
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler.<lambda1>
    - os.getpid
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 75
    functionName: ipykernel.compiler.get_tmp_directory
    functionSourceFile: ipykernel.compiler
    functionUses: 7
    functionsReached:
    - tempfile.gettempdir
    - ctypes.windll.kernel32.GetLongPathNameW
    - <builtin>.str
    - ipykernel.compiler.<lambda1>
    - os.getpid
    - ctypes.create_unicode_buffer
    - ipykernel.compiler._convert_to_long_pathname
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path.mkdir
    functionSourceFile: pathlib
    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: IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.index
    functionSourceFile: IPython
    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: IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.pop
    functionSourceFile: IPython
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 454
    functionName: ipykernel.debugger.Debugger.stop
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    functionsReached:
    - ipykernel.debugger.DebugpyClient.disconnect_tcp_socket
    - ipykernel.debugger.DebugpyClient._get_endpoint
    - ipykernel.debugger.DebugpyClient.get_host_port
    - socket.getsockopt
    - tornado.locks.Event
    - <builtin>.sorted
    - socket.unbind
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.insert
    - <builtin>.str
    - socket.bind_to_random_port
    - IPython.core.getipython.get_ipython
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.insert
    functionSourceFile: IPython
    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
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 464
    functionName: ipykernel.debugger.Debugger.dumpCell
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - os.getpid
    - str.encode
    - tempfile.gettempdir
    - ctypes.create_unicode_buffer
    - ipykernel.compiler._convert_to_long_pathname
    - ipykernel.compiler.murmur2_x86
    - <builtin>.str
    - <builtin>.chr
    - <builtin>.range
    - <builtin>.open
    - <builtin>.ord
    - ipykernel.compiler.get_tmp_directory
    - ipykernel.compiler.get_tmp_hash_seed
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler.get_file_name
    - os.environ.get
    - <builtin>.len
    - f.write
    - ipykernel.compiler.<lambda1>
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f.write
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 480
    functionName: ipykernel.debugger.Debugger.setBreakpoints
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - ipykernel.debugger.Debugger._forward_message
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - message_response.get
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_response.get
    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
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 494
    functionName: ipykernel.debugger.Debugger.source
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - pathlib.Path
    - f.read
    - pathlib.Path.is_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path.is_file
    functionSourceFile: pathlib
    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
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 509
    functionName: ipykernel.debugger.Debugger.stackTrace
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - ipykernel.debugger.Debugger._forward_message
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.search
    functionSourceFile: re
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bool
    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:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 542
    functionName: ipykernel.debugger.Debugger.variables
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - tornado.locks.Event.wait
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.VariableExplorer.get_children_variables
    - re.search
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager.get_variable
    - variables.get_children_variables
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.Debugger.accept_variable
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - <builtin>.id
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - ipykernel.debugger.Debugger._forward_message
    - ipykernel.debugger.Debugger._build_variables_response
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - x.get_var_data
    - <builtin>.bool
    - <builtin>.len
    - ipykernel.debugger.DebugpyClient._send_request
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 558
    functionName: ipykernel.debugger.Debugger.attach
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.get_host_port
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - socket.getsockopt
    - ipykernel.debugger.Debugger._forward_message
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - socket.unbind
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - socket.bind_to_random_port
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 577
    functionName: ipykernel.debugger.Debugger.configurationDone
    functionSourceFile: ipykernel.debugger
    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
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 587
    functionName: ipykernel.debugger.Debugger.debugInfo
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - breakpoint_list.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: breakpoint_list.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: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 611
    functionName: ipykernel.debugger.Debugger.inspectVariables
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker
    - IPython.core.getipython.get_ipython
    - ipykernel.debugger._FakeFrame.__init__
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager
    - str.encode
    - _pydevd_bundle.pydevd_frame_utils.create_frames_list_from_frame
    - ipykernel.debugger._FakeCode.__init__
    - tempfile.gettempdir
    - <builtin>.len
    - ipykernel.debugger.VariableExplorer.get_children_variables
    - re.search
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager.get_variable
    - variables.get_children_variables
    - ctypes.create_unicode_buffer
    - ipykernel.compiler._convert_to_long_pathname
    - ipykernel.debugger.Debugger.accept_variable
    - ipykernel.compiler.murmur2_x86
    - <builtin>.id
    - ipykernel.debugger.VariableExplorer.track
    - ipykernel.debugger.Debugger._build_variables_response
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker.untrack_all
    - ipykernel.debugger.VariableExplorer.untrack_all
    - <builtin>.str
    - <builtin>.chr
    - <builtin>.range
    - <builtin>.ord
    - ipykernel.debugger._DummyPyDB.__init__
    - x.get_var_data
    - ipykernel.compiler.get_tmp_directory
    - <builtin>.bool
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker.track
    - _pydevd_bundle.pydevd_api.PyDevdAPI.VariablePresentation
    - ipykernel.compiler.get_tmp_hash_seed
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler.get_file_name
    - os.environ.get
    - os.getpid
    - ipykernel.compiler.<lambda1>
    - ipykernel.debugger.VariableExplorer.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 622
    functionName: ipykernel.debugger.Debugger.richInspectVariables
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - result.get
    - str.isidentifier
    - ipykernel.debugger.Debugger._forward_message
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - <builtin>.eval
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - IPython.core.getipython.get_ipython
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - IPython.core.getipython.get_ipython.user_expressions
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.isidentifier
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.getipython.get_ipython.user_expressions
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.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: <builtin>.eval
    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
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 674
    functionName: ipykernel.debugger.Debugger.copyToGlobals
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - tornado.locks.Event.wait
    - ipykernel.debugger.Debugger._forward_message
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 694
    functionName: ipykernel.debugger.Debugger.modules
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - mods.append
    - <builtin>.getattr
    - filename.endswith
    - message.get
    - <builtin>.len
    - sys.modules.values
    - <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: message.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: filename.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: mods.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 708
    functionName: ipykernel.debugger.Debugger.process_request
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - ipykernel.debugger.DebugpyClient._get_endpoint
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.pop
    - tornado.locks.Event.wait
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.index
    - os.getpid
    - socket.bind_to_random_port
    - IPython.core.getipython.get_ipython
    - <builtin>.int
    - tempfile.gettempdir
    - socket.getsockopt
    - tornado.locks.Event
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - <builtin>.len
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.insert
    - pathlib.Path.mkdir
    - zmq.utils.jsonapi.dumps
    - ctypes.create_unicode_buffer
    - ipykernel.compiler._convert_to_long_pathname
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient.disconnect_tcp_socket
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.sorted
    - ipykernel.debugger.Debugger._forward_message
    - socket.unbind
    - ipykernel.debugger.Debugger.stop
    - pathlib.Path
    - <builtin>.str
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - ipykernel.debugger.DebugpyClient.connect_tcp_socket
    - ipykernel.compiler.get_tmp_directory
    - pathlib.Path.exists
    - ipykernel.debugger.DebugpyClient.get_host_port
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.debugger.Debugger.start
    - <builtin>.set
    - ipykernel.compiler.<lambda1>
    - ipykernel.debugger.DebugpyClient._send_request
    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: 2
    functionLinenumber: -1
    functionName: ipykernel.compiler
    functionSourceFile: ipykernel.compiler
    functionUses: 0
    functionsReached:
    - ctypes.create_unicode_buffer
    - ipykernel.compiler._convert_to_long_pathname
    - ctypes.windll.kernel32.GetLongPathNameW
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - data
    - seed
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 10
    functionName: ipykernel.compiler.murmur2_x86
    functionSourceFile: ipykernel.compiler
    functionUses: 5
    functionsReached:
    - <builtin>.len
    - <builtin>.chr
    - <builtin>.range
    - <builtin>.ord
    - str.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: <builtin>.chr
    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: str.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>.ord
    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: ipykernel.compiler.<lambda1>
    functionSourceFile: ipykernel.compiler
    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:
    - filename
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: ipykernel.compiler._convert_to_long_pathname
    functionSourceFile: ipykernel.compiler
    functionUses: 9
    functionsReached:
    - ctypes.create_unicode_buffer
    - ctypes.windll.kernel32.GetLongPathNameW
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_unicode_buffer
    functionSourceFile: ctypes
    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: ctypes.windll.kernel32.GetLongPathNameW
    functionSourceFile: ctypes
    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: tempfile.gettempdir
    functionSourceFile: tempfile
    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: 82
    functionName: ipykernel.compiler.get_tmp_hash_seed
    functionSourceFile: ipykernel.compiler
    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
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 99
    functionName: ipykernel.compiler.XCachingCompiler.__init__
    functionSourceFile: ipykernel.compiler
    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
    - raw_code
    - code
    - number
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 104
    functionName: ipykernel.compiler.XCachingCompiler.get_code_name
    functionSourceFile: ipykernel.compiler
    functionUses: 0
    functionsReached:
    - ipykernel.compiler.murmur2_x86
    - ipykernel.compiler.get_tmp_directory
    - ctypes.create_unicode_buffer
    - tempfile.gettempdir
    - ipykernel.compiler.get_tmp_hash_seed
    - <builtin>.len
    - <builtin>.str
    - ipykernel.compiler.get_file_name
    - <builtin>.range
    - os.getpid
    - os.environ.get
    - <builtin>.chr
    - ipykernel.compiler.<lambda1>
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler._convert_to_long_pathname
    - <builtin>.ord
    - str.encode
    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: ipykernel.shellchannel
    functionSourceFile: ipykernel.shellchannel
    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: 3
    functionLinenumber: 38
    functionName: ipykernel.shellchannel.ShellChannelThread.manager
    functionSourceFile: ipykernel.shellchannel
    functionUses: 0
    functionsReached:
    - threading.current_thread
    - ipykernel.socket_pair.SocketPair.__init__
    - ipykernel.subshell_manager.SubshellManager.__init__
    - threading.Lock
    - ipykernel.socket_pair.SocketPair._address
    - jupyter_client.session.Session
    - context.socket
    - ipykernel.socket_pair.SocketPair.on_recv
    - jupyter_client.session.Session.on_recv
    - jupyter_client.session.Session.connect
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - context
    - shell_channel_io_loop
    - shell_socket
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 38
    functionName: ipykernel.subshell_manager.SubshellManager.__init__
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - threading.current_thread
    - ipykernel.socket_pair.SocketPair.__init__
    - ipykernel.socket_pair.SocketPair._address
    - threading.Lock
    - jupyter_client.session.Session
    - context.socket
    - ipykernel.socket_pair.SocketPair.on_recv
    - jupyter_client.session.Session.on_recv
    - jupyter_client.session.Session.connect
    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: 3
    functionLinenumber: 49
    functionName: ipykernel.shellchannel.ShellChannelThread.run
    functionSourceFile: ipykernel.shellchannel
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - subshell_thread.is_alive
    - ipykernel.subshell_manager.SubshellManager.close
    - threading.current_thread
    - ipykernel.socket_pair.SocketPair.close
    - ipykernel.subshell_manager.SubshellManager._stop_subshell
    - subshell_thread.join
    - jupyter_client.session.Session.close
    - subshell_thread.stop
    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: 71
    functionName: ipykernel.subshell_manager.SubshellManager.close
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - subshell_thread.is_alive
    - threading.current_thread
    - ipykernel.socket_pair.SocketPair.close
    - ipykernel.subshell_manager.SubshellManager._stop_subshell
    - subshell_thread.join
    - jupyter_client.session.Session.close
    - subshell_thread.stop
    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: ipykernel.subshell_manager
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - context
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: ipykernel.socket_pair.SocketPair.__init__
    functionSourceFile: ipykernel.socket_pair
    functionUses: 5
    functionsReached:
    - ipykernel.socket_pair.SocketPair._address
    - context.socket
    - jupyter_client.session.Session.connect
    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 0x7fbceec36f40>
    argNames:
    - self
    - io_loop
    - on_recv_callback
    - copy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: ipykernel.socket_pair.SocketPair.on_recv
    functionSourceFile: ipykernel.socket_pair
    functionUses: 5
    functionsReached:
    - jupyter_client.session.Session
    - jupyter_client.session.Session.on_recv
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - subshell_thread
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 230
    functionName: ipykernel.subshell_manager.SubshellManager._stop_subshell
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 4
    functionsReached:
    - subshell_thread.is_alive
    - subshell_thread.stop
    - subshell_thread.join
    - threading.current_thread
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: ipykernel.socket_pair.SocketPair.close
    functionSourceFile: ipykernel.socket_pair
    functionUses: 3
    functionsReached:
    - jupyter_client.session.Session.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 86
    functionName: ipykernel.subshell_manager.SubshellManager.get_shell_channel_to_subshell_pair
    functionSourceFile: ipykernel.subshell_manager
    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
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 94
    functionName: ipykernel.subshell_manager.SubshellManager.get_subshell_to_shell_channel_socket
    functionSourceFile: ipykernel.subshell_manager
    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
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: ipykernel.subshell_manager.SubshellManager.get_shell_channel_to_subshell_socket
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached:
    - ipykernel.subshell_manager.SubshellManager.get_shell_channel_to_subshell_pair
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 109
    functionName: ipykernel.subshell_manager.SubshellManager.get_subshell_aborting
    functionSourceFile: ipykernel.subshell_manager
    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
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 114
    functionName: ipykernel.subshell_manager.SubshellManager.get_subshell_asyncio_lock
    functionSourceFile: ipykernel.subshell_manager
    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: 119
    functionName: ipykernel.subshell_manager.SubshellManager.list_subshell
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - on_recv_callback
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 127
    functionName: ipykernel.subshell_manager.SubshellManager.set_on_recv_callback
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached:
    - queue.Queue.io_loop.current
    - functools.wraps
    - threading.current_thread
    - contextvars.copy_context
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - jupyter_client.session.Session
    - tornado.ioloop.IOLoop.current
    - jupyter_client.session.Session.background_socket.io_loop.current
    - ipykernel.socket_pair.SocketPair.on_recv
    - functools.partial
    - jupyter_client.session.Session.on_recv
    - ipykernel.utils._async_in_context
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - subshell_id
    - aborting
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 137
    functionName: ipykernel.subshell_manager.SubshellManager.set_subshell_aborting
    functionSourceFile: ipykernel.subshell_manager
    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
    - thread_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 142
    functionName: ipykernel.subshell_manager.SubshellManager.subshell_id_from_thread_id
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 158
    functionName: ipykernel.subshell_manager.SubshellManager._create_subshell
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - threading.current_thread
    - ipykernel.socket_pair.SocketPair.__init__
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - ipykernel.socket_pair.SocketPair._address
    - jupyter_client.session.Session
    - functools.wraps
    - ipykernel.subshell.SubshellThread.__init__
    - functools.partial
    - jupyter_client.session.Session.connect
    - <builtin>.super
    - context.socket
    - jupyter_client.session.Session.on_recv
    - uuid.uuid4
    - ipykernel.utils._async_in_context
    - asyncio.Lock
    - <builtin>.str
    - contextvars.copy_context
    - threading.Thread.start
    - ipykernel.socket_pair.SocketPair.on_recv
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - subshell_id
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 18
    functionName: ipykernel.subshell.SubshellThread.__init__
    functionSourceFile: ipykernel.subshell
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - ipykernel.socket_pair.SocketPair.__init__
    - asyncio.Lock
    - context.socket
    - ipykernel.socket_pair.SocketPair._address
    - jupyter_client.session.Session.connect
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 181
    functionName: ipykernel.subshell_manager.SubshellManager._delete_subshell
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - subshell_thread.is_alive
    - threading.current_thread
    - ipykernel.subshell_manager.SubshellManager._stop_subshell
    - subshell_thread.join
    - subshell_thread.stop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 193
    functionName: ipykernel.subshell_manager.SubshellManager._process_control_request
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - threading.current_thread
    - ipykernel.socket_pair.SocketPair.__init__
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_main
    - ipykernel.socket_pair.SocketPair._address
    - jupyter_client.session.Session
    - ipykernel.subshell.SubshellThread.__init__
    - functools.partial
    - functools.wraps
    - jupyter_client.session.Session.connect
    - <builtin>.super
    - subshell_thread.is_alive
    - ipykernel.subshell_manager.SubshellManager.list_subshell
    - ipykernel.subshell_manager.SubshellManager._create_subshell
    - context.socket
    - subshell_thread.join
    - jupyter_client.session.Session.on_recv
    - subshell_thread.stop
    - ipykernel.utils._async_in_context
    - uuid.uuid4
    - ipykernel.subshell_manager.SubshellManager._stop_subshell
    - asyncio.Lock
    - jupyter_client.session.Session.send_json
    - <builtin>.str
    - json.loads
    - contextvars.copy_context
    - threading.Thread.start
    - ipykernel.subshell_manager.SubshellManager._delete_subshell
    - ipykernel.socket_pair.SocketPair.on_recv
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.send_json
    functionSourceFile: jupyter_client
    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
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 226
    functionName: ipykernel.subshell_manager.SubshellManager._send_on_shell_channel
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.send_multipart
    - threading.current_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: jupyter_client.session.Session.send_multipart
    functionSourceFile: jupyter_client
    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: subshell_thread.is_alive
    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: subshell_thread.stop
    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: subshell_thread.join
    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: ipykernel.subshell
    functionSourceFile: ipykernel.subshell
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 35
    functionName: ipykernel.subshell.SubshellThread.run
    functionSourceFile: ipykernel.subshell
    functionUses: 0
    functionsReached:
    - ipykernel.socket_pair.SocketPair.close
    - <builtin>.super
    - jupyter_client.session.Session.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: 0
    functionLinenumber: -1
    functionName: ipykernel.socket_pair
    functionSourceFile: ipykernel.socket_pair
    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: context.socket
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 48
    functionName: ipykernel.socket_pair.SocketPair._address
    functionSourceFile: ''
    functionUses: 6
    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: ipykernel.iostream
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fbcef00e100>
    argNames:
    - self
    - socket
    - pipe
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: ipykernel.iostream.IOPubThread.__init__
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._setup_event_pipe
    - jupyter_client.session.Session.background_socket.io_loop
    - threading.Lock
    - threading.local
    - collections.deque
    - os.getpid
    - jupyter_client.session.Session
    - queue.Queue.io_loop
    - tornado.ioloop.IOLoop
    - jupyter_client.session.Session._setup_pipe_in
    - 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: jupyter_client.session.Session._setup_pipe_in
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._setup_event_pipe
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: ipykernel.iostream.IOPubThread._thread_main
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - queue.Queue.io_loop.close
    - queue.Queue.io_loop.start
    - queue.Queue.io_loop.run_sync
    - jupyter_client.session.Session._event_pipe_gc_task.cancel
    - jupyter_client.session.Session.background_socket.io_loop.close
    - tornado.ioloop.IOLoop.close
    - tornado.ioloop.IOLoop.run_sync
    - jupyter_client.session.Session.background_socket.io_loop.start
    - jupyter_client.session.Session.background_socket.io_loop.run_sync
    - tornado.ioloop.IOLoop.start
    linkageType: 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: 85
    functionName: ipykernel.iostream.IOPubThread._thread_main._start_event_gc
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._run_event_pipe_gc
    - asyncio.ensure_future
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._run_event_pipe_gc
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.background_socket.io_loop.run_sync
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queue.Queue.io_loop.run_sync
    functionSourceFile: queue
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tornado.ioloop.IOLoop.run_sync
    functionSourceFile: tornado
    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: 1
    functionLinenumber: 97
    functionName: ipykernel.iostream.IOPubThread._thread_main._cancel
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._event_pipe_gc_task.cancel
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._event_pipe_gc_task.cancel
    functionSourceFile: jupyter_client
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 107
    functionName: ipykernel.iostream.IOPubThread._setup_event_pipe
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - binascii.b2a_hex.decode
    - os.urandom
    - IPython.core.interactiveshell.InteractiveShell.context.socket
    - jupyter_client.session.Session._event_puller.on_recv
    - jupyter_client.session.Session.bind
    - traitlets.Instance.context.socket
    - traitlets.config.configurable.SingletonConfigurable.context.socket
    - jupyter_client.session.Session
    - binascii.b2a_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: traitlets.Instance.context.socket
    functionSourceFile: traitlets
    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: traitlets.config.configurable.SingletonConfigurable.context.socket
    functionSourceFile: traitlets
    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: IPython.core.interactiveshell.InteractiveShell.context.socket
    functionSourceFile: IPython
    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: os.urandom
    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: binascii.b2a_hex
    functionSourceFile: binascii
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.b2a_hex.decode
    functionSourceFile: binascii
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._event_puller.on_recv
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 119
    functionName: ipykernel.iostream.IOPubThread._run_event_pipe_gc
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - asyncio.sleep
    - <builtin>.print
    - jupyter_client.session.Session._event_pipe_gc
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._event_pipe_gc
    functionSourceFile: jupyter_client
    functionUses: 1
    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: 128
    functionName: ipykernel.iostream.IOPubThread._event_pipe_gc
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - thread.is_alive
    - jupyter_client.session.Session._event_pipes.items
    - jupyter_client.session.Session.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: jupyter_client.session.Session._event_pipes.items
    functionSourceFile: jupyter_client
    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: thread.is_alive
    functionSourceFile: <builtin>
    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: 1
    functionLinenumber: 140
    functionName: ipykernel.iostream.IOPubThread._event_pipe
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - IPython.core.interactiveshell.InteractiveShell.context.socket
    - threading.current_thread
    - traitlets.Instance.context.socket
    - traitlets.config.configurable.SingletonConfigurable.context.socket
    - traitlets.traitlets.Any._local.event_pipe.connect
    - jupyter_client.session.Session._local.event_pipe.connect
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Any._local.event_pipe.connect
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._local.event_pipe.connect
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 158
    functionName: ipykernel.iostream.IOPubThread._handle_event
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._events.popleft
    - <builtin>.len
    - <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: jupyter_client.session.Session._events.popleft
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 173
    functionName: ipykernel.iostream.IOPubThread._setup_pipe_in
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - os.urandom
    - IPython.core.interactiveshell.InteractiveShell.context.socket
    - jupyter_client.session.Session.bind_to_random_port
    - jupyter_client.session.Session._pipe_in.on_recv
    - traitlets.Instance.context.socket
    - traitlets.config.configurable.SingletonConfigurable.context.socket
    - jupyter_client.session.Session.close
    - jupyter_client.session.Session
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._pipe_in.on_recv
    functionSourceFile: jupyter_client
    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
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 197
    functionName: ipykernel.iostream.IOPubThread._handle_pipe_msg
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._is_master_process
    - <builtin>.print
    - jupyter_client.session.Session.send_multipart
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._is_master_process
    functionSourceFile: jupyter_client
    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: 206
    functionName: ipykernel.iostream.IOPubThread._setup_pipe_out
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - pipe_out.connect
    - zmq.Context
    - jupyter_client.session.Session.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: pipe_out.connect
    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: 214
    functionName: ipykernel.iostream.IOPubThread._is_master_process
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - os.getpid
    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: 217
    functionName: ipykernel.iostream.IOPubThread._check_mp_mode
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._is_master_process
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 223
    functionName: ipykernel.iostream.IOPubThread.start
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - atexit.register
    - jupyter_client.session.Session.thread.start
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.thread.start
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 231
    functionName: ipykernel.iostream.IOPubThread.stop
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.thread.is_alive
    - event_pipe.close
    - jupyter_client.session.Session.thread.join
    - jupyter_client.session.Session._event_pipes.items
    - tornado.ioloop.IOLoop.add_callback
    - queue.Queue.io_loop.add_callback
    - jupyter_client.session.Session.background_socket.io_loop.add_callback
    linkageType: pythonLinkage
    raised:
    - TimeoutError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.thread.is_alive
    functionSourceFile: jupyter_client
    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: jupyter_client.session.Session.thread.join
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_pipe.close
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 249
    functionName: ipykernel.iostream.IOPubThread.close
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.socket.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: jupyter_client.session.Session.socket.close
    functionSourceFile: jupyter_client
    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: 257
    functionName: ipykernel.iostream.IOPubThread.closed
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - f
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 260
    functionName: ipykernel.iostream.IOPubThread.schedule
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - tornado.ioloop.IOLoop.call_later
    - collections.defaultdict
    - jupyter_client.session.Session._event_pipe.send
    - traitlets.traitlets.Instance.msg
    - <builtin>.hasattr
    - ipykernel.iostream.OutStream._hooks
    - queue.Queue.io_loop.call_later
    - buffer.getvalue
    - ipykernel.iostream.OutStream._flush
    - collections.defaultdict.items
    - jupyter_client.session.Session.thread.is_alive
    - ipykernel.iostream.OutStream._schedule_flush._schedule_in_thread
    - jupyter_client.session.Session._events.append
    - jupyter_client.session.Session.background_socket.io_loop.call_later
    - traitlets.traitlets.Instance.send
    - buffer.close
    - <builtin>.print
    - os.getpid
    - ipykernel.iostream.OutStream._rotate_buffers
    - ipykernel.iostream.OutStream._flush_buffers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._events.append
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._event_pipe.send
    functionSourceFile: jupyter_client
    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: 1
    functionLinenumber: 582
    functionName: ipykernel.iostream.OutStream._schedule_flush._schedule_in_thread
    functionSourceFile: ipykernel.iostream
    functionUses: 1
    functionsReached:
    - tornado.ioloop.IOLoop.call_later
    - queue.Queue.io_loop.call_later
    - jupyter_client.session.Session.background_socket.io_loop.call_later
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 611
    functionName: ipykernel.iostream.OutStream._flush
    functionSourceFile: ipykernel.iostream
    functionUses: 2
    functionsReached:
    - buffer.getvalue
    - <builtin>.dict
    - collections.defaultdict.items
    - traitlets.traitlets.Instance.msg
    - collections.defaultdict
    - traitlets.traitlets.Instance.send
    - buffer.close
    - ipykernel.iostream.OutStream._flush_buffers
    - ipykernel.iostream.OutStream._hooks
    - <builtin>.hasattr
    - os.getpid
    - ipykernel.iostream.OutStream._rotate_buffers
    - <builtin>.print
    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: 272
    functionName: ipykernel.iostream.IOPubThread.send_multipart
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.schedule
    linkageType: 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: ipykernel.iostream.IOPubThread.send_multipart.<lambda1>
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._really_send
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._really_send
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.schedule
    functionSourceFile: jupyter_client
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - msg
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 279
    functionName: ipykernel.iostream.IOPubThread._really_send
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - pipe_out.send_multipart
    - jupyter_client.session.Session._setup_pipe_out
    - pipe_out.close
    - jupyter_client.session.Session._check_mp_mode
    - jupyter_client.session.Session.socket.send_multipart
    - ctx.term
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._check_mp_mode
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.socket.send_multipart
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session._setup_pipe_out
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pipe_out.send_multipart
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pipe_out.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: ctx.term
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - io_thread
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 304
    functionName: ipykernel.iostream.BackgroundSocket.__init__
    functionSourceFile: ipykernel.iostream
    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
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 308
    functionName: ipykernel.iostream.BackgroundSocket.__getattr__
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - attr.endswith
    - <builtin>.super
    - <builtin>.getattr
    - attr.startswith
    - <builtin>.hasattr
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attr.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: attr.endswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - attr
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 325
    functionName: ipykernel.iostream.BackgroundSocket.__setattr__
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - attr.endswith
    - <builtin>.super
    - <builtin>.setattr
    - attr.startswith
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.setattr
    functionSourceFile: <builtin>
    functionUses: 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
    - msg
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 340
    functionName: ipykernel.iostream.BackgroundSocket.send
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.send_multipart
    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: 344
    functionName: ipykernel.iostream.BackgroundSocket.send_multipart
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.io_thread.send_multipart
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.io_thread.send_multipart
    functionSourceFile: jupyter_client
    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: 365
    functionName: ipykernel.iostream.OutStream.fileno
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    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: 3
    functionLinenumber: 374
    functionName: ipykernel.iostream.OutStream._watch_pipe_fd
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.schedule
    - <builtin>.isinstance
    - os.write
    - bts.decode
    - <builtin>.type
    - <builtin>.frozenset
    - ipykernel.iostream.OutStream.write
    - os.read
    - jupyter_client.session.extract_header.items
    - os.getpid
    - ipykernel.iostream.OutStream._schedule_flush
    - <builtin>.len
    - ipykernel.iostream.OutStream._is_master_process
    - <builtin>.print
    - sys.exc_info
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.read
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bts.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 6
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 650
    functionName: ipykernel.iostream.OutStream.write
    functionSourceFile: ipykernel.iostream
    functionUses: 2
    functionsReached:
    - jupyter_client.session.Session.schedule
    - <builtin>.isinstance
    - <builtin>.type
    - <builtin>.frozenset
    - jupyter_client.session.extract_header.items
    - os.getpid
    - ipykernel.iostream.OutStream._schedule_flush
    - <builtin>.len
    - ipykernel.iostream.OutStream._is_master_process
    - <builtin>.print
    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: os.write
    functionSourceFile: os
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 6
    IfCount: 7
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fbcef130700>
    - <ast.Constant object at 0x7fbcef130250>
    argNames:
    - self
    - session
    - pub_thread
    - name
    - pipe
    - echo
    - watchfd
    - isatty
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 399
    functionName: ipykernel.iostream.OutStream.__init__
    functionSourceFile: ipykernel.iostream
    functionUses: 2
    functionsReached:
    - io.TextIOWrapper
    - jupyter_client.session.Session.start
    - os.dup2
    - io.FileIO
    - ipykernel.iostream.OutStream._setup_stream_redirects
    - jupyter_client.session.Session
    - collections.defaultdict
    - <builtin>.getattr
    - sys.platform.startswith
    - threading.local
    - <builtin>.hasattr
    - os.dup
    - threading.Thread
    - contextvars.ContextVar
    - <builtin>.isinstance
    - os.pipe
    - io.TextIOBase._parent_header.set
    - <builtin>.bool
    - name.encode
    - os.getpid
    - threading.RLock
    - echo.fileno
    - warnings.warn
    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.encode
    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: io.TextIOBase._parent_header.set
    functionSourceFile: io
    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: threading.RLock
    functionSourceFile: threading
    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: collections.defaultdict
    functionSourceFile: collections
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 532
    functionName: ipykernel.iostream.OutStream._setup_stream_redirects
    functionSourceFile: ipykernel.iostream
    functionUses: 3
    functionsReached:
    - os.pipe
    - <builtin>.getattr
    - os.dup2
    - os.dup
    - 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: echo.fileno
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 520
    functionName: ipykernel.iostream.OutStream.parent_header
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - io.TextIOBase._parent_header.set
    - io.TextIOBase._parent_header.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: io.TextIOBase._parent_header.get
    functionSourceFile: io
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.iostream.OutStream
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.extract_header.setter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.extract_header.setter
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 524
    functionName: ipykernel.iostream.OutStream.isatty
    functionSourceFile: ipykernel.iostream
    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.pipe
    functionSourceFile: os
    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: os.dup
    functionSourceFile: os
    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: os.dup2
    functionSourceFile: os
    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: 545
    functionName: ipykernel.iostream.OutStream._is_master_process
    functionSourceFile: ipykernel.iostream
    functionUses: 3
    functionsReached:
    - os.getpid
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 548
    functionName: ipykernel.iostream.OutStream.set_parent
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.extract_header
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 552
    functionName: ipykernel.iostream.OutStream.close
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - os.close
    - os.dup2
    - os.write
    - traceback.print_exception
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.close
    functionSourceFile: os
    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: 569
    functionName: ipykernel.iostream.OutStream.closed
    functionSourceFile: ipykernel.iostream
    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: 572
    functionName: ipykernel.iostream.OutStream._schedule_flush
    functionSourceFile: ipykernel.iostream
    functionUses: 3
    functionsReached:
    - jupyter_client.session.Session.schedule
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 587
    functionName: ipykernel.iostream.OutStream.flush
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - threading.current_thread
    - collections.defaultdict
    - jupyter_client.session.Session.schedule
    - traitlets.traitlets.Instance.msg
    - <builtin>.hasattr
    - evt.wait
    - ipykernel.iostream.OutStream._hooks
    - buffer.getvalue
    - ipykernel.iostream.OutStream._flush
    - collections.defaultdict.items
    - jupyter_client.session.Session.thread.is_alive
    - traitlets.traitlets.Instance.send
    - buffer.close
    - <builtin>.print
    - threading.Event
    - os.getpid
    - ipykernel.iostream.OutStream._rotate_buffers
    - ipykernel.iostream.OutStream._flush_buffers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: evt.wait
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 705
    functionName: ipykernel.iostream.OutStream._flush_buffers
    functionSourceFile: ipykernel.iostream
    functionUses: 3
    functionsReached:
    - buffer.getvalue
    - <builtin>.dict
    - collections.defaultdict.items
    - collections.defaultdict
    - buffer.close
    - ipykernel.iostream.OutStream._rotate_buffers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Instance.msg
    functionSourceFile: traitlets
    functionUses: 4
    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: 721
    functionName: ipykernel.iostream.OutStream._hooks
    functionSourceFile: ipykernel.iostream
    functionUses: 3
    functionsReached:
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Instance.send
    functionSourceFile: traitlets
    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: jupyter_client.session.extract_header.items
    functionSourceFile: jupyter_client
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.frozenset
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - sequence
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 693
    functionName: ipykernel.iostream.OutStream.writelines
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.schedule
    - <builtin>.isinstance
    - <builtin>.type
    - <builtin>.frozenset
    - ipykernel.iostream.OutStream.write
    - jupyter_client.session.extract_header.items
    - os.getpid
    - ipykernel.iostream.OutStream._schedule_flush
    - <builtin>.len
    - ipykernel.iostream.OutStream._is_master_process
    - <builtin>.print
    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: 701
    functionName: ipykernel.iostream.OutStream.writable
    functionSourceFile: ipykernel.iostream
    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: 713
    functionName: ipykernel.iostream.OutStream._rotate_buffers
    functionSourceFile: ipykernel.iostream
    functionUses: 4
    functionsReached:
    - collections.defaultdict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.defaultdict.items
    functionSourceFile: collections
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: buffer.getvalue
    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: buffer.close
    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
    - hook
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 727
    functionName: ipykernel.iostream.OutStream.register_hook
    functionSourceFile: ipykernel.iostream
    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
    - hook
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 746
    functionName: ipykernel.iostream.OutStream.unregister_hook
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel._version
    functionSourceFile: ipykernel._version
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - <builtin>.int
    - re.match
    - parts.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: re.match
    functionSourceFile: re
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parts.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.tuple
    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: ipykernel.embed
    functionSourceFile: ipykernel.embed
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fbceec13880>
    - <ast.Constant object at 0x7fbceec13940>
    argNames:
    - module
    - local_ns
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 17
    functionName: ipykernel.embed.embed_kernel
    functionSourceFile: ipykernel.embed
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.isinstance
    - IPython.core.application.BaseIPythonApplication.initialized
    - app.initialize
    - IPython.core.application.BaseIPythonApplication.instance
    - app.start
    - IPython.utils.frame.extract_module_locals
    - app.shell.set_completer_frame
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.utils.frame.extract_module_locals
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: app.shell.set_completer_frame
    functionSourceFile: <builtin>
    functionUses: 1
    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: -1
    functionName: ipykernel.kernelspec
    functionSourceFile: ipykernel.kernelspec
    functionUses: 0
    functionsReached:
    - pathlib.Path
    - os.path.join
    - traitlets.config.Application.launch_instance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.join
    functionSourceFile: os
    functionUses: 4
    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 0x7fbceef25580>
    - <ast.Constant object at 0x7fbceef25ee0>
    - <ast.Constant object at 0x7fbceef250d0>
    - <ast.Constant object at 0x7fbceef25dc0>
    argNames:
    - mod
    - executable
    - extra_arguments
    - python_arguments
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 31
    functionName: ipykernel.kernelspec.make_ipkernel_cmd
    functionSourceFile: ipykernel.kernelspec
    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 0x7fbceecd3ac0>
    - <ast.Constant object at 0x7fbceecd33d0>
    argNames:
    - extra_arguments
    - python_arguments
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 59
    functionName: ipykernel.kernelspec.get_kernel_dict
    functionSourceFile: ipykernel.kernelspec
    functionUses: 3
    functionsReached:
    - ipykernel.kernelspec.make_ipkernel_cmd
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fbceecd37f0>
    - <ast.Constant object at 0x7fbceecd3e20>
    - <ast.Constant object at 0x7fbceecd3520>
    - <ast.Constant object at 0x7fbceecd3d00>
    argNames:
    - path
    - overrides
    - extra_arguments
    - python_arguments
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 73
    functionName: ipykernel.kernelspec.write_kernel_spec
    functionSourceFile: ipykernel.kernelspec
    functionUses: 2
    functionsReached:
    - pathlib.Path.stat
    - pathlib.Path.chmod
    - os.path.join
    - tempfile.mkdtemp
    - ipykernel.kernelspec.make_ipkernel_cmd
    - pathlib.Path
    - kernel_dict.update
    - <builtin>.str
    - shutil.copytree
    - json.dump
    - <builtin>.open
    - ipykernel.kernelspec.get_kernel_dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tempfile.mkdtemp
    functionSourceFile: tempfile
    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: shutil.copytree
    functionSourceFile: shutil
    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: pathlib.Path.stat
    functionSourceFile: pathlib
    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: pathlib.Path.chmod
    functionSourceFile: pathlib
    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: kernel_dict.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: json.dump
    functionSourceFile: json
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 2
    IfCount: 10
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fbceeeacc70>
    - <ast.Constant object at 0x7fbceeeac820>
    - <ast.Name object at 0x7fbceeeac5e0>
    - <ast.Constant object at 0x7fbceeeac460>
    - <ast.Constant object at 0x7fbceeeac100>
    - <ast.Constant object at 0x7fbceeeac670>
    - <ast.Constant object at 0x7fbceeeacf40>
    - <ast.Constant object at 0x7fbceeeacfd0>
    argNames:
    - kernel_spec_manager
    - user
    - kernel_name
    - display_name
    - prefix
    - profile
    - env
    - frozen_modules
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 108
    functionName: ipykernel.kernelspec.install
    functionSourceFile: ipykernel.kernelspec
    functionUses: 1
    functionsReached:
    - pathlib.Path.stat
    - pathlib.Path.chmod
    - os.path.join
    - platform.python_implementation
    - tempfile.mkdtemp
    - ipykernel.kernelspec.write_kernel_spec
    - ipykernel.kernelspec.make_ipkernel_cmd
    - shutil.rmtree
    - jupyter_client.kernelspec.KernelSpecManager.install_kernel_spec
    - pathlib.Path
    - kernel_dict.update
    - <builtin>.str
    - jupyter_client.kernelspec.KernelSpecManager
    - shutil.copytree
    - json.dump
    - <builtin>.open
    - ipykernel.kernelspec.get_kernel_dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.kernelspec.KernelSpecManager
    functionSourceFile: jupyter_client
    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: platform.python_implementation
    functionSourceFile: platform
    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: jupyter_client.kernelspec.KernelSpecManager.install_kernel_spec
    functionSourceFile: jupyter_client
    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: shutil.rmtree
    functionSourceFile: shutil
    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: ipykernel.kernelspec.InstallIPythonKernelSpecApp
    functionSourceFile: ipykernel.kernelspec
    functionUses: 0
    functionsReached:
    - traitlets.Unicode
    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 0x7fbceedf7bb0>
    argNames:
    - self
    - argv
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 206
    functionName: ipykernel.kernelspec.InstallIPythonKernelSpecApp.initialize
    functionSourceFile: ipykernel.kernelspec
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 13
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 212
    functionName: ipykernel.kernelspec.InstallIPythonKernelSpecApp.start
    functionSourceFile: ipykernel.kernelspec
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - os.path.join
    - tempfile.mkdtemp
    - jupyter_client.kernelspec.KernelSpecManager
    - pathlib.Path.stat
    - argparse.ArgumentParser
    - traitlets.config.Application.exit
    - ipykernel.kernelspec.get_kernel_dict
    - pathlib.Path.chmod
    - parser.parse_args
    - platform.python_implementation
    - ipykernel.kernelspec.install
    - ipykernel.kernelspec.write_kernel_spec
    - shutil.rmtree
    - pathlib.Path
    - <builtin>.str
    - <builtin>.open
    - parser.add_argument
    - ipykernel.kernelspec.make_ipkernel_cmd
    - jupyter_client.kernelspec.KernelSpecManager.install_kernel_spec
    - kernel_dict.update
    - shutil.copytree
    - json.dump
    - <builtin>.print
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: argparse.ArgumentParser
    functionSourceFile: argparse
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.add_argument
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.parse_args
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.Application.exit
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.Application.launch_instance
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.__main__
    functionSourceFile: ipykernel.__main__
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.log
    functionSourceFile: ipykernel.log
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - engine
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: ipykernel.log.EnginePUBHandler.__init__
    functionSourceFile: ipykernel.log
    functionUses: 0
    functionsReached:
    - zmq.log.handlers.PUBHandler.__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: zmq.log.handlers.PUBHandler.__init__
    functionSourceFile: zmq
    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: 25
    functionName: ipykernel.log.EnginePUBHandler.root_topic
    functionSourceFile: ipykernel.log
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.pylab.backend_inline
    functionSourceFile: ipykernel.pylab.backend_inline
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.pylab.config
    functionSourceFile: ipykernel.pylab.config
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.pylab
    functionSourceFile: ipykernel.pylab
    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: ipykernel.inprocess.blocking
    functionSourceFile: ipykernel.inprocess.blocking
    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
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 27
    functionName: ipykernel.inprocess.blocking.BlockingInProcessChannel.__init__
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 32
    functionName: ipykernel.inprocess.blocking.BlockingInProcessChannel.call_handlers
    functionSourceFile: ipykernel.inprocess.blocking
    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.Constant object at 0x7fbcef73e1f0>
    - <ast.Constant object at 0x7fbcef73e160>
    argNames:
    - self
    - block
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: ipykernel.inprocess.blocking.BlockingInProcessChannel.get_msg
    functionSourceFile: ipykernel.inprocess.blocking
    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: 44
    functionName: ipykernel.inprocess.blocking.BlockingInProcessChannel.get_msgs
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached:
    - msgs.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: msgs.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: 54
    functionName: ipykernel.inprocess.blocking.BlockingInProcessChannel.msg_ready
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: ipykernel.inprocess.blocking.BlockingInProcessStdInChannel.call_handlers
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached:
    - sys.__stdout__.flush
    - IPython.core.compilerop.CachingCompiler.client.input
    - IPython.core.displayhook.DisplayHook.client.input
    - IPython.core.displayhook.DisplayHook.client.kernel._sys_raw_input
    - <builtin>.print
    - IPython.core.compilerop.CachingCompiler.client.kernel._sys_raw_input
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.__stdout__.flush
    functionSourceFile: sys
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook.client.kernel._sys_raw_input
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.compilerop.CachingCompiler.client.kernel._sys_raw_input
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook.client.input
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.compilerop.CachingCompiler.client.input
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: 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: ipykernel.inprocess.blocking.BlockingInProcessKernelClient
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached:
    - traitlets.Type
    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: 85
    functionName: ipykernel.inprocess.blocking.BlockingInProcessKernelClient.wait_for_ready
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached:
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient.kernel_info
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUSH.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.client.KernelClient._handle_kernel_info_reply
    - jupyter_client.client.KernelClient.session.send
    - jupyter_client.client.KernelClient.session.msg
    - zmq.DEALER.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - <builtin>.print
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    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: 167
    functionName: ipykernel.inprocess.client.InProcessKernelClient.kernel_info
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 1
    functionsReached:
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - jupyter_client.session.Session.dispatch_shell
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.msg
    - zmq.DEALER.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.client.KernelClient._handle_kernel_info_reply
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.inprocess.channels
    functionSourceFile: ipykernel.inprocess.channels
    functionUses: 0
    functionsReached:
    - jupyter_client.channelsabc.HBChannelABC.register
    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 0x7fbceedf73d0>
    argNames:
    - self
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 18
    functionName: ipykernel.inprocess.channels.InProcessChannel.__init__
    functionSourceFile: ipykernel.inprocess.channels
    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: 24
    functionName: ipykernel.inprocess.channels.InProcessChannel.is_alive
    functionSourceFile: ipykernel.inprocess.channels
    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: 28
    functionName: ipykernel.inprocess.channels.InProcessChannel.start
    functionSourceFile: ipykernel.inprocess.channels
    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: 32
    functionName: ipykernel.inprocess.channels.InProcessChannel.stop
    functionSourceFile: ipykernel.inprocess.channels
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: ipykernel.inprocess.channels.InProcessChannel.call_handlers
    functionSourceFile: ipykernel.inprocess.channels
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fbcef130310>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: ipykernel.inprocess.channels.InProcessChannel.flush
    functionSourceFile: ipykernel.inprocess.channels
    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
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 47
    functionName: ipykernel.inprocess.channels.InProcessChannel.call_handlers_later
    functionSourceFile: ipykernel.inprocess.channels
    functionUses: 0
    functionsReached:
    - ipykernel.inprocess.channels.InProcessChannel.call_handlers
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 56
    functionName: ipykernel.inprocess.channels.InProcessChannel.process_events
    functionSourceFile: ipykernel.inprocess.channels
    functionUses: 0
    functionsReached: []
    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 0x7fbceee20ac0>
    argNames:
    - self
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 75
    functionName: ipykernel.inprocess.channels.InProcessHBChannel.__init__
    functionSourceFile: ipykernel.inprocess.channels
    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: 82
    functionName: ipykernel.inprocess.channels.InProcessHBChannel.is_alive
    functionSourceFile: ipykernel.inprocess.channels
    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: 86
    functionName: ipykernel.inprocess.channels.InProcessHBChannel.start
    functionSourceFile: ipykernel.inprocess.channels
    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: 90
    functionName: ipykernel.inprocess.channels.InProcessHBChannel.stop
    functionSourceFile: ipykernel.inprocess.channels
    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: 94
    functionName: ipykernel.inprocess.channels.InProcessHBChannel.pause
    functionSourceFile: ipykernel.inprocess.channels
    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: 98
    functionName: ipykernel.inprocess.channels.InProcessHBChannel.unpause
    functionSourceFile: ipykernel.inprocess.channels
    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: 102
    functionName: ipykernel.inprocess.channels.InProcessHBChannel.is_beating
    functionSourceFile: ipykernel.inprocess.channels
    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: jupyter_client.channelsabc.HBChannelABC.register
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.inprocess
    functionSourceFile: ipykernel.inprocess
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.inprocess.manager
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 0
    functionsReached:
    - jupyter_client.managerabc.KernelManagerABC.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: 1
    functionLinenumber: -1
    functionName: ipykernel.inprocess.manager.InProcessKernelManager
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 0
    functionsReached:
    - traitlets.DottedObjectName
    - jupyter_client.session.Session
    - traitlets.default
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.DottedObjectName
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 30
    functionName: ipykernel.inprocess.manager.InProcessKernelManager._default_blocking_class
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 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: 36
    functionName: ipykernel.inprocess.manager.InProcessKernelManager._default_session
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 44
    functionName: ipykernel.inprocess.manager.InProcessKernelManager.start_kernel
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 1
    functionsReached:
    - ipykernel.inprocess.ipkernel.InProcessKernel.__init__
    - jupyter_client.session.Session.observe
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - traits
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel.__init__
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 2
    functionsReached:
    - jupyter_client.session.Session.observe
    - <builtin>.super
    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: 1
    functionLinenumber: 50
    functionName: ipykernel.inprocess.manager.InProcessKernelManager.shutdown_kernel
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 1
    functionsReached:
    - jupyter_client.session.Session.iopub_thread.stop
    - jupyter_client.session.Session.stop
    - ipykernel.inprocess.manager.InProcessKernelManager._kill_kernel
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.iopub_thread.stop
    functionSourceFile: jupyter_client
    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: 65
    functionName: ipykernel.inprocess.manager.InProcessKernelManager._kill_kernel
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fbcef73e400>
    argNames:
    - self
    - now
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 56
    functionName: ipykernel.inprocess.manager.InProcessKernelManager.restart_kernel
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.stop
    - <builtin>.super
    - jupyter_client.session.Session.iopub_thread.stop
    - jupyter_client.session.Session.observe
    - ipykernel.inprocess.manager.InProcessKernelManager.start_kernel
    - ipykernel.inprocess.manager.InProcessKernelManager._kill_kernel
    - ipykernel.inprocess.ipkernel.InProcessKernel.__init__
    - ipykernel.inprocess.manager.InProcessKernelManager.shutdown_kernel
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 62
    functionName: ipykernel.inprocess.manager.InProcessKernelManager.has_kernel
    functionSourceFile: ipykernel.inprocess.manager
    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: 68
    functionName: ipykernel.inprocess.manager.InProcessKernelManager.interrupt_kernel
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - signum
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 73
    functionName: ipykernel.inprocess.manager.InProcessKernelManager.signal_kernel
    functionSourceFile: ipykernel.inprocess.manager
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: 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: 78
    functionName: ipykernel.inprocess.manager.InProcessKernelManager.is_alive
    functionSourceFile: ipykernel.inprocess.manager
    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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: ipykernel.inprocess.manager.InProcessKernelManager.client
    functionSourceFile: ipykernel.inprocess.manager
    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: jupyter_client.managerabc.KernelManagerABC.register
    functionSourceFile: jupyter_client
    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: ipykernel.inprocess.constants
    functionSourceFile: ipykernel.inprocess.constants
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.inprocess.ipkernel
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - IPython.core.interactiveshell.InteractiveShellABC.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: 1
    functionLinenumber: -1
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - traitlets.Enum
    - traitlets.default
    - contextlib.contextmanager
    - traitlets.List
    - traitlets.Type
    - jupyter_client.session.Session
    - traitlets.Any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.Enum
    functionSourceFile: traitlets
    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: 58
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._default_iopub_thread
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    - jupyter_client.session.Session.start
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - 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: ipykernel.inprocess.ipkernel.InProcessKernel._default_iopub_socket
    functionSourceFile: ipykernel.inprocess.ipkernel
    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: jupyter_client.session.Session.observe
    functionSourceFile: jupyter_client
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel.execute_request
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - ipykernel.inprocess.ipkernel.InProcessKernel._redirected_io
    - <builtin>.super
    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: 123
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._redirected_io
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 84
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel.start
    functionSourceFile: ipykernel.inprocess.ipkernel
    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 0x7fbcef098f40>
    argNames:
    - self
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 89
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._abort_queues
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fbceee10dc0>
    argNames:
    - self
    - prompt
    - ident
    - parent
    - password
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 92
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._input_request
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.dict
    - math.isinf
    - math.isnan
    - <builtin>.type
    - ipykernel.jsonutil.json_clean
    - <builtin>.int
    - traitlets.traitlets.Instance.msg
    - <builtin>.float
    - binascii.b2a_base64
    - <builtin>.hasattr
    - traitlets.List.stdin_channel.process_events
    - obj.items
    - <builtin>.isinstance
    - <builtin>.repr
    - binascii.b2a_base64.decode
    - <builtin>.str
    - sys.stderr.flush
    - <builtin>.map
    - sys.stdout.flush
    - traitlets.List.stdin_channel.call_handlers
    - obj.strftime
    - <builtin>.set
    - <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: traitlets.List.stdin_channel.call_handlers
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.List.stdin_channel.process_events
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - change
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 134
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._io_dispatch
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - traitlets.List.iopub_channel.call_handlers
    - traitlets.traitlets.Instance.recv
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.traitlets.Instance.recv
    functionSourceFile: traitlets
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.List.iopub_channel.call_handlers
    functionSourceFile: traitlets
    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: 146
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._default_log
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 150
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._default_session
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 156
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._default_shell_class
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 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: 3
    functionLinenumber: 160
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._default_stdout
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - io.TextIOWrapper
    - jupyter_client.session.Session.start
    - os.dup2
    - io.FileIO
    - ipykernel.iostream.OutStream._setup_stream_redirects
    - collections.defaultdict
    - jupyter_client.session.Session
    - <builtin>.getattr
    - sys.platform.startswith
    - threading.local
    - <builtin>.hasattr
    - ipykernel.iostream.OutStream.__init__
    - os.dup
    - threading.Thread
    - contextvars.ContextVar
    - <builtin>.isinstance
    - os.pipe
    - io.TextIOBase._parent_header.set
    - <builtin>.bool
    - name.encode
    - os.getpid
    - threading.RLock
    - echo.fileno
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 164
    functionName: ipykernel.inprocess.ipkernel.InProcessKernel._default_stderr
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - io.TextIOWrapper
    - jupyter_client.session.Session.start
    - os.dup2
    - io.FileIO
    - ipykernel.iostream.OutStream._setup_stream_redirects
    - collections.defaultdict
    - jupyter_client.session.Session
    - <builtin>.getattr
    - sys.platform.startswith
    - threading.local
    - <builtin>.hasattr
    - ipykernel.iostream.OutStream.__init__
    - os.dup
    - threading.Thread
    - contextvars.ContextVar
    - <builtin>.isinstance
    - os.pipe
    - io.TextIOBase._parent_header.set
    - <builtin>.bool
    - name.encode
    - os.getpid
    - threading.RLock
    - echo.fileno
    - warnings.warn
    linkageType: 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: ipykernel.inprocess.ipkernel.InProcessInteractiveShell
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    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 0x7fbcef0eb910>
    argNames:
    - self
    - gui
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 184
    functionName: ipykernel.inprocess.ipkernel.InProcessInteractiveShell.enable_gui
    functionSourceFile: ipykernel.inprocess.ipkernel
    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 0x7fbcef0eb790>
    argNames:
    - self
    - gui
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 190
    functionName: ipykernel.inprocess.ipkernel.InProcessInteractiveShell.enable_matplotlib
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fbceef19fa0>
    - <ast.Constant object at 0x7fbceef19f40>
    argNames:
    - self
    - gui
    - import_all
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 196
    functionName: ipykernel.inprocess.ipkernel.InProcessInteractiveShell.enable_pylab
    functionSourceFile: ipykernel.inprocess.ipkernel
    functionUses: 0
    functionsReached:
    - <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: ipykernel.inprocess.socket
    functionSourceFile: ipykernel.inprocess.socket
    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: ipykernel.inprocess.socket.DummySocket
    functionSourceFile: ipykernel.inprocess.socket
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    - traitlets.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: traitlets.Int
    functionSourceFile: traitlets
    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: 23
    functionName: ipykernel.inprocess.socket.DummySocket._context_default
    functionSourceFile: ipykernel.inprocess.socket
    functionUses: 0
    functionsReached:
    - zmq.Context
    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 0x7fbceee10580>
    - <ast.Constant object at 0x7fbceee10130>
    - <ast.Constant object at 0x7fbceee109d0>
    argNames:
    - self
    - flags
    - copy
    - track
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 30
    functionName: ipykernel.inprocess.socket.DummySocket.recv_multipart
    functionSourceFile: ipykernel.inprocess.socket
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.queue.get_nowait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.queue.get_nowait
    functionSourceFile: jupyter_client
    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 0x7fbcef098dc0>
    - <ast.Constant object at 0x7fbcef098b20>
    - <ast.Constant object at 0x7fbcef098430>
    argNames:
    - self
    - msg_parts
    - flags
    - copy
    - track
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: ipykernel.inprocess.socket.DummySocket.send_multipart
    functionSourceFile: ipykernel.inprocess.socket
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.map
    - jupyter_client.session.Session.queue.put_nowait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.queue.put_nowait
    functionSourceFile: jupyter_client
    functionUses: 1
    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 0x7fbcef0981c0>
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 40
    functionName: ipykernel.inprocess.socket.DummySocket.flush
    functionSourceFile: ipykernel.inprocess.socket
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: ipykernel.inprocess.client
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - jupyter_client.clientabc.KernelClientABC.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: 1
    functionLinenumber: -1
    functionName: ipykernel.inprocess.client.InProcessKernelClient
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session
    - traitlets.default
    - traitlets.Type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - 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: ipykernel.inprocess.client.InProcessKernelClient._default_blocking_class
    functionSourceFile: ipykernel.inprocess.client
    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 0x7fbceeed33a0>
    argNames:
    - self
    - session
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: ipykernel.inprocess.client.InProcessKernelClient.get_connection_info
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: ipykernel.inprocess.client.InProcessKernelClient.start_channels
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.frontends.append
    - <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: jupyter_client.session.Session.frontends.append
    functionSourceFile: jupyter_client
    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: 75
    functionName: ipykernel.inprocess.client.InProcessKernelClient.shell_channel
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - IPython.core.displayhook.DisplayHook.shell_channel_class
    - IPython.core.compilerop.CachingCompiler.shell_channel_class
    - jupyter_client.session.Session.shell_channel_class
    - traitlets.Type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook.shell_channel_class
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.compilerop.CachingCompiler.shell_channel_class
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.shell_channel_class
    functionSourceFile: jupyter_client
    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: 81
    functionName: ipykernel.inprocess.client.InProcessKernelClient.iopub_channel
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - traitlets.Type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: ipykernel.inprocess.client.InProcessKernelClient.stdin_channel
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - traitlets.Type
    - IPython.core.compilerop.CachingCompiler.stdin_channel_class
    - IPython.core.displayhook.DisplayHook.stdin_channel_class
    - jupyter_client.session.Session.stdin_channel_class
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.compilerop.CachingCompiler.stdin_channel_class
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook.stdin_channel_class
    functionSourceFile: IPython
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.session.Session.stdin_channel_class
    functionSourceFile: jupyter_client
    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: 93
    functionName: ipykernel.inprocess.client.InProcessKernelClient.control_channel
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - traitlets.Type
    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: 99
    functionName: ipykernel.inprocess.client.InProcessKernelClient.hb_channel
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - traitlets.Type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fbceee4d760>
    - <ast.Constant object at 0x7fbceee4db50>
    - <ast.Constant object at 0x7fbceee4dd90>
    - <ast.Constant object at 0x7fbceee4d340>
    - <ast.Constant object at 0x7fbceee4d8e0>
    argNames:
    - self
    - code
    - silent
    - store_history
    - user_expressions
    - allow_stdin
    - stop_on_error
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 107
    functionName: ipykernel.inprocess.client.InProcessKernelClient.execute
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUSH.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - <builtin>.isinstance
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.client.KernelClient.session.send
    - jupyter_client.client.KernelClient.session.msg
    - zmq.DEALER.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.client.KernelClient.session.msg
    functionSourceFile: jupyter_client
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 193
    functionName: ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 8
    functionsReached:
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.shell_stream.recv_multipart
    - zmq.DEALER.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fbcef7428e0>
    argNames:
    - self
    - code
    - cursor_pos
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 132
    functionName: ipykernel.inprocess.client.InProcessKernelClient.complete
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - jupyter_client.session.Session.dispatch_shell
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.client.KernelClient.session.send
    - zmq.DEALER.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.msg
    - <builtin>.len
    - zmq.PUSH.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    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 0x7fbceee0dc70>
    - <ast.Constant object at 0x7fbceee0d3d0>
    argNames:
    - self
    - code
    - cursor_pos
    - detail_level
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 141
    functionName: ipykernel.inprocess.client.InProcessKernelClient.inspect
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - jupyter_client.session.Session.dispatch_shell
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.client.KernelClient.session.send
    - zmq.DEALER.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.msg
    - <builtin>.len
    - zmq.PUSH.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    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 0x7fbceee0dd60>
    - <ast.Constant object at 0x7fbceee0d7f0>
    - <ast.Constant object at 0x7fbceee0d550>
    argNames:
    - self
    - raw
    - output
    - hist_access_type
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 154
    functionName: ipykernel.inprocess.client.InProcessKernelClient.history
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - jupyter_client.session.Session.dispatch_shell
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.msg
    - zmq.DEALER.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    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 0x7fbceee208b0>
    argNames:
    - self
    - restart
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 161
    functionName: ipykernel.inprocess.client.InProcessKernelClient.shutdown
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fbceee209d0>
    argNames:
    - self
    - target_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 173
    functionName: ipykernel.inprocess.client.InProcessKernelClient.comm_info
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - jupyter_client.session.Session.dispatch_shell
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.msg
    - zmq.DEALER.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 180
    functionName: ipykernel.inprocess.client.InProcessKernelClient.input
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 187
    functionName: ipykernel.inprocess.client.InProcessKernelClient.is_complete
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - traitlets.Instance.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - jupyter_client.session.Session.dispatch_shell
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.STREAM.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.msg
    - zmq.DEALER.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jupyter_client.client.KernelClient.session.send
    functionSourceFile: jupyter_client
    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: traitlets.traitlets.Any.shell_stream.recv_multipart
    functionSourceFile: traitlets
    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: zmq.STREAM.shell_stream.recv_multipart
    functionSourceFile: zmq
    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: zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    functionSourceFile: zmq
    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: IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    functionSourceFile: IPython
    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: jupyter_client.session.Session.shell_stream.recv_multipart
    functionSourceFile: jupyter_client
    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: traitlets.Instance.shell_stream.recv_multipart
    functionSourceFile: traitlets
    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: zmq.PUB.shell_stream.recv_multipart
    functionSourceFile: zmq
    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: jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    functionSourceFile: jupyter_client
    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: zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    functionSourceFile: zmq
    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: traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    functionSourceFile: traitlets
    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: zmq.DEALER.shell_stream.recv_multipart
    functionSourceFile: zmq
    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: queue.Queue.background_socket.shell_stream.recv_multipart
    functionSourceFile: queue
    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: queue.Queue.shell_stream.recv_multipart
    functionSourceFile: queue
    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: IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    functionSourceFile: IPython
    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: zmq.PUSH.shell_stream.recv_multipart
    functionSourceFile: zmq
    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: jupyter_core.utils.run_sync
    functionSourceFile: jupyter_core
    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: jupyter_client.client.KernelClient.session.recv
    functionSourceFile: jupyter_client
    functionUses: 9
    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 0x7fbceef91880>
    - <ast.Constant object at 0x7fbceef917f0>
    argNames:
    - self
    - block
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 212
    functionName: ipykernel.inprocess.client.InProcessKernelClient.get_shell_msg
    functionSourceFile: ipykernel.inprocess.client
    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 0x7fbcef0051c0>
    - <ast.Constant object at 0x7fbcef005340>
    argNames:
    - self
    - block
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 216
    functionName: ipykernel.inprocess.client.InProcessKernelClient.get_iopub_msg
    functionSourceFile: ipykernel.inprocess.client
    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 0x7fbceeeac0a0>
    - <ast.Constant object at 0x7fbceeeacd60>
    argNames:
    - self
    - block
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 220
    functionName: ipykernel.inprocess.client.InProcessKernelClient.get_stdin_msg
    functionSourceFile: ipykernel.inprocess.client
    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 0x7fbceeeaca90>
    - <ast.Constant object at 0x7fbceeeac580>
    argNames:
    - self
    - block
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 224
    functionName: ipykernel.inprocess.client.InProcessKernelClient.get_control_msg
    functionSourceFile: ipykernel.inprocess.client
    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: jupyter_client.clientabc.KernelClientABC.register
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_unpack_roundtrip':
  - 51
  - 52
  '...fuzz_unpack_roundtrip.ConsumeRandomLengthBufferList':
  - 24
  - 25
  - 26
  - 22
  '...fuzz_unpack_roundtrip.TestOneInput':
  - 33
  - 36
  - 37
  - 42
  - 31
  '...fuzz_unpack_roundtrip.main':
  - 48
  - 46
  - 47
  ipykernel.__main__:
  - 1
  - 3
  - 6
  ipykernel._eventloop_macos:
  - 1
  - 139
  - 44
  - 77
  - 45
  - 13
  - 140
  - 121
  ipykernel._eventloop_macos.C:
  - 37
  - 38
  ipykernel._eventloop_macos._NSApp:
  - 81
  - 83
  ipykernel._eventloop_macos._stop_after:
  - 144
  - 145
  - 147
  - 154
  - 155
  ipykernel._eventloop_macos._utf8:
  - 25
  - 26
  - 27
  ipykernel._eventloop_macos._wake:
  - 101
  - 102
  - 103
  - 118
  - 87
  ipykernel._eventloop_macos.mainloop:
  - 162
  - 164
  - 165
  - 166
  - 168
  - 169
  - 174
  ipykernel._eventloop_macos.n:
  - 32
  - 33
  ipykernel._eventloop_macos.stop:
  - 131
  - 133
  - 134
  - 136
  - 125
  - 126
  - 127
  ipykernel._version:
  - 1
  - 12
  - 14
  - 15
  - 16
  - 17
  - 20
  ipykernel.comm.comm:
  - 1
  ipykernel.comm.comm.BaseComm:
  - 20
  ipykernel.comm.comm.BaseComm.publish_msg:
  - 33
  - 34
  - 37
  - 41
  - 42
  - 25
  - 26
  - 31
  ipykernel.comm.comm.Comm:
  - 64
  - 66
  - 72
  - 50
  - 52
  - 53
  - 54
  - 56
  - 57
  ipykernel.comm.comm.Comm.__init__:
  - 97
  - 79
  - 80
  - 81
  - 90
  - 91
  - 93
  - 95
  ipykernel.comm.comm.Comm._default_comm_id:
  - 74
  ipykernel.comm.comm.Comm._default_kernel:
  - 68
  - 69
  ipykernel.comm.manager:
  - 1
  - 14
  ipykernel.comm.manager.CommManager:
  - 18
  - 20
  - 21
  - 22
  ipykernel.comm.manager.CommManager.__init__:
  - 25
  - 27
  - 28
  ipykernel.comm.manager.CommManager.comm_open:
  - 37
  - 38
  - 44
  - 45
  - 46
  - 49
  - 52
  - 56
  - 58
  - 31
  ipykernel.compiler:
  - 1
  - 51
  - 68
  - 49
  ipykernel.compiler.XCachingCompiler:
  - 97
  ipykernel.compiler.XCachingCompiler.__init__:
  - 100
  - 101
  ipykernel.compiler.XCachingCompiler.get_code_name:
  - 105
  - 106
  ipykernel.compiler._convert_to_long_pathname:
  - 61
  - 62
  - 63
  ipykernel.compiler.get_file_name:
  - 88
  - 89
  - 90
  - 91
  - 92
  ipykernel.compiler.get_tmp_directory:
  - 76
  - 77
  - 78
  - 79
  ipykernel.compiler.get_tmp_hash_seed:
  - 83
  ipykernel.compiler.murmur2_x86:
  - 33
  - 34
  - 35
  - 36
  - 37
  - 38
  - 11
  - 13
  - 14
  - 17
  - 19
  - 20
  - 21
  - 22
  ipykernel.connect:
  - 1
  - 15
  ipykernel.connect._find_connection_file:
  - 48
  - 41
  - 46
  - 49
  ipykernel.connect.connect_qtconsole:
  - 117
  - 93
  - 126
  - 119
  ipykernel.connect.get_connection_file:
  - 32
  - 36
  - 37
  - 20
  - 29
  ipykernel.connect.get_connection_info:
  - 76
  - 78
  - 79
  - 81
  - 82
  - 84
  - 55
  ipykernel.control:
  - 1
  ipykernel.control.ControlThread:
  - 7
  ipykernel.control.ControlThread.__init__:
  - 10
  - 11
  ipykernel.debugger:
  - 1
  - 46
  - 39
  ipykernel.debugger.Debugger:
  - 306
  ipykernel.debugger.Debugger.__init__:
  - 352
  - 353
  - 356
  - 357
  - 360
  - 369
  - 339
  - 341
  - 349
  ipykernel.debugger.Debugger._build_variables_response:
  - 392
  ipykernel.debugger.Debugger._forward_message:
  - 389
  ipykernel.debugger.Debugger._handle_event:
  - 384
  - 386
  - 372
  - 373
  - 374
  - 377
  - 378
  - 379
  - 380
  - 381
  - 383
  ipykernel.debugger.Debugger.accept_variable:
  - 514
  - 538
  ipykernel.debugger.Debugger.attach:
  - 559
  - 560
  - 567
  - 571
  - 575
  ipykernel.debugger.Debugger.configurationDone:
  - 578
  ipykernel.debugger.Debugger.copyToGlobals:
  - 681
  ipykernel.debugger.Debugger.debugInfo:
  - 588
  - 590
  - 591
  ipykernel.debugger.Debugger.dumpCell:
  - 465
  - 467
  - 469
  - 470
  ipykernel.debugger.Debugger.handle_stopped_event:
  - 416
  - 417
  - 418
  - 409
  - 412
  - 414
  - 415
  ipykernel.debugger.Debugger.inspectVariables:
  - 612
  - 613
  - 617
  - 618
  - 619
  - 620
  ipykernel.debugger.Debugger.modules:
  - 704
  - 695
  - 696
  - 697
  - 698
  - 700
  - 702
  - 703
  ipykernel.debugger.Debugger.process_request:
  - 709
  - 712
  - 713
  - 714
  - 716
  - 717
  - 718
  - 728
  - 729
  - 730
  - 731
  - 732
  - 733
  - 734
  - 736
  - 738
  - 739
  - 741
  - 743
  ipykernel.debugger.Debugger.richInspectVariables:
  - 641
  - 644
  - 645
  - 646
  - 647
  - 654
  - 623
  - 662
  - 663
  - 632
  - 633
  - 635
  ipykernel.debugger.Debugger.setBreakpoints:
  - 481
  - 484
  - 487
  ipykernel.debugger.Debugger.source:
  - 498
  - 499
  - 501
  - 495
  ipykernel.debugger.Debugger.stackTrace:
  - 510
  - 511
  ipykernel.debugger.Debugger.start:
  - 448
  - 449
  - 451
  - 425
  - 426
  - 427
  - 428
  - 429
  - 430
  - 434
  - 439
  - 442
  - 446
  - 447
  ipykernel.debugger.Debugger.stop:
  - 455
  - 456
  - 459
  - 460
  - 461
  - 462
  ipykernel.debugger.Debugger.variables:
  - 545
  - 546
  - 549
  - 551
  - 554
  - 543
  ipykernel.debugger.DebugpyClient:
  - 195
  ipykernel.debugger.DebugpyClient.__init__:
  - 202
  - 198
  - 207
  ipykernel.debugger.DebugpyClient._forward_event:
  - 216
  - 218
  - 215
  ipykernel.debugger.DebugpyClient._get_endpoint:
  - 211
  - 212
  ipykernel.debugger.DebugpyClient._handle_init_sequence:
  - 258
  - 261
  - 247
  - 252
  - 255
  ipykernel.debugger.DebugpyClient._send_request:
  - 229
  - 230
  - 234
  - 235
  - 236
  - 237
  - 221
  - 222
  - 223
  ipykernel.debugger.DebugpyClient._wait_for_response:
  - 243
  ipykernel.debugger.DebugpyClient.connect_tcp_socket:
  - 275
  - 276
  - 277
  ipykernel.debugger.DebugpyClient.disconnect_tcp_socket:
  - 280
  - 281
  - 283
  ipykernel.debugger.DebugpyClient.get_host_port:
  - 264
  - 265
  - 267
  - 268
  - 269
  - 270
  ipykernel.debugger.DebugpyClient.receive_dap_frame:
  - 288
  - 289
  ipykernel.debugger.DebugpyClient.send_dap_request:
  - 292
  - 293
  - 294
  - 295
  - 299
  - 300
  - 301
  ipykernel.debugger.DebugpyMessageQueue:
  - 109
  ipykernel.debugger.DebugpyMessageQueue.__init__:
  - 121
  - 117
  - 119
  ipykernel.debugger.DebugpyMessageQueue._put_message:
  - 131
  - 132
  - 133
  - 134
  - 135
  - 136
  - 138
  - 139
  - 140
  ipykernel.debugger.DebugpyMessageQueue.get_message:
  - 190
  - 191
  ipykernel.debugger.DebugpyMessageQueue.put_tcp_frame:
  - 143
  - 146
  - 149
  - 150
  - 151
  - 154
  - 157
  - 159
  - 160
  - 163
  - 165
  - 168
  - 170
  - 171
  - 173
  - 176
  - 179
  - 180
  - 182
  - 186
  - 187
  ipykernel.debugger.VariableExplorer:
  - 80
  ipykernel.debugger.VariableExplorer.__init__:
  - 83
  - 84
  - 85
  - 86
  ipykernel.debugger.VariableExplorer.get_children_variables:
  - 100
  - 102
  - 103
  - 104
  - 105
  ipykernel.debugger.VariableExplorer.track:
  - 90
  - 91
  - 92
  - 93
  ipykernel.debugger.VariableExplorer.untrack_all:
  - 96
  - 97
  ipykernel.debugger._DummyPyDB:
  - 70
  ipykernel.debugger._DummyPyDB.__init__:
  - 73
  - 76
  ipykernel.debugger._FakeCode:
  - 50
  ipykernel.debugger._FakeCode.__init__:
  - 53
  ipykernel.debugger._FakeFrame:
  - 59
  ipykernel.debugger._FakeFrame.__init__:
  - 62
  ipykernel.displayhook:
  - 1
  ipykernel.displayhook.ZMQDisplayHook:
  - 20
  ipykernel.displayhook.ZMQDisplayHook.__call__:
  - 39
  - 40
  - 44
  - 45
  - 47
  - 48
  - 51
  ipykernel.displayhook.ZMQDisplayHook.__init__:
  - 26
  - 30
  - 31
  ipykernel.displayhook.ZMQDisplayHook.get_execution_count:
  - 35
  ipykernel.displayhook.ZMQDisplayHook.parent_header:
  - 62
  ipykernel.displayhook.ZMQDisplayHook.set_parent:
  - 67
  - 68
  - 69
  ipykernel.displayhook.ZMQShellDisplayHook:
  - 80
  - 81
  - 74
  ipykernel.displayhook.ZMQShellDisplayHook.__init__:
  - 88
  - 86
  - 87
  ipykernel.displayhook.ZMQShellDisplayHook.finish_displayhook:
  - 128
  - 129
  - 130
  - 131
  - 127
  ipykernel.displayhook.ZMQShellDisplayHook.parent_header:
  - 93
  ipykernel.displayhook.ZMQShellDisplayHook.set_parent:
  - 98
  - 99
  - 100
  ipykernel.displayhook.ZMQShellDisplayHook.start_displayhook:
  - 104
  - 105
  - 106
  ipykernel.displayhook.ZMQShellDisplayHook.write_format_data:
  - 121
  - 122
  - 123
  ipykernel.displayhook.ZMQShellDisplayHook.write_output_prompt:
  - 116
  - 117
  ipykernel.embed:
  - 1
  ipykernel.embed.embed_kernel:
  - 33
  - 34
  - 36
  - 37
  - 43
  - 47
  - 48
  - 18
  - 50
  - 51
  - 54
  - 56
  - 57
  ipykernel.eventloops:
  - 1
  - 382
  - 366
  - 430
  - 148
  - 184
  - 253
  - 350
  ipykernel.eventloops._loop_wx:
  - 180
  - 173
  ipykernel.eventloops._notify_stream_qt:
  - 109
  - 110
  - 112
  - 113
  - 114
  - 115
  - 145
  - 117
  - 119
  - 91
  ipykernel.eventloops._notify_stream_qt._schedule_exit:
  - 129
  - 130
  - 131
  - 132
  - 133
  - 134
  - 124
  ipykernel.eventloops._notify_stream_qt.enum_helper:
  - 93
  ipykernel.eventloops._notify_stream_qt.exit_loop:
  - 96
  - 97
  - 98
  ipykernel.eventloops._notify_stream_qt.process_stream_events_wrap:
  - 106
  - 107
  - 101
  ipykernel.eventloops._use_appnope:
  - 17
  - 21
  ipykernel.eventloops.enable_gui:
  - 608
  - 609
  - 610
  - 616
  - 618
  - 619
  - 620
  - 621
  - 622
  - 623
  - 625
  - 627
  - 630
  - 603
  - 604
  - 605
  - 607
  ipykernel.eventloops.get_shell_stream:
  - 74
  - 76
  ipykernel.eventloops.loop_asyncio:
  - 452
  - 453
  - 454
  - 455
  - 460
  - 432
  - 465
  - 466
  - 435
  - 467
  - 437
  - 440
  - 442
  - 443
  ipykernel.eventloops.loop_asyncio.process_stream_events:
  - 448
  - 449
  - 450
  ipykernel.eventloops.loop_asyncio_exit:
  - 485
  - 486
  - 488
  - 489
  - 490
  - 474
  - 477
  ipykernel.eventloops.loop_asyncio_exit.close_loop:
  - 480
  - 481
  - 483
  ipykernel.eventloops.loop_cocoa:
  - 384
  - 416
  - 390
  - 408
  - 409
  ipykernel.eventloops.loop_cocoa.handle_int:
  - 393
  - 395
  - 396
  - 397
  - 399
  ipykernel.eventloops.loop_cocoa_exit:
  - 424
  - 427
  ipykernel.eventloops.loop_gtk:
  - 352
  - 355
  - 356
  ipykernel.eventloops.loop_gtk3:
  - 368
  - 371
  - 372
  ipykernel.eventloops.loop_gtk3_exit:
  - 378
  - 379
  ipykernel.eventloops.loop_gtk_exit:
  - 362
  - 363
  ipykernel.eventloops.loop_qt:
  - 158
  - 150
  - 151
  ipykernel.eventloops.loop_qt_exit:
  - 169
  ipykernel.eventloops.loop_tk:
  - 291
  - 259
  - 292
  - 293
  - 263
  - 295
  - 297
  - 299
  - 334
  - 335
  - 306
  - 309
  - 311
  - 255
  ipykernel.eventloops.loop_tk.BasicAppWrapper.__init__:
  - 268
  ipykernel.eventloops.loop_tk.TimedAppWrapper.__init__:
  - 317
  ipykernel.eventloops.loop_tk.TimedAppWrapper.func:
  - 320
  ipykernel.eventloops.loop_tk.TimedAppWrapper.on_timer:
  - 328
  - 323
  - 325
  - 327
  ipykernel.eventloops.loop_tk.TimedAppWrapper.start:
  - 331
  - 332
  ipykernel.eventloops.loop_tk._schedule_exit:
  - 285
  - 286
  ipykernel.eventloops.loop_tk.exit_loop:
  - 272
  - 273
  - 274
  - 271
  ipykernel.eventloops.loop_tk.process_stream_events_wrap:
  - 280
  - 278
  - 279
  ipykernel.eventloops.loop_tk_exit:
  - 340
  - 342
  - 343
  ipykernel.eventloops.loop_wx:
  - 231
  - 232
  - 239
  - 240
  - 242
  - 186
  ipykernel.eventloops.loop_wx.IPWxApp.OnInit:
  - 225
  - 226
  ipykernel.eventloops.loop_wx.TimerFrame.__init__:
  - 194
  - 196
  - 197
  - 199
  - 200
  - 203
  ipykernel.eventloops.loop_wx.TimerFrame.on_exit:
  - 217
  - 218
  - 219
  ipykernel.eventloops.loop_wx.TimerFrame.on_timer:
  - 214
  ipykernel.eventloops.loop_wx.TimerFrame.wake:
  - 208
  - 209
  - 206
  ipykernel.eventloops.loop_wx_exit:
  - 250
  - 247
  ipykernel.eventloops.make_qt_app_for_kernel:
  - 586
  - 587
  - 592
  - 598
  - 599
  ipykernel.eventloops.register_integration:
  - 37
  ipykernel.eventloops.register_integration.decorator:
  - 56
  - 52
  - 53
  ipykernel.eventloops.register_integration.decorator.exit_decorator:
  - 59
  ipykernel.eventloops.set_qt_api_env_from_gui:
  - 512
  - 579
  - 581
  - 522
  - 554
  - 568
  - 494
  - 530
  - 531
  - 534
  - 535
  - 536
  - 566
  - 571
  - 542
  ipykernel.gui:
  - 1
  ipykernel.gui.gtk3embed:
  - 1
  - 19
  - 20
  - 23
  ipykernel.gui.gtk3embed.GTKEmbed:
  - 33
  ipykernel.gui.gtk3embed.GTKEmbed.__init__:
  - 36
  ipykernel.gui.gtk3embed.GTKEmbed._hijack_gtk:
  - 77
  ipykernel.gui.gtk3embed.GTKEmbed._hijack_gtk.dummy:
  - 92
  ipykernel.gui.gtk3embed.GTKEmbed._wire_kernel:
  - 49
  - 54
  - 55
  ipykernel.gui.gtk3embed.GTKEmbed.iterate_kernel:
  - 64
  - 59
  ipykernel.gui.gtk3embed.GTKEmbed.start:
  - 43
  - 45
  - 46
  ipykernel.gui.gtk3embed.GTKEmbed.stop:
  - 72
  - 73
  - 74
  - 68
  ipykernel.gui.gtkembed:
  - 1
  - 20
  ipykernel.gui.gtkembed.GTKEmbed:
  - 30
  ipykernel.gui.gtkembed.GTKEmbed.__init__:
  - 33
  ipykernel.gui.gtkembed.GTKEmbed._hijack_gtk:
  - 74
  ipykernel.gui.gtkembed.GTKEmbed._hijack_gtk.dummy:
  - 89
  ipykernel.gui.gtkembed.GTKEmbed._wire_kernel:
  - 51
  - 52
  - 46
  ipykernel.gui.gtkembed.GTKEmbed.iterate_kernel:
  - 56
  - 61
  ipykernel.gui.gtkembed.GTKEmbed.start:
  - 40
  - 42
  - 43
  ipykernel.gui.gtkembed.GTKEmbed.stop:
  - 65
  - 69
  - 70
  - 71
  ipykernel.heartbeat:
  - 1
  ipykernel.heartbeat.Heartbeat:
  - 28
  ipykernel.heartbeat.Heartbeat.__init__:
  - 32
  - 33
  - 34
  - 38
  - 39
  - 31
  ipykernel.heartbeat.Heartbeat._bind_socket:
  - 75
  - 77
  - 79
  - 82
  - 85
  - 86
  ipykernel.heartbeat.Heartbeat._try_bind_socket:
  - 64
  ipykernel.heartbeat.Heartbeat.pick_port:
  - 47
  - 48
  - 49
  - 51
  - 52
  - 53
  - 54
  - 56
  ipykernel.heartbeat.Heartbeat.run:
  - 98
  - 100
  - 105
  - 107
  - 110
  - 113
  - 119
  - 93
  - 95
  ipykernel.inprocess.blocking:
  - 1
  ipykernel.inprocess.blocking.BlockingInProcessChannel:
  - 25
  ipykernel.inprocess.blocking.BlockingInProcessChannel.__init__:
  - 28
  - 29
  - 30
  ipykernel.inprocess.blocking.BlockingInProcessChannel.call_handlers:
  - 33
  - 34
  ipykernel.inprocess.blocking.BlockingInProcessChannel.get_msg:
  - 42
  - 37
  - 38
  ipykernel.inprocess.blocking.BlockingInProcessChannel.get_msgs:
  - 49
  - 45
  ipykernel.inprocess.blocking.BlockingInProcessChannel.msg_ready:
  - 56
  - 55
  ipykernel.inprocess.blocking.BlockingInProcessKernelClient:
  - 81
  - 82
  - 83
  - 78
  ipykernel.inprocess.blocking.BlockingInProcessKernelClient.wait_for_ready:
  - 97
  - 101
  - 107
  - 108
  - 86
  - 88
  - 90
  - 94
  ipykernel.inprocess.blocking.BlockingInProcessStdInChannel:
  - 60
  ipykernel.inprocess.blocking.BlockingInProcessStdInChannel.call_handlers:
  - 68
  - 71
  - 73
  - 74
  - 63
  ipykernel.inprocess.channels:
  - 1
  - 107
  ipykernel.inprocess.channels.InProcessChannel:
  - 14
  ipykernel.inprocess.channels.InProcessChannel.__init__:
  - 19
  - 20
  ipykernel.inprocess.channels.InProcessChannel.call_handlers:
  - 37
  ipykernel.inprocess.channels.InProcessChannel.call_handlers_later:
  - 48
  - 54
  ipykernel.inprocess.channels.InProcessChannel.flush:
  - 45
  ipykernel.inprocess.channels.InProcessChannel.is_alive:
  - 25
  ipykernel.inprocess.channels.InProcessChannel.process_events:
  - 57
  ipykernel.inprocess.channels.InProcessChannel.start:
  - 29
  ipykernel.inprocess.channels.InProcessChannel.stop:
  - 33
  ipykernel.inprocess.channels.InProcessHBChannel:
  - 66
  ipykernel.inprocess.channels.InProcessHBChannel.__init__:
  - 76
  - 77
  ipykernel.inprocess.channels.InProcessHBChannel.is_alive:
  - 83
  ipykernel.inprocess.channels.InProcessHBChannel.is_beating:
  - 103
  ipykernel.inprocess.channels.InProcessHBChannel.pause:
  - 95
  ipykernel.inprocess.channels.InProcessHBChannel.start:
  - 87
  ipykernel.inprocess.channels.InProcessHBChannel.stop:
  - 91
  ipykernel.inprocess.channels.InProcessHBChannel.unpause:
  - 99
  ipykernel.inprocess.client:
  - 1
  - 233
  ipykernel.inprocess.client.InProcessKernelClient:
  - 34
  - 44
  - 45
  - 46
  - 47
  - 48
  - 50
  - 56
  ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel:
  - 194
  - 196
  - 201
  - 202
  - 203
  - 204
  - 205
  - 207
  - 208
  - 209
  - 210
  ipykernel.inprocess.client.InProcessKernelClient.comm_info:
  - 176
  - 177
  - 174
  - 175
  ipykernel.inprocess.client.InProcessKernelClient.complete:
  - 133
  - 134
  - 135
  - 136
  - 137
  - 138
  ipykernel.inprocess.client.InProcessKernelClient.control_channel:
  - 94
  - 95
  ipykernel.inprocess.client.InProcessKernelClient.execute:
  - 129
  - 116
  - 117
  - 119
  - 126
  - 127
  ipykernel.inprocess.client.InProcessKernelClient.get_connection_info:
  - 64
  - 63
  ipykernel.inprocess.client.InProcessKernelClient.get_control_msg:
  - 225
  - 226
  ipykernel.inprocess.client.InProcessKernelClient.get_iopub_msg:
  - 217
  - 218
  ipykernel.inprocess.client.InProcessKernelClient.get_shell_msg:
  - 213
  - 214
  ipykernel.inprocess.client.InProcessKernelClient.get_stdin_msg:
  - 221
  - 222
  ipykernel.inprocess.client.InProcessKernelClient.hb_channel:
  - 100
  - 101
  ipykernel.inprocess.client.InProcessKernelClient.history:
  - 155
  - 156
  - 157
  - 158
  ipykernel.inprocess.client.InProcessKernelClient.input:
  - 181
  - 182
  ipykernel.inprocess.client.InProcessKernelClient.inspect:
  - 142
  - 143
  - 144
  - 145
  - 150
  - 151
  ipykernel.inprocess.client.InProcessKernelClient.iopub_channel:
  - 82
  - 83
  ipykernel.inprocess.client.InProcessKernelClient.is_complete:
  - 188
  - 189
  - 190
  ipykernel.inprocess.client.InProcessKernelClient.kernel_info:
  - 168
  - 169
  - 170
  ipykernel.inprocess.client.InProcessKernelClient.shell_channel:
  - 76
  - 77
  ipykernel.inprocess.client.InProcessKernelClient.shutdown:
  - 162
  ipykernel.inprocess.client.InProcessKernelClient.start_channels:
  - 72
  - 69
  - 70
  - 71
  ipykernel.inprocess.client.InProcessKernelClient.stdin_channel:
  - 88
  - 89
  ipykernel.inprocess.constants:
  - 1
  ipykernel.inprocess.ipkernel:
  - 1
  - 203
  ipykernel.inprocess.ipkernel.InProcessInteractiveShell:
  - 176
  - 174
  ipykernel.inprocess.ipkernel.InProcessInteractiveShell.enable_gui:
  - 185
  - 186
  ipykernel.inprocess.ipkernel.InProcessInteractiveShell.enable_matplotlib:
  - 192
  - 194
  - 191
  ipykernel.inprocess.ipkernel.InProcessInteractiveShell.enable_pylab:
  - 200
  - 197
  - 198
  ipykernel.inprocess.ipkernel.InProcessKernel:
  - 145
  - 149
  - 155
  - 28
  - 159
  - 35
  - 163
  - 41
  - 43
  - 44
  - 45
  - 51
  - 52
  - 53
  - 55
  - 57
  - 63
  - 65
  - 69
  ipykernel.inprocess.ipkernel.InProcessKernel.__init__:
  - 72
  - 73
  - 75
  - 76
  ipykernel.inprocess.ipkernel.InProcessKernel._abort_queues:
  - 90
  ipykernel.inprocess.ipkernel.InProcessKernel._default_iopub_thread:
  - 59
  - 60
  ipykernel.inprocess.ipkernel.InProcessKernel._default_log:
  - 147
  ipykernel.inprocess.ipkernel.InProcessKernel._default_session:
  - 153
  ipykernel.inprocess.ipkernel.InProcessKernel._default_stderr:
  - 165
  ipykernel.inprocess.ipkernel.InProcessKernel._default_stdout:
  - 161
  ipykernel.inprocess.ipkernel.InProcessKernel._input_request:
  - 96
  - 97
  - 98
  - 101
  - 103
  - 104
  - 106
  - 107
  - 115
  - 95
  ipykernel.inprocess.ipkernel.InProcessKernel._io_dispatch:
  - 138
  - 139
  - 141
  - 135
  ipykernel.inprocess.ipkernel.InProcessKernel._redirected_io:
  - 128
  - 124
  ipykernel.inprocess.ipkernel.InProcessKernel.execute_request:
  - 80
  - 81
  - 82
  ipykernel.inprocess.ipkernel.InProcessKernel.start:
  - 85
  - 86
  ipykernel.inprocess.manager:
  - 1
  - 92
  ipykernel.inprocess.manager.InProcessKernelManager:
  - 35
  - 15
  - 25
  - 27
  - 29
  ipykernel.inprocess.manager.InProcessKernelManager._default_session:
  - 38
  ipykernel.inprocess.manager.InProcessKernelManager.client:
  - 83
  - 85
  ipykernel.inprocess.manager.InProcessKernelManager.interrupt_kernel:
  - 69
  ipykernel.inprocess.manager.InProcessKernelManager.is_alive:
  - 79
  ipykernel.inprocess.manager.InProcessKernelManager.restart_kernel:
  - 57
  - 58
  - 59
  ipykernel.inprocess.manager.InProcessKernelManager.shutdown_kernel:
  - 51
  - 52
  - 53
  - 54
  ipykernel.inprocess.manager.InProcessKernelManager.signal_kernel:
  - 74
  ipykernel.inprocess.manager.InProcessKernelManager.start_kernel:
  - 48
  - 45
  ipykernel.inprocess.socket:
  - 1
  ipykernel.inprocess.socket.DummySocket:
  - 17
  - 19
  - 20
  - 21
  ipykernel.inprocess.socket.DummySocket._context_default:
  - 24
  ipykernel.inprocess.socket.DummySocket.flush:
  - 41
  ipykernel.inprocess.socket.DummySocket.recv_multipart:
  - 32
  - 31
  ipykernel.inprocess.socket.DummySocket.send_multipart:
  - 35
  - 36
  - 37
  ipykernel.iostream:
  - 1
  ipykernel.iostream.BackgroundSocket:
  - 300
  ipykernel.iostream.BackgroundSocket.__getattr__:
  - 322
  - 323
  - 309
  - 310
  - 312
  - 314
  - 315
  ipykernel.iostream.BackgroundSocket.__init__:
  - 305
  ipykernel.iostream.BackgroundSocket.__setattr__:
  - 326
  - 327
  - 328
  - 330
  - 338
  ipykernel.iostream.BackgroundSocket.send:
  - 341
  - 342
  ipykernel.iostream.BackgroundSocket.send_multipart:
  - 345
  - 347
  ipykernel.iostream.IOPubThread:
  - 42
  ipykernel.iostream.IOPubThread.__init__:
  - 64
  - 66
  - 67
  - 68
  - 69
  - 70
  - 72
  - 75
  - 76
  - 51
  - 63
  ipykernel.iostream.IOPubThread._check_mp_mode:
  - 218
  - 219
  ipykernel.iostream.IOPubThread._event_pipe:
  - 147
  - 155
  - 141
  - 149
  ipykernel.iostream.IOPubThread._event_pipe_gc:
  - 129
  - 130
  - 134
  - 135
  - 136
  ipykernel.iostream.IOPubThread._handle_event:
  - 168
  - 169
  - 170
  - 171
  - 159
  ipykernel.iostream.IOPubThread._handle_pipe_msg:
  - 198
  - 199
  - 201
  - 202
  - 204
  ipykernel.iostream.IOPubThread._is_master_process:
  - 215
  ipykernel.iostream.IOPubThread._really_send:
  - 288
  - 293
  - 294
  - 295
  - 296
  - 280
  - 281
  - 284
  - 286
  ipykernel.iostream.IOPubThread._run_event_pipe_gc:
  - 120
  - 122
  - 124
  - 126
  ipykernel.iostream.IOPubThread._setup_event_pipe:
  - 108
  - 110
  - 113
  - 115
  - 116
  - 117
  ipykernel.iostream.IOPubThread._setup_pipe_in:
  - 192
  - 194
  - 195
  - 174
  - 178
  - 180
  - 184
  - 186
  ipykernel.iostream.IOPubThread._setup_pipe_out:
  - 208
  - 209
  - 211
  ipykernel.iostream.IOPubThread._thread_main:
  - 100
  - 101
  - 103
  - 105
  - 83
  - 88
  - 90
  - 93
  - 95
  ipykernel.iostream.IOPubThread._thread_main._cancel:
  - 98
  ipykernel.iostream.IOPubThread._thread_main._start_event_gc:
  - 86
  ipykernel.iostream.IOPubThread.close:
  - 250
  - 251
  - 253
  ipykernel.iostream.IOPubThread.schedule:
  - 261
  - 265
  - 266
  - 268
  - 270
  ipykernel.iostream.IOPubThread.send_multipart:
  - 273
  - 277
  ipykernel.iostream.IOPubThread.send_multipart.<lambda1>:
  - 277
  ipykernel.iostream.IOPubThread.start:
  - 224
  - 226
  - 229
  ipykernel.iostream.IOPubThread.stop:
  - 232
  - 234
  - 236
  - 238
  - 239
  - 246
  - 247
  ipykernel.iostream.OutStream:
  - 351
  ipykernel.iostream.OutStream.__init__:
  - 410
  - 433
  - 434
  - 442
  - 444
  - 450
  - 451
  - 454
  - 455
  - 458
  - 460
  - 464
  - 465
  - 467
  - 469
  - 471
  - 475
  - 484
  - 486
  - 487
  - 490
  - 492
  - 496
  - 499
  - 500
  ipykernel.iostream.OutStream._flush:
  - 640
  - 641
  - 612
  - 644
  - 620
  - 622
  - 624
  - 625
  - 627
  - 628
  - 632
  - 634
  - 639
  ipykernel.iostream.OutStream._flush_buffers:
  - 706
  - 707
  - 708
  - 709
  - 710
  - 711
  ipykernel.iostream.OutStream._hooks:
  - 722
  ipykernel.iostream.OutStream._is_master_process:
  - 546
  ipykernel.iostream.OutStream._rotate_buffers:
  - 714
  - 717
  ipykernel.iostream.OutStream._schedule_flush:
  - 585
  - 577
  - 573
  ipykernel.iostream.OutStream._schedule_flush._schedule_in_thread:
  - 583
  ipykernel.iostream.OutStream._setup_stream_redirects:
  - 533
  - 534
  - 535
  - 536
  - 541
  - 543
  ipykernel.iostream.OutStream._watch_pipe_fd:
  - 387
  - 391
  - 393
  - 394
  - 395
  - 397
  - 375
  ipykernel.iostream.OutStream.close:
  - 553
  - 554
  - 558
  - 559
  - 561
  - 562
  - 563
  - 565
  ipykernel.iostream.OutStream.fileno:
  - 369
  - 366
  ipykernel.iostream.OutStream.flush:
  - 609
  - 588
  - 592
  - 595
  - 596
  - 599
  - 601
  - 602
  - 604
  - 607
  ipykernel.iostream.OutStream.isatty:
  - 525
  ipykernel.iostream.OutStream.parent_header:
  - 514
  - 522
  ipykernel.iostream.OutStream.register_hook:
  - 728
  - 744
  ipykernel.iostream.OutStream.set_parent:
  - 549
  - 550
  ipykernel.iostream.OutStream.unregister_hook:
  - 761
  - 747
  ipykernel.iostream.OutStream.writable:
  - 702
  ipykernel.iostream.OutStream.write:
  - 672
  - 676
  - 679
  - 680
  - 651
  - 683
  - 687
  - 689
  - 691
  - 661
  - 662
  - 665
  - 667
  - 669
  - 670
  ipykernel.iostream.OutStream.writelines:
  - 698
  - 699
  - 694
  - 695
  ipykernel.ipkernel:
  - 1
  - 53
  ipykernel.ipkernel.IPythonKernel:
  - 98
  - 100
  - 72
  - 104
  - 74
  - 75
  - 173
  - 79
  - 81
  - 113
  - 83
  - 114
  - 211
  - 88
  - 90
  - 92
  ipykernel.ipkernel.IPythonKernel.__init__:
  - 128
  - 159
  - 161
  - 162
  - 164
  - 165
  - 167
  - 171
  - 140
  - 155
  - 117
  - 118
  - 150
  - 151
  - 123
  - 127
  ipykernel.ipkernel.IPythonKernel._cancel_on_sigint:
  - 323
  - 358
  - 360
  - 363
  - 332
  - 343
  - 346
  ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.cancel_unless_done:
  - 337
  - 339
  ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.handle_sigint:
  - 355
  ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.handle_sigint.set_sigint_result:
  - 352
  - 350
  ipykernel.ipkernel.IPythonKernel._default_user_ns:
  - 102
  ipykernel.ipkernel.IPythonKernel._dummy_context_manager:
  - 368
  ipykernel.ipkernel.IPythonKernel._experimental_do_complete:
  - 552
  - 555
  - 556
  - 557
  - 559
  - 560
  - 563
  - 564
  - 565
  - 574
  ipykernel.ipkernel.IPythonKernel._forward_input:
  - 291
  ipykernel.ipkernel.IPythonKernel._restore_input:
  - 304
  ipykernel.ipkernel.IPythonKernel._user_module_changed:
  - 95
  ipykernel.ipkernel.IPythonKernel._user_ns_changed:
  - 107
  - 109
  ipykernel.ipkernel.IPythonKernel.banner:
  - 230
  ipykernel.ipkernel.IPythonKernel.dispatch_debugpy:
  - 224
  - 225
  - 226
  - 222
  ipykernel.ipkernel.IPythonKernel.do_apply:
  - 704
  - 705
  - 675
  - 708
  - 716
  - 686
  - 687
  - 719
  - 689
  - 720
  - 723
  - 726
  - 730
  - 698
  - 732
  - 701
  - 702
  ipykernel.ipkernel.IPythonKernel.do_clear:
  - 744
  - 741
  - 742
  - 743
  ipykernel.ipkernel.IPythonKernel.do_complete:
  - 522
  - 523
  - 524
  - 529
  - 530
  - 531
  - 534
  - 538
  ipykernel.ipkernel.IPythonKernel.do_debug_request:
  - 544
  - 547
  - 548
  ipykernel.ipkernel.IPythonKernel.do_execute:
  - 385
  - 514
  - 389
  - 517
  - 392
  - 395
  - 397
  - 404
  - 411
  - 414
  - 416
  - 419
  - 420
  - 426
  - 427
  - 436
  - 444
  - 448
  - 451
  - 456
  - 457
  - 458
  - 463
  - 464
  - 471
  - 473
  - 477
  - 482
  - 485
  - 486
  - 491
  - 497
  - 498
  - 500
  - 505
  - 506
  ipykernel.ipkernel.IPythonKernel.do_execute.run_cell:
  - 402
  ipykernel.ipkernel.IPythonKernel.do_history:
  - 643
  - 644
  - 652
  - 631
  - 633
  - 634
  - 638
  - 639
  ipykernel.ipkernel.IPythonKernel.do_inspect:
  - 609
  - 610
  - 611
  - 612
  - 592
  - 593
  - 600
  - 603
  ipykernel.ipkernel.IPythonKernel.do_is_complete:
  - 662
  - 663
  - 664
  - 668
  - 670
  ipykernel.ipkernel.IPythonKernel.do_shutdown:
  - 656
  - 657
  - 659
  ipykernel.ipkernel.IPythonKernel.execute_request:
  - 371
  - 372
  ipykernel.ipkernel.IPythonKernel.execution_count:
  - 311
  ipykernel.ipkernel.IPythonKernel.finish_metadata:
  - 285
  - 278
  ipykernel.ipkernel.IPythonKernel.init_metadata:
  - 266
  - 269
  - 262
  ipykernel.ipkernel.IPythonKernel.poll_stopped_queue:
  - 235
  - 237
  ipykernel.ipkernel.IPythonKernel.set_parent:
  - 257
  - 258
  - 259
  - 254
  ipykernel.ipkernel.IPythonKernel.start:
  - 240
  - 241
  - 243
  - 244
  - 246
  - 247
  - 248
  - 249
  - 250
  ipykernel.ipkernel.Kernel:
  - 751
  ipykernel.ipkernel.Kernel.__init__:
  - 754
  - 762
  - 757
  ipykernel.ipkernel._create_comm:
  - 48
  - 49
  ipykernel.ipkernel._get_comm_manager:
  - 58
  - 60
  - 62
  - 63
  ipykernel.jsonutil:
  - 1
  - 29
  - 23
  ipykernel.jsonutil.encode_images:
  - 53
  ipykernel.jsonutil.json_clean:
  - 129
  - 132
  - 134
  - 135
  - 137
  - 139
  - 140
  - 142
  - 146
  - 147
  - 148
  - 156
  - 157
  - 159
  - 160
  - 78
  - 101
  - 105
  - 113
  - 116
  - 118
  - 120
  - 122
  - 123
  - 124
  - 126
  ipykernel.kernelapp:
  - 64
  - 1
  - 96
  - 99
  - 100
  - 773
  - 774
  - 77
  - 78
  - 95
  - 63
  ipykernel.kernelapp.IPKernelApp:
  - 134
  - 135
  - 136
  - 138
  - 139
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 146
  - 147
  - 149
  - 159
  - 161
  - 172
  - 173
  - 174
  - 175
  - 176
  - 181
  - 185
  - 192
  - 193
  - 198
  - 199
  - 118
  - 121
  - 122
  - 125
  ipykernel.kernelapp.IPKernelApp._bind_socket:
  - 258
  - 260
  - 253
  - 255
  ipykernel.kernelapp.IPKernelApp._default_connection_dir:
  - 163
  ipykernel.kernelapp.IPKernelApp._init_asyncio_patch:
  - 681
  - 669
  - 678
  - 647
  ipykernel.kernelapp.IPKernelApp._try_bind_socket:
  - 227
  - 228
  - 229
  - 231
  - 232
  - 233
  - 236
  - 241
  ipykernel.kernelapp.IPKernelApp.abs_connection_file:
  - 168
  - 167
  ipykernel.kernelapp.IPKernelApp.cleanup_connection_file:
  - 297
  - 301
  - 293
  - 295
  ipykernel.kernelapp.IPKernelApp.close:
  - 401
  - 403
  - 404
  - 405
  - 406
  - 407
  - 408
  - 409
  - 410
  - 411
  - 412
  - 413
  - 414
  - 415
  - 416
  - 417
  - 418
  - 419
  - 421
  - 422
  - 423
  - 424
  - 426
  - 427
  - 428
  - 429
  - 430
  - 431
  - 432
  - 433
  - 434
  ipykernel.kernelapp.IPKernelApp.configure_tornado_logger:
  - 640
  - 641
  - 642
  - 643
  - 644
  - 633
  ipykernel.kernelapp.IPKernelApp.excepthook:
  - 210
  - 212
  ipykernel.kernelapp.IPKernelApp.init_blackhole:
  - 473
  - 474
  - 475
  - 476
  - 478
  ipykernel.kernelapp.IPKernelApp.init_connection_file:
  - 322
  - 304
  - 305
  - 306
  - 308
  - 310
  - 312
  - 314
  - 317
  - 319
  ipykernel.kernelapp.IPKernelApp.init_control:
  - 352
  - 354
  - 355
  - 357
  - 360
  - 362
  - 363
  - 365
  - 371
  - 372
  - 351
  ipykernel.kernelapp.IPKernelApp.init_crash_handler:
  - 206
  ipykernel.kernelapp.IPKernelApp.init_gui_pylab:
  - 602
  - 596
  - 622
  ipykernel.kernelapp.IPKernelApp.init_gui_pylab.print_tb:
  - 617
  - 619
  ipykernel.kernelapp.IPKernelApp.init_heartbeat:
  - 391
  - 394
  - 395
  - 397
  - 398
  ipykernel.kernelapp.IPKernelApp.init_io:
  - 514
  - 482
  - 483
  - 484
  - 485
  - 486
  - 491
  - 492
  - 494
  - 495
  - 496
  - 497
  - 498
  - 499
  - 500
  - 501
  - 503
  - 504
  - 509
  - 510
  - 511
  ipykernel.kernelapp.IPKernelApp.init_iopub:
  - 384
  - 385
  - 386
  - 379
  - 380
  - 382
  - 383
  ipykernel.kernelapp.IPKernelApp.init_kernel:
  - 589
  - 559
  - 560
  - 561
  - 593
  - 563
  - 564
  - 565
  - 567
  - 568
  - 569
  - 573
  ipykernel.kernelapp.IPKernelApp.init_pdb:
  - 684
  - 693
  ipykernel.kernelapp.IPKernelApp.init_poller:
  - 215
  - 216
  - 217
  - 218
  - 219
  - 223
  ipykernel.kernelapp.IPKernelApp.init_shell:
  - 627
  - 628
  - 629
  - 630
  ipykernel.kernelapp.IPKernelApp.init_signal:
  - 555
  - 556
  ipykernel.kernelapp.IPKernelApp.init_sockets:
  - 325
  - 326
  - 328
  - 329
  - 331
  - 333
  - 334
  - 336
  - 338
  - 339
  - 341
  - 347
  - 348
  ipykernel.kernelapp.IPKernelApp.initialize:
  - 701
  - 702
  - 703
  - 704
  - 707
  - 708
  - 709
  - 710
  - 711
  - 712
  - 714
  - 717
  - 718
  - 720
  - 724
  - 725
  - 726
  - 728
  - 729
  - 730
  - 731
  - 732
  - 733
  - 736
  - 737
  ipykernel.kernelapp.IPKernelApp.log_connection_info:
  - 455
  - 456
  - 459
  - 460
  - 461
  - 462
  - 464
  - 437
  - 438
  - 439
  - 441
  ipykernel.kernelapp.IPKernelApp.patch_io:
  - 544
  - 526
  ipykernel.kernelapp.IPKernelApp.patch_io.enable:
  - 540
  ipykernel.kernelapp.IPKernelApp.patch_io.register:
  - 548
  ipykernel.kernelapp.IPKernelApp.reset_io:
  - 517
  ipykernel.kernelapp.IPKernelApp.start:
  - 740
  - 741
  - 742
  - 743
  - 744
  - 745
  - 746
  - 747
  - 750
  - 751
  - 753
  - 758
  ipykernel.kernelapp.IPKernelApp.write_connection_file:
  - 288
  - 290
  - 265
  - 267
  - 277
  - 281
  - 282
  - 283
  - 284
  - 285
  ipykernel.kernelapp.main:
  - 768
  - 769
  - 770
  - 767
  ipykernel.kernelbase:
  - 73
  - 1
  - 26
  ipykernel.kernelbase.Kernel:
  - 136
  - 1288
  - 267
  - 274
  - 152
  - 154
  - 156
  - 157
  - 158
  - 159
  - 160
  - 161
  - 164
  - 165
  - 167
  - 176
  - 181
  - 188
  - 197
  - 206
  - 207
  - 91
  - 98
  - 102
  - 235
  - 109
  - 110
  - 111
  - 240
  - 113
  - 242
  - 125
  ipykernel.kernelbase.Kernel.__init__:
  - 320
  - 327
  - 328
  - 329
  - 330
  - 331
  - 301
  - 302
  - 335
  - 337
  - 338
  - 342
  - 312
  - 313
  - 316
  - 317
  ipykernel.kernelbase.Kernel.__init__.<lambda2>:
  - 338
  ipykernel.kernelbase.Kernel._abort_queues:
  - 1313
  - 1337
  - 1320
  - 1321
  - 1329
  - 1332
  - 1340
  - 1305
  - 1338
  - 1308
  - 1309
  - 1311
  ipykernel.kernelbase.Kernel._abort_queues.stop_aborting:
  - 1326
  ipykernel.kernelbase.Kernel._at_shutdown:
  - 1538
  - 1540
  - 1541
  - 1542
  - 1527
  - 1529
  - 1531
  - 1534
  - 1535
  ipykernel.kernelbase.Kernel._create_control_lock:
  - 544
  ipykernel.kernelbase.Kernel._default_ident:
  - 169
  ipykernel.kernelbase.Kernel._get_shell_context_var:
  - 730
  - 723
  ipykernel.kernelbase.Kernel._input_request:
  - 1440
  - 1441
  - 1442
  - 1443
  - 1412
  - 1413
  - 1414
  - 1415
  - 1450
  - 1420
  - 1422
  - 1455
  - 1457
  - 1428
  - 1429
  ipykernel.kernelbase.Kernel._no_raw_input:
  - 1363
  ipykernel.kernelbase.Kernel._parent_header:
  - 226
  - 221
  ipykernel.kernelbase.Kernel._post_dummy_stop_aborting_message:
  - 1299
  - 1291
  - 1295
  ipykernel.kernelbase.Kernel._process_children:
  - 1483
  - 1489
  - 1490
  - 1491
  - 1493
  - 1495
  - 1497
  - 1501
  - 1502
  ipykernel.kernelbase.Kernel._progressively_terminate_all_children:
  - 1507
  - 1508
  - 1511
  - 1512
  - 1513
  - 1514
  - 1515
  - 1518
  - 1519
  - 1524
  ipykernel.kernelbase.Kernel._publish_debug_event:
  - 672
  - 673
  - 666
  - 668
  ipykernel.kernelbase.Kernel._publish_execute_input:
  - 644
  - 636
  - 637
  - 639
  ipykernel.kernelbase.Kernel._publish_status:
  - 648
  - 649
  - 651
  - 655
  - 656
  ipykernel.kernelbase.Kernel._publish_status_and_flush:
  - 660
  - 661
  - 662
  - 663
  ipykernel.kernelbase.Kernel._send_abort_reply:
  - 1344
  - 1346
  - 1347
  - 1349
  - 1350
  - 1351
  - 1353
  - 1343
  ipykernel.kernelbase.Kernel._send_interrupt_children:
  - 1041
  - 1042
  - 1044
  - 1045
  - 1048
  - 1050
  - 1052
  - 1055
  ipykernel.kernelbase.Kernel._shell_streams_changed:
  - 144
  - 138
  - 149
  - 143
  ipykernel.kernelbase.Kernel._shell_streams_default:
  - 132
  - 127
  ipykernel.kernelbase.Kernel._signal_children:
  - 1473
  - 1474
  - 1475
  - 1476
  - 1478
  - 1463
  - 1469
  - 1470
  - 1471
  ipykernel.kernelbase.Kernel._topic:
  - 1283
  - 1286
  ipykernel.kernelbase.Kernel._update_eventloop:
  - 104
  - 105
  - 106
  - 107
  ipykernel.kernelbase.Kernel.comm_info_request:
  - 1025
  - 1028
  - 1030
  - 1031
  - 1036
  - 1037
  - 1038
  - 1021
  - 1022
  ipykernel.kernelbase.Kernel.complete_request:
  - 898
  - 899
  - 904
  - 905
  - 887
  - 888
  - 894
  - 895
  ipykernel.kernelbase.Kernel.connect_request:
  - 983
  - 984
  - 986
  - 988
  - 989
  ipykernel.kernelbase.Kernel.create_subshell_request:
  - 1216
  - 1217
  - 1220
  - 1225
  - 1226
  - 1227
  - 1210
  - 1214
  ipykernel.kernelbase.Kernel.debug_request:
  - 1153
  - 1154
  - 1155
  - 1138
  - 1139
  - 1142
  - 1143
  - 1146
  - 1147
  ipykernel.kernelbase.Kernel.delete_subshell_request:
  - 1252
  - 1253
  - 1255
  - 1230
  - 1234
  - 1236
  - 1237
  - 1240
  - 1246
  ipykernel.kernelbase.Kernel.dispatch_control:
  - 345
  - 348
  ipykernel.kernelbase.Kernel.dispatch_shell:
  - 399
  - 400
  - 405
  - 408
  - 411
  - 414
  - 415
  - 420
  - 422
  - 424
  - 428
  - 429
  - 432
  - 434
  - 435
  - 442
  - 443
  - 446
  - 447
  - 448
  - 449
  - 455
  - 456
  - 458
  - 459
  - 461
  - 462
  - 463
  - 466
  - 467
  - 468
  - 470
  - 472
  - 474
  - 476
  - 477
  - 478
  - 480
  - 483
  - 486
  - 488
  - 490
  - 491
  - 492
  - 493
  - 494
  ipykernel.kernelbase.Kernel.do_complete:
  - 908
  ipykernel.kernelbase.Kernel.do_execute:
  - 883
  ipykernel.kernelbase.Kernel.do_history:
  - 979
  ipykernel.kernelbase.Kernel.do_inspect:
  - 944
  ipykernel.kernelbase.Kernel.do_is_complete:
  - 1134
  ipykernel.kernelbase.Kernel.do_shutdown:
  - 1108
  ipykernel.kernelbase.Kernel.enter_eventloop:
  - 506
  - 507
  - 540
  - 510
  - 511
  ipykernel.kernelbase.Kernel.enter_eventloop.advance_eventloop:
  - 516
  - 517
  - 519
  - 521
  - 524
  - 525
  - 527
  ipykernel.kernelbase.Kernel.enter_eventloop.schedule_next:
  - 536
  - 537
  - 530
  ipykernel.kernelbase.Kernel.execute_request:
  - 787
  - 788
  - 793
  - 794
  - 795
  - 796
  - 797
  - 798
  - 800
  - 801
  - 804
  - 806
  - 810
  - 812
  - 823
  - 825
  - 828
  - 831
  - 833
  - 836
  - 837
  - 843
  - 844
  - 845
  - 846
  - 850
  - 851
  - 854
  - 855
  - 857
  - 866
  - 868
  - 869
  - 870
  ipykernel.kernelbase.Kernel.finish_metadata:
  - 780
  ipykernel.kernelbase.Kernel.get_parent:
  - 710
  - 712
  - 717
  - 720
  - 695
  ipykernel.kernelbase.Kernel.get_process_metric_value:
  - 1160
  - 1161
  - 1162
  - 1158
  ipykernel.kernelbase.Kernel.getpass:
  - 1378
  - 1381
  - 1386
  - 1388
  - 1389
  - 1369
  - 1375
  ipykernel.kernelbase.Kernel.history_request:
  - 963
  - 964
  - 965
  - 948
  - 949
  - 953
  - 954
  - 957
  - 958
  ipykernel.kernelbase.Kernel.init_metadata:
  - 776
  - 769
  ipykernel.kernelbase.Kernel.inspect_request:
  - 929
  - 932
  - 933
  - 939
  - 940
  - 941
  - 918
  - 919
  - 923
  - 926
  - 927
  ipykernel.kernelbase.Kernel.interrupt_request:
  - 1058
  - 1059
  - 1063
  - 1069
  - 1070
  - 1071
  - 1074
  ipykernel.kernelbase.Kernel.is_complete_request:
  - 1120
  - 1121
  - 1124
  - 1125
  - 1129
  - 1130
  - 1131
  - 1114
  - 1115
  ipykernel.kernelbase.Kernel.kernel_info:
  - 996
  - 997
  - 998
  - 999
  ipykernel.kernelbase.Kernel.kernel_info_request:
  - 1012
  - 1013
  - 1016
  - 1017
  - 1018
  ipykernel.kernelbase.Kernel.list_subshell_request:
  - 1258
  - 1262
  - 1264
  - 1265
  - 1268
  - 1273
  - 1274
  - 1276
  ipykernel.kernelbase.Kernel.post_handler_hook:
  - 502
  - 503
  ipykernel.kernelbase.Kernel.pre_handler_hook:
  - 497
  - 499
  ipykernel.kernelbase.Kernel.process_control:
  - 384
  - 385
  - 351
  - 352
  - 354
  - 356
  - 358
  - 361
  - 364
  - 365
  - 370
  - 371
  - 372
  - 375
  - 376
  - 377
  - 379
  - 381
  - 382
  - 383
  ipykernel.kernelbase.Kernel.raw_input:
  - 1394
  - 1400
  - 1403
  - 1404
  - 1405
  - 1406
  ipykernel.kernelbase.Kernel.record_ports:
  - 624
  ipykernel.kernelbase.Kernel.send_response:
  - 760
  - 746
  - 754
  - 756
  ipykernel.kernelbase.Kernel.set_parent:
  - 677
  - 685
  - 689
  - 690
  - 692
  ipykernel.kernelbase.Kernel.shell_channel_thread_main:
  - 576
  - 579
  - 584
  - 586
  - 587
  - 591
  - 593
  - 595
  - 575
  ipykernel.kernelbase.Kernel.shell_main:
  - 608
  - 621
  - 598
  - 599
  - 600
  - 601
  - 604
  ipykernel.kernelbase.Kernel.should_handle:
  - 388
  ipykernel.kernelbase.Kernel.shutdown_request:
  - 1090
  - 1092
  - 1094
  - 1096
  - 1097
  - 1099
  - 1101
  - 1102
  - 1103
  - 1105
  - 1078
  - 1079
  - 1081
  - 1082
  - 1085
  - 1086
  ipykernel.kernelbase.Kernel.start:
  - 547
  - 548
  - 550
  - 551
  - 553
  - 557
  - 559
  - 561
  - 562
  - 563
  - 564
  - 566
  - 567
  - 572
  ipykernel.kernelbase.Kernel.usage_request:
  - 1171
  - 1172
  - 1174
  - 1175
  - 1176
  - 1180
  - 1183
  - 1185
  - 1186
  - 1189
  - 1190
  - 1192
  - 1193
  - 1196
  - 1199
  - 1201
  - 1202
  - 1203
  - 1204
  ipykernel.kernelbase._accepts_parameters:
  - 77
  - 78
  - 80
  - 81
  - 85
  ipykernel.kernelspec:
  - 1
  - 28
  - 293
  - 292
  ipykernel.kernelspec.InstallIPythonKernelSpecApp:
  - 202
  - 204
  ipykernel.kernelspec.InstallIPythonKernelSpecApp.initialize:
  - 208
  - 207
  ipykernel.kernelspec.InstallIPythonKernelSpecApp.start:
  - 257
  - 264
  - 270
  - 271
  - 272
  - 274
  - 283
  - 284
  - 285
  - 286
  - 287
  - 289
  - 213
  - 216
  - 219
  - 224
  - 231
  - 237
  - 243
  - 249
  ipykernel.kernelspec.get_kernel_dict:
  - 64
  - 62
  ipykernel.kernelspec.install:
  - 194
  - 163
  - 185
  - 165
  - 167
  - 187
  - 176
  - 177
  - 180
  - 118
  - 152
  - 153
  - 155
  - 190
  - 158
  ipykernel.kernelspec.make_ipkernel_cmd:
  - 52
  - 37
  ipykernel.kernelspec.write_kernel_spec:
  - 98
  - 100
  - 101
  - 102
  - 103
  - 105
  - 79
  - 86
  - 87
  - 90
  - 93
  - 94
  - 95
  ipykernel.log:
  - 1
  - 7
  ipykernel.log.EnginePUBHandler:
  - 15
  ipykernel.log.EnginePUBHandler.__init__:
  - 20
  - 21
  ipykernel.log.EnginePUBHandler.root_topic:
  - 26
  - 28
  ipykernel.parentpoller:
  - 1
  ipykernel.parentpoller.ParentPollerUnix:
  - 21
  ipykernel.parentpoller.ParentPollerUnix.__init__:
  - 26
  - 34
  ipykernel.parentpoller.ParentPollerUnix.run:
  - 64
  - 39
  - 44
  - 45
  - 48
  - 50
  - 56
  - 59
  - 60
  - 61
  - 62
  ipykernel.parentpoller.ParentPollerWindows:
  - 70
  ipykernel.parentpoller.ParentPollerWindows.__init__:
  - 89
  - 90
  - 76
  ipykernel.parentpoller.ParentPollerWindows.run:
  - 129
  - 130
  - 132
  - 133
  - 134
  - 135
  - 137
  - 98
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 115
  - 116
  - 117
  - 122
  - 124
  - 126
  ipykernel.pylab.backend_inline:
  - 1
  - 10
  ipykernel.pylab.config:
  - 1
  - 10
  ipykernel.shellchannel:
  - 1
  ipykernel.shellchannel.ShellChannelThread:
  - 16
  ipykernel.shellchannel.ShellChannelThread.__init__:
  - 33
  - 27
  - 28
  - 35
  ipykernel.shellchannel.ShellChannelThread.manager:
  - 40
  - 41
  - 42
  ipykernel.shellchannel.ShellChannelThread.run:
  - 50
  - 52
  - 54
  - 55
  ipykernel.socket_pair:
  - 1
  ipykernel.socket_pair.SocketPair:
  - 13
  ipykernel.socket_pair.SocketPair.__init__:
  - 26
  - 27
  - 28
  - 29
  - 30
  - 31
  ipykernel.socket_pair.SocketPair._address:
  - 49
  ipykernel.socket_pair.SocketPair.close:
  - 34
  - 35
  - 37
  - 38
  - 39
  ipykernel.socket_pair.SocketPair.on_recv:
  - 42
  - 44
  - 45
  - 46
  ipykernel.subshell:
  - 1
  ipykernel.subshell.SubshellThread:
  - 13
  ipykernel.subshell.SubshellThread.__init__:
  - 33
  - 24
  - 25
  - 27
  - 28
  ipykernel.subshell.SubshellThread.run:
  - 40
  - 41
  - 36
  - 38
  ipykernel.subshell_manager:
  - 1
  ipykernel.subshell_manager.SubshellManager:
  - 22
  ipykernel.subshell_manager.SubshellManager.__init__:
  - 66
  - 67
  - 44
  - 45
  - 51
  - 55
  - 56
  - 62
  ipykernel.subshell_manager.SubshellManager._create_subshell:
  - 160
  - 162
  - 163
  - 169
  - 171
  - 174
  - 178
  - 159
  ipykernel.subshell_manager.SubshellManager._delete_subshell:
  - 186
  - 189
  - 182
  - 191
  ipykernel.subshell_manager.SubshellManager._process_control_request:
  - 224
  - 197
  - 200
  - 203
  - 207
  - 208
  - 209
  - 211
  - 212
  - 213
  - 220
  ipykernel.subshell_manager.SubshellManager._send_on_shell_channel:
  - 227
  - 228
  ipykernel.subshell_manager.SubshellManager._stop_subshell:
  - 231
  - 232
  - 234
  - 235
  - 236
  ipykernel.subshell_manager.SubshellManager.close:
  - 72
  - 73
  - 77
  - 80
  - 82
  - 83
  - 84
  ipykernel.subshell_manager.SubshellManager.get_shell_channel_to_subshell_pair:
  - 89
  - 87
  ipykernel.subshell_manager.SubshellManager.get_shell_channel_to_subshell_socket:
  - 104
  - 107
  ipykernel.subshell_manager.SubshellManager.get_subshell_aborting:
  - 110
  ipykernel.subshell_manager.SubshellManager.get_subshell_asyncio_lock:
  - 115
  ipykernel.subshell_manager.SubshellManager.get_subshell_to_shell_channel_socket:
  - 98
  - 95
  ipykernel.subshell_manager.SubshellManager.list_subshell:
  - 120
  - 125
  ipykernel.subshell_manager.SubshellManager.set_on_recv_callback:
  - 128
  - 131
  - 133
  - 134
  ipykernel.subshell_manager.SubshellManager.set_subshell_aborting:
  - 138
  ipykernel.subshell_manager.SubshellManager.subshell_id_from_thread_id:
  - 152
  - 153
  - 150
  - 143
  ipykernel.thread:
  - 1
  ipykernel.thread.BaseThread:
  - 12
  ipykernel.thread.BaseThread.__init__:
  - 16
  - 17
  - 15
  ipykernel.thread.BaseThread.run:
  - 24
  - 26
  - 22
  ipykernel.thread.BaseThread.stop:
  - 33
  - 29
  ipykernel.trio_runner:
  - 1
  ipykernel.trio_runner.TrioRunner:
  - 14
  ipykernel.trio_runner.TrioRunner.__call__:
  - 72
  - 62
  ipykernel.trio_runner.TrioRunner.__call__.loc:
  - 65
  - 66
  ipykernel.trio_runner.TrioRunner.__init__:
  - 17
  ipykernel.trio_runner.TrioRunner.initialize:
  - 22
  - 23
  - 24
  - 25
  - 29
  - 30
  ipykernel.trio_runner.TrioRunner.initialize.<lambda1>:
  - 25
  ipykernel.trio_runner.TrioRunner.interrupt:
  - 33
  - 34
  - 35
  ipykernel.trio_runner.TrioRunner.run:
  - 41
  - 42
  - 59
  - 58
  ipykernel.trio_runner.TrioRunner.run.log_nursery_exc:
  - 45
  - 46
  ipykernel.trio_runner.TrioRunner.run.trio_main:
  - 56
  - 49
  - 50
  - 51
  ipykernel.utils:
  - 1
  - 39
  - 40
  - 41
  - 12
  ipykernel.utils.LazyDict:
  - 18
  ipykernel.utils.LazyDict.__getitem__:
  - 29
  - 30
  ipykernel.utils.LazyDict.__iter__:
  - 36
  ipykernel.utils.LazyDict.__len__:
  - 33
  ipykernel.utils._async_in_context:
  - 76
  - 47
  - 52
  - 53
  - 55
  - 57
  ipykernel.utils._async_in_context.preserve_context:
  - 74
  - 69
  - 71
  ipykernel.utils._async_in_context.run_in_context:
  - 59
  - 60
  ipykernel.utils._async_in_context.run_in_context_pre311:
  - 79
  ipykernel.zmqshell:
  - 1
  - 794
  ipykernel.zmqshell.KernelMagics:
  - 392
  - 395
  - 369
  - 371
  - 252
  ipykernel.zmqshell.KernelMagics.autosave:
  - 455
  - 465
  - 471
  - 472
  - 475
  - 476
  - 478
  ipykernel.zmqshell.KernelMagics.clear:
  - 362
  - 364
  - 365
  - 367
  ipykernel.zmqshell.KernelMagics.connect_info:
  - 418
  - 419
  - 421
  - 425
  - 426
  - 428
  - 429
  - 430
  - 405
  ipykernel.zmqshell.KernelMagics.edit:
  - 355
  - 264
  - 340
  - 343
  - 346
  - 351
  ipykernel.zmqshell.KernelMagics.less:
  - 384
  - 386
  - 388
  - 389
  - 390
  - 377
  - 380
  ipykernel.zmqshell.KernelMagics.man:
  - 401
  - 399
  ipykernel.zmqshell.KernelMagics.qtconsole:
  - 448
  - 450
  - 442
  ipykernel.zmqshell.KernelMagics.subshell:
  - 482
  - 487
  - 491
  - 494
  - 495
  - 498
  - 501
  - 504
  - 506
  - 507
  - 508
  - 509
  - 510
  - 511
  ipykernel.zmqshell.ZMQDisplayPublisher:
  - 96
  - 70
  - 55
  - 57
  - 58
  - 60
  - 62
  ipykernel.zmqshell.ZMQDisplayPublisher.__init__:
  - 73
  - 74
  - 75
  ipykernel.zmqshell.ZMQDisplayPublisher._default_thread_local:
  - 98
  - 99
  ipykernel.zmqshell.ZMQDisplayPublisher._flush_streams:
  - 92
  - 93
  - 94
  ipykernel.zmqshell.ZMQDisplayPublisher._hooks:
  - 103
  ipykernel.zmqshell.ZMQDisplayPublisher.clear_output:
  - 193
  - 194
  - 196
  - 199
  - 200
  - 201
  - 204
  - 183
  ipykernel.zmqshell.ZMQDisplayPublisher.parent_header:
  - 81
  ipykernel.zmqshell.ZMQDisplayPublisher.publish:
  - 134
  - 166
  - 137
  - 171
  - 172
  - 173
  - 142
  - 144
  - 145
  - 146
  - 147
  - 176
  - 149
  - 150
  - 119
  - 152
  - 154
  - 156
  ipykernel.zmqshell.ZMQDisplayPublisher.register_hook:
  - 211
  - 227
  ipykernel.zmqshell.ZMQDisplayPublisher.set_parent:
  - 88
  - 86
  - 87
  ipykernel.zmqshell.ZMQDisplayPublisher.unregister_hook:
  - 244
  - 230
  ipykernel.zmqshell.ZMQInteractiveShell:
  - 545
  - 515
  - 548
  - 550
  - 552
  - 556
  - 532
  - 533
  - 534
  - 535
  - 538
  ipykernel.zmqshell.ZMQInteractiveShell.__init__:
  - 529
  - 530
  - 518
  - 526
  ipykernel.zmqshell.ZMQInteractiveShell._default_exiter:
  - 554
  ipykernel.zmqshell.ZMQInteractiveShell._showtraceback:
  - 672
  - 673
  - 680
  - 681
  - 683
  - 686
  - 667
  - 668
  ipykernel.zmqshell.ZMQInteractiveShell._update_exit_now:
  - 558
  - 559
  - 560
  - 562
  - 563
  - 564
  - 565
  - 566
  ipykernel.zmqshell.ZMQInteractiveShell.ask_exit:
  - 658
  - 652
  - 654
  ipykernel.zmqshell.ZMQInteractiveShell.data_pub:
  - 642
  - 635
  - 636
  ipykernel.zmqshell.ZMQInteractiveShell.enable_gui:
  - 577
  - 573
  ipykernel.zmqshell.ZMQInteractiveShell.get_parent:
  - 734
  ipykernel.zmqshell.ZMQInteractiveShell.init_data_pub:
  - 631
  ipykernel.zmqshell.ZMQInteractiveShell.init_environment:
  - 583
  ipykernel.zmqshell.ZMQInteractiveShell.init_hooks:
  - 626
  - 627
  - 628
  ipykernel.zmqshell.ZMQInteractiveShell.init_magics:
  - 744
  - 745
  - 746
  - 743
  ipykernel.zmqshell.ZMQInteractiveShell.init_virtualenv:
  - 749
  ipykernel.zmqshell.ZMQInteractiveShell.parent_header:
  - 715
  - 708
  ipykernel.zmqshell.ZMQInteractiveShell.payloadpage_page:
  - 613
  - 615
  - 617
  - 623
  - 598
  ipykernel.zmqshell.ZMQInteractiveShell.run_cell:
  - 661
  - 663
  ipykernel.zmqshell.ZMQInteractiveShell.set_next_input:
  - 696
  - 698
  - 703
  ipykernel.zmqshell.ZMQInteractiveShell.set_parent:
  - 718
  - 724
  - 725
  - 726
  - 727
  - 728
  - 729
  - 730
  - 731
  ipykernel.zmqshell.ZMQInteractiveShell.system_piped:
  - 779
  - 780
  - 783
  - 784
  - 786
  - 756
  - 788
  - 765
Fuzzer filename: /src/fuzz_unpack_roundtrip.py
Inheritance:
  ipykernel.comm.comm.BaseComm: []
  ipykernel.comm.comm.Comm:
  - BaseComm
  ipykernel.comm.manager.CommManager: []
  ipykernel.compiler.XCachingCompiler:
  - CachingCompiler
  ipykernel.control.ControlThread:
  - BaseThread
  ipykernel.debugger.Debugger: []
  ipykernel.debugger.DebugpyClient: []
  ipykernel.debugger.DebugpyMessageQueue: []
  ipykernel.debugger.VariableExplorer: []
  ipykernel.debugger._DummyPyDB: []
  ipykernel.debugger._FakeCode: []
  ipykernel.debugger._FakeFrame: []
  ipykernel.displayhook.ZMQDisplayHook: []
  ipykernel.displayhook.ZMQShellDisplayHook:
  - DisplayHook
  ipykernel.eventloops.loop_tk.BasicAppWrapper: []
  ipykernel.eventloops.loop_tk.TimedAppWrapper: []
  ipykernel.eventloops.loop_wx.IPWxApp: []
  ipykernel.eventloops.loop_wx.TimerFrame: []
  ipykernel.gui.gtk3embed.GTKEmbed: []
  ipykernel.gui.gtkembed.GTKEmbed: []
  ipykernel.heartbeat.Heartbeat:
  - Thread
  ipykernel.inprocess.blocking.BlockingInProcessChannel:
  - InProcessChannel
  ipykernel.inprocess.blocking.BlockingInProcessKernelClient:
  - InProcessKernelClient
  ipykernel.inprocess.blocking.BlockingInProcessStdInChannel:
  - BlockingInProcessChannel
  ipykernel.inprocess.channels.InProcessChannel: []
  ipykernel.inprocess.channels.InProcessHBChannel: []
  ipykernel.inprocess.client.InProcessKernelClient:
  - KernelClient
  ipykernel.inprocess.ipkernel.InProcessInteractiveShell:
  - ZMQInteractiveShell
  ipykernel.inprocess.ipkernel.InProcessKernel:
  - IPythonKernel
  ipykernel.inprocess.manager.InProcessKernelManager:
  - KernelManager
  ipykernel.inprocess.socket.DummySocket:
  - HasTraits
  ipykernel.iostream.BackgroundSocket: []
  ipykernel.iostream.IOPubThread: []
  ipykernel.iostream.OutStream:
  - TextIOBase
  ipykernel.ipkernel.IPythonKernel:
  - KernelBase
  ipykernel.ipkernel.Kernel:
  - IPythonKernel
  ipykernel.kernelapp.IPKernelApp:
  - ConnectionFileMixin
  - InteractiveShellApp
  - BaseIPythonApplication
  ipykernel.kernelbase.Kernel:
  - SingletonConfigurable
  ipykernel.kernelspec.InstallIPythonKernelSpecApp:
  - Application
  ipykernel.log.EnginePUBHandler:
  - PUBHandler
  ipykernel.parentpoller.ParentPollerUnix:
  - Thread
  ipykernel.parentpoller.ParentPollerWindows:
  - Thread
  ipykernel.shellchannel.ShellChannelThread:
  - BaseThread
  ipykernel.socket_pair.SocketPair: []
  ipykernel.subshell.SubshellThread:
  - BaseThread
  ipykernel.subshell_manager.SubshellManager: []
  ipykernel.thread.BaseThread:
  - Thread
  ipykernel.trio_runner.TrioRunner: []
  ipykernel.utils.LazyDict: []
  ipykernel.zmqshell.KernelMagics:
  - Magics
  ipykernel.zmqshell.ZMQDisplayPublisher:
  - DisplayPublisher
  ipykernel.zmqshell.ZMQInteractiveShell:
  - InteractiveShell
ep:
  func_name: TestOneInput
  module: '...fuzz_unpack_roundtrip'
