def midpoint(self):
    '\n        What comes in:\n          -- self\n        What goes out: returns a Point at the midpoint of this Line.\n        Side effects: None.\n\n        Example:\n            p1 = Point(3, 10)\n            p2 = Point(9, 20)\n            line1 = Line(p1, p2)\n\n            print(line1.midpoint())  # Should print: Point(6, 15)\n\n        Type hints:\n          :rtype: Point\n        '
    midpoint = Point(((self.end.x + self.start.x) / 2), ((self.end.y + self.start.y) / 2))
    return midpoint
What comes in:
  -- self
What goes out: returns a Point at the midpoint of this Line.
Side effects: None.

Example:
    p1 = Point(3, 10)
    p2 = Point(9, 20)
    line1 = Line(p1, p2)

    print(line1.midpoint())  # Should print: Point(6, 15)

Type hints:
  :rtype: Point
def midpoint(self):
    '\n        What comes in:\n          -- self\n        What goes out: returns a Point at the midpoint of this Line.\n        Side effects: None.\n\n        Example:\n            p1 = Point(3, 10)\n            p2 = Point(9, 20)\n            line1 = Line(p1, p2)\n\n            print(line1.midpoint())  # Should print: Point(6, 15)\n\n        Type hints:\n          :rtype: Point\n        '
    midpoint = Point(((self.end.x + self.start.x) / 2), ((self.end.y + self.start.y) / 2))
    return midpoint