code: def setup_migration_transforms(mock_klass_v1, mock_klass_v2):
      @migrate(mock_klass_v1, mock_klass_v2)
      def mock_v1_to_v2():
          return [
              rename("name", "full_name"),
              convert_types(["version"], str),
          ]
  
      @migrate(mock_klass_v2, mock_klass_v1)
      def mock_v2_to_v1():
          return [
              rename("full_name", "name"),
              convert_types(["version"], int),
          ]
  
      return mock_v1_to_v2, mock_v2_to_v1
  
imports: from copy import deepcopy
  from typing import List
  from typing import Type
  from typing import Union
  from unittest import mock
  import syft
  from syft.node.worker import Worker
  from syft.protocol.data_protocol import get_data_protocol
  from syft.serde.recursive import TYPE_BANK
  from syft.serde.serializable import serializable
  from syft.service.context import AuthedServiceContext
  from syft.service.response import SyftError
  from syft.service.service import AbstractService
  from syft.service.service import ServiceConfigRegistry
  from syft.service.service import service_method
  from syft.service.user.user_roles import GUEST_ROLE_LEVEL
  from syft.store.document_store import BaseStash
  from syft.store.document_store import DocumentStore
  from syft.store.document_store import PartitionSettings
  from syft.types.syft_migration import migrate
  from syft.types.syft_object import SYFT_OBJECT_VERSION_1
  from syft.types.syft_object import SYFT_OBJECT_VERSION_2
  from syft.types.syft_object import SyftBaseObject
  from syft.types.syft_object import SyftObject
  from syft.types.transforms import convert_types
  from syft.types.transforms import rename
  from syft.types.uid import UID
  from syft.util.util import index_syft_by_module_name
label_desc: Use image node_id 3 for calling a global function with example usage: setup_migration_transforms(mock_klass_v1, mock_klass_v2) and returns: mock_v1_to_v2,  mock_v2_to_v1, list, list