code: def __init__(self, quit_after=None) -> None:
      self.io_loop = IOLoop()
      self.io_loop.make_current()
      self.group = _CallbackGroup(self.io_loop)
  
      if quit_after is not None:
          self.io_loop.call_later(
              quit_after / 1000.0, lambda: self.io_loop.stop()
          )
  
imports: from __future__ import annotations
  import pytest
  from concurrent.futures import ThreadPoolExecutor
  from itertools import repeat
  from tornado.ioloop import IOLoop
  from bokeh.util.serialization import make_id
  from bokeh.util.tornado import _CallbackGroup
label_desc: Use image node_id 1 to create a new LoopAndGroup object  with example: obj = LoopAndGroup(quit_after)