Some quick comments on mistakes made by students. Q10: For part (a), a number of students missed out that there are a few cases to consider. Supposed the 4 vertices of a rectangle are labelled A, B, C, D in clockwise manner, then the pair of vertices a user may input could be one of these: (A, C), (C, A), (B, D), or (D, B). Your code must handle all these possibilities. For part (c), the reason, as stated in the solution, is that we disallow the vertices to be changed once the rectangle is created, so that the positions of the vertices are protected. Textbook answers like "encapsulation", "information hiding", etc. are not acceptable because they do not state the actual reason in this specific context. Q11: Here are some common mistakes: * Using the formulas (x1 - x2)/2 and (y1 - y2)/2 to find the position of the centre of the rectangle represented by the two vertices at (x1, y1) and (x2, y2). The correct formulas should be (x1 + x2)/2.0 and (y1 + y2)/2.0. * Using the Point class to hold the centre points. As the coordinates of a centre may not be integer values, the use of Point class is incorrect. * Finding the distance between the centres of one pair of rectangles, instead of finding the minimum distance between ANY pair of rectangles. The example given shows that it is the latter case. HAND aaron