class_docstr: Result returned by the `register_widget` family of functions/methods.
  
  Should be usable by widget code to determine what value to return, and
  whether to update the UI.
  
  Parameters
  ----------
  value : T_co
      The widget's current value, or, in cases where the true widget value
      could not be determined, an appropriate fallback value.
  
      This value should be returned by the widget call.
  value_changed : bool
      True if the widget's value is different from the value most recently
      returned from the frontend.
  
      Implies an update to the frontend is needed.
class_docstr_tok: ["Result","returned","by","the","`","register_widget","`","family","of","functions\/methods",".","Should","be","usable","by","widget","code","to","determine","what","value","to","return",",","and","whether","to","update","the","UI",".","Parameters","--","--","--","--","--","value",":","T_co","The","widget","'s","current","value",",","or",",","in","cases","where","the","true","widget","value","could","not","be","determined",",","an","appropriate","fallback","value",".","This","value","should","be","returned","by","the","widget","call",".","value_changed",":","bool","True","if","the","widget","'s","value","is","different","from","the","value","most","recently","returned","from","the","frontend",".","Implies","an","update","to","the","frontend","is","needed","."]
docstr: The canonical way to construct a RegisterWidgetResult in cases
  where the true widget value could not be determined.
docstr_tok: ["The","canonical","way","to","construct","a","RegisterWidgetResult","in","cases","where","the","true","widget","value","could","not","be","determined","."]
code: def failure(
      cls, deserializer: WidgetDeserializer[T_co]
  ) -> "RegisterWidgetResult[T_co]":
      """The canonical way to construct a RegisterWidgetResult in cases
      where the true widget value could not be determined.
      """
      return cls(value=deserializer(None, ""), value_changed=False)
  
imports: from __future__ import annotations
  import hashlib
  from dataclasses import dataclass, field
  from datetime import date, datetime, time, timedelta
  from typing import TYPE_CHECKING, Any, Callable, Dict, Generic, Optional, Sequence, Tuple, TypeVar, Union
  from google.protobuf.message import Message
  from typing_extensions import Final, TypeAlias
  from streamlit import util
  from streamlit.errors import StreamlitAPIException
  from streamlit.proto.Arrow_pb2 import Arrow
  from streamlit.proto.Button_pb2 import Button
  from streamlit.proto.CameraInput_pb2 import CameraInput
  from streamlit.proto.ChatInput_pb2 import ChatInput
  from streamlit.proto.Checkbox_pb2 import Checkbox
  from streamlit.proto.ColorPicker_pb2 import ColorPicker
  from streamlit.proto.Components_pb2 import ComponentInstance
  from streamlit.proto.DateInput_pb2 import DateInput
  from streamlit.proto.DownloadButton_pb2 import DownloadButton
  from streamlit.proto.FileUploader_pb2 import FileUploader
  from streamlit.proto.MultiSelect_pb2 import MultiSelect
  from streamlit.proto.NumberInput_pb2 import NumberInput
  from streamlit.proto.Radio_pb2 import Radio
  from streamlit.proto.Selectbox_pb2 import Selectbox
  from streamlit.proto.Slider_pb2 import Slider
  from streamlit.proto.TextArea_pb2 import TextArea
  from streamlit.proto.TextInput_pb2 import TextInput
  from streamlit.proto.TimeInput_pb2 import TimeInput
  from streamlit.type_util import ValueFieldName
  from streamlit.util import HASHLIB_KWARGS
label_desc: Use image node_id 1 for calling the RegisterWidgetResult obj's underlying member method code with example usage: obj.failure(cls, deserializer) and returns: cls