avail[] = available sides - size is the x in xgen flags[] = {true, true, true...} same size as avail length = length of scramble scramble = "" followers[] = {" ", "' ", "2 "} repeat (length) { :lolool x = rand(avail.size) (face) y = rand(3) (normal, ', or 2) if (flags[x]) { scramble += avail[x] + followers[y] // set flags for x to false and all adjacent sides to true } else goto lolool }