+func adjacent_spaces(s Space) []Space {
+ if s < 0 || s >= BOARD_SIZE {
+ panic("Invalid space")
+ }
+ var adjacent []Space
+ if s >= BOARD_DIM {
+ adjacent = append(adjacent, s+UP)
+ }
+ if s < BOARD_SIZE-BOARD_DIM {
+ adjacent = append(adjacent, s+DOWN)
+ }
+ if s%BOARD_DIM != 0 {
+ adjacent = append(adjacent, s+LEFT)
+ }
+ if s%BOARD_DIM != BOARD_DIM-1 {
+ adjacent = append(adjacent, s+RIGHT)
+ }
+ return adjacent
+}
+
+func create_successors(start *Step) {
+ for _, adj := adjacent_spaces(start.
+}
+
+func sliding_tile(start *Board) error {
+ seen := bloom.NewWithEstimates(uint(*bloomsize), 0.0001)
+ seen.Add(reflect.ValueOf(*start).Bytes())
+ return nil
+}
+