<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def dskmi2(vrtces, plates, finscl, corscl, worksz, voxpsz, voxlsz, makvtl, spxisz):
 """ Make spatial index for a DSK type 2 segment. The index is returned as a pair of arrays, one of type int and one of type float. These arrays are suitable for use with the DSK type 2 writer dskw02. http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/dskmi2_c.html :param vrtces: Vertices :type vrtces: NxM-Element Array of floats :param plates: Plates :type plates: NxM-Element Array of ints :param finscl: Fine voxel scale :type finscl: float :param corscl: Coarse voxel scale :type corscl: int :param worksz: Workspace size :type worksz: int :param voxpsz: Voxel plate pointer array size :type voxpsz: int :param voxlsz: Voxel plate list array size :type voxlsz: int :param makvtl: Vertex plate list flag :type makvtl: bool :param spxisz: Spatial index integer component size :type spxisz: int :return: double precision and integer components of the spatial index of the segment. :rtype: tuple """

    nv     = ctypes.c_int(len(vrtces))
    vrtces = stypes.toDoubleMatrix(vrtces)
    np     = ctypes.c_int(len(plates))
    plates = stypes.toIntMatrix(plates)
    finscl = ctypes.c_double(finscl)
    corscl = ctypes.c_int(corscl)
    worksz = ctypes.c_int(worksz)
    voxpsz = ctypes.c_int(voxpsz)
    voxlsz = ctypes.c_int(voxlsz)
    makvtl = ctypes.c_int(makvtl)
    spxisz = ctypes.c_int(spxisz)
    work   = stypes.emptyIntMatrix(2, worksz)
    spaixd = stypes.emptyDoubleVector(10) # SPICE_DSK02_SPADSZ
    spaixi = stypes.emptyIntVector(spxisz)
    libspice.dskmi2_c(nv, vrtces, np, plates, finscl, corscl, worksz, voxpsz, voxlsz, makvtl, spxisz, work, spaixd, spaixi)
    return stypes.cVectorToPython(spaixd), stypes.cVectorToPython(spaixi)