You are given a box with eight holes labelled   A-to-H,   connected by fifteen straight lines in the pattern as shown below:

             A   B
            /│\ /│\
           / │ X │ \
          /  │/ \│  \
         C───D───E───F
          \  │\ /│  /
           \ │ X │ /
            \│/ \│/
             G   H

You are also given eight pegs numbered   1-to-8.



Objective

Place the eight pegs in the holes so that the (absolute) difference between any two numbers connected by any line is greater than one.



Example

In this attempt:

             4   7
            /│\ /│\
           / │ X │ \
          /  │/ \│  \
         8───1───6───2
          \  │\ /│  /
           \ │ X │ /
            \│/ \│/
             3   5

Note that   7   and   6   are connected and have a difference of   1,   so it is   not   a solution.



Task
Produce and show here   one   solution to the puzzle.



Related tasks

   A* search algorithm
   Solve a Holy Knight's tour
   Knight's tour
   N-queens problem
   Solve a Hidato puzzle
   Solve a Holy Knight's tour
   Solve a Hopido puzzle
   Solve a Numbrix puzzle
   4-rings or 4-squares puzzle


See also
No Connection Puzzle (youtube).




V connections = [(0, 2), (0, 3), (0, 4),
                 (1, 3), (1, 4), (1, 5),
                 (6, 2), (6, 3), (6, 4),
                 (7, 3), (7, 4), (7, 5),
                 (2, 3), (3, 4), (4, 5)]
 
F ok(conn, perm)
   R abs(perm[conn[0]] - perm[conn[1]]) != 1
 
F solve()
   [[Int]] r
   V perm = Array(1..8)
   L
      I all(:connections.map(conn -> ok(conn, @perm)))
         r [+]= copy(perm)
      I !perm.next_permutation()
         L.break
   R r
 
V solutions = solve()
print(‘A, B, C, D, E, F, G, H = ’solutions[0].join(‘, ’))