class_docstr: Simple object for checking whether an array lies
  between provided bounds.
  
  Parameter
  ---------
  lower: float or None
      minimum value
  upper: float or None
      maximum value
  
  Note
  -----
  Not all bounds are necessary (data can be partially bounded, or not at all actually)
class_docstr_tok: ["Simple","object","for","checking","whether","an","array","lies","between","provided","bounds",".","Parameter","--","--","--","--","-","lower",":","float","or","None","minimum","value","upper",":","float","or","None","maximum","value","Note","--","--","-","Not","all","bounds","are","necessary","(","data","can","be","partially","bounded",",","or","not","at","all","actually",")"]
docstr: Checks whether the array lies within the bounds
  
  Parameter
  ---------
  value: np.ndarray
      array to check
  
  Returns
  -------
  bool
      True iff the array lies within the bounds
docstr_tok: ["Checks","whether","the","array","lies","within","the","bounds","Parameter","--","--","--","--","-","value",":","np.ndarray","array","to","check","Returns","--","--","--","-","bool","True","iff","the","array","lies","within","the","bounds"]
code: def __call__(self, value: np.ndarray) -> bool:
      """Checks whether the array lies within the bounds
  
      Parameter
      ---------
      value: np.ndarray
          array to check
  
      Returns
      -------
      bool
          True iff the array lies within the bounds
      """
      for k, bound in enumerate(self.bounds):
          if bound is not None:
              if np.any((value > bound) if k else (value < bound)):
                  return False
      return True
  
imports: import os
  import sys
  import shutil
  import tempfile
  import subprocess
  from pathlib import Path
  import numpy
  from nevergrad.common import typing
label_desc: Use image node_id 2 for calling the BoundChecker obj's underlying member method code with example usage: obj.__call__(value) and returns: True, False