charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/"charmap = []def gen_grid():ptr = 0for i in range(8):row = []for j in range(8):row.append(charset[ptr])ptr = ptr + 1charmap.append(row)def swap_row(i, j):i = i % 8j = j % 8charmap[i], charmap[j] = charmap[j], charmap[i]def swap_col(i, j):i = i % 8j = j % 8for row in charmap:row[i], row[j] = row[j], row[i]def print_grid():for row in charmap:print("".join(row))if __name__ == "__main__":gen_grid()print("Original Grid:")print_grid()key = []ptr = 0for item in key:if (ptr // 8) % 2 == 0:swap_row(ptr % 8, item)else:swap_col(ptr % 8, item)ptr = ptr + 1print("Encrypted Grid:")print_grid()