class_docstr: Generator for Thompson sampling.
  
  The generator performs Thompson sampling on the data passed in via `fit`.
  Arms are given weight proportional to the probability that they are
  winners, according to Monte Carlo simulations.
class_docstr_tok: ["Generator","for","Thompson","sampling",".","The","generator","performs","Thompson","sampling","on","the","data","passed","in","via","`","fit","`",".","Arms","are","given","weight","proportional","to","the","probability","that","they","are","winners",",","according","to","Monte","Carlo","simulations","."]
docstr: For plain Thompson Sampling, there's nothing to be done here.
  EmpiricalBayesThompsonSampler will overwrite this method to perform
  shrinkage.
docstr_tok: ["For","plain","Thompson","Sampling",",","there","'s","nothing","to","be","done","here",".","EmpiricalBayesThompsonSampler","will","overwrite","this","method","to","perform","shrinkage","."]
code: def _fit_Ys_and_Yvars(
      self,
      Ys: List[List[float]],
      Yvars: List[List[float]],
      outcome_names: List[str],
  ) -> Tuple[List[List[float]], List[List[float]]]:
      """For plain Thompson Sampling, there's nothing to be done here.
      EmpiricalBayesThompsonSampler will overwrite this method to perform
      shrinkage.
      """
      return Ys, Yvars
  
imports: import hashlib
  import json
  from typing import Dict, List, Optional, Tuple
  import numpy
  from ax.core.types import TGenMetadata, TParamValue, TParamValueList
  from ax.exceptions.constants import TS_MIN_WEIGHT_ERROR, TS_NO_FEASIBLE_ARMS_ERROR
  from ax.exceptions.model import ModelError
  from ax.models.discrete_base import DiscreteModel
  from ax.models.types import TConfig
  from ax.utils.common.docutils import copy_doc
label_desc: Use image node_id 10 for calling the ThompsonSampler obj's underlying member method code with example usage: obj._fit_Ys_and_Yvars(Ys, Yvars, outcome_names) and returns: Ys,  Yvars