code: def register_func(fn, progress, callback_id):
      key = BaseLongCallbackManager.hash_function(fn, callback_id)
      BaseLongCallbackManager.functions.append(
          (
              key,
              fn,
              progress,
          )
      )
  
      for manager in BaseLongCallbackManager.managers:
          manager.register(key, fn, progress)
  
      return key
  
file_path: dash/dash/long_callback/managers/__init__.py
imports: from abc import ABC
  import inspect
  import hashlib
label_desc: Use image node_id 12 for calling the BaseLongCallbackManager obj's underlying member method code with example usage: obj.register_func(fn, progress, callback_id) and returns: key