selection now avoids zeroes unless user specifically bounds it