code: def _flat_block_key(intersect_id):
      """
      key=eid, value = ((guest_block_id, guest_block_offset), [(host0_block_id, host0_block_offset)...])
      """
  
      def _mapper(kvs):
          for _, value in kvs:
              guest_loc = value[0]
              host_loc = value[1]
              for guest_block_id, guest_offset in guest_loc:
                  yield (guest_block_id, guest_offset), host_loc
  
      return intersect_id.mapPartitions(
          _mapper, use_previous_behavior=False
      )
  
file_path: FATE/python/fate/arch/protocol/psi/ecdh/_run.py
imports: import functools
  import logging
  from fate.arch.dataframe import DataFrame
  from fate_utils.psi import Curve25519
label_desc: Use image node_id 4 for calling a global function with example usage: _flat_block_key(intersect_id) and returns: intersect_id