class_docstr: Select one or another transform to apply. Selected transform will be called with `force_apply=True`.
class_docstr_tok: ["Select","one","or","another","transform","to","apply",".","Selected","transform","will","be","called","with","`","force_apply=True","`","."]
code: def __call__(
      self, *args, force_apply: bool = False, **data
  ) -> typing.Dict[str, typing.Any]:
      if self.replay_mode:
          for t in self.transforms:
              data = t(**data)
          return data
  
      if random.random() < self.p:
          return self.transforms[0](force_apply=True, **data)
  
      return self.transforms[-1](force_apply=True, **data)
  
imports: from __future__ import division
  import random
  import typing
  import warnings
  from collections import defaultdict
  import numpy
  from ..None import random_utils
  from .bbox_utils import BboxParams, BboxProcessor
  from .keypoints_utils import KeypointParams, KeypointsProcessor
  from .serialization import SERIALIZABLE_REGISTRY, Serializable, get_shortest_class_fullname, instantiate_nonserializable
  from .transforms_interface import BasicTransform
  from .utils import format_args, get_shape
label_desc: Use image node_id 2 for calling the OneOrOther obj's underlying member method code with example usage: obj.__call__() and returns: self, data, self