docstr: Cap and floor value
docstr_tok: ["Cap","and","floor","value"]
code: def _validate_value(self, proposal):
      """Cap and floor value"""
      value = proposal["value"]
      if self.base**self.min > value or self.base**self.max < value:
          value = min(
              max(value, self.base**self.min), self.base**self.max
          )
      return value
  
imports: from traitlets import Instance, Unicode, CFloat, Bool, CaselessStrEnum, Tuple, TraitError, validate, default
  from .widget_description import DescriptionWidget
  from .trait_types import InstanceDict, NumberFormat
  from .valuewidget import ValueWidget
  from .widget import register, widget_serialization
  from .widget_core import CoreWidget
  from .widget_int import ProgressStyle, SliderStyle
label_desc: Use image node_id 1 for calling the _BoundedLogFloat obj's underlying member method code with example usage: obj._validate_value(proposal) and returns: value