class
	EV_RECTANGLE

General
	cluster: interface
	description: "Rectangular areas."
	create: make, set, default_create

Ancestors
	ANY

Queries
	bottom: INTEGER_32
	has (c: EV_COORDINATE): BOOLEAN
	has_x_y (a_x, a_y: INTEGER_32): BOOLEAN
	height: INTEGER_32
	intersects (other: [like Current] EV_RECTANGLE): BOOLEAN
	left: INTEGER_32
	lower_left: EV_COORDINATE
	lower_right: EV_COORDINATE
	out: STRING_8
	right: INTEGER_32
	top: INTEGER_32
	upper_left: EV_COORDINATE
	upper_right: EV_COORDINATE
	width: INTEGER_32
	x: INTEGER_32
	y: INTEGER_32

Commands
	grow_bottom (i: INTEGER_32)
	grow_left (i: INTEGER_32)
	grow_right (i: INTEGER_32)
	grow_top (i: INTEGER_32)
	include (a_x, a_y: INTEGER_32)
	include_point (c: EV_COORDINATE)
	merge (other: [like Current] EV_RECTANGLE)
	move (a_x, a_y: INTEGER_32)
	move_and_resize (a_x, a_y, a_width, a_height: INTEGER_32)
	resize (a_width, a_height: INTEGER_32)
	set_bottom (i: INTEGER_32)
	set_height (new_height: INTEGER_32)
	set_left (i: INTEGER_32)
	set_right (i: INTEGER_32)
	set_top (i: INTEGER_32)
	set_width (new_width: INTEGER_32)
	set_x (new_x: INTEGER_32)
	set_y (new_y: INTEGER_32)

Constraints
	width positive
	height positive