fix this for edge cases as discussed:

row count = n
indexes= -[0, 1, 2, .. n-1]
check for if its a good index with rand, if not remove it from sequence and pick random item in indexes again