code: def acquire(
      self,
      timeout: typing.Optional[float] = None,
      check_interval: typing.Optional[float] = None,
      fail_when_locked: typing.Optional[bool] = None,
  ):
      return NotImplemented
  
imports: import abc
  import atexit
  import contextlib
  import logging
  import os
  import pathlib
  import random
  import tempfile
  import time
  import typing
  import warnings
  from .None import constants, exceptions, portalocker
label_desc: Use image node_id 2 for calling the LockBase obj's underlying member method code with example usage: obj.acquire(timeout, check_interval, fail_when_locked) and returns: NotImplemented