code: def make_divisible(
      v: int,
      divisor: int = 8,
      min_value: int = None,
      round_limit: float = 0.9,
  ) -> int:
      min_value = min_value or divisor
      new_v = max(min_value, int(v + divisor / 2) // divisor * divisor)
      # Make sure that round down does not go down by more than 10%.
      if new_v < round_limit * v:
          new_v += divisor
      return new_v
  
imports: from typing import Callable
  from itertools import repeat
  import collections.abc
label_desc: Use image node_id 2 for calling a global function with example usage: make_divisible(v, divisor, min_value, round_limit) and returns: new_v