Prior to this change elements will happily take an empty collection and
call gen/choose with 0 and -1, which apparently generates lots of 0s
and 1s, and then eventually throw an IndexOutOfBoundsException when it
eventually calls nth on the empty collection.
Prior to this change elements will happily take an empty collection and call gen/choose with 0 and -1, which apparently generates lots of 0s and 1s, and then eventually throw an IndexOutOfBoundsException when it eventually calls nth on the empty collection.