code: def get_mutations(
      individual: Individual,
      number_mutations: int,
      operations: List[str],
  ):
      """For a given individaul this function obtains several its mutations.
  
      Args:
          individaul: an individual
          number_mutations: a required number mutations
          operations: list of possible mutations
  
      Returns:
          list of mutations of given individual. Mutations can be identical.
      """
      mutations = [
          get_ts_mutation(individual, operations)
          for _ in range(number_mutations)
      ]
      return [x for x in mutations if x is not None]
  
file_path: FEDOT/fedot/core/pipelines/prediction_intervals/ts_mutation.py
imports: from typing import List
  from golem.core.optimisers.genetic.gp_params import GPAlgorithmParameters
  from golem.core.optimisers.genetic.operators.mutation import Mutation
  from golem.core.optimisers.genetic.operators.base_mutations import MutationStrengthEnum
  from golem.core.optimisers.opt_history_objects.individual import Individual
  from golem.core.log import LoggerAdapter
  from fedot.core.pipelines.pipeline_composer_requirements import PipelineComposerRequirements
  from fedot.core.pipelines.pipeline_graph_generation_params import get_pipeline_generation_params
  from fedot.core.repository.tasks import Task, TaskTypesEnum
  from fedot.core.pipelines.verification import rules_by_task
  from fedot.core.pipelines.prediction_intervals.graph_distance import get_distance_between
label_desc: Use image node_id 2 for calling a global function with example usage: get_mutations(individual, number_mutations, operations) and returns: unknown