<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def qhalf(options, halfspaces, interior_point):
 """ Similar to qvoronoi command in command-line qhull. Args: option: An options string. Up to two options separated by spaces are supported. See Qhull's qhalf help for info. Typically used options are: Fp halfspaces: List of Halfspaces as input. interior_point: An interior point (see qhalf documentation) Returns: Output as a list of strings. E.g., ['3', '4', ' 1 1 0 ', ' 1 -1 2 ', ' -1 1 2 ', ' 1 1 2 '] """

    points = [list(h.normal) + [h.offset] for h in halfspaces]
    data = [[len(interior_point), 1]]
    data.append(map(repr, interior_point))
    data.append([len(points[0])])
    data.append([len(points)])
    data.extend([map(repr, row) for row in points])
    prep_str = [" ".join(map(str, line)) for line in data]
    output = getattr(hull, "qhalf")(options, "\n".join(prep_str))
    return list(map(str.strip, output.strip().split("\n")))