code: def __mul__(self, other):
      from river import compose
  
      if isinstance(other, Transformer) or isinstance(
          other, compose.Pipeline
      ):
          return compose.TransformerProduct(self, other)
  
      return compose.Grouper(transformer=self, by=other)
  
imports: from __future__ import annotations
  import abc
  import typing
  from river import base
label_desc: Use image node_id 3 for calling the BaseTransformer obj's underlying member method code with example usage: obj.__mul__(other) and returns: compose, compose