class_docstr: The runs with the same set of hyperparameter values.
  
  `Trial` objects are managed by the `Oracle`. A `Trial` object contains all
  the information related to the executions with the same set of
  hyperparameter values. A `Trial` may be executed multiple times for more
  accurate results or for retrying when failed. The related information
  includes hyperparameter values, the Trial ID, and the trial results.
  
  Args:
      hyperparameters: HyperParameters. It contains the hyperparameter values
          for the trial.
      trial_id: String. The unique identifier for a trial.
      status: one of the TrialStatus attributes. It marks the current status
          of the Trial.
      message: String. The error message if the trial status is "INVALID".
code: def from_proto(cls, proto):
      instance = cls(
          hp_module.HyperParameters.from_proto(proto.hyperparameters),
          trial_id=proto.trial_id,
          status=TrialStatus.from_proto(proto.status),
      )
      if proto.HasField("score"):
          instance.score = proto.score.value
          instance.best_step = proto.score.step
      instance.metrics = metrics_tracking.MetricsTracker.from_proto(
          proto.metrics
      )
      return instance
  
imports: import hashlib
  import random
  import time
  from keras_tuner import protos
  from keras_tuner import utils
  from keras_tuner.api_export import keras_tuner_export
  from keras_tuner.engine import hyperparameters
  from keras_tuner.engine import metrics_tracking
  from keras_tuner.engine import stateful
label_desc: Use image node_id 9 for calling the Trial obj's underlying member method code with example usage: obj.from_proto(cls, proto) and returns: instance