code: def split_columns(
      self,
      columns: List[str],
      block_types: Union["BlockType", List["BlockType"]],
  ):
      field_indexes = self._schema_manager.split_columns(
          columns, block_types
      )
      narrow_blocks, dst_blocks = self._block_manager.split_fields(
          field_indexes, block_types
      )
  
      return narrow_blocks, dst_blocks
  
imports: import numpy
  from .schema_manager import SchemaManager
  from .block_manager import BlockManager
  from .block_manager import BlockType
  import pandas
  from ..entity import types
  from typing import Union, List, Tuple
  from ..conf.default_config import DATAFRAME_BLOCK_ROW_SIZE
label_desc: Use image node_id 10 for calling the DataManager obj's underlying member method code with example usage: obj.split_columns(columns, block_types) and returns: narrow_blocks,  dst_blocks