class_docstr: Input*Gradient analyzer.
  
  :param model: A Keras model.
class_docstr_tok: ["Input","*","Gradient","analyzer",".",":","param","model",":","A","Keras","model","."]
code: def _create_analysis(self, model, stop_analysis_at_tensors=None):
      if stop_analysis_at_tensors is None:
          stop_analysis_at_tensors = []
  
      tensors_to_analyze = [
          x
          for x in ibackend.to_list(model.inputs)
          if x not in stop_analysis_at_tensors
      ]
      gradients = super()._create_analysis(
          model, stop_analysis_at_tensors=stop_analysis_at_tensors
      )
      return [
          klayers.Multiply()([i, g])
          for i, g in zip(tensors_to_analyze, gradients)
      ]
  
imports: from __future__ import annotations
  import tensorflow
  import tensorflow.keras.backend
  import tensorflow.keras.layers
  import innvestigate.backend
  import innvestigate.backend.checks
  import innvestigate.backend.graph
  from innvestigate.analyzer.network_base import AnalyzerNetworkBase
  from innvestigate.analyzer.reverse_base import ReverseAnalyzerBase
  from innvestigate.analyzer.wrapper import GaussianSmoother, PathIntegrator
  from innvestigate.backend.types import List, OptionalList, Tensor
label_desc: Use image node_id 2 for calling the InputTimesGradient obj's underlying member method code with example usage: obj._create_analysis(model, stop_analysis_at_tensors) and returns: unknown