The checkboxes will all have the same name attribute. Each
checkbox is followed by a label. There will be one checkbox for each value.
Each value can be specified as a String, which will be used both as the
value of the VALUE attribute and as the label for that checkbox. A
single-element array has the same effect.

Each value can also be specified as a three-element array. The first
element is the VALUE attribute; the second is the label; and the third is a
boolean specifying whether this checkbox is CHECKED.

Each value can also be specified as a two-element array, by omitting either
the value element (defaults to the same as the label), or the boolean
checked element (defaults to false).

The attributes of the element are specified as a hash. The
pseudo-attribute “PRETTY” can be used to specify that the generated HTML
string should be indented. “PRETTY” can also be specified as a string as
the sole argument to this method. The pseudo-attribute “DOCTYPE”, if
given, is used as the leading DOCTYPE SGML tag; it should include the
entire text of this tag, including angle brackets.

name is the name of the element. The values are
the options that can be selected from the Select menu. Each value can be a
String or a one, two, or three-element Array. If a String or a one-element
Array, this is both the value of that option and the text displayed for it.
If a three-element Array, the elements are the option value, displayed
text, and a boolean value specifying whether this option starts as
selected. The two-element version omits either the option value (defaults
to the same as the display text) or the boolean selected specifier
(defaults to false).

The attributes and options can also be specified as a hash. In this case,
options are specified as an array of values as described above, with the
hash key of “VALUES”.