Public Sub GenerateGrid() Clear() '1:Clear Dim Squares(80) As Square '2:Square Dim Available(80) As List(Of Integer) Dim c As Integer = 0 For x As Integer = 0 To Available.Length - 1 Available(x) = New List(Of Integer) For i As Integer = 1 To 9 Available(x).Add(i) Next Next Do Until c = 81 A: Dim i As Integer = GetRan(0, Available(c).Count - 1) '3:GetRan If Not Available(c).Count = 0 Then Dim z As Integer = Available(c).Item(i) If Conflicts(Squares, Item(c, z)) = False Then '4:Conflict Squares(c) = Item(c, z) '5:Item Available(c).RemoveAt(i) c += 1 Else Available(c).RemoveAt(i) GoTo A End If Else For y As Integer = 1 To 9 Available(c).Add(y) Next Squares(c - 1) = Nothing c -= 1 GoTo A End If Loop Dim j As Integer For j = 0 To 80 Sudoku.Add(Squares(j)) Next End Sub