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_serialization_roundtrip'
    functionSourceFile: '...fuzz_serialization_roundtrip'
    functionUses: 0
    functionsReached:
    - atheris.Setup
    - atheris.instrument_all
    - atheris.Fuzz
    - '...fuzz_serialization_roundtrip.main'
    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_serialization_roundtrip.ConsumeRandomLengthBufferList'
    functionSourceFile: '...fuzz_serialization_roundtrip'
    functionUses: 1
    functionsReached:
    - fdp.ConsumeIntInRange
    - buffers.append
    - <builtin>.range
    - fdp.ConsumeBytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 30
    functionName: '...fuzz_serialization_roundtrip.TestOneInput'
    functionSourceFile: '...fuzz_serialization_roundtrip'
    functionUses: 0
    functionsReached:
    - fdp.ConsumeIntInRange
    - ipykernel.serialize.serialize_object
    - ipykernel.serialize.deserialize_object
    - <builtin>.range
    - buffers.append
    - atheris.FuzzedDataProvider
    - fdp.ConsumeBytes
    - '...fuzz_serialization_roundtrip.ConsumeRandomLengthBufferList'
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.deserialize_object
    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.serialize_object
    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: 42
    functionName: '...fuzz_serialization_roundtrip.main'
    functionSourceFile: '...fuzz_serialization_roundtrip'
    functionUses: 1
    functionsReached:
    - atheris.Setup
    - atheris.instrument_all
    - atheris.Fuzz
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 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 0x7f4acf0a8670>
    argNames:
    - app
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: ipykernel.connect.get_connection_file
    functionSourceFile: ipykernel.connect
    functionUses: 5
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.initialized
    - IPython.core.application.BaseIPythonApplication.instance
    - traitlets.utils.filefind
    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:
    - ipykernel.connect.get_connection_file
    - IPython.core.application.BaseIPythonApplication.initialized
    - traitlets.utils.filefind
    - jupyter_client.find_connection_file
    - IPython.core.application.BaseIPythonApplication.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: 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 0x7f4acee3edf0>
    - <ast.Constant object at 0x7f4acee3ef10>
    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:
    - ipykernel.connect.get_connection_file
    - IPython.core.application.BaseIPythonApplication.initialized
    - ipykernel.connect._find_connection_file
    - traitlets.utils.filefind
    - f.read
    - json.loads
    - <builtin>.open
    - info.get
    - jupyter_client.find_connection_file
    - IPython.core.application.BaseIPythonApplication.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: <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 0x7f4acef08f10>
    - <ast.Constant object at 0x7f4acef08d00>
    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:
    - ipykernel.connect.get_connection_file
    - IPython.core.application.BaseIPythonApplication.initialized
    - ipykernel.connect._find_connection_file
    - traitlets.utils.filefind
    - subprocess.Popen
    - jupyter_client.find_connection_file
    - IPython.core.application.BaseIPythonApplication.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: 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:
    - kernel_flags.update
    - app.initialize
    - ipykernel.kernelapp.main
    - <builtin>.dict
    - 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.default
    - zmq.PUB
    - traitlets.traitlets.Integer.tag
    - traitlets.traitlets.Type.tag
    - traitlets.traitlets.Type
    - traitlets.traitlets.Instance
    - traitlets.traitlets.Bool.tag
    - traitlets.traitlets.Bool
    - <builtin>.int
    - traitlets.traitlets.Integer
    - traitlets.traitlets.Unicode
    - traitlets.traitlets.Dict
    - IPython.core.application.catch_config_error
    - traitlets.traitlets.DottedObjectName.tag
    - os.environ.get
    - traitlets.traitlets.DottedObjectName
    - 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.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: zmq.PUB
    functionSourceFile: zmq
    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: 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:
    - <builtin>.str
    - 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: 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: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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:
    - <builtin>.super
    - ipykernel.parentpoller.ParentPollerUnix.__init__
    - 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 0x7f4acf048970>
    - <ast.Constant object at 0x7f4acf0487c0>
    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 0x7f4acf0267c0>
    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:
    - pathlib.Path
    - jupyter_client.session.Session.bind_to_random_port
    - zmq.PUB.bind
    - zmq.PUB.bind_to_random_port
    - pathlib.Path.exists
    - jupyter_client.session.Session.bind
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.bind_to_random_port
    functionSourceFile: zmq
    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_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: 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: zmq.PUB.bind
    functionSourceFile: zmq
    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: 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:
    - <builtin>.range
    - pathlib.Path
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - jupyter_client.session.Session.bind_to_random_port
    - zmq.PUB.bind
    - zmq.PUB.bind_to_random_port
    - pathlib.Path.exists
    - jupyter_client.session.Session.bind
    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:
    - ipykernel.connect.get_connection_info
    - pathlib.Path
    - ipykernel.connect.get_connection_file
    - IPython.core.application.BaseIPythonApplication.initialized
    - ipykernel.connect._find_connection_file
    - IPython.core.application.BaseIPythonApplication.log.debug
    - traitlets.utils.filefind
    - f.read
    - <builtin>.dict
    - <builtin>.isinstance
    - json.loads
    - pathlib.Path.exists
    - <builtin>.open
    - ipykernel.kernelapp.IPKernelApp.write_connection_file
    - jupyter_client.find_connection_file
    - IPython.core.application.BaseIPythonApplication.instance
    - info.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: <builtin>.isinstance
    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.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
    - IPython.core.application.BaseIPythonApplication.cleanup_ipc_files
    - pathlib.Path.unlink
    - 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: 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.load_connection_file
    - pathlib.Path
    - IPython.core.application.BaseIPythonApplication.exit
    - IPython.core.application.BaseIPythonApplication.log.debug
    - traitlets.utils.filefind
    - pathlib.Path.parent.mkdir
    - os.getpid
    - IPython.core.application.BaseIPythonApplication.log.error
    - atexit.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: 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:
    - ipykernel.kernelapp.IPKernelApp.init_control
    - zmq.PUB
    - jupyter_client.session.Session.socket
    - IPython.core.application.BaseIPythonApplication.log.debug
    - <builtin>.super
    - logger.addHandler
    - zmq.PUB.start
    - atexit.register
    - pathlib.Path.exists
    - handler.setFormatter
    - jupyter_client.session.Session
    - zmq.PUB.getsockopt
    - <builtin>.range
    - ipykernel.kernelapp.IPKernelApp.configure_tornado_logger
    - ipykernel.shellchannel.ShellChannelThread.__init__
    - ipykernel.kernelapp.IPKernelApp.init_iopub
    - zmq.PUB.bind
    - IPython.core.application.BaseIPythonApplication.log.info
    - zmq.PUB.socket
    - jupyter_client.session.Session.start
    - jupyter_client.session.Session.connect
    - pathlib.Path
    - jupyter_client.session.Session.getsockopt
    - jupyter_client.session.Session.bind_to_random_port
    - logging.Formatter
    - ipykernel.kernelapp.IPKernelApp._bind_socket
    - ipykernel.control.ControlThread.__init__
    - <builtin>.hasattr
    - asyncio.Lock
    - zmq.PUB.connect
    - jupyter_client.session.Session.bind
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - zmq.Context
    - logging.getLogger
    - zmq.PUB.bind_to_random_port
    - logging.StreamHandler
    - os.getpid
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: zmq.PUB.socket
    functionSourceFile: zmq
    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: jupyter_client.session.Session.socket
    functionSourceFile: jupyter_client
    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>.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:
    - jupyter_client.session.Session.socket
    - IPython.core.application.BaseIPythonApplication.log.debug
    - <builtin>.super
    - pathlib.Path.exists
    - zmq.PUB.getsockopt
    - <builtin>.range
    - ipykernel.shellchannel.ShellChannelThread.__init__
    - zmq.PUB.bind
    - zmq.PUB.socket
    - jupyter_client.session.Session.connect
    - pathlib.Path
    - jupyter_client.session.Session.getsockopt
    - jupyter_client.session.Session.bind_to_random_port
    - ipykernel.kernelapp.IPKernelApp._bind_socket
    - ipykernel.control.ControlThread.__init__
    - <builtin>.hasattr
    - asyncio.Lock
    - zmq.PUB.connect
    - jupyter_client.session.Session.bind
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - zmq.PUB.bind_to_random_port
    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:
    - zmq.PUB
    - jupyter_client.session.Session.socket
    - IPython.core.application.BaseIPythonApplication.log.debug
    - logger.addHandler
    - zmq.PUB.start
    - pathlib.Path.exists
    - handler.setFormatter
    - jupyter_client.session.Session
    - <builtin>.range
    - ipykernel.kernelapp.IPKernelApp.configure_tornado_logger
    - zmq.PUB.bind
    - zmq.PUB.socket
    - jupyter_client.session.Session.start
    - pathlib.Path
    - jupyter_client.session.Session.bind_to_random_port
    - logging.Formatter
    - ipykernel.kernelapp.IPKernelApp._bind_socket
    - jupyter_client.session.Session.bind
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - logging.getLogger
    - zmq.PUB.bind_to_random_port
    - logging.StreamHandler
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.getsockopt
    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: jupyter_client.session.Session.getsockopt
    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: zmq.PUB.connect
    functionSourceFile: zmq
    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: jupyter_client.session.Session.connect
    functionSourceFile: jupyter_client
    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
    - 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: 20
    functionName: ipykernel.shellchannel.ShellChannelThread.__init__
    functionSourceFile: ipykernel.shellchannel
    functionUses: 3
    functionsReached:
    - <builtin>.super
    - asyncio.Lock
    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:
    - logging.getLogger
    - logging.Formatter
    - logging.StreamHandler
    - logger.addHandler
    - handler.setFormatter
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.start
    functionSourceFile: zmq
    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:
    - zmq.PUB
    - jupyter_client.session.Session.socket
    - jupyter_client.session.Session.getsockname
    - IPython.core.application.BaseIPythonApplication.log.debug
    - zmq.PUB.start
    - traitlets.traitlets.Instance.start
    - pathlib.Path.exists
    - jupyter_client.session.Session
    - zmq.PUB.bind
    - jupyter_client.localinterfaces.localhost
    - jupyter_client.session.Session.close
    - zmq.PUB.socket
    - jupyter_client.session.Session.start
    - zmq.PUB.getsockname
    - pathlib.Path
    - threading.Thread.start
    - jupyter_client.session.Session.bind
    - zmq.PUB.close
    - zmq.Context
    - threading.Thread.__init__
    - ipykernel.heartbeat.Heartbeat.pick_port
    - ipykernel.heartbeat.Heartbeat.__init__
    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 0x7f4acf6b1700>
    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:
    - zmq.PUB.getsockname
    - zmq.PUB.close
    - jupyter_client.session.Session.socket
    - pathlib.Path
    - zmq.PUB.socket
    - zmq.PUB.bind
    - jupyter_client.session.Session.getsockname
    - threading.Thread.__init__
    - ipykernel.heartbeat.Heartbeat.pick_port
    - jupyter_client.localinterfaces.localhost
    - pathlib.Path.exists
    - jupyter_client.session.Session.bind
    - 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: threading.Thread.start
    functionSourceFile: threading
    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: traitlets.traitlets.Instance.start
    functionSourceFile: traitlets
    functionUses: 2
    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:
    - zmq.PUSH.io_loop.add_callback
    - <builtin>.getattr
    - IPython.core.application.BaseIPythonApplication.log.debug
    - threading.Thread.join
    - zmq.PUB.context.term
    - jupyter_client.session.Session.term
    - ipykernel.kernelapp.IPKernelApp.reset_io
    - socket.close
    - ipykernel.thread.BaseThread.stop
    - ipykernel.displayhook.Session.background_socket.io_loop.add_callback
    - IPython.core.application.BaseIPythonApplication.log.info
    - zmq.PUB.stop
    - threading.Thread.is_alive
    - zmq.PUB.join
    - jupyter_client.session.Session.close
    - jupyter_client.session.Session.is_alive
    - jupyter_client.session.Session.join
    - zmq.PUB.term
    - traitlets.traitlets.Instance.context.term
    - zmq.PUB.close
    - zmq.PUB.is_alive
    - jupyter_client.session.Session.context.term
    - tornado.ioloop.IOLoop.add_callback
    - jupyter_client.session.Session.stop
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 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: zmq.PUB.term
    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.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: zmq.PUB.context.term
    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.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: zmq.PUB.stop
    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: zmq.PUB.close
    functionSourceFile: zmq
    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: jupyter_client.session.Session.close
    functionSourceFile: jupyter_client
    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: 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: 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: zmq.PUB.is_alive
    functionSourceFile: zmq
    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:
    - ipykernel.displayhook.Session.background_socket.io_loop.add_callback
    - zmq.PUSH.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: zmq.PUB.join
    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.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: 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: <builtin>.getattr
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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>.print
    - pathlib.Path
    - IPython.core.application.BaseIPythonApplication.log.info
    - <builtin>.int
    - <builtin>.str
    - <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: <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:
    - IPython.core.application.BaseIPythonApplication.log.handlers.stream.buffer.fileno
    - IPython.core.application.BaseIPythonApplication.session
    - io.FileIO
    - ipykernel.kernelapp.IPKernelApp.patch_io
    - functools.partial
    - io.TextIOWrapper
    - IPython.core.application.BaseIPythonApplication.log.debug
    - <builtin>.str
    - sys.stderr.flush
    - <builtin>.hasattr
    - <builtin>.isinstance
    - 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: functools.partial
    functionSourceFile: functools
    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: IPython.core.application.BaseIPythonApplication.session
    functionSourceFile: IPython
    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: 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 0x7f4acedbf190>
    - <ast.Constant object at 0x7f4acedbfa60>
    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 0x7f4acedbfee0>
    - <ast.Constant object at 0x7f4acedbfd00>
    - <ast.Constant object at 0x7f4acedbf070>
    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:
    - zmq.PUB
    - jupyter_client.session.Session.start
    - jupyter_client.session.Session
    - traitlets.traitlets.Dict.items
    - threading.Thread.start
    - zmq.PUB.start
    - kernel.record_ports
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - os.environ.get
    - IPython.core.shellapp.InteractiveShellApp.init_gui_pylab
    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:
    - <builtin>.print
    - IPython.core.application.BaseIPythonApplication.shell.InteractiveTB.stb2text
    - jupyter_client.connect.ConnectionFileMixin.shell.InteractiveTB.stb2text
    - ipykernel.kernelapp.IPKernelApp.shell.InteractiveTB.stb2text
    - IPython.core.shellapp.InteractiveShellApp.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: 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.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: 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: 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: 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
    - asyncio.WindowsSelectorEventLoopPolicy
    - sys.platform.startswith
    - asyncio.set_event_loop_policy
    - <builtin>.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: 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 0x7f4aceec06d0>
    argNames:
    - self
    - argv
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 700
    functionName: ipykernel.kernelapp.IPKernelApp.initialize
    functionSourceFile: ipykernel.kernelapp
    functionUses: 0
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.log.handlers.stream.buffer.fileno
    - IPython.core.application.BaseIPythonApplication.session
    - ipykernel.connect.get_connection_file
    - logger.addHandler
    - traitlets.traitlets.Instance.start
    - atexit.register
    - pathlib.Path.exists
    - ipykernel.kernelapp.IPKernelApp.write_connection_file
    - IPython.core.application.BaseIPythonApplication.instance
    - zmq.PUB.getsockopt
    - traitlets.utils.filefind
    - jupyter_client.localinterfaces.localhost
    - jupyter_client.session.Session.connect
    - ipykernel.kernelapp.IPKernelApp.init_connection_file
    - ipykernel.parentpoller.ParentPollerUnix.__init__
    - ipykernel.kernelapp.IPKernelApp.init_heartbeat
    - jupyter_client.session.Session.getsockopt
    - ipykernel.kernelapp.IPKernelApp.patch_io
    - ipykernel.kernelapp.IPKernelApp.init_poller
    - ipykernel.kernelapp.IPKernelApp.log_connection_info
    - ipykernel.control.ControlThread.__init__
    - asyncio.Lock
    - info.get
    - kernel.record_ports
    - ipykernel.kernelapp.IPKernelApp.init_kernel
    - ipykernel.kernelapp.IPKernelApp.init_gui_pylab
    - os.getpid
    - ipykernel.heartbeat.Heartbeat.pick_port
    - ipykernel.kernelapp.IPKernelApp.init_signal
    - sys.stdout.flush
    - ipykernel.kernelapp.IPKernelApp.init_control
    - zmq.PUB
    - ipykernel.connect._find_connection_file
    - zmq.PUB.start
    - <builtin>.range
    - functools.partial
    - IPython.core.application.BaseIPythonApplication.exit
    - traitlets.traitlets.Dict.items
    - jupyter_client.session.Session.close
    - jupyter_client.session.Session.bind_to_random_port
    - IPython.core.application.BaseIPythonApplication.init_code
    - ipykernel.kernelapp.IPKernelApp.init_sockets
    - signal.signal
    - <builtin>.hasattr
    - <builtin>.isinstance
    - zmq.PUB.close
    - zmq.Context
    - zmq.PUB.bind_to_random_port
    - logging.StreamHandler
    - IPython.core.application.BaseIPythonApplication.init_path
    - <builtin>.print
    - <builtin>.getattr
    - jupyter_client.session.Session.getsockname
    - sys.platform.startswith
    - <builtin>.super
    - sys.stderr.flush
    - jupyter_client.session.Session
    - ipykernel.kernelapp.IPKernelApp.configure_tornado_logger
    - zmq.PUB.bind
    - <builtin>.str
    - <builtin>.dict
    - asyncio.set_event_loop_policy
    - zmq.PUB.getsockname
    - pathlib.Path
    - ipykernel.kernelapp.IPKernelApp.init_pdb
    - ipykernel.kernelapp.IPKernelApp.init_shell
    - ipykernel.kernelapp.IPKernelApp._bind_socket
    - threading.Thread.start
    - <builtin>.open
    - jupyter_client.find_connection_file
    - ipykernel.connect.get_connection_info
    - asyncio.WindowsSelectorEventLoopPolicy
    - logging.getLogger
    - jupyter_client.session.Session.socket
    - io.FileIO
    - IPython.core.application.BaseIPythonApplication.log.debug
    - IPython.core.shellapp.InteractiveShellApp.init_gui_pylab
    - f.read
    - IPython.core.application.BaseIPythonApplication.log.error
    - handler.setFormatter
    - ipykernel.kernelapp.IPKernelApp._init_asyncio_patch
    - ipykernel.shellchannel.ShellChannelThread.__init__
    - asyncio.get_event_loop_policy
    - ipykernel.kernelapp.IPKernelApp.init_iopub
    - IPython.core.application.BaseIPythonApplication.log.info
    - ipykernel.kernelapp.IPKernelApp.init_io
    - json.loads
    - zmq.PUB.socket
    - ipykernel.parentpoller.ParentPollerWindows.__init__
    - jupyter_client.session.Session.start
    - IPython.core.application.BaseIPythonApplication.init_extensions
    - IPython.core.application.BaseIPythonApplication.load_connection_file
    - logging.Formatter
    - pathlib.Path.parent.mkdir
    - zmq.PUB.connect
    - jupyter_client.session.Session.bind
    - <builtin>.type
    - ipykernel.kernelapp.IPKernelApp.init_blackhole
    - ipykernel.kernelapp.IPKernelApp._try_bind_socket
    - IPython.core.application.BaseIPythonApplication.initialized
    - <builtin>.int
    - io.TextIOWrapper
    - threading.Thread.__init__
    - os.environ.get
    - ipykernel.heartbeat.Heartbeat.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.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:
    - ipykernel.trio_runner.TrioRunner.run
    - jupyter_client.session.Session.shell.run_line_magic
    - ipykernel.trio_runner.TrioRunner.__init__
    - jupyter_client.session.Session.shell.set_trio_runner
    - threading.Thread
    - bg_thread.start
    - trio.run
    - zmq.PUB.shell.set_trio_runner
    - tornado.ioloop.IOLoop.current
    - threading.Thread.start
    - signal.signal
    - zmq.PUB.shell.run_line_magic
    - zmq.PUB.start
    - IPython.core.application.BaseIPythonApplication.subapp.start
    - zmq.PUSH.io_loop.current
    - ipykernel.trio_runner.TrioRunner.initialize
    - jupyter_client.session.Session.start
    - ipykernel.displayhook.Session.background_socket.io_loop.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: 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: tornado.ioloop.IOLoop.current
    functionSourceFile: tornado
    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.PUSH.io_loop.current
    functionSourceFile: zmq
    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.displayhook.Session.background_socket.io_loop.current
    functionSourceFile: ipykernel
    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
    - zmq.PUB.shell.set_trio_runner
    - zmq.PUB.shell.run_line_magic
    - 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:
    - signal.signal
    - trio.run
    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:
    - app.initialize
    - 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: 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.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:
    - <builtin>.super
    - ipykernel.displayhook.Session.background_socket.io_loop
    - tornado.ioloop.IOLoop
    - zmq.PUSH.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: ipykernel.displayhook.Session.background_socket.io_loop
    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: zmq.PUSH.io_loop
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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:
    - tornado.ioloop.IOLoop.start
    - tornado.ioloop.IOLoop.close
    - zmq.PUSH.io_loop.close
    - ipykernel.displayhook.Session.background_socket.io_loop.close
    - ipykernel.displayhook.Session.background_socket.io_loop.start
    - zmq.PUSH.io_loop.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: 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: ipykernel.displayhook.Session.background_socket.io_loop.start
    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: zmq.PUSH.io_loop.start
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.displayhook.Session.background_socket.io_loop.close
    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: zmq.PUSH.io_loop.close
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: ipykernel.displayhook.Session.background_socket.io_loop.add_callback
    functionSourceFile: ipykernel
    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: zmq.PUSH.io_loop.add_callback
    functionSourceFile: zmq
    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: tornado.ioloop.IOLoop.add_callback
    functionSourceFile: tornado
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.shellchannel
    functionSourceFile: ipykernel.shellchannel
    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: asyncio.Lock
    functionSourceFile: asyncio
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 35
    functionName: ipykernel.shellchannel.ShellChannelThread.manager
    functionSourceFile: ipykernel.shellchannel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.connect
    - zmq.PUB
    - context.socket
    - ipykernel.socket_pair.SocketPair.on_recv
    - ipykernel.subshell_manager.SubshellManager.__init__
    - threading.Lock
    - threading.current_thread
    - ipykernel.socket_pair.SocketPair.__init__
    - jupyter_client.session.Session.on_recv
    - threading.main_thread
    - zmq.PUB.connect
    - zmq.PUB.on_recv
    - ipykernel.socket_pair.SocketPair._address
    - jupyter_client.session.Session
    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: 37
    functionName: ipykernel.subshell_manager.SubshellManager.__init__
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - jupyter_client.session.Session.connect
    - zmq.PUB
    - context.socket
    - ipykernel.socket_pair.SocketPair.on_recv
    - threading.Lock
    - threading.current_thread
    - ipykernel.socket_pair.SocketPair.__init__
    - jupyter_client.session.Session.on_recv
    - threading.main_thread
    - zmq.PUB.connect
    - zmq.PUB.on_recv
    - ipykernel.socket_pair.SocketPair._address
    - jupyter_client.session.Session
    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: 45
    functionName: ipykernel.shellchannel.ShellChannelThread.run
    functionSourceFile: ipykernel.shellchannel
    functionUses: 0
    functionsReached:
    - zmq.PUB.close
    - subshell_thread.is_alive
    - ipykernel.subshell_manager.SubshellManager.close
    - subshell_thread.join
    - threading.current_thread
    - subshell_thread.stop
    - <builtin>.super
    - ipykernel.socket_pair.SocketPair.close
    - jupyter_client.session.Session.close
    - ipykernel.subshell_manager.SubshellManager._stop_subshell
    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: 70
    functionName: ipykernel.subshell_manager.SubshellManager.close
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - zmq.PUB.close
    - subshell_thread.is_alive
    - subshell_thread.join
    - threading.current_thread
    - subshell_thread.stop
    - ipykernel.socket_pair.SocketPair.close
    - jupyter_client.session.Session.close
    - ipykernel.subshell_manager.SubshellManager._stop_subshell
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.current_thread
    functionSourceFile: threading
    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: threading.main_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: threading.Lock
    functionSourceFile: threading
    functionUses: 4
    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:
    - zmq.PUB.connect
    - context.socket
    - jupyter_client.session.Session.connect
    - ipykernel.socket_pair.SocketPair._address
    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 0x7f4acf582580>
    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:
    - zmq.PUB.on_recv
    - zmq.PUB
    - jupyter_client.session.Session.on_recv
    - jupyter_client.session.Session
    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: 227
    functionName: ipykernel.subshell_manager.SubshellManager._stop_subshell
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 4
    functionsReached:
    - subshell_thread.stop
    - subshell_thread.is_alive
    - 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:
    - zmq.PUB.close
    - 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: 85
    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: 93
    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: 102
    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: 108
    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: 113
    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: 118
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.list
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    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: 126
    functionName: ipykernel.subshell_manager.SubshellManager.set_on_recv_callback
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.session
    - zmq.PUB
    - ipykernel.socket_pair.SocketPair.on_recv
    - functools.partial
    - threading.current_thread
    - tornado.ioloop.IOLoop.current
    - jupyter_client.session.Session.on_recv
    - threading.main_thread
    - zmq.PUB.on_recv
    - zmq.PUSH.io_loop.current
    - jupyter_client.session.Session
    - ipykernel.displayhook.Session.background_socket.io_loop.current
    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: 134
    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: 1
    functionLinenumber: 139
    functionName: ipykernel.subshell_manager.SubshellManager.subshell_id_from_thread_id
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached:
    - threading.main_thread
    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: 155
    functionName: ipykernel.subshell_manager.SubshellManager._create_subshell
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.session
    - zmq.PUB
    - <builtin>.super
    - uuid.uuid4
    - jupyter_client.session.Session
    - functools.partial
    - <builtin>.str
    - jupyter_client.session.Session.on_recv
    - ipykernel.socket_pair.SocketPair._address
    - jupyter_client.session.Session.connect
    - context.socket
    - ipykernel.socket_pair.SocketPair.on_recv
    - ipykernel.socket_pair.SocketPair.__init__
    - threading.Thread.start
    - asyncio.Lock
    - zmq.PUB.connect
    - zmq.PUB.on_recv
    - threading.current_thread
    - ipykernel.subshell.SubshellThread.__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: uuid.uuid4
    functionSourceFile: uuid
    functionUses: 4
    functionsReached: []
    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:
    - jupyter_client.session.Session.connect
    - context.socket
    - ipykernel.socket_pair.SocketPair.__init__
    - <builtin>.super
    - asyncio.Lock
    - zmq.PUB.connect
    - ipykernel.socket_pair.SocketPair._address
    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: 178
    functionName: ipykernel.subshell_manager.SubshellManager._delete_subshell
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 1
    functionsReached:
    - subshell_thread.is_alive
    - subshell_thread.join
    - threading.current_thread
    - subshell_thread.stop
    - ipykernel.subshell_manager.SubshellManager._stop_subshell
    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: 190
    functionName: ipykernel.subshell_manager.SubshellManager._process_control_request
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.session
    - zmq.PUB
    - <builtin>.list
    - subshell_thread.join
    - subshell_thread.stop
    - <builtin>.super
    - uuid.uuid4
    - ipykernel.subshell_manager.SubshellManager._delete_subshell
    - jupyter_client.session.Session
    - subshell_thread.is_alive
    - ipykernel.subshell_manager.SubshellManager.list_subshell
    - functools.partial
    - <builtin>.str
    - jupyter_client.session.Session.on_recv
    - json.loads
    - ipykernel.socket_pair.SocketPair._address
    - jupyter_client.session.Session.connect
    - context.socket
    - ipykernel.socket_pair.SocketPair.on_recv
    - ipykernel.subshell_manager.SubshellManager._create_subshell
    - ipykernel.socket_pair.SocketPair.__init__
    - threading.Thread.start
    - asyncio.Lock
    - zmq.PUB.connect
    - zmq.PUB.on_recv
    - ipykernel.subshell_manager.SubshellManager._stop_subshell
    - threading.current_thread
    - zmq.PUB.send_json
    - ipykernel.subshell.SubshellThread.__init__
    - jupyter_client.session.Session.send_json
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.send_json
    functionSourceFile: zmq
    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: 223
    functionName: ipykernel.subshell_manager.SubshellManager._send_on_shell_channel
    functionSourceFile: ipykernel.subshell_manager
    functionUses: 0
    functionsReached:
    - threading.current_thread
    - jupyter_client.session.Session.send_multipart
    - zmq.PUB.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.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: zmq.PUB.send_multipart
    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: 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:
    - <builtin>.super
    - ipykernel.socket_pair.SocketPair.close
    - jupyter_client.session.Session.close
    - zmq.PUB.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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.on_recv
    functionSourceFile: zmq
    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.on_recv
    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: 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: 50
    functionName: ipykernel.ipkernel._create_comm
    functionSourceFile: ipykernel.ipkernel
    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:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 60
    functionName: ipykernel.ipkernel._get_comm_manager
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - comm.base_comm.CommManager.__init__
    - traitlets.config.LoggingConfigurable.__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:
    - comm.base_comm.CommManager.__init__
    - traitlets.config.LoggingConfigurable.__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:
    - zmq.PUB
    - traitlets.Any
    - traitlets.Bool.tag
    - traitlets.List.tag
    - contextlib.contextmanager
    - sys.version.split
    - traitlets.observe_compat
    - traitlets.observe
    - traitlets.Bool
    - traitlets.Type
    - traitlets.default
    - traitlets.List
    - 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.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: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 97
    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: 104
    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: 109
    functionName: ipykernel.ipkernel.IPythonKernel._user_ns_changed
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - zmq.PUB.init_user_ns
    - 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: zmq.PUB.init_user_ns
    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.init_user_ns
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 119
    functionName: ipykernel.ipkernel.IPythonKernel.__init__
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - threading.get_ident
    - packaging.version.Version
    - appnope.nope
    - ipykernel.eventloops._use_appnope
    - <builtin>.getattr
    - traitlets.Type.instance
    - ipykernel.kernelbase.Kernel._topic
    - gc.callbacks.append
    - zmq.PUB.configurables.append
    - traitlets.Type
    - ipykernel.ipkernel.IPythonKernel._initialize_thread_hooks
    - <builtin>.super
    - comm.get_comm_manager
    - <builtin>.isinstance
    - <builtin>.hasattr
    - os.environ.get
    - jupyter_client.session.Session.configurables.append
    - platform.mac_ver
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1347
    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: zmq.PUB.configurables.append
    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.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:
    - packaging.version.Version
    - platform.mac_ver
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 757
    functionName: ipykernel.ipkernel.IPythonKernel._initialize_thread_hooks
    functionSourceFile: ipykernel.ipkernel
    functionUses: 1
    functionsReached:
    - threading.get_ident
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gc.callbacks.append
    functionSourceFile: gc
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 224
    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: 234
    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: 239
    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: 244
    functionName: ipykernel.ipkernel.IPythonKernel.start
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - asyncio.run_coroutine_threadsafe
    - ipykernel.ipkernel.IPythonKernel.poll_stopped_queue
    - jupyter_client.session.Session.on_recv
    - <builtin>.super
    - traitlets.config.configurable.SingletonConfigurable.log.warning
    - zmq.PUB.on_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.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: 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 0x7f4acef5c190>
    argNames:
    - self
    - ident
    - parent
    - channel
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 258
    functionName: ipykernel.ipkernel.IPythonKernel.set_parent
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - zmq.PUB.set_parent
    - <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: zmq.PUB.set_parent
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 266
    functionName: ipykernel.ipkernel.IPythonKernel.init_metadata
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - md.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: 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: 282
    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 0x7f4acefa7040>
    argNames:
    - self
    - allow_stdin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 295
    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: 308
    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: 321
    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: 327
    functionName: ipykernel.ipkernel.IPythonKernel._cancel_on_sigint
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.session
    - sigint_future.add_done_callback
    - future.add_done_callback
    - functools.partial
    - signal.signal
    - 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: 341
    functionName: ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.cancel_unless_done
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - f.done
    - f.cancelled
    - f.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: 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: 353
    functionName: ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.handle_sigint
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - ipykernel.displayhook.Session.background_socket.io_loop.add_callback
    - zmq.PUSH.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: 354
    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: 371
    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: 3
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - ident
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 375
    functionName: ipykernel.ipkernel.IPythonKernel.execute_request
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.extract_header
    - ipykernel.ipkernel.IPythonKernel._associate_new_top_level_threads_with
    - <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.extract_header
    functionSourceFile: jupyter_client
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent_header
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 753
    functionName: ipykernel.ipkernel.IPythonKernel._associate_new_top_level_threads_with
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    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 0x7f4acf1419d0>
    - <ast.Constant object at 0x7f4acf141a90>
    - <ast.Constant object at 0x7f4acf141a30>
    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: 381
    functionName: ipykernel.ipkernel.IPythonKernel.do_execute
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - IPython.core.autocall.ZMQExitAutocall.background_socket.run_cell_async
    - zmq.PUB.should_run_async
    - ipykernel.ipkernel.IPythonKernel._forward_input
    - zmq.PUB.events.trigger
    - IPython.core.autocall.ZMQExitAutocall.run_cell_async
    - traitlets.HasTraits.run_cell_async
    - traitlets.Instance.run_cell_async
    - traitlets.config.configurable.SingletonConfigurable.run_cell_async
    - traitlets.HasTraits.background_socket.run_cell_async
    - parameters.values
    - jupyter_client.session.Session.background_socket.run_cell_async
    - jupyter_client.session.Session.events.trigger
    - zmq.PUB.user_expressions
    - traitlets.traitlets.Any.should_run_async
    - zmq.PUB.payload_manager.read_payload
    - IPython.core.autocall.ZMQExitAutocall.should_run_async
    - parameters.get
    - traitlets.config.configurable.SingletonConfigurable.log.info
    - zmq.PUB.payload_manager.clear_payload
    - jupyter_client.session.Session.user_expressions
    - zmq.PUB.run_cell_async
    - zmq.PUB.run_cell
    - jupyter_client.session.Session.background_socket.should_run_async
    - <builtin>.str
    - traitlets.Instance.should_run_async
    - <builtin>.any
    - jupyter_client.session.Session.run_cell_async
    - <builtin>.dict
    - traitlets.config.configurable.SingletonConfigurable.background_socket.run_cell_async
    - asyncio.get_event_loop
    - queue.Queue.run_cell_async
    - ipykernel.displayhook.Session.run_cell_async
    - jupyter_client.session.Session.payload_manager.clear_payload
    - traitlets.config.configurable.SingletonConfigurable.should_run_async
    - ipykernel.ipkernel.IPythonKernel._restore_input
    - jupyter_client.session.Session.transform_cell
    - zmq.eventloop.zmqstream.ZMQStream.should_run_async
    - ipykernel.ipkernel.IPythonKernel.do_execute.<lambda1>
    - queue.Queue.background_socket.run_cell_async
    - traitlets.HasTraits.background_socket.should_run_async
    - traitlets.HasTraits.should_run_async
    - asyncio.ensure_future
    - jupyter_client.session.Session.should_run_async
    - queue.Queue.should_run_async
    - IPython.core.autocall.ZMQExitAutocall.background_socket.should_run_async
    - jupyter_client.session.Session.payload_manager.read_payload
    - dict.fromkeys
    - <builtin>.hasattr
    - queue.Queue.background_socket.should_run_async
    - ipykernel.displayhook.Session.should_run_async
    - <builtin>.type
    - zmq.eventloop.zmqstream.ZMQStream.run_cell_async
    - inspect.signature
    - ipykernel.displayhook.Session.background_socket.run_cell_async
    - zmq.PUSH.run_cell_async
    - ipykernel.kernelbase._accepts_parameters
    - traitlets.traitlets.Any.run_cell_async
    - jupyter_client.session.Session.run_cell
    - threading.current_thread
    - reply_content.update
    - ipykernel.displayhook.Session.background_socket.should_run_async
    - zmq.PUSH.should_run_async
    - zmq.PUB.transform_cell
    - sys.exc_info
    - threading.main_thread
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.run_cell_async
    - traitlets.config.configurable.SingletonConfigurable.background_socket.should_run_async
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.should_run_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:
    - parameters.get
    - <builtin>.any
    - parameters.values
    - dict.fromkeys
    - inspect.signature
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 408
    functionName: ipykernel.ipkernel.IPythonKernel.do_execute.run_cell
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.run_cell
    - zmq.PUB.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: zmq.PUB.run_cell
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB.transform_cell
    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: 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.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: traitlets.HasTraits.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: 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: 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: 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: 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: 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: ipykernel.displayhook.Session.should_run_async
    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: 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: 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: 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: ipykernel.displayhook.Session.background_socket.should_run_async
    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: 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: 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: 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: 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: traitlets.config.configurable.SingletonConfigurable.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: ipykernel.displayhook.Session.background_socket.run_cell_async
    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: 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: 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.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.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.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: 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: 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.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: 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: 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: traitlets.config.configurable.SingletonConfigurable.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: traitlets.HasTraits.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.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: ipykernel.displayhook.Session.run_cell_async
    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: 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: 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.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: 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: zmq.PUB.events.trigger
    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: 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: zmq.PUB.user_expressions
    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_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: zmq.PUB.payload_manager.read_payload
    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.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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.payload_manager.clear_payload
    functionSourceFile: zmq
    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: 528
    functionName: ipykernel.ipkernel.IPythonKernel.do_complete
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - zmq.PUB.complete
    - jupyter_client.session.Session.complete
    - <builtin>.list
    - jupyter_client.session.Session.Completer.completions
    - comps.append
    - IPython.core.completer.provisionalcompleter
    - ipykernel.ipkernel.IPythonKernel._experimental_do_complete
    - IPython.core.completer.rectify_completions
    - <builtin>.dict
    - IPython.utils.tokenutil.line_at_cursor
    - <builtin>.len
    - zmq.PUB.Completer.completions
    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: 558
    functionName: ipykernel.ipkernel.IPythonKernel._experimental_do_complete
    functionSourceFile: ipykernel.ipkernel
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - jupyter_client.session.Session.Completer.completions
    - comps.append
    - IPython.core.completer.provisionalcompleter
    - IPython.core.completer.rectify_completions
    - <builtin>.dict
    - <builtin>.len
    - zmq.PUB.Completer.completions
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 47
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: zmq.PUB.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: 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: 550
    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: zmq.PUB.Completer.completions
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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 0x7f4aced3d4f0>
    - <ast.Tuple object at 0x7f4aced3d3a0>
    argNames:
    - self
    - code
    - cursor_pos
    - detail_level
    - omit_sections
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 598
    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
    - zmq.PUB.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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.object_inspect_mime
    functionSourceFile: zmq
    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 0x7f4acf7e7cd0>
    - <ast.Constant object at 0x7f4acf7e76a0>
    - <ast.Constant object at 0x7f4acf7e7ac0>
    - <ast.Constant object at 0x7f4acfa36190>
    - <ast.Constant object at 0x7f4acfa360d0>
    - <ast.Constant object at 0x7f4acfa36df0>
    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: 626
    functionName: ipykernel.ipkernel.IPythonKernel.do_history
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.history_manager.get_range
    - <builtin>.list
    - jupyter_client.session.Session.history_manager.get_tail
    - jupyter_client.session.Session.history_manager.search
    - zmq.PUB.history_manager.search
    - zmq.PUB.history_manager.get_tail
    - zmq.PUB.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: zmq.PUB.history_manager.get_tail
    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.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: zmq.PUB.history_manager.get_range
    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.history_manager.search
    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.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: 662
    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: 668
    functionName: ipykernel.ipkernel.IPythonKernel.do_is_complete
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - ipykernel.displayhook.Session.background_socket.input_splitter.check_complete
    - zmq.PUB.input_splitter.check_complete
    - <builtin>.getattr
    - zmq.PUSH.input_splitter.check_complete
    - traitlets.HasTraits.background_socket.input_splitter.check_complete
    - IPython.core.autocall.ZMQExitAutocall.background_socket.input_splitter.check_complete
    - traitlets.Instance.input_splitter.check_complete
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.input_splitter.check_complete
    - traitlets.HasTraits.input_splitter.check_complete
    - traitlets.config.configurable.SingletonConfigurable.input_splitter.check_complete
    - jupyter_client.session.Session.background_socket.input_splitter.check_complete
    - ipykernel.displayhook.Session.input_splitter.check_complete
    - zmq.eventloop.zmqstream.ZMQStream.input_splitter.check_complete
    - queue.Queue.input_splitter.check_complete
    - IPython.core.autocall.ZMQExitAutocall.input_splitter.check_complete
    - traitlets.config.configurable.SingletonConfigurable.background_socket.input_splitter.check_complete
    - traitlets.traitlets.Any.input_splitter.check_complete
    - jupyter_client.session.Session.input_splitter.check_complete
    - queue.Queue.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: 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: ipykernel.displayhook.Session.background_socket.input_splitter.check_complete
    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: 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: 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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.displayhook.Session.input_splitter.check_complete
    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: 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: 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.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: traitlets.HasTraits.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: 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.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: 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.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: 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: 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: 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: 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: 681
    functionName: ipykernel.ipkernel.IPythonKernel.do_apply
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - <builtin>.exec
    - queue.Queue.background_socket.user_ns.pop
    - <builtin>.getattr
    - queue.Queue.background_socket.user_ns.get
    - traitlets.Instance.user_ns.update
    - ipykernel.displayhook.Session.background_socket.user_ns.pop
    - zmq.PUSH.user_ns.pop
    - ipykernel.kernelbase.Kernel._topic
    - queue.Queue.user_ns.update
    - zmq.PUB.get_parent
    - IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.update
    - jupyter_client.session.Session.user_ns.update
    - traitlets.Instance.user_ns.get
    - zmq.PUB.user_ns.pop
    - traitlets.traitlets.Any.user_ns.update
    - jupyter_client.session.Session.background_socket.user_ns.update
    - IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.pop
    - jupyter_client.session.Session.user_ns.pop
    - traitlets.HasTraits.background_socket.user_ns.update
    - traitlets.Instance.user_ns.pop
    - ipykernel.displayhook.Session.user_ns.get
    - traitlets.config.configurable.SingletonConfigurable.log.info
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.update
    - zmq.PUB.user_ns.get
    - IPython.core.autocall.ZMQExitAutocall.user_ns.pop
    - ipykernel.displayhook.Session.user_ns.pop
    - serialize.unpack_apply_message
    - ipykernel.displayhook.Session.user_ns.update
    - <builtin>.str
    - traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.update
    - ipyparallel.serialize.serialize_object
    - jupyter_client.session.Session.background_socket.user_ns.pop
    - <builtin>.dict
    - jupyter_client.session.Session.get_parent
    - IPython.core.autocall.ZMQExitAutocall.background_socket.user_ns.get
    - queue.Queue.user_ns.pop
    - jupyter_client.session.Session.background_socket.user_ns.get
    - ipykernel.kernelbase.Kernel.send_response
    - zmq.PUB.showtraceback
    - queue.Queue.user_ns.get
    - traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.get
    - zmq.eventloop.zmqstream.ZMQStream.user_ns.get
    - traitlets.traitlets.Any.user_ns.pop
    - jupyter_client.session.Session.showtraceback
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.pop
    - zmq.eventloop.zmqstream.ZMQStream.user_ns.pop
    - jupyter_client.session.Session.user_ns.get
    - ipyparallel.serialize.unpack_apply_message
    - traitlets.traitlets.Any.user_ns.get
    - ipykernel.displayhook.Session.background_socket.user_ns.get
    - traitlets.HasTraits.background_socket.user_ns.get
    - traitlets.HasTraits.background_socket.user_ns.pop
    - queue.Queue.background_socket.user_ns.update
    - <builtin>.type
    - ipykernel.displayhook.Session.background_socket.user_ns.update
    - zmq.PUB.session.send
    - serialize.serialize_object
    - zmq.PUB.user_ns.update
    - zmq.eventloop.zmqstream.ZMQStream.user_ns.update
    - zmq.PUSH.user_ns.get
    - IPython.core.autocall.ZMQExitAutocall.user_ns.get
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.user_ns.get
    - traitlets.config.configurable.SingletonConfigurable.background_socket.user_ns.pop
    - IPython.core.autocall.ZMQExitAutocall.user_ns.update
    - zmq.PUSH.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: ipykernel.displayhook.Session.background_socket.user_ns.update
    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.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.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: 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.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: 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: 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: 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: ipykernel.displayhook.Session.user_ns.update
    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: 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: 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.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: 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: 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: traitlets.HasTraits.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: 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: <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: 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: ipykernel.displayhook.Session.user_ns.get
    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: 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.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: 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: 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: ipykernel.displayhook.Session.background_socket.user_ns.get
    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: 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: 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: 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: 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: 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.HasTraits.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: 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: 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: 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: ipykernel.displayhook.Session.background_socket.user_ns.pop
    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: 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: 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: ipykernel.displayhook.Session.user_ns.pop
    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: 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.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.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: 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: 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: 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: traitlets.HasTraits.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: 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: 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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.showtraceback
    functionSourceFile: zmq
    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 0x7f4acf1cb1f0>
    - <ast.Constant object at 0x7f4acf1cbb80>
    - <ast.Constant object at 0x7f4acf1cb1c0>
    - <ast.Constant object at 0x7f4acf1cbfd0>
    - <ast.Constant object at 0x7f4acf1cb730>
    - <ast.Constant object at 0x7f4acf1cb4f0>
    - <ast.Constant object at 0x7f4acf1cb460>
    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: 799
    functionName: ipykernel.kernelbase.Kernel.send_response
    functionSourceFile: ipykernel.kernelbase
    functionUses: 1
    functionsReached:
    - zmq.PUB.get_parent
    - zmq.PUB.session.send
    - jupyter_client.session.Session.get_parent
    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: 747
    functionName: ipykernel.ipkernel.IPythonKernel.do_clear
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.reset
    - zmq.PUB.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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.reset
    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: threading.get_ident
    functionSourceFile: threading
    functionUses: 3
    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: 766
    functionName: ipykernel.ipkernel.IPythonKernel._initialize_thread_hooks.run_closure
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - threading.Thread.run
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Thread.run
    functionSourceFile: threading
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 790
    functionName: ipykernel.ipkernel.IPythonKernel._initialize_thread_hooks.init_closure
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - threading.get_ident
    - threading.Thread.__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: threading.Thread.__init__
    functionSourceFile: threading
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - phase
    - info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 797
    functionName: ipykernel.ipkernel.IPythonKernel._clean_thread_parent_frames
    functionSourceFile: ipykernel.ipkernel
    functionUses: 0
    functionsReached:
    - threading.enumerate
    - thread_to_parent_header.keys
    - thread_to_parent.keys
    - <builtin>.list
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.enumerate
    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: thread_to_parent_header.keys
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: thread_to_parent.keys
    functionSourceFile: <builtin>
    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: 837
    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: 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: 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:
    - zmq.PUB
    - traitlets.Any
    - traitlets.CBytes
    - traitlets.default
    - 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.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: 62
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.__init__
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.compilerop.CachingCompiler._parent_header.set
    - contextvars.ContextVar.set
    - zmq.PUB._parent_header.set
    - <builtin>.super
    - jupyter_client.session.Session._parent_header.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: 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: 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: 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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB._parent_header.set
    functionSourceFile: zmq
    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: 68
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.parent_header
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - zmq.PUB._parent_header.get
    - contextvars.ContextVar.get
    - IPython.core.compilerop.CachingCompiler._parent_header.get
    - jupyter_client.session.Session._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: zmq.PUB._parent_header.get
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 71
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.set_parent
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.extract_header
    - IPython.core.compilerop.CachingCompiler._parent_header.set
    - contextvars.ContextVar.set
    - zmq.PUB._parent_header.set
    - jupyter_client.session.Session._parent_header.set
    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: 75
    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: 81
    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: 86
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher._hooks
    functionSourceFile: ipykernel.zmqshell
    functionUses: 2
    functionsReached:
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4aceec0460>
    argNames:
    - self
    - data
    - metadata
    - transient
    - update
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 94
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.publish
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.msg
    - zmq.PUB._flush_streams
    - <builtin>.list
    - obj.strftime
    - binascii.b2a_base64
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - IPython.core.displayhook.DisplayHook._hooks
    - IPython.core.compilerop.CachingCompiler.session.send
    - zmq.PUB.session.msg
    - <builtin>.str
    - ipykernel.jsonutil.encode_images
    - binascii.b2a_base64.decode
    - traitlets.HasTraits._hooks
    - IPython.core.displayhook.DisplayHook._flush_streams
    - ipykernel.zmqshell.ZMQDisplayPublisher._hooks
    - <builtin>.float
    - math.isnan
    - IPython.core.compilerop.CachingCompiler._flush_streams
    - zmq.PUB.send
    - jupyter_client.session.Session.send
    - <builtin>.set
    - zmq.PUB.msg
    - IPython.core.compilerop.CachingCompiler._hooks
    - <builtin>.map
    - IPython.core.compilerop.CachingCompiler.session.msg
    - IPython.core.displayhook.DisplayHook._validate_data
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - IPython.core.compilerop.CachingCompiler._validate_data
    - zmq.PUB.session.send
    - jupyter_client.session.Session._flush_streams
    - jupyter_client.session.Session._validate_data
    - zmq.PUB._hooks
    - <builtin>.int
    - traitlets.traitlets.Any._hooks
    - obj.items
    - zmq.PUB._validate_data
    - <builtin>.len
    - jupyter_client.session.Session._hooks
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB._flush_streams
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: zmq.PUB._validate_data
    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.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: 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: 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: 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
    - obj.strftime
    - <builtin>.map
    - <builtin>.int
    - obj.items
    - <builtin>.set
    - <builtin>.str
    - binascii.b2a_base64.decode
    - binascii.b2a_base64
    - math.isinf
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.len
    - <builtin>.hasattr
    - ipykernel.jsonutil.json_clean
    - <builtin>.type
    - <builtin>.float
    - math.isnan
    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: zmq.PUB.session.msg
    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: 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: zmq.PUB.msg
    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.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: 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: traitlets.HasTraits._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: zmq.PUB._hooks
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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.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: zmq.PUB.session.send
    functionSourceFile: zmq
    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: jupyter_client.session.Session.send
    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: zmq.PUB.send
    functionSourceFile: zmq
    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 0x7f4aced28790>
    argNames:
    - self
    - wait
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 151
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.clear_output
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.msg
    - zmq.PUB._flush_streams
    - <builtin>.list
    - obj.strftime
    - binascii.b2a_base64
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - IPython.core.displayhook.DisplayHook._hooks
    - IPython.core.compilerop.CachingCompiler.session.send
    - zmq.PUB.session.msg
    - <builtin>.str
    - binascii.b2a_base64.decode
    - traitlets.HasTraits._hooks
    - <builtin>.dict
    - IPython.core.displayhook.DisplayHook._flush_streams
    - ipykernel.zmqshell.ZMQDisplayPublisher._hooks
    - <builtin>.float
    - math.isnan
    - IPython.core.compilerop.CachingCompiler._flush_streams
    - zmq.PUB.send
    - jupyter_client.session.Session.send
    - <builtin>.set
    - zmq.PUB.msg
    - IPython.core.compilerop.CachingCompiler._hooks
    - <builtin>.map
    - IPython.core.compilerop.CachingCompiler.session.msg
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - zmq.PUB.session.send
    - jupyter_client.session.Session._flush_streams
    - zmq.PUB._hooks
    - <builtin>.int
    - traitlets.traitlets.Any._hooks
    - obj.items
    - <builtin>.len
    - jupyter_client.session.Session._hooks
    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: 179
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.register_hook
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.displayhook.DisplayHook._hooks.append
    - IPython.core.compilerop.CachingCompiler._hooks.append
    - zmq.PUB._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.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: 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: zmq.PUB._hooks.append
    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._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: 198
    functionName: ipykernel.zmqshell.ZMQDisplayPublisher.unregister_hook
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - zmq.PUB._hooks.remove
    - jupyter_client.session.Session._hooks.remove
    - IPython.core.displayhook.DisplayHook._hooks.remove
    - IPython.core.compilerop.CachingCompiler._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: zmq.PUB._hooks.remove
    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._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: 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: 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 0x7f4acf7d21c0>
    - <ast.Constant object at 0x7f4acf7d2040>
    argNames:
    - self
    - parameter_s
    - last_call
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 232
    functionName: ipykernel.zmqshell.KernelMagics.edit
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - pathlib.Path
    - IPython.core.magics.CodeMagics._find_edit_target
    - IPython.core.magic.Magics.parse_options
    - IPython.core.magic.Magics.shell.payload_manager.write_payload
    - <builtin>.str
    - 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: 330
    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: 345
    functionName: ipykernel.zmqshell.KernelMagics.less
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - fid.read
    - IPython.utils.openpy.read_py_file
    - IPython.core.magic.Magics.shell.pycolorize
    - IPython.core.page.page
    - arg_s.endswith
    - <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: 367
    functionName: ipykernel.zmqshell.KernelMagics.man
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.page.page
    - IPython.core.magic.Magics.shell.getoutput
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 373
    functionName: ipykernel.zmqshell.KernelMagics.connect_info
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - warnings.warn
    - pathlib.Path
    - <builtin>.str
    - <builtin>.isinstance
    - jupyter_core.paths.jupyter_runtime_dir
    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: 410
    functionName: ipykernel.zmqshell.KernelMagics.qtconsole
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - warnings.warn
    - IPython.utils.process.arg_split
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 423
    functionName: ipykernel.zmqshell.KernelMagics.autosave
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - IPython.display.display
    - <builtin>.int
    - 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: 450
    functionName: ipykernel.zmqshell.KernelMagics.subshell
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - <builtin>.getattr
    - IPython.core.application.BaseIPythonApplication.initialized
    - manager.subshell_id_from_thread_id
    - threading.current_thread
    - manager.list_subshell
    - threading.main_thread
    - os.getpid
    - IPython.core.application.BaseIPythonApplication.instance
    - 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.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: 486
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.__init__
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - jupyter_client.session.Session._parent_header.set
    - zmq.PUB._parent_header.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: 1
    functionLinenumber: -1
    functionName: ipykernel.zmqshell.ZMQInteractiveShell
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - zmq.PUB
    - traitlets.Any
    - traitlets.CBool
    - traitlets.observe
    - traitlets.Type
    - traitlets.default
    - 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: 508
    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: 522
    functionName: ipykernel.zmqshell.ZMQInteractiveShell._default_exiter
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - zmq.PUB
    - 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: 526
    functionName: ipykernel.zmqshell.ZMQInteractiveShell._update_exit_now
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - zmq.PUB.kernel.io_loop.call_later
    - <builtin>.getattr
    - traitlets.Any.io_loop.call_later
    - jupyter_client.session.Session.kernel.io_loop.call_later
    - ipykernel.displayhook.Session.background_socket.io_loop.call_later
    - zmq.PUSH.io_loop.call_later
    - <builtin>.hasattr
    - traitlets.traitlets.Any.kernel.io_loop.call_later
    - tornado.ioloop.IOLoop.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: zmq.PUB.kernel.io_loop.call_later
    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.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: ipykernel.displayhook.Session.background_socket.io_loop.call_later
    functionSourceFile: ipykernel
    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: zmq.PUSH.io_loop.call_later
    functionSourceFile: zmq
    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: 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: 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: tornado.ioloop.IOLoop.call_later
    functionSourceFile: tornado
    functionUses: 7
    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 0x7f4aceeb27c0>
    argNames:
    - self
    - gui
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 541
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.enable_gui
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - ipykernel.eventloops.enable_gui
    - <builtin>.getattr
    - IPython.external.qt_for_kernel.QtCore.QEventLoop
    - ipykernel.eventloops.make_qt_app_for_kernel
    - ipykernel.eventloops.set_qt_api_env_from_gui
    - traitlets.config.application.Application.instance
    - IPython.lib.guisupport.get_app_qt4
    - <builtin>.hasattr
    - gui.startswith
    - <builtin>.delattr
    - os.environ.get
    - loop_map.keys
    - IPython.external.qt_loaders.loaded_api
    - traitlets.config.application.Application.initialized
    linkageType: pythonLinkage
    raised:
    - UsageError
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 5
    IfCount: 10
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4acf1965e0>
    argNames:
    - gui
    - kernel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 572
    functionName: ipykernel.eventloops.enable_gui
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - <builtin>.print
    - <builtin>.getattr
    - IPython.external.qt_for_kernel.QtCore.QEventLoop
    - ipykernel.eventloops.make_qt_app_for_kernel
    - ipykernel.eventloops.set_qt_api_env_from_gui
    - traitlets.config.application.Application.instance
    - IPython.lib.guisupport.get_app_qt4
    - <builtin>.hasattr
    - gui.startswith
    - <builtin>.delattr
    - os.environ.get
    - loop_map.keys
    - IPython.external.qt_loaders.loaded_api
    - traitlets.config.application.Application.initialized
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    - 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: 551
    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 0x7f4acefb38e0>
    - <ast.Constant object at 0x7f4acefb3fd0>
    - <ast.Constant object at 0x7f4acefb3b80>
    argNames:
    - self
    - strg
    - start
    - screen_lines
    - pager_cmd
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 566
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.payloadpage_page
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - zmq.PUB.payload_manager.write_payload
    - <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: zmq.PUB.payload_manager.write_payload
    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: 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: 594
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.init_hooks
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.set_hook
    - <builtin>.super
    - IPython.core.page.as_hook
    - zmq.PUB.set_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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.set_hook
    functionSourceFile: zmq
    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: 599
    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: 617
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.data_pub
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - zmq.PUB.data_pub_class
    - jupyter_client.session.Session.data_pub_class
    - warnings.warn
    - <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: zmq.PUB.data_pub_class
    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.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: 620
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.ask_exit
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - zmq.PUB.payload_manager.write_payload
    - 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: 629
    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: 634
    functionName: ipykernel.zmqshell.ZMQInteractiveShell._showtraceback
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.core.autocall.ZMQExitAutocall.background_socket.displayhook.session.send
    - traitlets.HasTraits.background_socket.displayhook.session.send
    - queue.Queue.displayhook.topic.replace
    - zmq.PUSH.displayhook.topic.replace
    - traitlets.HasTraits.background_socket.displayhook.topic.replace
    - <builtin>.list
    - obj.strftime
    - binascii.b2a_base64
    - math.isinf
    - sys.stderr.flush
    - IPython.core.interactiveshell.InteractiveShell.displayhook.topic.replace
    - ipykernel.jsonutil.json_clean
    - IPython.core.interactiveshell.InteractiveShell.displayhook.session.send
    - IPython.core.autocall.ZMQExitAutocall.displayhook.topic.replace
    - traitlets.config.configurable.SingletonConfigurable.background_socket.displayhook.session.send
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.displayhook.session.send
    - queue.Queue.displayhook.session.send
    - traitlets.config.configurable.SingletonConfigurable.displayhook.session.send
    - zmq.PUSH.displayhook.session.send
    - <builtin>.str
    - binascii.b2a_base64.decode
    - queue.Queue.background_socket.displayhook.topic.replace
    - <builtin>.float
    - math.isnan
    - <builtin>.set
    - jupyter_client.session.Session.background_socket.displayhook.topic.replace
    - traitlets.config.configurable.SingletonConfigurable.background_socket.displayhook.topic.replace
    - <builtin>.map
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.displayhook.topic.replace
    - jupyter_client.session.Session.displayhook.topic.replace
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - zmq.eventloop.zmqstream.ZMQStream.displayhook.topic.replace
    - traitlets.HasTraits.displayhook.session.send
    - zmq.eventloop.zmqstream.ZMQStream.displayhook.session.send
    - <builtin>.type
    - traitlets.config.configurable.SingletonConfigurable.displayhook.topic.replace
    - zmq.PUB.displayhook.topic.replace
    - IPython.core.autocall.ZMQExitAutocall.background_socket.displayhook.topic.replace
    - traitlets.traitlets.Any.displayhook.session.send
    - queue.Queue.background_socket.displayhook.session.send
    - zmq.PUB.displayhook.session.send
    - <builtin>.int
    - IPython.core.autocall.ZMQExitAutocall.displayhook.session.send
    - obj.items
    - traitlets.HasTraits.displayhook.topic.replace
    - traitlets.traitlets.Any.displayhook.topic.replace
    - <builtin>.len
    - 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: 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: 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: 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: 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.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: 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: traitlets.HasTraits.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: 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: 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.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: 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: 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: 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: 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: 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.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: 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: 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: 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: 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: 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: 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: traitlets.HasTraits.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.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: 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.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: 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: 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: 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.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: 2
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4acf613190>
    argNames:
    - self
    - text
    - replace
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 664
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.set_next_input
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - zmq.PUB.payload_manager.write_payload
    - 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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 675
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.parent_header
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - zmq.PUB._parent_header.get
    - jupyter_client.session.Session._parent_header.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 678
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.set_parent
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - sys.stderr.set_parent
    - zmq.PUB.display_pub.set_parent
    - jupyter_client.session.Session.data_pub.set_parent
    - zmq.PUB.displayhook.set_parent
    - zmq.PUB.data_pub.set_parent
    - sys.stdout.set_parent
    - zmq.PUB._parent_header.set
    - jupyter_client.session.Session.displayhook.set_parent
    - <builtin>.hasattr
    - jupyter_client.session.Session.display_pub.set_parent
    - jupyter_client.session.Session._parent_header.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: zmq.PUB.displayhook.set_parent
    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.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: zmq.PUB.display_pub.set_parent
    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.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: zmq.PUB.data_pub.set_parent
    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: 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: 690
    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: 694
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.init_magics
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.register_magics
    - zmq.PUB.magics_manager.register_alias
    - <builtin>.super
    - zmq.PUB.register_magics
    - jupyter_client.session.Session.magics_manager.register_alias
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB.register_magics
    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.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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.magics_manager.register_alias
    functionSourceFile: zmq
    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: 700
    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: 707
    functionName: ipykernel.zmqshell.ZMQInteractiveShell.system_piped
    functionSourceFile: ipykernel.zmqshell
    functionUses: 0
    functionsReached:
    - IPython.utils._process_win32.AvoidUNCPath
    - jupyter_client.session.Session.var_expand
    - ipykernel.zmqshell.ZMQInteractiveShell.system_piped
    - cmd.rstrip
    - zmq.PUB.var_expand
    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: zmq.PUB.var_expand
    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.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: 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>.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: 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: 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: 33
    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: 37
    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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 59
    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: 62
    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:
    - zmq.PUB
    - traitlets.Any
    - jupyter_client.session.Session
    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: 79
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.__init__
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - contextvars.ContextVar
    - contextvars.ContextVar.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 85
    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: 88
    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: 92
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.start_displayhook
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.msg
    - zmq.PUB.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: 104
    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 0x7f4aceff5e20>
    argNames:
    - self
    - format_dict
    - md_dict
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 109
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.write_format_data
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - obj.strftime
    - binascii.b2a_base64
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - <builtin>.str
    - ipykernel.jsonutil.encode_images
    - binascii.b2a_base64.decode
    - <builtin>.float
    - <builtin>.set
    - math.isnan
    - <builtin>.map
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - <builtin>.int
    - obj.items
    - <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: 115
    functionName: ipykernel.displayhook.ZMQShellDisplayHook.finish_displayhook
    functionSourceFile: ipykernel.displayhook
    functionUses: 0
    functionsReached:
    - sys.stdout.flush
    - jupyter_client.session.Session.send
    - sys.stderr.flush
    - zmq.PUB.send
    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
    - ipykernel.eventloops.register_integration.decorator
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 50
    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: 57
    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: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: ipykernel.eventloops._notify_stream_qt
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - kernel._qt_notifier.activated.connect
    - kernel.shell_stream.getsockopt
    - IPython.external.qt_for_kernel.enum_helper
    - IPython.external.qt_for_kernel.QtCore.QTimer.singleShot
    - functools.lru_cache
    - IPython.external.qt_for_kernel.QtCore.QSocketNotifier
    - <builtin>.hasattr
    - kernel._qt_notifier.setEnabled
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 82
    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: 85
    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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 90
    functionName: ipykernel.eventloops._notify_stream_qt.process_stream_events
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel._qt_notifier.setEnabled
    - kernel.shell_stream.flush
    - kernel.app.qt_event_loop.quit
    - ipykernel.eventloops._notify_stream_qt.exit_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: kernel.shell_stream.flush
    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: kernel.shell_stream.getsockopt
    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: 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: 110
    functionName: ipykernel.eventloops._notify_stream_qt._schedule_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - IPython.external.qt_for_kernel.enum_helper
    - kernel._qt_timer.setTimerType
    - kernel._qt_timer.timeout.connect
    - <builtin>.int
    - kernel._qt_timer.setSingleShot
    - <builtin>.hasattr
    - IPython.external.qt_for_kernel.QtCore.QTimer
    - kernel._qt_timer.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.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: 2
    functionLinenumber: 136
    functionName: ipykernel.eventloops.loop_qt
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel._qt_notifier.activated.connect
    - kernel.shell_stream.getsockopt
    - ipykernel.eventloops._notify_stream_qt
    - IPython.external.qt_for_kernel.enum_helper
    - el.exec_
    - functools.lru_cache
    - IPython.external.qt_for_kernel.QtCore.QTimer.singleShot
    - IPython.external.qt_for_kernel.QtCore.QSocketNotifier
    - <builtin>.hasattr
    - el.exec
    - kernel._qt_notifier.setEnabled
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 155
    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: 159
    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: 172
    functionName: ipykernel.eventloops.loop_wx
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - <builtin>.int
    - ipykernel.eventloops._loop_wx
    - app.MainLoop
    - signal.signal
    - <builtin>.isinstance
    - signal.getsignal
    - wx.App.__init__
    - <builtin>.callable
    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: 180
    functionName: ipykernel.eventloops.loop_wx.wake
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - kernel.shell_stream.flush
    - kernel.app.ExitMainLoop
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.ExitMainLoop
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - func
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 189
    functionName: ipykernel.eventloops.loop_wx.TimerFrame.__init__
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - wx.Frame.__init__
    - wx.Timer
    - wx.Frame.Bind
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 197
    functionName: ipykernel.eventloops.loop_wx.TimerFrame.on_timer
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel.shell_stream.flush
    - kernel.app.ExitMainLoop
    - ipykernel.eventloops.loop_wx.wake
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 203
    functionName: ipykernel.eventloops.loop_wx.IPWxApp.OnInit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - wx.Frame.Show
    - wx.Frame.Bind
    - wx.Timer
    - ipykernel.eventloops.loop_wx.TimerFrame.__init__
    - wx.Frame.__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: 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: 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: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 225
    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: 233
    functionName: ipykernel.eventloops.loop_tk
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - tkinter.Tk.after
    - ipykernel.eventloops.loop_tk.BasicAppWrapper.__init__
    - kernel.shell_stream.getsockopt
    - nest_asyncio.apply
    - tkinter.Tk.tk.createfilehandler
    - tkinter.Tk
    - <builtin>.int
    - tkinter.Tk.withdraw
    - tkinter.Tk.mainloop
    - kernel.app_wrapper.start
    - <builtin>.hasattr
    - ipykernel.eventloops.loop_tk.TimedAppWrapper.__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: 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: 245
    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: 249
    functionName: ipykernel.eventloops.loop_tk.exit_loop
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - tkinter.Tk.quit
    - kernel.shell_stream.getsockopt
    - tkinter.Tk.tk.deletefilehandler
    - tkinter.Tk.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: 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: 2
    argDefaultValues: []
    argNames:
    - a
    - kw
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 256
    functionName: ipykernel.eventloops.loop_tk.process_stream_events
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel.shell_stream.flush
    - kernel.shell_stream.getsockopt
    - tkinter.Tk.tk.deletefilehandler
    - tkinter.Tk.destroy
    - tkinter.Tk.quit
    - 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: 263
    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
    - func
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 291
    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: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 296
    functionName: ipykernel.eventloops.loop_tk.TimedAppWrapper.on_timer
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - asyncio.get_event_loop
    - kernel.log.exception
    - tkinter.Tk.after
    - loop.run_until_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: 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: 2
    functionLinenumber: 304
    functionName: ipykernel.eventloops.loop_tk.TimedAppWrapper.start
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - tkinter.Tk.after
    - kernel.log.exception
    - loop.run_until_complete
    - tkinter.Tk.mainloop
    - asyncio.get_event_loop
    - 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: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kernel
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 313
    functionName: ipykernel.eventloops.loop_tk_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - kernel.app_wrapper.app.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: 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: 323
    functionName: ipykernel.eventloops.loop_gtk
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - ipykernel.gui.gtkembed.GTKEmbed.start
    - gtk.main
    - ipykernel.gui.gtkembed.GTKEmbed.__init__
    - 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: 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: 333
    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: 339
    functionName: ipykernel.eventloops.loop_gtk3
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - ipykernel.gui.gtk3embed.GTKEmbed.__init__
    - gi.repository.GObject.idle_add
    - ipykernel.gui.gtk3embed.GTKEmbed.start
    - gi.repository.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: 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.GObject.idle_add
    - gi.repository.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: 349
    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: 355
    functionName: ipykernel.eventloops.loop_cocoa
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - kernel.shell_stream.flush
    - ipykernel._eventloop_macos._stop_after
    - ipykernel._eventloop_macos.n
    - s.encode
    - ipykernel._eventloop_macos.C
    - objc.objc_getClass
    - ipykernel._eventloop_macos.mainloop
    - threading.Event.clear
    - <builtin>.isinstance
    - threading.Event.is_set
    - ipykernel._eventloop_macos._NSApp
    - objc.sel_registerName
    - CoreFoundation.CFRunLoopRun
    - ipykernel._eventloop_macos._utf8
    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: 363
    functionName: ipykernel.eventloops.loop_cocoa.handle_int
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - sys.excepthook
    - ipykernel._eventloop_macos.stop
    - threading.Event.set
    - ipykernel._eventloop_macos.n
    - s.encode
    - ipykernel._eventloop_macos.C
    - objc.objc_getClass
    - objc.sel_registerName
    - <builtin>.isinstance
    - ipykernel._eventloop_macos._NSApp
    - ipykernel._eventloop_macos._wake
    - ctypes.c_void_p
    - ipykernel._eventloop_macos._utf8
    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 0x7f4aced1dfa0>
    - <ast.Constant object at 0x7f4aced1de50>
    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:
    - threading.Event.set
    - ipykernel._eventloop_macos.n
    - s.encode
    - ipykernel._eventloop_macos.C
    - objc.objc_getClass
    - objc.sel_registerName
    - <builtin>.isinstance
    - ipykernel._eventloop_macos._NSApp
    - ipykernel._eventloop_macos._wake
    - ctypes.c_void_p
    - ipykernel._eventloop_macos._utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f4acf6b1280>
    argNames:
    - duration
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 161
    functionName: ipykernel._eventloop_macos.mainloop
    functionSourceFile: ipykernel._eventloop_macos
    functionUses: 1
    functionsReached:
    - ipykernel._eventloop_macos._stop_after
    - ipykernel._eventloop_macos.n
    - s.encode
    - ipykernel._eventloop_macos.C
    - objc.objc_getClass
    - threading.Event.clear
    - <builtin>.isinstance
    - threading.Event.is_set
    - ipykernel._eventloop_macos._NSApp
    - objc.sel_registerName
    - CoreFoundation.CFRunLoopRun
    - ipykernel._eventloop_macos._utf8
    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: 394
    functionName: ipykernel.eventloops.loop_cocoa_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - ipykernel._eventloop_macos.stop
    - threading.Event.set
    - ipykernel._eventloop_macos.n
    - s.encode
    - ipykernel._eventloop_macos.C
    - objc.objc_getClass
    - objc.sel_registerName
    - <builtin>.isinstance
    - ipykernel._eventloop_macos._NSApp
    - ipykernel._eventloop_macos._wake
    - ctypes.c_void_p
    - ipykernel._eventloop_macos._utf8
    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: 1
    functionLinenumber: 402
    functionName: ipykernel.eventloops.loop_asyncio
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.session
    - kernel.shell_stream.getsockopt
    - asyncio.new_event_loop
    - loop.run_forever
    - asyncio.set_event_loop
    - functools.partial
    - loop.is_running
    - loop.is_closed
    - loop.close
    - loop.add_reader
    - loop.call_soon
    - asyncio.get_event_loop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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:
    - stream
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 418
    functionName: ipykernel.eventloops.loop_asyncio.process_stream_events
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - loop.stop
    - functools.partial.flush
    - IPython.core.application.BaseIPythonApplication.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: functools.partial.flush
    functionSourceFile: functools
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.session.flush
    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: 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: 443
    functionName: ipykernel.eventloops.loop_asyncio_exit
    functionSourceFile: ipykernel.eventloops
    functionUses: 0
    functionsReached:
    - loop.shutdown_asyncgens
    - ipykernel.eventloops.loop_asyncio_exit.close_loop
    - loop.is_running
    - loop.is_closed
    - loop.close
    - loop.run_until_complete
    - <builtin>.hasattr
    - loop.stop
    - asyncio.get_event_loop
    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: 449
    functionName: ipykernel.eventloops.loop_asyncio_exit.close_loop
    functionSourceFile: ipykernel.eventloops
    functionUses: 1
    functionsReached:
    - loop.stop
    - loop.shutdown_asyncgens
    - <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: 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: 463
    functionName: ipykernel.eventloops.set_qt_api_env_from_gui
    functionSourceFile: ipykernel.eventloops
    functionUses: 3
    functionsReached:
    - <builtin>.print
    - os.environ.get
    - IPython.external.qt_loaders.loaded_api
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 555
    functionName: ipykernel.eventloops.make_qt_app_for_kernel
    functionSourceFile: ipykernel.eventloops
    functionUses: 2
    functionsReached:
    - <builtin>.print
    - IPython.external.qt_for_kernel.QtCore.QEventLoop
    - ipykernel.eventloops.set_qt_api_env_from_gui
    - IPython.lib.guisupport.get_app_qt4
    - <builtin>.hasattr
    - os.environ.get
    - IPython.external.qt_loaders.loaded_api
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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:
    - warnings.warn
    - gi.require_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: 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:
    - gi.repository.GObject.timeout_add
    - <builtin>.int
    - ipykernel.gui.gtk3embed.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: 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: 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:
    - ipykernel.gui.gtkembed.GTKEmbed._hijack_gtk
    - gobject.timeout_add
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 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: 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.c_void_p.in_dll
    - threading.Event
    - ctypes.CFUNCTYPE
    - ctypes.cdll.LoadLibrary
    - 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:
    - s.encode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.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
    - s.encode
    - <builtin>.isinstance
    - objc.sel_registerName
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - objc.objc_getClass
    - s.encode
    - <builtin>.isinstance
    - ipykernel._eventloop_macos._utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.n
    - s.encode
    - ipykernel._eventloop_macos.C
    - <builtin>.isinstance
    - objc.objc_getClass
    - objc.sel_registerName
    - ipykernel._eventloop_macos._utf8
    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.n
    - s.encode
    - ipykernel._eventloop_macos.C
    - <builtin>.isinstance
    - objc.objc_getClass
    - objc.sel_registerName
    - ctypes.c_void_p
    - ipykernel._eventloop_macos._utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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 0x7f4acefa7b80>
    - <ast.Constant object at 0x7f4acefa7c10>
    - <ast.Constant object at 0x7f4acefa7f40>
    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:
    - zmq.PUB.instance
    - zmq.PUB.get_parent
    - <builtin>.list
    - obj.strftime
    - binascii.b2a_base64
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - jupyter_client.session.Session.instance
    - <builtin>.str
    - binascii.b2a_base64.decode
    - <builtin>.dict
    - jupyter_client.session.Session.get_parent
    - jupyter_client.session.Session.initialized
    - <builtin>.float
    - zmq.PUB.initialized
    - math.isnan
    - <builtin>.set
    - <builtin>.map
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - zmq.PUB.session.send
    - <builtin>.int
    - obj.items
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: zmq.PUB.initialized
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB.instance
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.get_parent
    functionSourceFile: zmq
    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.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: 1
    functionLinenumber: -1
    functionName: ipykernel.comm.comm.Comm
    functionSourceFile: ipykernel.comm.comm
    functionUses: 0
    functionsReached:
    - zmq.PUB
    - traitlets.Bytes
    - jupyter_client.session.Session
    - traitlets.Bool
    - traitlets.default
    - traitlets.Unicode
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.initialized
    - jupyter_client.session.Session.instance
    - zmq.PUB.instance
    - zmq.PUB.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: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4acf6b1880>
    - <ast.Constant object at 0x7f4acf6b1dc0>
    - <ast.Constant object at 0x7f4acf6b1370>
    - <ast.Constant object at 0x7f4acf6b1cd0>
    - <ast.Constant object at 0x7f4acf6b10d0>
    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
    - warnings.warn
    - BaseComm.__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: 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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traitlets.config.LoggingConfigurable.__init__
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipykernel.kernelbase
    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: 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.default
    - zmq.PUB
    - traitlets.traitlets.observe
    - traitlets.traitlets.Instance
    - traitlets.traitlets.Bool.tag
    - traitlets.traitlets.Bool
    - traitlets.traitlets.Float
    - traitlets.traitlets.List
    - traitlets.traitlets.Integer
    - traitlets.traitlets.Unicode
    - traitlets.traitlets.Dict
    - traitlets.traitlets.Float.tag
    - 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.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:
    - tornado.ioloop.IOLoop.current
    - zmq.PUSH.io_loop.current
    - loop.add_callback
    - ipykernel.displayhook.Session.background_socket.io_loop.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:
    - <builtin>.len
    - 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: 1
    functionLinenumber: 168
    functionName: ipykernel.kernelbase.Kernel._default_ident
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - uuid.uuid4
    linkageType: pythonLinkage
    raised: []
    returnType: 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: 212
    functionName: ipykernel.kernelbase.Kernel._parent_header
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.get_parent
    - warnings.warn
    - jupyter_client.session.Session.get_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: 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: 292
    functionName: ipykernel.kernelbase.Kernel.__init__
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - parameters.get
    - <builtin>.getattr
    - ipykernel.kernelbase._accepts_parameters
    - jupyter_client.session.Session._shell_parent_ident.set
    - jupyter_client.session.Session._shell_parent.set
    - <builtin>.super
    - <builtin>.any
    - parameters.values
    - zmq.PUB._shell_parent_ident.set
    - dict.fromkeys
    - asyncio.Lock
    - ipykernel.utils.LazyDict.__init__
    - zmq.PUB._shell_parent.set
    - contextvars.ContextVar
    - inspect.signature
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: zmq.PUB._shell_parent.set
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB._shell_parent_ident.set
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB._shell_parent_ident.get
    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: 1
    functionLinenumber: -1
    functionName: ipykernel.kernelbase.Kernel.__init__.<lambda2>
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB._shell_parent_ident.get
    - jupyter_client.session.Session._shell_parent_ident.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._shell_parent_ident.get
    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: 2
    argDefaultValues: []
    argNames:
    - self
    - dict
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 15
    functionName: ipykernel.utils.LazyDict.__init__
    functionSourceFile: ''
    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: 335
    functionName: ipykernel.kernelbase.Kernel.dispatch_control
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.process_control
    - 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: zmq.PUB.process_control
    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.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: 341
    functionName: ipykernel.kernelbase.Kernel.process_control
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.set_parent
    - zmq.PUB._publish_status
    - zmq.PUB.log.error
    - zmq.PUB._publish_status_and_flush
    - jupyter_client.session.Session.control_handlers.get
    - inspect.isawaitable
    - jupyter_client.session.Session._publish_status_and_flush
    - zmq.PUB.session.deserialize
    - zmq.PUB.control_handlers.get
    - sys.stderr.flush
    - jupyter_client.session.Session._publish_status
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.error
    - jupyter_client.session.Session.log.debug
    - jupyter_client.session.Session.set_parent
    - zmq.PUB.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: zmq.PUB.session.feed_identities
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.session.deserialize
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.log.error
    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.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: zmq.PUB.log.debug
    functionSourceFile: zmq
    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.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: zmq.PUB._publish_status
    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: zmq.PUB.control_handlers.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.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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB._publish_status_and_flush
    functionSourceFile: zmq
    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: 378
    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 0x7f4aced28130>
    argNames:
    - subshell_id
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 389
    functionName: ipykernel.kernelbase.Kernel.dispatch_shell
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - threading.current_thread
    - inspect.isawaitable
    - sys.stderr.flush
    - <builtin>.len
    - 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: 487
    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: 492
    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: 496
    functionName: ipykernel.kernelbase.Kernel.enter_eventloop
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - ipykernel.kernelbase.Kernel.enter_eventloop.schedule_next
    - IPython.core.application.BaseIPythonApplication.session
    - jupyter_client.session.Session.log.info
    - functools.partial
    - ipykernel.displayhook.Session.background_socket.io_loop.call_later
    - zmq.PUB.log.info
    - zmq.PUSH.io_loop.call_later
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.debug
    - tornado.ioloop.IOLoop.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: zmq.PUB.log.info
    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.log.info
    functionSourceFile: jupyter_client
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 505
    functionName: ipykernel.kernelbase.Kernel.enter_eventloop.advance_eventloop
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.eventloop
    - ipykernel.kernelbase.Kernel.enter_eventloop.schedule_next
    - IPython.core.application.BaseIPythonApplication.session
    - zmq.PUB
    - jupyter_client.session.Session.log.info
    - zmq.PUSH.eventloop
    - ipykernel.displayhook.Session.background_socket.eventloop
    - zmq.PUB.log.info
    - jupyter_client.session.Session
    - traitlets.HasTraits.background_socket.eventloop
    - functools.partial
    - zmq.PUSH.io_loop.call_later
    - IPython.core.autocall.ZMQExitAutocall.eventloop
    - traitlets.HasTraits.eventloop
    - jupyter_client.session.Session.msg_queue.qsize
    - jupyter_client.session.Session.log.debug
    - IPython.core.autocall.ZMQExitAutocall.background_socket.eventloop
    - tornado.ioloop.IOLoop.call_later
    - ipykernel.displayhook.Session.eventloop
    - traitlets.config.configurable.SingletonConfigurable.background_socket.eventloop
    - jupyter_client.session.Session.background_socket.eventloop
    - queue.Queue.background_socket.eventloop
    - queue.Queue.eventloop
    - zmq.PUB.msg_queue.qsize
    - jupyter_client.session.Session.eventloop
    - zmq.PUB.log.error
    - ipykernel.displayhook.Session.background_socket.io_loop.call_later
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.error
    - traitlets.traitlets.Any.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: jupyter_client.session.Session.msg_queue.qsize
    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.PUB.msg_queue.qsize
    functionSourceFile: zmq
    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: 525
    functionName: ipykernel.kernelbase.Kernel.enter_eventloop.schedule_next
    functionSourceFile: ipykernel.kernelbase
    functionUses: 2
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.session
    - functools.partial
    - ipykernel.displayhook.Session.background_socket.io_loop.call_later
    - zmq.PUSH.io_loop.call_later
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.debug
    - tornado.ioloop.IOLoop.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: 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: ipykernel.displayhook.Session.eventloop
    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: 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: ipykernel.displayhook.Session.background_socket.eventloop
    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: traitlets.HasTraits.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: 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: 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.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: 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: 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: 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.traitlets.Any.eventloop
    functionSourceFile: traitlets
    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: 1
    functionLinenumber: 538
    functionName: ipykernel.kernelbase.Kernel.do_one_iteration
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.process_one
    - zmq.PUB.shell_stream.flush
    - jupyter_client.session.Session.process_one
    - jupyter_client.session.Session.shell_stream.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: zmq.PUB.shell_stream.flush
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.process_one
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_one
    functionSourceFile: jupyter_client
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4aced23430>
    argNames:
    - self
    - wait
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 552
    functionName: ipykernel.kernelbase.Kernel.process_one
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.control_stream.flush
    - traitlets.traitlets.Instance.socket.poll
    - jupyter_client.session.Session.control_stream.socket.poll
    - asyncio.sleep
    - jupyter_client.session.Session.msg_queue.get
    - zmq.PUB.control_stream.socket.poll
    - zmq.PUB.msg_queue.get
    - jupyter_client.session.Session.msg_queue.get_nowait
    - traitlets.HasTraits.control_stream.socket.poll
    - zmq.PUB.msg_queue.get_nowait
    - zmq.PUB.control_stream.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: zmq.PUB.msg_queue.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.msg_queue.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.msg_queue.get_nowait
    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.PUB.msg_queue.get_nowait
    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.sleep
    functionSourceFile: asyncio
    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.PUB.control_stream.flush
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.socket.poll
    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.socket.poll
    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.control_stream.socket.poll
    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.control_stream.socket.poll
    functionSourceFile: zmq
    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: 579
    functionName: ipykernel.kernelbase.Kernel.dispatch_queue
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.process_one
    - jupyter_client.session.Session.process_one
    - zmq.PUB.log.exception
    - jupyter_client.session.Session.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: zmq.PUB.log.exception
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: 598
    functionName: ipykernel.kernelbase.Kernel._message_counter_default
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - itertools.count
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.count
    functionSourceFile: itertools
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - dispatch
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 601
    functionName: ipykernel.kernelbase.Kernel.schedule_dispatch
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUSH.io_loop.add_callback
    - <builtin>.next
    - ipykernel.displayhook.Session.background_socket.io_loop.add_callback
    - zmq.PUB.msg_queue.put_nowait
    - tornado.ioloop.IOLoop.add_callback
    - jupyter_client.session.Session.msg_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: <builtin>.next
    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: zmq.PUB.msg_queue.put_nowait
    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.msg_queue.put_nowait
    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.kernelbase.Kernel.schedule_dispatch.<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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 615
    functionName: ipykernel.kernelbase.Kernel._create_control_lock
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - asyncio.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 8
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 619
    functionName: ipykernel.kernelbase.Kernel.start
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUSH.io_loop.add_callback
    - tornado.queues.Queue
    - IPython.core.application.BaseIPythonApplication.session
    - zmq.PUB._publish_status
    - zmq.PUB.shell_stream.on_recv
    - zmq.PUB.control_stream.on_recv
    - zmq.PUB.control_thread.io_loop.add_callback
    - ipykernel.displayhook.Session.background_socket.io_loop.add_callback
    - functools.partial
    - tornado.ioloop.IOLoop.current
    - jupyter_client.session.Session._publish_status
    - zmq.PUSH.io_loop.current
    - jupyter_client.session.Session.shell_channel_thread.manager.set_on_recv_callback
    - ipykernel.displayhook.Session.background_socket.io_loop.current
    - zmq.PUB.shell_channel_thread.manager.set_on_recv_callback
    - jupyter_client.session.Session.control_thread.io_loop.add_callback
    - asyncio.Lock
    - jupyter_client.session.Session.shell_stream.on_recv
    - tornado.ioloop.IOLoop.add_callback
    - jupyter_client.session.Session.control_stream.on_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: tornado.queues.Queue
    functionSourceFile: tornado
    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.PUB.control_stream.on_recv
    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.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: zmq.PUB.control_thread.io_loop.add_callback
    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.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: zmq.PUB.shell_channel_thread.manager.set_on_recv_callback
    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.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: 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.on_recv
    functionSourceFile: zmq
    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
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 653
    functionName: ipykernel.kernelbase.Kernel.shell_channel_thread_main
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.eventloop.zmqstream.ZMQStream.manager.get_shell_channel_to_subshell_socket
    - ipykernel.displayhook.Session.manager.get_shell_channel_to_subshell_socket
    - IPython.core.autocall.ZMQExitAutocall.manager.get_shell_channel_to_subshell_socket
    - jupyter_client.session.Session.manager.get_shell_channel_to_subshell_socket
    - IPython.core.interactiveshell.InteractiveShell.manager.get_shell_channel_to_subshell_socket
    - traitlets.HasTraits.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    - zmq.PUB.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    - zmq.PUB.log.error
    - threading.current_thread
    - socket.send_multipart
    - jupyter_client.session.Session.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    - zmq.PUB.session.deserialize
    - traitlets.config.configurable.SingletonConfigurable.manager.get_shell_channel_to_subshell_socket
    - traitlets.HasTraits.manager.get_shell_channel_to_subshell_socket
    - jupyter_client.session.Session.log.error
    - traitlets.traitlets.Any.manager.get_shell_channel_to_subshell_socket
    - zmq.PUB.session.feed_identities
    - queue.Queue.manager.get_shell_channel_to_subshell_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: zmq.eventloop.zmqstream.ZMQStream.manager.get_shell_channel_to_subshell_socket
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.displayhook.Session.manager.get_shell_channel_to_subshell_socket
    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: IPython.core.autocall.ZMQExitAutocall.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.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: 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: zmq.PUB.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.shell_channel_thread.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: 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.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: 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: traitlets.HasTraits.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: queue.Queue.manager.get_shell_channel_to_subshell_socket
    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: 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: 676
    functionName: ipykernel.kernelbase.Kernel.shell_main
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.dispatch_shell
    - zmq.PUB.shell_channel_thread.manager.get_subshell_asyncio_lock
    - threading.current_thread
    - jupyter_client.session.Session.shell_channel_thread.manager.get_subshell_asyncio_lock
    - threading.main_thread
    - jupyter_client.session.Session.dispatch_shell
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_channel_thread.manager.get_subshell_asyncio_lock
    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.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: zmq.PUB.dispatch_shell
    functionSourceFile: zmq
    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: 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: 703
    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: 715
    functionName: ipykernel.kernelbase.Kernel._publish_execute_input
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._topic
    - zmq.PUB.session.send
    - zmq.PUB._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: 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: zmq.PUB._topic
    functionSourceFile: zmq
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f4acf0848e0>
    argNames:
    - self
    - status
    - channel
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 727
    functionName: ipykernel.kernelbase.Kernel._publish_status
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.session.send
    - zmq.PUB._topic
    - jupyter_client.session.Session._topic
    - zmq.PUB.get_parent
    - jupyter_client.session.Session.get_parent
    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 0x7f4acf1a21c0>
    argNames:
    - self
    - status
    - channel
    - stream
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 739
    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
    - zmq.PUB._publish_status
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 745
    functionName: ipykernel.kernelbase.Kernel._publish_debug_event
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.session.send
    - zmq.PUB._topic
    - jupyter_client.session.Session._topic
    - zmq.PUB.get_parent
    - jupyter_client.session.Session.get_parent
    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 0x7f4acf026460>
    argNames:
    - self
    - ident
    - parent
    - channel
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 756
    functionName: ipykernel.kernelbase.Kernel.set_parent
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._shell_parent.set
    - jupyter_client.session.Session._shell_parent_ident.set
    - zmq.PUB._shell_parent_ident.set
    - zmq.PUB._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 0x7f4acf1a07c0>
    argNames:
    - self
    - channel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 772
    functionName: ipykernel.kernelbase.Kernel.get_parent
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._shell_parent.get
    - threading.current_thread
    - zmq.PUB._shell_parent.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._shell_parent.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: zmq.PUB._shell_parent.get
    functionSourceFile: zmq
    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
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 833
    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: 844
    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: 851
    functionName: ipykernel.kernelbase.Kernel.execute_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB._publish_execute_input
    - <builtin>.list
    - obj.strftime
    - jupyter_client.session.Session.init_metadata
    - content.get
    - zmq.PUB.do_execute
    - binascii.b2a_base64
    - math.isinf
    - sys.stderr.flush
    - ipykernel.jsonutil.json_clean
    - jupyter_client.session.Session._abort_queues
    - <builtin>.str
    - binascii.b2a_base64.decode
    - zmq.PUB.log.debug
    - zmq.PUB.finish_metadata
    - jupyter_client.session.Session.log.debug
    - <builtin>.float
    - math.isnan
    - <builtin>.set
    - parent.get
    - warnings.warn
    - cell_meta.get
    - zmq.PUB._abort_queues
    - zmq.PUB.init_metadata
    - _AWAITABLE_MESSAGE.format
    - <builtin>.map
    - inspect.isawaitable
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - jupyter_client.session.Session.do_execute
    - zmq.PUB.session.send
    - zmq.PUB.log.error
    - jupyter_client.session.Session.finish_metadata
    - <builtin>.int
    - obj.items
    - <builtin>.len
    - time.sleep
    - jupyter_client.session.Session.log.error
    - jupyter_client.session.Session._publish_execute_input
    - 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: 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: zmq.PUB.init_metadata
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB._publish_execute_input
    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._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: zmq.PUB.do_execute
    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.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: time.sleep
    functionSourceFile: time
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.finish_metadata
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB._abort_queues
    functionSourceFile: zmq
    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 0x7f4acf0a81f0>
    - <ast.Constant object at 0x7f4acf0a8580>
    - <ast.Constant object at 0x7f4acf0a8370>
    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: 937
    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: 951
    functionName: ipykernel.kernelbase.Kernel.complete_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - obj.strftime
    - binascii.b2a_base64
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - <builtin>.str
    - binascii.b2a_base64.decode
    - <builtin>.float
    - math.isnan
    - <builtin>.set
    - warnings.warn
    - zmq.PUB.do_complete
    - <builtin>.map
    - _AWAITABLE_MESSAGE.format
    - inspect.isawaitable
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - zmq.PUB.session.send
    - <builtin>.int
    - obj.items
    - jupyter_client.session.Session.do_complete
    - <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.PUB.do_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: 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: 972
    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: 982
    functionName: ipykernel.kernelbase.Kernel.inspect_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - obj.strftime
    - content.get
    - binascii.b2a_base64
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - <builtin>.str
    - binascii.b2a_base64.decode
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.debug
    - <builtin>.float
    - math.isnan
    - <builtin>.set
    - warnings.warn
    - <builtin>.map
    - _AWAITABLE_MESSAGE.format
    - inspect.isawaitable
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - zmq.PUB.session.send
    - <builtin>.int
    - obj.items
    - jupyter_client.session.Session.do_inspect
    - zmq.PUB.do_inspect
    - <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: 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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.do_inspect
    functionSourceFile: zmq
    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 0x7f4acf7d1fd0>
    - <ast.Tuple object at 0x7f4acf7d1760>
    argNames:
    - self
    - code
    - cursor_pos
    - detail_level
    - omit_sections
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1008
    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: 1012
    functionName: ipykernel.kernelbase.Kernel.history_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - obj.strftime
    - zmq.PUB.do_history
    - binascii.b2a_base64
    - jupyter_client.session.Session.do_history
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - <builtin>.str
    - binascii.b2a_base64.decode
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.debug
    - <builtin>.float
    - math.isnan
    - <builtin>.set
    - warnings.warn
    - <builtin>.map
    - _AWAITABLE_MESSAGE.format
    - inspect.isawaitable
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - zmq.PUB.session.send
    - <builtin>.int
    - obj.items
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.do_history
    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.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 0x7f4aceef3520>
    - <ast.Constant object at 0x7f4aceef3ac0>
    - <ast.Constant object at 0x7f4aceef38b0>
    - <ast.Constant object at 0x7f4aceef34c0>
    - <ast.Constant object at 0x7f4aceef3cd0>
    - <ast.Constant object at 0x7f4aceef3f40>
    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: 1032
    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: 1047
    functionName: ipykernel.kernelbase.Kernel.connect_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._recorded_ports.copy
    - zmq.PUB.session.send
    - zmq.PUB._recorded_ports.copy
    - zmq.PUB.log.debug
    - 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._recorded_ports.copy
    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.PUB._recorded_ports.copy
    functionSourceFile: zmq
    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: 1057
    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: 1076
    functionName: ipykernel.kernelbase.Kernel.kernel_info_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.log.debug
    - zmq.PUB.session.send
    - jupyter_client.session.Session.log.debug
    - 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: 1085
    functionName: ipykernel.kernelbase.Kernel.comm_info_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.comm_manager.comms.items
    - zmq.PUB.session.send
    - jupyter_client.session.Session.comm_manager.comms.items
    - content.get
    - <builtin>.dict
    - <builtin>.hasattr
    - zmq.PUB.log.debug
    - 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: zmq.PUB.comm_manager.comms.items
    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.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: 1105
    functionName: ipykernel.kernelbase.Kernel._send_interrupt_children
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - os.killpg
    - os.getpgid
    - zmq.PUB.log.error
    - os.kill
    - os.getpid
    - <builtin>.hasattr
    - jupyter_client.session.Session.log.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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: 1122
    functionName: ipykernel.kernelbase.Kernel.interrupt_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.session.send
    - jupyter_client.session.Session._send_interrupt_children
    - traceback.format_stack
    - zmq.PUB._send_interrupt_children
    - <builtin>.str
    - <builtin>.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: zmq.PUB._send_interrupt_children
    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._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: 1142
    functionName: ipykernel.kernelbase.Kernel.shutdown_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUSH.io_loop.add_callback
    - zmq.PUB.shell_stream.io_loop.add_callback
    - jupyter_client.session.Session._at_shutdown
    - traitlets.traitlets.Instance.io_loop.add_callback
    - jupyter_client.session.Session.shell_stream.io_loop.add_callback
    - jupyter_client.session.Session.do_shutdown
    - zmq.PUB.do_shutdown
    - traitlets.HasTraits.control_stream.io_loop.add_callback
    - ipykernel.displayhook.Session.background_socket.io_loop.add_callback
    - zmq.PUB.session.msg
    - jupyter_client.session.Session.log.debug
    - warnings.warn
    - traitlets.traitlets.Any.shell_stream.io_loop.add_callback
    - _AWAITABLE_MESSAGE.format
    - inspect.isawaitable
    - zmq.PUB.session.send
    - zmq.PUB._at_shutdown
    - tornado.ioloop.IOLoop.add_callback
    - zmq.PUB.control_stream.io_loop.add_callback
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.control_stream.io_loop.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: 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: zmq.PUB.do_shutdown
    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._at_shutdown
    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._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.HasTraits.control_stream.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: zmq.PUB.control_stream.io_loop.add_callback
    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.shell_stream.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: zmq.PUB.shell_stream.io_loop.add_callback
    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.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: 1172
    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: 1178
    functionName: ipykernel.kernelbase.Kernel.is_complete_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - obj.strftime
    - jupyter_client.session.Session.do_is_complete
    - binascii.b2a_base64
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - <builtin>.str
    - binascii.b2a_base64.decode
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.debug
    - <builtin>.float
    - math.isnan
    - <builtin>.set
    - warnings.warn
    - <builtin>.map
    - _AWAITABLE_MESSAGE.format
    - inspect.isawaitable
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - zmq.PUB.session.send
    - <builtin>.int
    - obj.items
    - <builtin>.len
    - zmq.PUB.do_is_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: zmq.PUB.do_is_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: 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: 1198
    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: 1202
    functionName: ipykernel.kernelbase.Kernel.debug_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - obj.strftime
    - binascii.b2a_base64
    - math.isinf
    - ipykernel.jsonutil.json_clean
    - <builtin>.str
    - binascii.b2a_base64.decode
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.debug
    - jupyter_client.session.Session.do_debug_request
    - <builtin>.float
    - math.isnan
    - <builtin>.set
    - warnings.warn
    - <builtin>.map
    - _AWAITABLE_MESSAGE.format
    - inspect.isawaitable
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - zmq.PUB.session.send
    - <builtin>.int
    - obj.items
    - zmq.PUB.do_debug_request
    - <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.PUB.do_debug_request
    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.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 0x7f4acee74340>
    argNames:
    - self
    - process
    - name
    - attribute
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1222
    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: 1235
    functionName: ipykernel.kernelbase.Kernel.usage_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - psutil.Process
    - current_process.memory_full_info
    - jupyter_client.session.Session.get_process_metric_value
    - jupyter_client.session.Session.processes.get
    - <builtin>.dict
    - zmq.PUB.get_process_metric_value
    - zmq.PUB.processes.values
    - jupyter_client.session.Session.log.debug
    - psutil.cpu_count
    - <builtin>.sum
    - <builtin>.hasattr
    - psutil.cpu_percent
    - socket.gethostname
    - zmq.PUB.session.send
    - psutil.virtual_memory
    - current_process.children
    - os.getpid
    - zmq.PUB.processes.get
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.processes.values
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB.processes.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.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: zmq.PUB.get_process_metric_value
    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.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: zmq.PUB.processes.values
    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: <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: 1271
    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: 1274
    functionName: ipykernel.kernelbase.Kernel.create_subshell_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.session.send
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - zmq.PUB.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - zmq.PUB.log.error
    - threading.current_thread
    - zmq.PUB.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - jupyter_client.session.Session.log.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    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: 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: 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_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    functionSourceFile: zmq
    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: 1294
    functionName: ipykernel.kernelbase.Kernel.delete_subshell_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.session.send
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - zmq.PUB.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - zmq.PUB.log.error
    - threading.current_thread
    - zmq.PUB.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - jupyter_client.session.Session.log.error
    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: 1322
    functionName: ipykernel.kernelbase.Kernel.list_subshell_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.session.send
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - zmq.PUB.shell_channel_thread.manager.control_to_shell_channel.from_socket.send_json
    - zmq.PUB.log.error
    - threading.current_thread
    - zmq.PUB.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - jupyter_client.session.Session.shell_channel_thread.manager.control_to_shell_channel.from_socket.recv_json
    - jupyter_client.session.Session.log.error
    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: 1355
    functionName: ipykernel.kernelbase.Kernel._post_dummy_stop_aborting_message
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.eventloop.zmqstream.ZMQStream.manager.get_shell_channel_to_subshell_socket
    - ipykernel.displayhook.Session.manager.get_shell_channel_to_subshell_socket
    - IPython.core.autocall.ZMQExitAutocall.manager.get_shell_channel_to_subshell_socket
    - jupyter_client.session.Session.manager.get_shell_channel_to_subshell_socket
    - IPython.core.interactiveshell.InteractiveShell.manager.get_shell_channel_to_subshell_socket
    - traitlets.HasTraits.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    - zmq.PUB.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    - jupyter_client.session.Session.shell_channel_thread.manager.get_shell_channel_to_subshell_socket
    - traitlets.config.configurable.SingletonConfigurable.manager.get_shell_channel_to_subshell_socket
    - socket.send
    - traitlets.traitlets.Any.manager.get_shell_channel_to_subshell_socket
    - traitlets.HasTraits.manager.get_shell_channel_to_subshell_socket
    - queue.Queue.manager.get_shell_channel_to_subshell_socket
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: socket.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 0x7f4acef5cd60>
    argNames:
    - self
    - subshell_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1366
    functionName: ipykernel.kernelbase.Kernel._abort_queues
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - IPython.core.application.BaseIPythonApplication.session
    - jupyter_client.session.Session.log.info
    - jupyter_client.session.Session.shell_channel_thread.manager.set_subshell_aborting
    - zmq.PUB.shell_channel_thread.manager.set_subshell_aborting
    - zmq.PUB.shell_channel_thread.io_loop.add_callback
    - functools.partial
    - jupyter_client.session.Session.shell_stream.flush
    - jupyter_client.session.Session.eventloop._schedule_exit
    - ipykernel.displayhook.Session.background_socket.io_loop.call_later
    - zmq.PUB.log.info
    - zmq.PUSH.io_loop.call_later
    - zmq.PUB.eventloop._schedule_exit
    - zmq.PUB.shell_stream.flush
    - <builtin>.hasattr
    - jupyter_client.session.Session.shell_channel_thread.io_loop.add_callback
    - tornado.ioloop.IOLoop.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: zmq.PUB.shell_channel_thread.manager.set_subshell_aborting
    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.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: zmq.PUB.shell_channel_thread.io_loop.add_callback
    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.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: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1390
    functionName: ipykernel.kernelbase.Kernel._abort_queues.stop_aborting
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB.log.info
    - 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: zmq.PUB.eventloop._schedule_exit
    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.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: 1412
    functionName: ipykernel.kernelbase.Kernel._send_abort_reply
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.log.info
    - zmq.PUB.session.send
    - jupyter_client.session.Session.finish_metadata
    - zmq.PUB.init_metadata
    - jupyter_client.session.Session.init_metadata
    - zmq.PUB.log.info
    - zmq.PUB.finish_metadata
    - md.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1432
    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 0x7f4acdb28040>
    - <ast.Constant object at 0x7f4acdb4afd0>
    argNames:
    - self
    - prompt
    - stream
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1438
    functionName: ipykernel.kernelbase.Kernel.getpass
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - warnings.warn
    - zmq.PUB._input_request
    - zmq.PUB.get_parent
    - zmq.PUB._shell_parent_ident.get
    - jupyter_client.session.Session._shell_parent_ident.get
    - jupyter_client.session.Session.get_parent
    - 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: zmq.PUB._input_request
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f4acdb4a610>
    argNames:
    - self
    - prompt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1463
    functionName: ipykernel.kernelbase.Kernel.raw_input
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - zmq.PUB._input_request
    - zmq.PUB.get_parent
    - zmq.PUB._shell_parent_ident.get
    - <builtin>.str
    - jupyter_client.session.Session._shell_parent_ident.get
    - jupyter_client.session.Session.get_parent
    - 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 0x7f4acdb51e20>
    argNames:
    - self
    - prompt
    - ident
    - parent
    - password
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1480
    functionName: ipykernel.kernelbase.Kernel._input_request
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - obj.strftime
    - jupyter_client.session.Session.log.warning
    - binascii.b2a_base64
    - sys.stderr.flush
    - ipykernel.jsonutil.json_clean
    - math.isinf
    - zmq.PUB.session.recv
    - <builtin>.str
    - zmq.PUB.log.warning
    - binascii.b2a_base64.decode
    - <builtin>.dict
    - <builtin>.float
    - math.isnan
    - jupyter_client.session.Session.stdin_socket.recv_multipart
    - <builtin>.set
    - zmq.PUB.stdin_socket.recv_multipart
    - <builtin>.map
    - <builtin>.isinstance
    - <builtin>.repr
    - zmq.select
    - <builtin>.hasattr
    - <builtin>.type
    - zmq.PUB.session.send
    - zmq.PUB.log.error
    - <builtin>.int
    - obj.items
    - <builtin>.len
    - jupyter_client.session.Session.log.error
    - sys.stdout.flush
    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.PUB.stdin_socket.recv_multipart
    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.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: zmq.PUB.session.recv
    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.log.warning
    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.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: 1532
    functionName: ipykernel.kernelbase.Kernel._signal_children
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._process_children
    - jupyter_client.session.Session.log.debug
    - signal.Signals
    - zmq.PUB._process_children
    - zmq.PUB.log.debug
    - p.send_signal
    - p.kill
    - p.terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: zmq.PUB._process_children
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1552
    functionName: ipykernel.kernelbase.Kernel._process_children
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - kernel_process.children
    - process_group_children.append
    - psutil.Process
    - os.getpgid
    - os.getpgrp
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1575
    functionName: ipykernel.kernelbase.Kernel._progressively_terminate_all_children
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session._process_children
    - asyncio.sleep
    - jupyter_client.session.Session._signal_children
    - zmq.PUB._process_children
    - zmq.PUB.log.debug
    - jupyter_client.session.Session.log.debug
    - zmq.PUB._signal_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: zmq.PUB._signal_children
    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._signal_children
    functionSourceFile: jupyter_client
    functionUses: 1
    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: 1596
    functionName: ipykernel.kernelbase.Kernel._at_shutdown
    functionSourceFile: ipykernel.kernelbase
    functionUses: 0
    functionsReached:
    - jupyter_client.session.Session.control_stream.flush
    - zmq.PUB.session.send
    - zmq.PUB.log.exception
    - jupyter_client.session.Session.log.exception
    - zmq.PUB._topic
    - jupyter_client.session.Session._topic
    - zmq.PUB.control_stream.flush
    - zmq.PUB.log.debug
    - zmq.PUB._progressively_terminate_all_children
    - jupyter_client.session.Session.log.debug
    - 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: zmq.PUB._progressively_terminate_all_children
    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._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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1615
    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: 0
    functionLinenumber: -1
    functionName: ipykernel.utils
    functionSourceFile: ipykernel.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 18
    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: 22
    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: 25
    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: 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:
    - ipykernel.debugger._DummyPyDB.__init__
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker
    - _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_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:
    - <builtin>.ord
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker.track
    - ipykernel.debugger._FakeCode.__init__
    - <builtin>.chr
    - ipykernel.compiler.murmur2_x86
    - <builtin>.range
    - ipykernel.compiler.get_file_name
    - <builtin>.str
    - ctypes.create_unicode_buffer
    - IPython.core.getipython.get_ipython
    - ipykernel.compiler.get_tmp_directory
    - ipykernel.compiler._convert_to_long_pathname
    - ctypes.windll.kernel32.GetLongPathNameW
    - _pydevd_bundle.pydevd_frame_utils.create_frames_list_from_frame
    - tempfile.gettempdir
    - ipykernel.compiler.get_tmp_hash_seed
    - str.encode
    - ipykernel.debugger._FakeFrame.__init__
    - os.getpid
    - <builtin>.len
    - os.environ.get
    - 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
    - tempfile.gettempdir
    - <builtin>.range
    - ipykernel.compiler.get_tmp_hash_seed
    - str.encode
    - ctypes.windll.kernel32.GetLongPathNameW
    - <builtin>.ord
    - <builtin>.str
    - os.getpid
    - ctypes.create_unicode_buffer
    - <builtin>.len
    - <builtin>.chr
    - os.environ.get
    - ipykernel.compiler.<lambda1>
    - ipykernel.compiler.get_tmp_directory
    - 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: _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 0x7f4acf0488e0>
    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:
    - <builtin>.id
    - variables.get_children_variables
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager.get_variable
    - 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:
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - tornado.queues.Queue
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - 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: 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:
    - ipykernel.debugger.Debugger._handle_event
    - tornado.locks.Event.set
    - zmq.utils.jsonapi.loads
    - ipykernel.debugger.DebugpyClient._forward_event
    - typing.cast
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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:
    - ipykernel.debugger.Debugger._handle_event
    - tornado.locks.Event.set
    - <builtin>.set
    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:
    - ipykernel.debugger.Debugger._handle_event
    - tornado.locks.Event.set
    - <builtin>.int
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - zmq.utils.jsonapi.loads
    - ipykernel.debugger.DebugpyClient._forward_event
    - <builtin>.len
    - ipykernel.debugger.DebugpyMessageQueue._put_message
    - typing.cast
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: 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:
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - tornado.queues.Queue
    - ipykernel.debugger.DebugpyMessageQueue.__init__
    - tornado.locks.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: 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:
    - socket.getsockopt
    - ipykernel.debugger.DebugpyClient.get_host_port
    - <builtin>.str
    - socket.unbind
    - socket.bind_to_random_port
    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: 361
    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:
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.int
    - <builtin>.str
    - tornado.locks.Event.wait
    - <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: 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:
    - socket.getsockopt
    - ipykernel.debugger.DebugpyClient.get_host_port
    - <builtin>.str
    - socket.unbind
    - socket.bind_to_random_port
    - ipykernel.debugger.DebugpyClient._get_endpoint
    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:
    - socket.getsockopt
    - ipykernel.debugger.DebugpyClient.get_host_port
    - <builtin>.str
    - socket.unbind
    - tornado.locks.Event
    - socket.bind_to_random_port
    - ipykernel.debugger.DebugpyClient._get_endpoint
    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:
    - ipykernel.debugger.DebugpyMessageQueue.put_tcp_frame
    - ipykernel.debugger.Debugger._handle_event
    - tornado.locks.Event.set
    - <builtin>.int
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - zmq.utils.jsonapi.loads
    - ipykernel.debugger.DebugpyClient._forward_event
    - <builtin>.len
    - ipykernel.debugger.DebugpyMessageQueue._put_message
    - typing.cast
    - <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: 3
    functionLinenumber: 291
    functionName: ipykernel.debugger.DebugpyClient.send_dap_request
    functionSourceFile: ipykernel.debugger
    functionUses: 9
    functionsReached:
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - tornado.locks.Event.wait
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4acf58b3d0>
    argNames:
    - self
    - log
    - debugpy_stream
    - event_callback
    - shell_socket
    - session
    - just_my_code
    argTypes:
    - 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:
    - tornado.queues.Queue
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager
    - <builtin>.getattr
    - ipykernel.debugger.DebugpyClient.__init__
    - ipykernel.debugger.VariableExplorer.__init__
    - _pydevd_bundle.pydevd_api.PyDevdAPI.VariablePresentation
    - ipykernel.debugger._DummyPyDB.__init__
    - ipykernel.debugger.DebugpyMessageQueue._reset_tcp_pos
    - tornado.locks.Event
    - ipykernel.debugger.DebugpyMessageQueue.__init__
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker
    - <builtin>.set
    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: 378
    functionName: ipykernel.debugger.Debugger._forward_message
    functionSourceFile: ipykernel.debugger
    functionUses: 8
    functionsReached:
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - tornado.locks.Event.wait
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - variables
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 381
    functionName: ipykernel.debugger.Debugger._build_variables_response
    functionSourceFile: ipykernel.debugger
    functionUses: 2
    functionsReached:
    - ipykernel.debugger.Debugger.accept_variable
    - re.search
    - <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: 521
    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: 392
    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: 398
    functionName: ipykernel.debugger.Debugger.handle_stopped_event
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - ipykernel.debugger.Debugger._accept_stopped_thread
    - tornado.locks.Event.wait
    - <builtin>.str
    - ipykernel.debugger.Debugger._forward_message
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 411
    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: 414
    functionName: ipykernel.debugger.Debugger.start
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    functionsReached:
    - pathlib.Path.exists
    - socket.getsockopt
    - ipykernel.debugger.DebugpyClient.get_host_port
    - <builtin>.str
    - ctypes.create_unicode_buffer
    - socket.bind_to_random_port
    - IPython.core.getipython.get_ipython
    - pathlib.Path.mkdir
    - ipykernel.compiler.get_tmp_directory
    - ipykernel.compiler._convert_to_long_pathname
    - ctypes.windll.kernel32.GetLongPathNameW
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.pop
    - pathlib.Path
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.index
    - socket.unbind
    - ipykernel.debugger.DebugpyClient.connect_tcp_socket
    - tempfile.gettempdir
    - os.getpid
    - ipykernel.debugger.DebugpyClient._get_endpoint
    - ipykernel.compiler.<lambda1>
    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
    - <builtin>.str
    - os.getpid
    - ctypes.create_unicode_buffer
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler.<lambda1>
    - 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: 444
    functionName: ipykernel.debugger.Debugger.stop
    functionSourceFile: ipykernel.debugger
    functionUses: 1
    functionsReached:
    - socket.getsockopt
    - ipykernel.debugger.DebugpyClient.get_host_port
    - <builtin>.str
    - socket.unbind
    - ipykernel.debugger.DebugpyClient.disconnect_tcp_socket
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.insert
    - tornado.locks.Event
    - socket.bind_to_random_port
    - ipykernel.debugger.DebugpyClient._get_endpoint
    - IPython.core.getipython.get_ipython
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sorted
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 454
    functionName: ipykernel.debugger.Debugger.dumpCell
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.ord
    - <builtin>.chr
    - ipykernel.compiler.murmur2_x86
    - <builtin>.range
    - ipykernel.compiler.get_file_name
    - <builtin>.str
    - ctypes.create_unicode_buffer
    - ipykernel.compiler.get_tmp_directory
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler._convert_to_long_pathname
    - <builtin>.open
    - tempfile.gettempdir
    - ipykernel.compiler.get_tmp_hash_seed
    - str.encode
    - f.write
    - os.getpid
    - <builtin>.len
    - os.environ.get
    - 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: 470
    functionName: ipykernel.debugger.Debugger.setBreakpoints
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - tornado.locks.Event.wait
    - ipykernel.debugger.Debugger._forward_message
    - <builtin>.len
    - message_response.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: 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: 484
    functionName: ipykernel.debugger.Debugger.source
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - pathlib.Path.is_file
    - f.read
    - <builtin>.open
    - 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: 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: 499
    functionName: ipykernel.debugger.Debugger.stackTrace
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.next
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - <builtin>.reversed
    - tornado.locks.Event.wait
    - ipykernel.debugger.Debugger._forward_message
    - <builtin>.len
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.reversed
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.enumerate
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 550
    functionName: ipykernel.debugger.Debugger.variables
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - ipykernel.debugger.Debugger._build_variables_response
    - ipykernel.debugger.Debugger._forward_message
    - <builtin>.bool
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager.get_variable
    - ipykernel.debugger.Debugger.accept_variable
    - <builtin>.str
    - x.get_var_data
    - re.search
    - variables.get_children_variables
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - <builtin>.id
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.int
    - tornado.locks.Event.wait
    - ipykernel.debugger.VariableExplorer.get_children_variables
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 566
    functionName: ipykernel.debugger.Debugger.attach
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - socket.getsockopt
    - <builtin>.len
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient.get_host_port
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - <builtin>.int
    - socket.unbind
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - tornado.locks.Event.wait
    - <builtin>.str
    - ipykernel.debugger.Debugger._forward_message
    - socket.bind_to_random_port
    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: 579
    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: 589
    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: 613
    functionName: ipykernel.debugger.Debugger.inspectVariables
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - ipykernel.debugger.Debugger._build_variables_response
    - ipykernel.debugger.VariableExplorer.untrack_all
    - <builtin>.ord
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker.track
    - ipykernel.debugger._FakeCode.__init__
    - <builtin>.chr
    - ipykernel.compiler.murmur2_x86
    - <builtin>.range
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager
    - <builtin>.bool
    - ipykernel.compiler.get_file_name
    - _pydevd_bundle.pydevd_suspended_frames.SuspendedFramesManager.get_variable
    - ipykernel.debugger.Debugger.accept_variable
    - <builtin>.str
    - x.get_var_data
    - ctypes.create_unicode_buffer
    - IPython.core.getipython.get_ipython
    - ipykernel.compiler.get_tmp_directory
    - ipykernel.compiler._convert_to_long_pathname
    - ctypes.windll.kernel32.GetLongPathNameW
    - re.search
    - variables.get_children_variables
    - _pydevd_bundle.pydevd_api.PyDevdAPI.VariablePresentation
    - ipykernel.debugger._DummyPyDB.__init__
    - <builtin>.id
    - ipykernel.debugger.VariableExplorer.track
    - _pydevd_bundle.pydevd_frame_utils.create_frames_list_from_frame
    - tempfile.gettempdir
    - ipykernel.compiler.get_tmp_hash_seed
    - str.encode
    - ipykernel.debugger.VariableExplorer.__init__
    - ipykernel.debugger._FakeFrame.__init__
    - ipykernel.debugger.VariableExplorer.get_children_variables
    - os.getpid
    - <builtin>.len
    - os.environ.get
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker.untrack_all
    - ipykernel.compiler.<lambda1>
    - _pydevd_bundle.pydevd_suspended_frames._FramesTracker
    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: 624
    functionName: ipykernel.debugger.Debugger.richInspectVariables
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - IPython.core.getipython.get_ipython.user_expressions
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - result.get
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - tornado.locks.Event.wait
    - ipykernel.debugger.Debugger._forward_message
    - str.isidentifier
    - <builtin>.len
    - IPython.core.getipython.get_ipython
    - <builtin>.eval
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 676
    functionName: ipykernel.debugger.Debugger.copyToGlobals
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - <builtin>.str
    - tornado.locks.Event.wait
    - ipykernel.debugger.Debugger._forward_message
    - <builtin>.len
    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: 696
    functionName: ipykernel.debugger.Debugger.modules
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - filename.endswith
    - <builtin>.getattr
    - <builtin>.list
    - message.get
    - mods.append
    - <builtin>.len
    - sys.modules.values
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 710
    functionName: ipykernel.debugger.Debugger.process_request
    functionSourceFile: ipykernel.debugger
    functionUses: 0
    functionsReached:
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.insert
    - ipykernel.debugger.Debugger._forward_message
    - pathlib.Path.exists
    - ipykernel.debugger.Debugger.start
    - socket.getsockopt
    - zmq.utils.jsonapi.dumps
    - ipykernel.debugger.DebugpyClient.get_host_port
    - ipykernel.debugger.DebugpyClient._wait_for_response
    - <builtin>.str
    - ctypes.create_unicode_buffer
    - socket.bind_to_random_port
    - IPython.core.getipython.get_ipython
    - pathlib.Path.mkdir
    - ipykernel.compiler.get_tmp_directory
    - <builtin>.sorted
    - ipykernel.compiler._convert_to_long_pathname
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.pop
    - ctypes.windll.kernel32.GetLongPathNameW
    - <builtin>.set
    - pathlib.Path
    - IPython.core.getipython.get_ipython.input_transformer_manager.cleanup_transforms.index
    - ipykernel.debugger.DebugpyClient._send_request
    - ipykernel.debugger.DebugpyMessageQueue.get_message
    - ipykernel.debugger.DebugpyClient.send_dap_request
    - socket.unbind
    - ipykernel.debugger.DebugpyClient._handle_init_sequence
    - tornado.locks.Event
    - ipykernel.debugger.DebugpyClient.connect_tcp_socket
    - tempfile.gettempdir
    - <builtin>.int
    - ipykernel.debugger.DebugpyClient.disconnect_tcp_socket
    - tornado.locks.Event.wait
    - os.getpid
    - <builtin>.len
    - ipykernel.debugger.DebugpyClient._get_endpoint
    - ipykernel.debugger.Debugger.stop
    - ipykernel.compiler.<lambda1>
    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.windll.kernel32.GetLongPathNameW
    - ctypes.create_unicode_buffer
    - ipykernel.compiler._convert_to_long_pathname
    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>.range
    - str.encode
    - <builtin>.ord
    - <builtin>.len
    - <builtin>.chr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.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
    - tempfile.gettempdir
    - <builtin>.range
    - ipykernel.compiler.get_tmp_hash_seed
    - str.encode
    - ctypes.windll.kernel32.GetLongPathNameW
    - ipykernel.compiler.get_file_name
    - <builtin>.ord
    - <builtin>.str
    - os.getpid
    - ctypes.create_unicode_buffer
    - <builtin>.len
    - <builtin>.chr
    - os.environ.get
    - ipykernel.compiler.<lambda1>
    - ipykernel.compiler.get_tmp_directory
    - 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: 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: 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:
    - kwargs.pop
    - BaseComm.__init__
    - warnings.warn
    - traitlets.config.LoggingConfigurable.register_comm
    - logger.error
    - ipykernel.comm.comm.Comm.__init__
    - traitlets.config.LoggingConfigurable.__init__
    - comm.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.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.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.warning
    - traitlets.log.get_logger
    - os.getppid
    - traitlets.log.get_logger.debug
    - os._exit
    - time.sleep
    - <builtin>.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: 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: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 7
    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:
    - warnings.warn
    - traitlets.log.get_logger.warning
    - handles.append
    - ctypes.windll.kernel32.WaitForMultipleObjects
    - traitlets.log.get_logger
    - _thread.interrupt_main
    - signal.getsignal
    - platform.architecture
    - os._exit
    - <builtin>.len
    - arch.startswith
    - <builtin>.callable
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: _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: 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: 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:
    - zmq.PUB.getsockname
    - zmq.PUB.close
    - jupyter_client.session.Session.socket
    - pathlib.Path
    - zmq.PUB.socket
    - zmq.PUB.bind
    - jupyter_client.session.Session.getsockname
    - pathlib.Path.exists
    - jupyter_client.session.Session.bind
    - jupyter_client.session.Session.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: zmq.PUB.getsockname
    functionSourceFile: zmq
    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.getsockname
    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: 62
    functionName: ipykernel.heartbeat.Heartbeat._try_bind_socket
    functionSourceFile: ipykernel.heartbeat
    functionUses: 2
    functionsReached:
    - <builtin>.str
    - jupyter_client.session.Session.bind
    - zmq.PUB.bind
    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:
    - zmq.PUB.getsockname
    - <builtin>.range
    - zmq.PUB.close
    - jupyter_client.session.Session.socket
    - pathlib.Path
    - zmq.PUB.socket
    - zmq.PUB.bind
    - jupyter_client.session.Session.getsockname
    - ipykernel.heartbeat.Heartbeat._try_bind_socket
    - <builtin>.str
    - ipykernel.heartbeat.Heartbeat.pick_port
    - pathlib.Path.exists
    - jupyter_client.session.Session.bind
    - jupyter_client.session.Session.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:
    - jupyter_client.session.Session.close
    - zmq.PUB.close
    - <builtin>.range
    - jupyter_client.session.Session.socket
    - zmq.PUB.getsockname
    - pathlib.Path
    - zmq.PUB.bind
    - jupyter_client.session.Session.getsockname
    - ipykernel.heartbeat.Heartbeat._try_bind_socket
    - <builtin>.str
    - zmq.device
    - ipykernel.heartbeat.Heartbeat.pick_port
    - pathlib.Path.exists
    - jupyter_client.session.Session.bind
    - zmq.PUB.socket
    - ipykernel.heartbeat.Heartbeat._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: 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.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: zmq.PUB.shell.set_trio_runner
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    functionLinenumber: -1
    functionName: zmq.PUB.shell.run_line_magic
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: 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: 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:
    - traceback.format_exception
    - <builtin>.type
    - logging.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: 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.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 0x7f4aceeb2bb0>
    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:
    - zmq.PUB
    - zmq.PUSH.io_loop
    - jupyter_client.session.Session._setup_event_pipe
    - threading.Lock
    - threading.Thread
    - ipykernel.displayhook.Session.background_socket.io_loop
    - tornado.ioloop.IOLoop
    - jupyter_client.session.Session._setup_pipe_in
    - collections.deque
    - zmq.PUB._setup_pipe_in
    - os.getpid
    - zmq.PUB._setup_event_pipe
    - threading.local
    - 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: zmq.PUB._setup_pipe_in
    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._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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB._setup_event_pipe
    functionSourceFile: zmq
    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:
    - tornado.ioloop.IOLoop.start
    - zmq.PUSH.io_loop.run_sync
    - tornado.ioloop.IOLoop.close
    - ipykernel.displayhook.Session.background_socket.io_loop.run_sync
    - zmq.PUSH.io_loop.close
    - zmq.PUB._event_pipe_gc_task.cancel
    - ipykernel.displayhook.Session.background_socket.io_loop.close
    - ipykernel.displayhook.Session.background_socket.io_loop.start
    - zmq.PUSH.io_loop.start
    - tornado.ioloop.IOLoop.run_sync
    - 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: 1
    functionLinenumber: 85
    functionName: ipykernel.iostream.IOPubThread._thread_main._start_event_gc
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - asyncio.ensure_future
    - zmq.PUB._run_event_pipe_gc
    - jupyter_client.session.Session._run_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: zmq.PUB._run_event_pipe_gc
    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._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: ipykernel.displayhook.Session.background_socket.io_loop.run_sync
    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: zmq.PUSH.io_loop.run_sync
    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: 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:
    - zmq.PUB._event_pipe_gc_task.cancel
    - 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: zmq.PUB._event_pipe_gc_task.cancel
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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
    - zmq.PUB
    - zmq.PUB._event_puller.on_recv
    - zmq.ROUTER.context.socket
    - jupyter_client.session.Session.socket
    - zmq.PUB.bind
    - jupyter_client.session.Session.context.socket
    - traitlets.traitlets.Any.context.socket
    - zmq.PUB.context.socket
    - jupyter_client.session.Session._event_puller.on_recv
    - traitlets.Instance.context.socket
    - binascii.b2a_hex
    - os.urandom
    - jupyter_client.session.Session.bind
    - zmq.PUB.socket
    - IPython.core.interactiveshell.InteractiveShell.context.socket
    - 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: zmq.ROUTER.context.socket
    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: jupyter_client.session.Session.context.socket
    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: traitlets.traitlets.Any.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: zmq.PUB.context.socket
    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: 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: 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: zmq.PUB._event_puller.on_recv
    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._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:
    - <builtin>.print
    - asyncio.sleep
    - jupyter_client.session.Session._event_pipe_gc
    - zmq.PUB._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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB._event_pipe_gc
    functionSourceFile: zmq
    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:
    - thread.is_alive
    - zmq.PUB.close
    - <builtin>.list
    - zmq.PUB._event_pipes.items
    - 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: zmq.PUB._event_pipes.items
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - zmq.ROUTER.context.socket
    - jupyter_client.session.Session.socket
    - jupyter_client.session.Session.context.socket
    - zmq.PUB._local.event_pipe.connect
    - threading.current_thread
    - traitlets.traitlets.Any.context.socket
    - zmq.PUB.context.socket
    - traitlets.traitlets.Any._local.event_pipe.connect
    - traitlets.Instance.context.socket
    - jupyter_client.session.Session._local.event_pipe.connect
    - zmq.PUB.socket
    - IPython.core.interactiveshell.InteractiveShell.context.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: zmq.PUB._local.event_pipe.connect
    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._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:
    - <builtin>.len
    - <builtin>.range
    - jupyter_client.session.Session._events.popleft
    - zmq.PUB._events.popleft
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB._events.popleft
    functionSourceFile: zmq
    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:
    - zmq.ROUTER.context.socket
    - zmq.PUB.close
    - warnings.warn
    - zmq.PUB
    - jupyter_client.session.Session.socket
    - jupyter_client.session.Session.bind_to_random_port
    - jupyter_client.session.Session.context.socket
    - traitlets.traitlets.Any.context.socket
    - zmq.PUB.context.socket
    - zmq.PUB._pipe_in.on_recv
    - zmq.PUB.bind_to_random_port
    - jupyter_client.session.Session._pipe_in.on_recv
    - traitlets.Instance.context.socket
    - os.urandom
    - zmq.PUB.socket
    - jupyter_client.session.Session.close
    - IPython.core.interactiveshell.InteractiveShell.context.socket
    - 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: jupyter_client.session.Session._pipe_in.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: zmq.PUB._pipe_in.on_recv
    functionSourceFile: zmq
    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:
    - <builtin>.print
    - zmq.PUB.send_multipart
    - zmq.PUB._is_master_process
    - jupyter_client.session.Session._is_master_process
    - 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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB._is_master_process
    functionSourceFile: zmq
    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:
    - jupyter_client.session.Session.connect
    - jupyter_client.session.Session.socket
    - zmq.Context
    - zmq.PUB.connect
    - zmq.PUB.socket
    linkageType: pythonLinkage
    raised: []
    returnType: 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
    - zmq.PUB._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:
    - jupyter_client.session.Session.thread.start
    - zmq.PUB.thread.start
    - atexit.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: jupyter_client.session.Session.thread.start
    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.PUB.thread.start
    functionSourceFile: zmq
    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:
    - zmq.PUSH.io_loop.add_callback
    - event_pipe.close
    - ipykernel.displayhook.Session.background_socket.io_loop.add_callback
    - zmq.PUB.thread.is_alive
    - zmq.PUB.thread.join
    - tornado.ioloop.IOLoop.add_callback
    - zmq.PUB._event_pipes.items
    - jupyter_client.session.Session.thread.join
    - jupyter_client.session.Session._event_pipes.items
    - jupyter_client.session.Session.thread.is_alive
    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: zmq.PUB.thread.is_alive
    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: 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: zmq.PUB.thread.join
    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.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
    - zmq.PUB.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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.socket.close
    functionSourceFile: zmq
    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>.print
    - buffer.getvalue
    - jupyter_client.session.Session._event_pipe.send
    - ipykernel.iostream.OutStream._flush
    - collections.defaultdict.items
    - zmq.PUSH.io_loop.call_later
    - traitlets.traitlets.Instance.msg
    - <builtin>.dict
    - jupyter_client.session.Session._events.append
    - tornado.ioloop.IOLoop.call_later
    - zmq.PUB._event_pipe.send
    - zmq.PUB._events.append
    - ipykernel.iostream.OutStream._rotate_buffers
    - zmq.PUB.thread.is_alive
    - collections.defaultdict
    - ipykernel.iostream.OutStream._hooks
    - <builtin>.hasattr
    - jupyter_client.session.Session.thread.is_alive
    - ipykernel.iostream.OutStream._schedule_flush._schedule_in_thread
    - ipykernel.displayhook.Session.background_socket.io_loop.call_later
    - os.getpid
    - ipykernel.iostream.OutStream._flush_buffers
    - buffer.close
    - traitlets.traitlets.Instance.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._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: zmq.PUB._events.append
    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._event_pipe.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: 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: 594
    functionName: ipykernel.iostream.OutStream._schedule_flush._schedule_in_thread
    functionSourceFile: ipykernel.iostream
    functionUses: 1
    functionsReached:
    - ipykernel.displayhook.Session.background_socket.io_loop.call_later
    - zmq.PUSH.io_loop.call_later
    - tornado.ioloop.IOLoop.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: 623
    functionName: ipykernel.iostream.OutStream._flush
    functionSourceFile: ipykernel.iostream
    functionUses: 2
    functionsReached:
    - <builtin>.print
    - buffer.getvalue
    - collections.defaultdict.items
    - ipykernel.iostream.OutStream._rotate_buffers
    - collections.defaultdict
    - traitlets.traitlets.Instance.msg
    - ipykernel.iostream.OutStream._flush_buffers
    - os.getpid
    - <builtin>.dict
    - ipykernel.iostream.OutStream._hooks
    - <builtin>.hasattr
    - buffer.close
    - traitlets.traitlets.Instance.send
    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
    - zmq.PUB.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:
    - zmq.PUB._really_send
    - 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: zmq.PUB._really_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: 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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.schedule
    functionSourceFile: zmq
    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:
    - ctx.term
    - jupyter_client.session.Session._check_mp_mode
    - pipe_out.close
    - zmq.PUB.socket.send_multipart
    - pipe_out.send_multipart
    - jupyter_client.session.Session._setup_pipe_out
    - zmq.PUB._setup_pipe_out
    - zmq.PUB._check_mp_mode
    - jupyter_client.session.Session.socket.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._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: zmq.PUB._check_mp_mode
    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.socket.send_multipart
    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.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: zmq.PUB._setup_pipe_out
    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._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:
    - warnings.warn
    - <builtin>.getattr
    - attr.startswith
    - attr.endswith
    - <builtin>.super
    - <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: 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:
    - warnings.warn
    - <builtin>.setattr
    - attr.startswith
    - attr.endswith
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.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
    - zmq.PUB.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
    - zmq.PUB.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: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.io_thread.send_multipart
    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: 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:
    - <builtin>.print
    - jupyter_client.session.Session.schedule
    - <builtin>.frozenset
    - zmq.PUB.schedule
    - ipykernel.iostream.OutStream._schedule_flush
    - os.write
    - <builtin>.len
    - ipykernel.iostream.OutStream._is_master_process
    - sys.exc_info
    - jupyter_client.session.extract_header.items
    - os.getpid
    - os.read
    - <builtin>.isinstance
    - bts.decode
    - ipykernel.iostream.OutStream.write
    - <builtin>.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: 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: 662
    functionName: ipykernel.iostream.OutStream.write
    functionSourceFile: ipykernel.iostream
    functionUses: 2
    functionsReached:
    - <builtin>.print
    - jupyter_client.session.Session.schedule
    - <builtin>.frozenset
    - zmq.PUB.schedule
    - ipykernel.iostream.OutStream._schedule_flush
    - ipykernel.iostream.OutStream._is_master_process
    - os.getpid
    - jupyter_client.session.extract_header.items
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.type
    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 0x7f4acf036430>
    - <ast.Constant object at 0x7f4acf036340>
    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:
    - zmq.PUB
    - io.FileIO
    - <builtin>.getattr
    - name.encode
    - sys.platform.startswith
    - zmq.PUB.start
    - threading.local
    - jupyter_client.session.Session
    - ipykernel.iostream.OutStream._setup_stream_redirects
    - <builtin>.bool
    - os.pipe
    - threading.RLock
    - contextvars.ContextVar
    - jupyter_client.session.Session.start
    - os.dup2
    - warnings.warn
    - collections.defaultdict
    - <builtin>.isinstance
    - <builtin>.hasattr
    - echo.fileno
    - threading.Thread
    - io.TextIOBase._parent_header.set
    - io.TextIOWrapper
    - os.getpid
    - os.dup
    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: 544
    functionName: ipykernel.iostream.OutStream._setup_stream_redirects
    functionSourceFile: ipykernel.iostream
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - threading.Thread
    - os.pipe
    - os.dup
    - os.dup2
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 532
    functionName: ipykernel.iostream.OutStream.parent_header
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - io.TextIOBase._parent_header.set
    - threading.current_thread
    - 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: 536
    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: 557
    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: 560
    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: 564
    functionName: ipykernel.iostream.OutStream.close
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - os.write
    - traceback.print_exception
    - os.dup2
    - os.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: 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: 581
    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: 584
    functionName: ipykernel.iostream.OutStream._schedule_flush
    functionSourceFile: ipykernel.iostream
    functionUses: 3
    functionsReached:
    - jupyter_client.session.Session.schedule
    - zmq.PUB.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: 599
    functionName: ipykernel.iostream.OutStream.flush
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - evt.wait
    - buffer.getvalue
    - jupyter_client.session.Session.schedule
    - ipykernel.iostream.OutStream._flush
    - collections.defaultdict.items
    - traitlets.traitlets.Instance.msg
    - <builtin>.dict
    - threading.Event
    - zmq.PUB.schedule
    - ipykernel.iostream.OutStream._rotate_buffers
    - zmq.PUB.thread.is_alive
    - collections.defaultdict
    - ipykernel.iostream.OutStream._hooks
    - <builtin>.hasattr
    - jupyter_client.session.Session.thread.is_alive
    - threading.current_thread
    - os.getpid
    - ipykernel.iostream.OutStream._flush_buffers
    - buffer.close
    - traitlets.traitlets.Instance.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: 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: 717
    functionName: ipykernel.iostream.OutStream._flush_buffers
    functionSourceFile: ipykernel.iostream
    functionUses: 3
    functionsReached:
    - buffer.getvalue
    - collections.defaultdict.items
    - ipykernel.iostream.OutStream._rotate_buffers
    - collections.defaultdict
    - <builtin>.dict
    - buffer.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.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: 733
    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: 705
    functionName: ipykernel.iostream.OutStream.writelines
    functionSourceFile: ipykernel.iostream
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - jupyter_client.session.Session.schedule
    - <builtin>.frozenset
    - zmq.PUB.schedule
    - ipykernel.iostream.OutStream._schedule_flush
    - ipykernel.iostream.OutStream._is_master_process
    - os.getpid
    - jupyter_client.session.extract_header.items
    - <builtin>.isinstance
    - <builtin>.len
    - ipykernel.iostream.OutStream.write
    - <builtin>.type
    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: 713
    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: 725
    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: 739
    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: 758
    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>.int
    - re.match
    - <builtin>.tuple
    - 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 0x7f4acefb3ac0>
    - <ast.Constant object at 0x7f4acefb3b50>
    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:
    - IPython.core.application.BaseIPythonApplication.initialized
    - IPython.utils.frame.extract_module_locals
    - app.shell.set_completer_frame
    - app.initialize
    - <builtin>.dict
    - <builtin>.isinstance
    - 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: 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:
    - os.path.join
    - pathlib.Path
    - 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 0x7f4acf1a23d0>
    - <ast.Constant object at 0x7f4acf1a2a00>
    - <ast.Constant object at 0x7f4acf1a2bb0>
    - <ast.Constant object at 0x7f4acf1a2fd0>
    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 0x7f4acf084190>
    - <ast.Constant object at 0x7f4acf084c40>
    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 0x7f4acf1cb310>
    - <ast.Constant object at 0x7f4acf1cb460>
    - <ast.Constant object at 0x7f4acf1cb9d0>
    - <ast.Constant object at 0x7f4acf1cb8e0>
    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:
    - tempfile.mkdtemp
    - pathlib.Path
    - pathlib.Path.stat
    - ipykernel.kernelspec.get_kernel_dict
    - shutil.copytree
    - <builtin>.str
    - kernel_dict.update
    - pathlib.Path.chmod
    - <builtin>.open
    - os.path.join
    - json.dump
    - ipykernel.kernelspec.make_ipkernel_cmd
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f4acefa7df0>
    - <ast.Constant object at 0x7f4acefa7070>
    - <ast.Name object at 0x7f4acefa7f10>
    - <ast.Constant object at 0x7f4acefa7d90>
    - <ast.Constant object at 0x7f4acefa7c70>
    - <ast.Constant object at 0x7f4acf83a130>
    - <ast.Constant object at 0x7f4acf83a1c0>
    - <ast.Constant object at 0x7f4acf83abe0>
    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:
    - platform.python_implementation
    - pathlib.Path.chmod
    - ipykernel.kernelspec.make_ipkernel_cmd
    - pathlib.Path
    - tempfile.mkdtemp
    - jupyter_client.kernelspec.KernelSpecManager.install_kernel_spec
    - pathlib.Path.stat
    - ipykernel.kernelspec.get_kernel_dict
    - shutil.copytree
    - <builtin>.str
    - ipykernel.kernelspec.write_kernel_spec
    - kernel_dict.update
    - shutil.rmtree
    - <builtin>.open
    - os.path.join
    - json.dump
    - jupyter_client.kernelspec.KernelSpecManager
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f4acefd1730>
    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>.print
    - parser.parse_args
    - argparse.ArgumentParser
    - platform.python_implementation
    - os.path.join
    - json.dump
    - ipykernel.kernelspec.make_ipkernel_cmd
    - pathlib.Path.chmod
    - jupyter_client.kernelspec.KernelSpecManager
    - ipykernel.kernelspec.install
    - pathlib.Path.stat
    - ipykernel.kernelspec.get_kernel_dict
    - shutil.copytree
    - <builtin>.str
    - ipykernel.kernelspec.write_kernel_spec
    - <builtin>.dict
    - traitlets.config.Application.exit
    - pathlib.Path
    - tempfile.mkdtemp
    - kernel_dict.update
    - shutil.rmtree
    - <builtin>.open
    - parser.add_argument
    - jupyter_client.kernelspec.KernelSpecManager.install_kernel_spec
    linkageType: pythonLinkage
    raised: []
    returnType: N/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:
    - <builtin>.super
    - jupyter_client.session.Session
    - zmq.PUB
    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: 32
    functionName: ipykernel.inprocess.blocking.BlockingInProcessChannel.call_handlers
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached:
    - zmq.PUB._in_queue.put
    - IPython.core.displayhook.DisplayHook._in_queue.put
    - IPython.core.compilerop.CachingCompiler._in_queue.put
    - jupyter_client.session.Session._in_queue.put
    linkageType: pythonLinkage
    raised: []
    returnType: N/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._in_queue.put
    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.displayhook.DisplayHook._in_queue.put
    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._in_queue.put
    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._in_queue.put
    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: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4acef08f70>
    - <ast.Constant object at 0x7f4acef08af0>
    argNames:
    - self
    - block
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: ipykernel.inprocess.blocking.BlockingInProcessChannel.get_msg
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached:
    - zmq.PUB._in_queue.get
    - IPython.core.displayhook.DisplayHook._in_queue.get
    - jupyter_client.session.Session._in_queue.get
    - IPython.core.compilerop.CachingCompiler._in_queue.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: zmq.PUB._in_queue.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.displayhook.DisplayHook._in_queue.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: jupyter_client.session.Session._in_queue.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.compilerop.CachingCompiler._in_queue.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: 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
    - IPython.core.displayhook.DisplayHook.get_msg
    - jupyter_client.session.Session.get_msg
    - zmq.PUB.get_msg
    - IPython.core.compilerop.CachingCompiler.get_msg
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.get_msg
    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.get_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: zmq.PUB.get_msg
    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.compilerop.CachingCompiler.get_msg
    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: 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: 1
    functionLinenumber: 54
    functionName: ipykernel.inprocess.blocking.BlockingInProcessChannel.msg_ready
    functionSourceFile: ipykernel.inprocess.blocking
    functionUses: 0
    functionsReached:
    - IPython.core.displayhook.DisplayHook._in_queue.empty
    - IPython.core.compilerop.CachingCompiler._in_queue.empty
    - jupyter_client.session.Session._in_queue.empty
    - zmq.PUB._in_queue.empty
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: IPython.core.displayhook.DisplayHook._in_queue.empty
    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._in_queue.empty
    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._in_queue.empty
    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.PUB._in_queue.empty
    functionSourceFile: zmq
    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
    - 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:
    - <builtin>.print
    - IPython.core.displayhook.DisplayHook.client.input
    - IPython.core.displayhook.DisplayHook.client.kernel._sys_raw_input
    - IPython.core.compilerop.CachingCompiler.client.input
    - traitlets.HasTraits.client.kernel._sys_raw_input
    - sys.__stdout__.flush
    - IPython.core.compilerop.CachingCompiler.client.kernel._sys_raw_input
    - zmq.PUB.client.input
    - zmq.PUB.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: traitlets.HasTraits.client.kernel._sys_raw_input
    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.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: zmq.PUB.client.kernel._sys_raw_input
    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.client.input
    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.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:
    - <builtin>.print
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient.kernel_info
    - zmq.PUB.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - asyncio.get_event_loop
    - jupyter_client.client.KernelClient.session.msg
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.client.KernelClient._handle_kernel_info_reply
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.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:
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - asyncio.get_event_loop
    - jupyter_client.client.KernelClient.session.msg
    - queue.Queue.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.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 0x7f4acefd1040>
    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 0x7f4acef9d8b0>
    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 0x7f4acef9df70>
    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:
    - zmq.PUB
    - traitlets.default
    - traitlets.DottedObjectName
    - 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.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:
    - zmq.PUB
    - 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
    - zmq.PUB.observe
    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
    - zmq.PUB.observe
    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:
    - zmq.PUB.stop
    - zmq.PUB.iopub_thread.stop
    - ipykernel.inprocess.manager.InProcessKernelManager._kill_kernel
    - jupyter_client.session.Session.stop
    - jupyter_client.session.Session.iopub_thread.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: zmq.PUB.iopub_thread.stop
    functionSourceFile: zmq
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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 0x7f4acf09d4c0>
    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.observe
    - ipykernel.inprocess.manager.InProcessKernelManager.shutdown_kernel
    - zmq.PUB.observe
    - zmq.PUB.stop
    - zmq.PUB.iopub_thread.stop
    - ipykernel.inprocess.manager.InProcessKernelManager._kill_kernel
    - ipykernel.inprocess.ipkernel.InProcessKernel.__init__
    - jupyter_client.session.Session.stop
    - ipykernel.inprocess.manager.InProcessKernelManager.start_kernel
    - <builtin>.super
    - jupyter_client.session.Session.iopub_thread.stop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - 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:
    - zmq.PUB
    - traitlets.Any
    - contextlib.contextmanager
    - traitlets.Enum
    - traitlets.Type
    - traitlets.default
    - traitlets.List
    - 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.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:
    - zmq.PUB
    - zmq.PUB.start
    - jupyter_client.session.Session.start
    - 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: 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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.observe
    functionSourceFile: zmq
    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:
    - <builtin>.super
    - ipykernel.inprocess.ipkernel.InProcessKernel._redirected_io
    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 0x7f4acee76c10>
    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 0x7f4acee76cd0>
    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
    - obj.strftime
    - traitlets.List.stdin_channel.process_events
    - binascii.b2a_base64
    - math.isinf
    - sys.stderr.flush
    - ipykernel.jsonutil.json_clean
    - traitlets.List.stdin_channel.call_handlers
    - <builtin>.str
    - binascii.b2a_base64.decode
    - traitlets.traitlets.Instance.msg
    - <builtin>.dict
    - <builtin>.float
    - <builtin>.set
    - math.isnan
    - <builtin>.map
    - <builtin>.isinstance
    - <builtin>.repr
    - <builtin>.hasattr
    - <builtin>.type
    - <builtin>.int
    - obj.items
    - <builtin>.len
    - 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: 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:
    - zmq.PUB
    - 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:
    - zmq.PUB
    - io.FileIO
    - <builtin>.getattr
    - name.encode
    - sys.platform.startswith
    - zmq.PUB.start
    - threading.local
    - jupyter_client.session.Session
    - ipykernel.iostream.OutStream._setup_stream_redirects
    - <builtin>.bool
    - os.pipe
    - ipykernel.iostream.OutStream.__init__
    - threading.RLock
    - contextvars.ContextVar
    - jupyter_client.session.Session.start
    - os.dup2
    - warnings.warn
    - collections.defaultdict
    - <builtin>.isinstance
    - <builtin>.hasattr
    - echo.fileno
    - threading.Thread
    - io.TextIOBase._parent_header.set
    - io.TextIOWrapper
    - os.getpid
    - os.dup
    linkageType: pythonLinkage
    raised: []
    returnType: 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:
    - zmq.PUB
    - io.FileIO
    - <builtin>.getattr
    - name.encode
    - sys.platform.startswith
    - zmq.PUB.start
    - threading.local
    - jupyter_client.session.Session
    - ipykernel.iostream.OutStream._setup_stream_redirects
    - <builtin>.bool
    - os.pipe
    - ipykernel.iostream.OutStream.__init__
    - threading.RLock
    - contextvars.ContextVar
    - jupyter_client.session.Session.start
    - os.dup2
    - warnings.warn
    - collections.defaultdict
    - <builtin>.isinstance
    - <builtin>.hasattr
    - echo.fileno
    - threading.Thread
    - io.TextIOBase._parent_header.set
    - io.TextIOWrapper
    - os.getpid
    - os.dup
    linkageType: 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:
    - zmq.PUB
    - 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 0x7f4aceec08b0>
    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 0x7f4aceec0b20>
    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 0x7f4acf7da9d0>
    - <ast.Constant object at 0x7f4acf7da3a0>
    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:
    - zmq.PUB
    - traitlets.Int
    - 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.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 0x7f4acee769d0>
    - <ast.Constant object at 0x7f4acee76820>
    - <ast.Constant object at 0x7f4acee76370>
    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:
    - zmq.PUB.queue.get_nowait
    - 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: zmq.PUB.queue.get_nowait
    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.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 0x7f4acf7c5d90>
    - <ast.Constant object at 0x7f4acf7c54f0>
    - <ast.Constant object at 0x7f4acf7c5a60>
    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:
    - zmq.PUB.queue.put_nowait
    - jupyter_client.session.Session.queue.put_nowait
    - <builtin>.map
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zmq.PUB.queue.put_nowait
    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.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 0x7f4acf7c5400>
    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:
    - traitlets.Type
    - traitlets.default
    - jupyter_client.session.Session
    - zmq.PUB
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - 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 0x7f4acee861f0>
    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
    - zmq.PUB.frontends.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: jupyter_client.session.Session.frontends.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: zmq.PUB.frontends.append
    functionSourceFile: zmq
    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:
    - jupyter_client.session.Session.shell_channel_class
    - IPython.core.compilerop.CachingCompiler.shell_channel_class
    - IPython.core.displayhook.DisplayHook.shell_channel_class
    - traitlets.Type
    - zmq.PUB.shell_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.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: 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: zmq.PUB.shell_channel_class
    functionSourceFile: zmq
    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:
    - IPython.core.displayhook.DisplayHook.iopub_channel_class
    - zmq.PUB.iopub_channel_class
    - IPython.core.compilerop.CachingCompiler.iopub_channel_class
    - traitlets.Type
    - jupyter_client.session.Session.iopub_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: zmq.PUB.iopub_channel_class
    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.displayhook.DisplayHook.iopub_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.iopub_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.iopub_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: 87
    functionName: ipykernel.inprocess.client.InProcessKernelClient.stdin_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: 93
    functionName: ipykernel.inprocess.client.InProcessKernelClient.control_channel
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - zmq.PUB.control_channel_class
    - IPython.core.compilerop.CachingCompiler.control_channel_class
    - jupyter_client.session.Session.control_channel_class
    - IPython.core.displayhook.DisplayHook.control_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: zmq.PUB.control_channel_class
    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.compilerop.CachingCompiler.control_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.control_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.control_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: 99
    functionName: ipykernel.inprocess.client.InProcessKernelClient.hb_channel
    functionSourceFile: ipykernel.inprocess.client
    functionUses: 0
    functionsReached:
    - IPython.core.displayhook.DisplayHook.hb_channel_class
    - IPython.core.compilerop.CachingCompiler.hb_channel_class
    - zmq.PUB.hb_channel_class
    - jupyter_client.session.Session.hb_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.hb_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.hb_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: zmq.PUB.hb_channel_class
    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.hb_channel_class
    functionSourceFile: jupyter_client
    functionUses: 1
    functionsReached: []
    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 0x7f4aced4d3d0>
    - <ast.Constant object at 0x7f4aced4d5e0>
    - <ast.Constant object at 0x7f4aced4de20>
    - <ast.Constant object at 0x7f4aced4ddc0>
    - <ast.Constant object at 0x7f4aced4d790>
    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:
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - <builtin>.dict
    - asyncio.get_event_loop
    - jupyter_client.client.KernelClient.session.msg
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - <builtin>.isinstance
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.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:
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - asyncio.get_event_loop
    - queue.Queue.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.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 0x7f4acf196c40>
    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:
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - <builtin>.dict
    - asyncio.get_event_loop
    - jupyter_client.client.KernelClient.session.msg
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - <builtin>.len
    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 0x7f4acf1963d0>
    - <ast.Constant object at 0x7f4acf196130>
    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:
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - <builtin>.dict
    - asyncio.get_event_loop
    - jupyter_client.client.KernelClient.session.msg
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.shell_stream.recv_multipart
    - <builtin>.len
    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 0x7f4aced232e0>
    - <ast.Constant object at 0x7f4aced231f0>
    - <ast.Constant object at 0x7f4aced23bb0>
    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:
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - <builtin>.dict
    - asyncio.get_event_loop
    - jupyter_client.client.KernelClient.session.msg
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.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 0x7f4aced23370>
    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 0x7f4acf0366d0>
    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:
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - <builtin>.dict
    - asyncio.get_event_loop
    - jupyter_client.client.KernelClient.session.msg
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - queue.Queue.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.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:
    - traitlets.traitlets.Instance.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.background_socket.shell_stream.recv_multipart
    - zmq.PUB.dispatch_shell
    - IPython.core.autocall.ZMQExitAutocall.background_socket.shell_stream.recv_multipart
    - traitlets.traitlets.Any.shell_stream.recv_multipart
    - zmq.PUB.shell_stream.recv_multipart
    - ipykernel.inprocess.client.InProcessKernelClient._dispatch_to_kernel
    - asyncio.get_event_loop
    - jupyter_client.client.KernelClient.session.msg
    - queue.Queue.shell_stream.recv_multipart
    - IPython.core.autocall.ZMQExitAutocall.shell_stream.recv_multipart
    - traitlets.HasTraits.shell_stream.recv_multipart
    - zmq.PUSH.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.shell_stream.recv_multipart
    - zmq.eventloop.zmqstream.ZMQStream.shell_stream.recv_multipart
    - jupyter_core.utils.run_sync
    - traitlets.Instance.shell_stream.recv_multipart
    - ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    - loop.run_until_complete
    - jupyter_client.session.Session.recv_multipart
    - jupyter_client.client.KernelClient.session.send
    - queue.Queue.background_socket.shell_stream.recv_multipart
    - jupyter_client.session.Session.dispatch_shell
    - zmq.PUB.recv_multipart
    - jupyter_client.session.Session.background_socket.shell_stream.recv_multipart
    - traitlets.config.configurable.SingletonConfigurable.background_socket.shell_stream.recv_multipart
    - jupyter_client.client.KernelClient.session.recv
    - jupyter_client.session.Session.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.Instance.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.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: 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: 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.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: 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: 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: traitlets.HasTraits.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.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: ipykernel.displayhook.Session.shell_stream.recv_multipart
    functionSourceFile: ipykernel
    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: 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: ipykernel.displayhook.Session.background_socket.shell_stream.recv_multipart
    functionSourceFile: ipykernel
    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.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: 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: zmq.PUB.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: 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: 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: 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 0x7f4acefa79d0>
    - <ast.Constant object at 0x7f4acefa7d00>
    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 0x7f4acefa7ee0>
    - <ast.Constant object at 0x7f4acefa7700>
    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 0x7f4acefa79a0>
    - <ast.Constant object at 0x7f4acefa7cd0>
    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 0x7f4acf83abe0>
    - <ast.Constant object at 0x7f4acf83a1c0>
    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_serialization_roundtrip':
  - 48
  - 49
  '...fuzz_serialization_roundtrip.ConsumeRandomLengthBufferList':
  - 24
  - 25
  - 26
  - 22
  '...fuzz_serialization_roundtrip.TestOneInput':
  - 34
  - 39
  - 31
  '...fuzz_serialization_roundtrip.main':
  - 43
  - 44
  - 45
  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__:
  - 359
  - 331
  - 333
  - 339
  - 342
  - 343
  - 346
  - 347
  - 350
  ipykernel.debugger.Debugger._build_variables_response:
  - 382
  ipykernel.debugger.Debugger._forward_message:
  - 379
  ipykernel.debugger.Debugger._handle_event:
  - 362
  - 363
  - 364
  - 367
  - 368
  - 369
  - 370
  - 371
  - 373
  - 374
  - 376
  ipykernel.debugger.Debugger.accept_variable:
  - 522
  - 546
  ipykernel.debugger.Debugger.attach:
  - 568
  - 577
  - 575
  - 567
  ipykernel.debugger.Debugger.configurationDone:
  - 580
  ipykernel.debugger.Debugger.copyToGlobals:
  - 683
  ipykernel.debugger.Debugger.debugInfo:
  - 592
  - 593
  - 590
  ipykernel.debugger.Debugger.dumpCell:
  - 457
  - 459
  - 460
  - 455
  ipykernel.debugger.Debugger.handle_stopped_event:
  - 399
  - 402
  - 404
  - 405
  - 406
  - 407
  - 408
  ipykernel.debugger.Debugger.inspectVariables:
  - 614
  - 615
  - 619
  - 620
  - 621
  - 622
  ipykernel.debugger.Debugger.modules:
  - 704
  - 705
  - 706
  - 697
  - 698
  - 699
  - 700
  - 702
  ipykernel.debugger.Debugger.process_request:
  - 711
  - 714
  - 715
  - 716
  - 718
  - 719
  - 720
  - 730
  - 731
  - 732
  - 733
  - 734
  - 735
  - 736
  - 738
  - 740
  - 741
  - 743
  - 745
  ipykernel.debugger.Debugger.richInspectVariables:
  - 643
  - 646
  - 647
  - 648
  - 649
  - 656
  - 625
  - 664
  - 665
  - 634
  - 635
  - 637
  ipykernel.debugger.Debugger.setBreakpoints:
  - 474
  - 477
  - 471
  ipykernel.debugger.Debugger.source:
  - 488
  - 489
  - 491
  - 485
  ipykernel.debugger.Debugger.stackTrace:
  - 513
  - 514
  - 500
  - 501
  ipykernel.debugger.Debugger.start:
  - 416
  - 417
  - 418
  - 419
  - 420
  - 424
  - 429
  - 432
  - 436
  - 437
  - 438
  - 439
  - 441
  - 415
  ipykernel.debugger.Debugger.stop:
  - 449
  - 450
  - 451
  - 452
  - 445
  - 446
  ipykernel.debugger.Debugger.variables:
  - 551
  - 553
  - 554
  - 557
  - 559
  - 562
  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__:
  - 38
  - 39
  - 43
  - 44
  - 46
  - 47
  - 50
  ipykernel.displayhook.ZMQDisplayHook.__init__:
  - 26
  - 30
  - 31
  ipykernel.displayhook.ZMQDisplayHook.get_execution_count:
  - 34
  ipykernel.displayhook.ZMQDisplayHook.parent_header:
  - 60
  ipykernel.displayhook.ZMQDisplayHook.set_parent:
  - 64
  - 63
  ipykernel.displayhook.ZMQShellDisplayHook:
  - 74
  - 75
  - 68
  ipykernel.displayhook.ZMQShellDisplayHook.__init__:
  - 80
  - 81
  - 82
  ipykernel.displayhook.ZMQShellDisplayHook.finish_displayhook:
  - 116
  - 117
  - 118
  - 119
  - 120
  ipykernel.displayhook.ZMQShellDisplayHook.parent_header:
  - 86
  ipykernel.displayhook.ZMQShellDisplayHook.set_parent:
  - 89
  - 90
  ipykernel.displayhook.ZMQShellDisplayHook.start_displayhook:
  - 93
  - 94
  - 95
  ipykernel.displayhook.ZMQShellDisplayHook.write_format_data:
  - 112
  - 110
  - 111
  ipykernel.displayhook.ZMQShellDisplayHook.write_output_prompt:
  - 105
  - 106
  ipykernel.embed:
  - 1
  ipykernel.embed.embed_kernel:
  - 33
  - 34
  - 36
  - 37
  - 43
  - 47
  - 48
  - 18
  - 50
  - 51
  - 54
  - 56
  - 57
  ipykernel.eventloops:
  - 1
  - 322
  - 354
  - 135
  - 232
  - 171
  - 401
  - 338
  ipykernel.eventloops._loop_wx:
  - 160
  - 167
  ipykernel.eventloops._notify_stream_qt:
  - 99
  - 100
  - 101
  - 102
  - 132
  - 104
  - 106
  - 81
  ipykernel.eventloops._notify_stream_qt._schedule_exit:
  - 111
  - 116
  - 117
  - 118
  - 119
  - 120
  - 121
  ipykernel.eventloops._notify_stream_qt.enum_helper:
  - 83
  ipykernel.eventloops._notify_stream_qt.exit_loop:
  - 88
  - 86
  - 87
  ipykernel.eventloops._notify_stream_qt.process_stream_events:
  - 96
  - 97
  - 91
  ipykernel.eventloops._use_appnope:
  - 17
  - 21
  ipykernel.eventloops.enable_gui:
  - 577
  - 578
  - 579
  - 580
  - 586
  - 588
  - 589
  - 590
  - 591
  - 592
  - 593
  - 595
  - 597
  - 600
  - 573
  - 574
  - 575
  ipykernel.eventloops.loop_asyncio:
  - 423
  - 424
  - 425
  - 430
  - 403
  - 435
  - 436
  - 406
  - 437
  - 408
  - 411
  - 413
  - 414
  ipykernel.eventloops.loop_asyncio.process_stream_events:
  - 419
  - 420
  - 421
  ipykernel.eventloops.loop_asyncio_exit:
  - 455
  - 456
  - 458
  - 459
  - 460
  - 444
  - 447
  ipykernel.eventloops.loop_asyncio_exit.close_loop:
  - 450
  - 451
  - 453
  ipykernel.eventloops.loop_cocoa:
  - 380
  - 379
  - 356
  - 387
  ipykernel.eventloops.loop_cocoa.handle_int:
  - 364
  - 366
  - 367
  - 368
  - 370
  ipykernel.eventloops.loop_cocoa_exit:
  - 395
  - 398
  ipykernel.eventloops.loop_gtk:
  - 328
  - 324
  - 327
  ipykernel.eventloops.loop_gtk3:
  - 344
  - 340
  - 343
  ipykernel.eventloops.loop_gtk3_exit:
  - 350
  - 351
  ipykernel.eventloops.loop_gtk_exit:
  - 334
  - 335
  ipykernel.eventloops.loop_qt:
  - 137
  - 138
  - 145
  ipykernel.eventloops.loop_qt_exit:
  - 156
  ipykernel.eventloops.loop_tk:
  - 288
  - 234
  - 238
  - 271
  - 270
  - 272
  - 242
  - 275
  - 308
  - 277
  - 309
  - 284
  ipykernel.eventloops.loop_tk.BasicAppWrapper.__init__:
  - 247
  ipykernel.eventloops.loop_tk.TimedAppWrapper.__init__:
  - 293
  ipykernel.eventloops.loop_tk.TimedAppWrapper.on_timer:
  - 297
  - 299
  - 301
  - 302
  ipykernel.eventloops.loop_tk.TimedAppWrapper.start:
  - 305
  - 306
  ipykernel.eventloops.loop_tk._schedule_exit:
  - 264
  - 265
  ipykernel.eventloops.loop_tk.exit_loop:
  - 250
  - 251
  - 252
  - 253
  ipykernel.eventloops.loop_tk.process_stream_events:
  - 257
  - 258
  - 259
  ipykernel.eventloops.loop_tk_exit:
  - 314
  - 316
  ipykernel.eventloops.loop_wx:
  - 173
  - 210
  - 178
  - 211
  - 218
  - 219
  - 221
  ipykernel.eventloops.loop_wx.IPWxApp.OnInit:
  - 204
  - 205
  ipykernel.eventloops.loop_wx.TimerFrame.__init__:
  - 193
  - 194
  - 190
  - 191
  ipykernel.eventloops.loop_wx.TimerFrame.on_timer:
  - 198
  ipykernel.eventloops.loop_wx.wake:
  - 181
  - 182
  - 183
  ipykernel.eventloops.loop_wx_exit:
  - 226
  - 229
  ipykernel.eventloops.make_qt_app_for_kernel:
  - 556
  - 557
  - 562
  - 568
  - 569
  ipykernel.eventloops.register_integration:
  - 37
  ipykernel.eventloops.register_integration.decorator:
  - 51
  - 52
  - 55
  ipykernel.eventloops.register_integration.decorator.exit_decorator:
  - 58
  ipykernel.eventloops.set_qt_api_env_from_gui:
  - 512
  - 482
  - 549
  - 551
  - 536
  - 492
  - 524
  - 464
  - 538
  - 500
  - 501
  - 504
  - 505
  - 506
  - 541
  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
  - 462
  - 466
  - 467
  - 469
  - 471
  - 473
  - 477
  - 486
  - 488
  - 489
  - 492
  - 494
  - 498
  - 501
  - 502
  ipykernel.iostream.OutStream._flush:
  - 640
  - 644
  - 646
  - 651
  - 652
  - 653
  - 624
  - 656
  - 632
  - 634
  - 636
  - 637
  - 639
  ipykernel.iostream.OutStream._flush_buffers:
  - 718
  - 719
  - 720
  - 721
  - 722
  - 723
  ipykernel.iostream.OutStream._hooks:
  - 734
  ipykernel.iostream.OutStream._is_master_process:
  - 558
  ipykernel.iostream.OutStream._rotate_buffers:
  - 729
  - 726
  ipykernel.iostream.OutStream._schedule_flush:
  - 585
  - 597
  - 589
  ipykernel.iostream.OutStream._schedule_flush._schedule_in_thread:
  - 595
  ipykernel.iostream.OutStream._setup_stream_redirects:
  - 545
  - 546
  - 547
  - 548
  - 553
  - 555
  ipykernel.iostream.OutStream._watch_pipe_fd:
  - 387
  - 391
  - 393
  - 394
  - 395
  - 397
  - 375
  ipykernel.iostream.OutStream.close:
  - 577
  - 565
  - 566
  - 570
  - 571
  - 573
  - 574
  - 575
  ipykernel.iostream.OutStream.fileno:
  - 369
  - 366
  ipykernel.iostream.OutStream.flush:
  - 608
  - 611
  - 613
  - 614
  - 616
  - 619
  - 621
  - 600
  - 604
  - 607
  ipykernel.iostream.OutStream.isatty:
  - 537
  ipykernel.iostream.OutStream.parent_header:
  - 520
  - 516
  - 534
  ipykernel.iostream.OutStream.register_hook:
  - 740
  - 756
  ipykernel.iostream.OutStream.set_parent:
  - 561
  - 562
  ipykernel.iostream.OutStream.unregister_hook:
  - 773
  - 759
  ipykernel.iostream.OutStream.writable:
  - 714
  ipykernel.iostream.OutStream.write:
  - 673
  - 674
  - 677
  - 679
  - 681
  - 682
  - 695
  - 684
  - 688
  - 691
  - 692
  - 663
  - 699
  - 701
  - 703
  ipykernel.iostream.OutStream.writelines:
  - 706
  - 707
  - 710
  - 711
  ipykernel.ipkernel:
  - 56
  - 1
  ipykernel.ipkernel.IPythonKernel:
  - 101
  - 103
  - 75
  - 107
  - 77
  - 78
  - 82
  - 178
  - 84
  - 116
  - 86
  - 117
  - 216
  - 91
  - 93
  - 95
  ipykernel.ipkernel.IPythonKernel.__init__:
  - 159
  - 161
  - 162
  - 164
  - 168
  - 137
  - 171
  - 173
  - 176
  - 147
  - 148
  - 120
  - 121
  - 158
  - 156
  - 152
  - 126
  - 127
  ipykernel.ipkernel.IPythonKernel._associate_new_top_level_threads_with:
  - 754
  ipykernel.ipkernel.IPythonKernel._cancel_on_sigint:
  - 328
  - 363
  - 365
  - 368
  - 337
  - 348
  - 351
  ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.cancel_unless_done:
  - 344
  - 342
  ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.handle_sigint:
  - 360
  ipykernel.ipkernel.IPythonKernel._cancel_on_sigint.handle_sigint.set_sigint_result:
  - 355
  - 357
  ipykernel.ipkernel.IPythonKernel._clean_thread_parent_frames:
  - 800
  - 810
  - 812
  - 813
  - 814
  - 816
  - 817
  - 823
  - 824
  ipykernel.ipkernel.IPythonKernel._default_user_ns:
  - 105
  ipykernel.ipkernel.IPythonKernel._dummy_context_manager:
  - 373
  ipykernel.ipkernel.IPythonKernel._experimental_do_complete:
  - 581
  - 559
  - 562
  - 563
  - 564
  - 566
  - 567
  - 570
  - 571
  - 572
  ipykernel.ipkernel.IPythonKernel._forward_input:
  - 296
  ipykernel.ipkernel.IPythonKernel._initialize_thread_hooks:
  - 761
  - 758
  ipykernel.ipkernel.IPythonKernel._initialize_thread_hooks.init_closure:
  - 792
  - 791
  ipykernel.ipkernel.IPythonKernel._initialize_thread_hooks.run_closure:
  - 780
  - 781
  - 782
  - 788
  - 767
  ipykernel.ipkernel.IPythonKernel._restore_input:
  - 309
  ipykernel.ipkernel.IPythonKernel._user_module_changed:
  - 98
  ipykernel.ipkernel.IPythonKernel._user_ns_changed:
  - 112
  - 110
  ipykernel.ipkernel.IPythonKernel.banner:
  - 235
  ipykernel.ipkernel.IPythonKernel.dispatch_debugpy:
  - 227
  - 229
  - 230
  - 231
  ipykernel.ipkernel.IPythonKernel.do_apply:
  - 705
  - 737
  - 739
  - 708
  - 709
  - 711
  - 712
  - 682
  - 715
  - 727
  - 723
  - 693
  - 694
  - 726
  - 696
  - 730
  - 733
  ipykernel.ipkernel.IPythonKernel.do_clear:
  - 748
  - 749
  - 750
  - 751
  ipykernel.ipkernel.IPythonKernel.do_complete:
  - 545
  - 529
  - 530
  - 531
  - 536
  - 537
  - 538
  - 541
  ipykernel.ipkernel.IPythonKernel.do_debug_request:
  - 554
  - 555
  - 551
  ipykernel.ipkernel.IPythonKernel.do_execute:
  - 512
  - 513
  - 392
  - 521
  - 396
  - 524
  - 399
  - 402
  - 404
  - 411
  - 418
  - 421
  - 423
  - 426
  - 427
  - 433
  - 434
  - 443
  - 451
  - 455
  - 458
  - 463
  - 464
  - 465
  - 470
  - 471
  - 478
  - 480
  - 484
  - 489
  - 492
  - 493
  - 498
  - 504
  - 505
  - 507
  ipykernel.ipkernel.IPythonKernel.do_execute.run_cell:
  - 409
  ipykernel.ipkernel.IPythonKernel.do_history:
  - 640
  - 641
  - 645
  - 646
  - 650
  - 651
  - 659
  - 638
  ipykernel.ipkernel.IPythonKernel.do_inspect:
  - 610
  - 616
  - 617
  - 618
  - 619
  - 599
  - 600
  - 607
  ipykernel.ipkernel.IPythonKernel.do_is_complete:
  - 675
  - 677
  - 669
  - 670
  - 671
  ipykernel.ipkernel.IPythonKernel.do_shutdown:
  - 664
  - 666
  - 663
  ipykernel.ipkernel.IPythonKernel.execute_request:
  - 376
  - 377
  - 378
  - 379
  ipykernel.ipkernel.IPythonKernel.execution_count:
  - 316
  ipykernel.ipkernel.IPythonKernel.finish_metadata:
  - 290
  - 283
  ipykernel.ipkernel.IPythonKernel.init_metadata:
  - 274
  - 267
  - 271
  ipykernel.ipkernel.IPythonKernel.poll_stopped_queue:
  - 240
  - 242
  ipykernel.ipkernel.IPythonKernel.set_parent:
  - 264
  - 259
  - 262
  - 263
  ipykernel.ipkernel.IPythonKernel.start:
  - 245
  - 246
  - 248
  - 249
  - 251
  - 252
  - 253
  - 254
  - 255
  ipykernel.ipkernel.Kernel:
  - 835
  ipykernel.ipkernel.Kernel.__init__:
  - 841
  - 838
  - 846
  ipykernel.ipkernel._create_comm:
  - 51
  - 52
  ipykernel.ipkernel._get_comm_manager:
  - 65
  - 66
  - 61
  - 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:
  - 1
  - 27
  ipykernel.kernelbase.Kernel:
  - 259
  - 136
  - 266
  - 152
  - 154
  - 156
  - 157
  - 158
  - 159
  - 160
  - 161
  - 164
  - 165
  - 167
  - 176
  - 181
  - 190
  - 199
  - 200
  - 1353
  - 592
  - 597
  - 91
  - 98
  - 227
  - 102
  - 232
  - 234
  - 109
  - 110
  - 111
  - 113
  - 125
  ipykernel.kernelbase.Kernel.__init__:
  - 320
  - 321
  - 322
  - 293
  - 294
  - 326
  - 328
  - 329
  - 333
  - 304
  - 305
  - 308
  - 309
  - 312
  - 319
  ipykernel.kernelbase.Kernel.__init__.<lambda2>:
  - 329
  ipykernel.kernelbase.Kernel._abort_queues:
  - 1376
  - 1408
  - 1378
  - 1410
  - 1385
  - 1386
  - 1402
  - 1397
  - 1399
  - 1370
  - 1373
  - 1374
  - 1407
  ipykernel.kernelbase.Kernel._abort_queues.stop_aborting:
  - 1391
  ipykernel.kernelbase.Kernel._at_shutdown:
  - 1601
  - 1604
  - 1605
  - 1608
  - 1610
  - 1611
  - 1612
  - 1597
  - 1599
  ipykernel.kernelbase.Kernel._create_control_lock:
  - 617
  ipykernel.kernelbase.Kernel._default_ident:
  - 169
  ipykernel.kernelbase.Kernel._input_request:
  - 1510
  - 1511
  - 1512
  - 1513
  - 1482
  - 1483
  - 1484
  - 1485
  - 1520
  - 1490
  - 1492
  - 1525
  - 1527
  - 1498
  - 1499
  ipykernel.kernelbase.Kernel._message_counter_default:
  - 599
  ipykernel.kernelbase.Kernel._no_raw_input:
  - 1433
  ipykernel.kernelbase.Kernel._parent_header:
  - 218
  - 213
  ipykernel.kernelbase.Kernel._post_dummy_stop_aborting_message:
  - 1360
  - 1356
  - 1364
  ipykernel.kernelbase.Kernel._process_children:
  - 1571
  - 1572
  - 1553
  - 1559
  - 1560
  - 1561
  - 1563
  - 1565
  - 1567
  ipykernel.kernelbase.Kernel._progressively_terminate_all_children:
  - 1577
  - 1578
  - 1581
  - 1582
  - 1583
  - 1584
  - 1585
  - 1588
  - 1589
  - 1594
  ipykernel.kernelbase.Kernel._publish_debug_event:
  - 752
  - 753
  - 746
  - 748
  ipykernel.kernelbase.Kernel._publish_execute_input:
  - 724
  - 716
  - 717
  - 719
  ipykernel.kernelbase.Kernel._publish_status:
  - 736
  - 728
  - 729
  - 731
  - 735
  ipykernel.kernelbase.Kernel._publish_status_and_flush:
  - 740
  - 741
  - 742
  - 743
  ipykernel.kernelbase.Kernel._send_abort_reply:
  - 1413
  - 1414
  - 1416
  - 1417
  - 1419
  - 1420
  - 1421
  - 1423
  ipykernel.kernelbase.Kernel._send_interrupt_children:
  - 1120
  - 1106
  - 1107
  - 1109
  - 1110
  - 1113
  - 1115
  - 1117
  ipykernel.kernelbase.Kernel._shell_streams_changed:
  - 144
  - 138
  - 149
  - 143
  ipykernel.kernelbase.Kernel._shell_streams_default:
  - 132
  - 127
  ipykernel.kernelbase.Kernel._signal_children:
  - 1539
  - 1540
  - 1541
  - 1543
  - 1544
  - 1545
  - 1546
  - 1548
  - 1533
  ipykernel.kernelbase.Kernel._topic:
  - 1348
  - 1351
  ipykernel.kernelbase.Kernel._update_eventloop:
  - 104
  - 105
  - 106
  - 107
  ipykernel.kernelbase.Kernel.comm_info_request:
  - 1090
  - 1093
  - 1095
  - 1096
  - 1101
  - 1102
  - 1103
  - 1086
  - 1087
  ipykernel.kernelbase.Kernel.complete_request:
  - 960
  - 963
  - 964
  - 969
  - 970
  - 952
  - 953
  - 959
  ipykernel.kernelbase.Kernel.connect_request:
  - 1048
  - 1049
  - 1051
  - 1053
  - 1054
  ipykernel.kernelbase.Kernel.create_subshell_request:
  - 1281
  - 1282
  - 1285
  - 1290
  - 1291
  - 1292
  - 1275
  - 1279
  ipykernel.kernelbase.Kernel.debug_request:
  - 1218
  - 1219
  - 1220
  - 1203
  - 1204
  - 1207
  - 1208
  - 1211
  - 1212
  ipykernel.kernelbase.Kernel.delete_subshell_request:
  - 1317
  - 1318
  - 1320
  - 1295
  - 1299
  - 1301
  - 1302
  - 1305
  - 1311
  ipykernel.kernelbase.Kernel.dispatch_control:
  - 336
  - 339
  ipykernel.kernelbase.Kernel.dispatch_queue:
  - 580
  - 590
  - 588
  ipykernel.kernelbase.Kernel.dispatch_shell:
  - 390
  - 391
  - 396
  - 399
  - 402
  - 405
  - 406
  - 411
  - 413
  - 415
  - 419
  - 420
  - 423
  - 425
  - 426
  - 433
  - 434
  - 437
  - 438
  - 439
  - 440
  - 446
  - 447
  - 449
  - 450
  - 452
  - 453
  - 454
  - 457
  - 458
  - 459
  - 461
  - 463
  - 465
  - 467
  - 468
  - 469
  - 471
  - 474
  - 477
  - 479
  - 481
  - 482
  - 483
  - 484
  - 485
  ipykernel.kernelbase.Kernel.do_complete:
  - 973
  ipykernel.kernelbase.Kernel.do_execute:
  - 948
  ipykernel.kernelbase.Kernel.do_history:
  - 1044
  ipykernel.kernelbase.Kernel.do_inspect:
  - 1009
  ipykernel.kernelbase.Kernel.do_is_complete:
  - 1199
  ipykernel.kernelbase.Kernel.do_one_iteration:
  - 547
  - 539
  - 548
  - 550
  ipykernel.kernelbase.Kernel.do_shutdown:
  - 1173
  ipykernel.kernelbase.Kernel.enter_eventloop:
  - 497
  - 498
  - 501
  - 502
  - 536
  ipykernel.kernelbase.Kernel.enter_eventloop.advance_eventloop:
  - 513
  - 515
  - 517
  - 520
  - 521
  - 523
  - 507
  - 508
  - 510
  - 511
  ipykernel.kernelbase.Kernel.enter_eventloop.schedule_next:
  - 532
  - 533
  - 526
  ipykernel.kernelbase.Kernel.execute_request:
  - 896
  - 898
  - 901
  - 902
  - 908
  - 909
  - 910
  - 911
  - 915
  - 916
  - 919
  - 920
  - 922
  - 931
  - 933
  - 934
  - 935
  - 852
  - 853
  - 858
  - 859
  - 860
  - 861
  - 862
  - 863
  - 865
  - 866
  - 869
  - 871
  - 875
  - 877
  - 888
  - 890
  - 893
  ipykernel.kernelbase.Kernel.finish_metadata:
  - 845
  ipykernel.kernelbase.Kernel.get_parent:
  - 773
  - 788
  - 790
  - 795
  - 797
  ipykernel.kernelbase.Kernel.get_process_metric_value:
  - 1225
  - 1226
  - 1227
  - 1223
  ipykernel.kernelbase.Kernel.getpass:
  - 1445
  - 1448
  - 1451
  - 1456
  - 1458
  - 1459
  - 1439
  ipykernel.kernelbase.Kernel.history_request:
  - 1028
  - 1029
  - 1030
  - 1013
  - 1014
  - 1018
  - 1019
  - 1022
  - 1023
  ipykernel.kernelbase.Kernel.init_metadata:
  - 841
  - 834
  ipykernel.kernelbase.Kernel.inspect_request:
  - 992
  - 994
  - 997
  - 998
  - 1004
  - 1005
  - 1006
  - 983
  - 984
  - 988
  - 991
  ipykernel.kernelbase.Kernel.interrupt_request:
  - 1123
  - 1124
  - 1128
  - 1134
  - 1135
  - 1136
  - 1139
  ipykernel.kernelbase.Kernel.is_complete_request:
  - 1185
  - 1186
  - 1189
  - 1190
  - 1194
  - 1195
  - 1196
  - 1179
  - 1180
  ipykernel.kernelbase.Kernel.kernel_info:
  - 1064
  - 1061
  - 1062
  - 1063
  ipykernel.kernelbase.Kernel.kernel_info_request:
  - 1077
  - 1078
  - 1081
  - 1082
  - 1083
  ipykernel.kernelbase.Kernel.list_subshell_request:
  - 1323
  - 1327
  - 1329
  - 1330
  - 1333
  - 1338
  - 1339
  - 1341
  ipykernel.kernelbase.Kernel.post_handler_hook:
  - 493
  - 494
  ipykernel.kernelbase.Kernel.pre_handler_hook:
  - 488
  - 490
  ipykernel.kernelbase.Kernel.process_control:
  - 342
  - 343
  - 345
  - 347
  - 349
  - 352
  - 355
  - 356
  - 361
  - 362
  - 363
  - 366
  - 367
  - 368
  - 370
  - 372
  - 373
  - 374
  - 375
  - 376
  ipykernel.kernelbase.Kernel.process_one:
  - 577
  - 553
  - 557
  - 558
  - 561
  - 565
  - 569
  - 570
  - 573
  - 574
  - 575
  ipykernel.kernelbase.Kernel.raw_input:
  - 1473
  - 1474
  - 1475
  - 1476
  - 1464
  - 1470
  ipykernel.kernelbase.Kernel.record_ports:
  - 704
  ipykernel.kernelbase.Kernel.schedule_dispatch:
  - 613
  - 602
  - 603
  - 605
  ipykernel.kernelbase.Kernel.send_response:
  - 819
  - 811
  - 821
  - 825
  ipykernel.kernelbase.Kernel.set_parent:
  - 765
  - 770
  - 757
  - 769
  ipykernel.kernelbase.Kernel.shell_channel_thread_main:
  - 672
  - 674
  - 654
  - 655
  - 658
  - 663
  - 665
  - 666
  - 670
  ipykernel.kernelbase.Kernel.shell_main:
  - 677
  - 678
  - 679
  - 680
  - 683
  - 685
  - 687
  - 692
  - 701
  ipykernel.kernelbase.Kernel.should_handle:
  - 379
  ipykernel.kernelbase.Kernel.shutdown_request:
  - 1155
  - 1157
  - 1159
  - 1161
  - 1162
  - 1164
  - 1166
  - 1167
  - 1168
  - 1170
  - 1143
  - 1144
  - 1146
  - 1147
  - 1150
  - 1151
  ipykernel.kernelbase.Kernel.start:
  - 640
  - 642
  - 643
  - 651
  - 620
  - 621
  - 622
  - 623
  - 624
  - 626
  - 627
  - 629
  - 633
  - 635
  - 637
  - 638
  - 639
  ipykernel.kernelbase.Kernel.usage_request:
  - 1236
  - 1237
  - 1239
  - 1240
  - 1241
  - 1245
  - 1248
  - 1250
  - 1251
  - 1254
  - 1255
  - 1257
  - 1258
  - 1261
  - 1264
  - 1266
  - 1267
  - 1268
  - 1269
  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:
  - 128
  - 129
  - 131
  - 132
  - 133
  - 134
  - 136
  - 98
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 115
  - 116
  - 117
  - 122
  - 125
  ipykernel.pylab.backend_inline:
  - 1
  - 10
  ipykernel.pylab.config:
  - 1
  - 10
  ipykernel.shellchannel:
  - 1
  ipykernel.shellchannel.ShellChannelThread:
  - 15
  ipykernel.shellchannel.ShellChannelThread.__init__:
  - 32
  - 26
  - 27
  ipykernel.shellchannel.ShellChannelThread.manager:
  - 37
  - 38
  ipykernel.shellchannel.ShellChannelThread.run:
  - 48
  - 50
  - 51
  - 46
  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:
  - 21
  ipykernel.subshell_manager.SubshellManager.__init__:
  - 65
  - 66
  - 43
  - 44
  - 50
  - 54
  - 55
  - 61
  ipykernel.subshell_manager.SubshellManager._create_subshell:
  - 160
  - 166
  - 168
  - 171
  - 175
  - 156
  - 157
  - 159
  ipykernel.subshell_manager.SubshellManager._delete_subshell:
  - 186
  - 179
  - 188
  - 183
  ipykernel.subshell_manager.SubshellManager._process_control_request:
  - 194
  - 197
  - 200
  - 204
  - 205
  - 206
  - 208
  - 209
  - 210
  - 217
  - 221
  ipykernel.subshell_manager.SubshellManager._send_on_shell_channel:
  - 224
  - 225
  ipykernel.subshell_manager.SubshellManager._stop_subshell:
  - 228
  - 229
  - 231
  - 232
  - 233
  ipykernel.subshell_manager.SubshellManager.close:
  - 71
  - 72
  - 76
  - 79
  - 81
  - 82
  - 83
  ipykernel.subshell_manager.SubshellManager.get_shell_channel_to_subshell_pair:
  - 88
  - 86
  ipykernel.subshell_manager.SubshellManager.get_shell_channel_to_subshell_socket:
  - 106
  - 103
  ipykernel.subshell_manager.SubshellManager.get_subshell_aborting:
  - 109
  ipykernel.subshell_manager.SubshellManager.get_subshell_asyncio_lock:
  - 114
  ipykernel.subshell_manager.SubshellManager.get_subshell_to_shell_channel_socket:
  - 97
  - 94
  ipykernel.subshell_manager.SubshellManager.list_subshell:
  - 124
  - 119
  ipykernel.subshell_manager.SubshellManager.set_on_recv_callback:
  - 130
  - 132
  - 127
  ipykernel.subshell_manager.SubshellManager.set_subshell_aborting:
  - 135
  ipykernel.subshell_manager.SubshellManager.subshell_id_from_thread_id:
  - 147
  - 140
  - 149
  - 150
  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
  ipykernel.utils.LazyDict:
  - 8
  ipykernel.utils.LazyDict.__getitem__:
  - 19
  - 20
  ipykernel.utils.LazyDict.__iter__:
  - 26
  ipykernel.utils.LazyDict.__len__:
  - 23
  ipykernel.zmqshell:
  - 1
  - 746
  ipykernel.zmqshell.KernelMagics:
  - 361
  - 364
  - 338
  - 340
  - 221
  ipykernel.zmqshell.KernelMagics.autosave:
  - 424
  - 434
  - 440
  - 441
  - 444
  - 445
  - 447
  ipykernel.zmqshell.KernelMagics.clear:
  - 336
  - 331
  - 333
  - 334
  ipykernel.zmqshell.KernelMagics.connect_info:
  - 387
  - 388
  - 390
  - 394
  - 395
  - 397
  - 398
  - 399
  - 374
  ipykernel.zmqshell.KernelMagics.edit:
  - 320
  - 324
  - 233
  - 309
  - 312
  - 315
  ipykernel.zmqshell.KernelMagics.less:
  - 353
  - 355
  - 357
  - 358
  - 359
  - 346
  - 349
  ipykernel.zmqshell.KernelMagics.man:
  - 368
  - 370
  ipykernel.zmqshell.KernelMagics.qtconsole:
  - 417
  - 411
  - 419
  ipykernel.zmqshell.KernelMagics.subshell:
  - 480
  - 451
  - 456
  - 460
  - 463
  - 464
  - 467
  - 470
  - 473
  - 475
  - 476
  - 477
  - 478
  - 479
  ipykernel.zmqshell.ZMQDisplayPublisher:
  - 80
  - 50
  - 52
  - 53
  - 55
  - 60
  ipykernel.zmqshell.ZMQDisplayPublisher.__init__:
  - 64
  - 65
  - 63
  ipykernel.zmqshell.ZMQDisplayPublisher._default_thread_local:
  - 82
  - 83
  ipykernel.zmqshell.ZMQDisplayPublisher._flush_streams:
  - 76
  - 77
  - 78
  ipykernel.zmqshell.ZMQDisplayPublisher._hooks:
  - 87
  ipykernel.zmqshell.ZMQDisplayPublisher.clear_output:
  - 162
  - 163
  - 165
  - 168
  - 169
  - 170
  - 173
  - 152
  ipykernel.zmqshell.ZMQDisplayPublisher.parent_header:
  - 69
  ipykernel.zmqshell.ZMQDisplayPublisher.publish:
  - 103
  - 135
  - 140
  - 141
  - 142
  - 145
  - 118
  - 119
  - 121
  - 123
  - 125
  ipykernel.zmqshell.ZMQDisplayPublisher.register_hook:
  - 196
  - 180
  ipykernel.zmqshell.ZMQDisplayPublisher.set_parent:
  - 72
  - 73
  ipykernel.zmqshell.ZMQDisplayPublisher.unregister_hook:
  - 213
  - 199
  ipykernel.zmqshell.ZMQInteractiveShell:
  - 514
  - 484
  - 517
  - 519
  - 521
  - 525
  - 501
  - 502
  - 503
  - 504
  - 507
  ipykernel.zmqshell.ZMQInteractiveShell.__init__:
  - 498
  - 495
  - 499
  - 487
  ipykernel.zmqshell.ZMQInteractiveShell._default_exiter:
  - 523
  ipykernel.zmqshell.ZMQInteractiveShell._showtraceback:
  - 641
  - 642
  - 649
  - 650
  - 652
  - 655
  - 636
  - 637
  ipykernel.zmqshell.ZMQInteractiveShell._update_exit_now:
  - 527
  - 528
  - 529
  - 531
  - 532
  - 533
  - 534
  - 535
  ipykernel.zmqshell.ZMQInteractiveShell.ask_exit:
  - 627
  - 621
  - 623
  ipykernel.zmqshell.ZMQInteractiveShell.data_pub:
  - 611
  - 604
  - 605
  ipykernel.zmqshell.ZMQInteractiveShell.enable_gui:
  - 546
  - 542
  ipykernel.zmqshell.ZMQInteractiveShell.get_parent:
  - 691
  ipykernel.zmqshell.ZMQInteractiveShell.init_data_pub:
  - 600
  ipykernel.zmqshell.ZMQInteractiveShell.init_environment:
  - 552
  ipykernel.zmqshell.ZMQInteractiveShell.init_hooks:
  - 595
  - 596
  - 597
  ipykernel.zmqshell.ZMQInteractiveShell.init_magics:
  - 696
  - 697
  - 698
  - 695
  ipykernel.zmqshell.ZMQInteractiveShell.init_virtualenv:
  - 701
  ipykernel.zmqshell.ZMQInteractiveShell.parent_header:
  - 676
  ipykernel.zmqshell.ZMQInteractiveShell.payloadpage_page:
  - 582
  - 584
  - 586
  - 592
  - 567
  ipykernel.zmqshell.ZMQInteractiveShell.run_cell:
  - 632
  - 630
  ipykernel.zmqshell.ZMQInteractiveShell.set_next_input:
  - 672
  - 665
  - 667
  ipykernel.zmqshell.ZMQInteractiveShell.set_parent:
  - 679
  - 680
  - 681
  - 682
  - 683
  - 684
  - 685
  - 686
  - 687
  - 688
  ipykernel.zmqshell.ZMQInteractiveShell.system_piped:
  - 736
  - 738
  - 708
  - 740
  - 717
  - 731
  - 732
  - 735
Fuzzer filename: /src/fuzz_serialization_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
  - BaseIPythonApplication
  - InteractiveShellApp
  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_serialization_roundtrip'
