question: public static List < ShapeRecord > rectangle ( double startX , double startY , double width , double height ) { List < ShapeRecord > shapeRecords = new ArrayList < ShapeRecord > ( ) ; shapeRecords . add ( move ( startX , startY ) ) ; shapeRecords . addAll ( straightEdge ( startX , startY , width , startY ) ) ; shapeRecords . addAll ( straightEdge ( width , startY , width , height ) ) ; shapeRecords . addAll ( straightEdge ( width , height , startX , height ) ) ; shapeRecords . addAll ( straightEdge ( startX , height , startX , startY ) ) ; return shapeRecords ; }
target:  Creates a List of ShapeRecord to draw a rectangle from the given origin (startX, startY) for the specified width and height (in pixels).