<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def spkpds(body, center, framestr, typenum, first, last):
 """ Perform routine error checks and if all check pass, pack the descriptor for an SPK segment http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/spkpds_c.html :param body: The NAIF ID code for the body of the segment. :type body: int :param center: The center of motion for body. :type center: int :param framestr: The frame for this segment. :type framestr: str :param typenum: The type of SPK segment to create. :type typenum: int :param first: The first epoch for which the segment is valid. :type first: float :param last: The last epoch for which the segment is valid. :type last: float :return: An SPK segment descriptor. :rtype: 5-Element Array of floats """

    body = ctypes.c_int(body)
    center = ctypes.c_int(center)
    framestr = stypes.stringToCharP(framestr)
    typenum = ctypes.c_int(typenum)
    first = ctypes.c_double(first)
    last = ctypes.c_double(last)
    descr = stypes.emptyDoubleVector(5)
    libspice.spkpds_c(body, center, framestr, typenum, first, last, descr)
    return stypes.cVectorToPython(descr)