class_docstr: Typed property (descriptor) object so that the value attribute of
  Parameter objects fetches _layered_get_value and _layered_set_value methods
class_docstr_tok: ["Typed","property","(","descriptor",")","object","so","that","the","value","attribute","of","Parameter","objects","fetches","_layered_get_value","and","_layered_set_value","methods"]
code: def __get__(
      self, obj: Layered, objtype: tp.Optional[tp.Type[object]] = None
  ) -> Out:
      # pylint: disable=pointless-statement
      if hasattr(obj, "random_state"):
          getattr(
              obj, "random_state"
          )  # very hacky way to initialize random_state
      return obj._layers[-1]._layered_get_value()
  
imports: import uuid
  import copy
  import bisect
  from enum import Enum
  import numpy
  from nevergrad.common import errors
  import nevergrad.common.typing
label_desc: Use image node_id 2 for calling the ValueProperty obj's underlying member method code with example usage: obj.__get__(obj, objtype) and returns: obj