added a description.
amended the file header.
added generateSelect()