p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' ' print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '
print p1.x, p1.y, ' ', p2.x, p2.y, ' ', Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).x, Point((p1.x + p2.x)/2.0, (p1.y + p2.y)/2.0).y, ' '