question: You are a spatial-reasoning assistant that solves Happy Cube puzzles.
  
  INPUT
  • Six jigsaw-style pieces represented in 2D array, labelled A–F.
  • Each piece is described by the bump/gap pattern on its four edges (Edge1 = left, Edge2 = top, Edge3 = right, Edge4 = bottom in the 2D array), the center squares are always filled.
  
  Task
  Build a 5 × 5 × 5 cube that uses every piece exactly once. 
  • Assign each piece to one cube face (Top, Bottom, Front, Back, Left, Right) with proper rotation (flip is not allowed).
  • The finished cube closed perfectly—no overlaps, no gaps.
  
  The first and last 'square' of the edge contribute to the corners of the cube, make sure:
  • When two cube faces touch, the non-corner part of their edges must be complementary bit-for-bit.
  • At cube corners (where three faces meet), all connecting edges must align seamlessly.
  
  NOTE
  For each piece, report the orientation via the following mental exercise:
  1. Hold the finished cube in both hands.
  2. Turn the whole cube until the face you are about to name is now facing you like the front of a box.
  3. In this view, write down the edge numbers located on left and top. 
      • Format: (Cube-Face, Left-Edge#, Top-Edge#)
  Note that left-edge and top-edge must be adjacent.
  
  OUTPUT
  Answer the question with the arrangement of 6 pieces. Your response should end with:
  The final solution is
  ```
  A: (Cube-Face, Left-Edge#, Top-Edge#)
  B: (Cube-Face, Left-Edge#, Top-Edge#)
  C: (Cube-Face, Left-Edge#, Top-Edge#)
  D: (Cube-Face, Left-Edge#, Top-Edge#)
  E: (Cube-Face, Left-Edge#, Top-Edge#)
  F: (Cube-Face, Left-Edge#, Top-Edge#)
  ```
  
  Below is the 6 faces where 0 = gap and 1 = bump.
  Face A:
  [[0, 0, 1, 1, 1],
   [1, 1, 1, 1, 1],
   [1, 1, 1, 1, 0],
   [1, 1, 1, 1, 0],
   [0, 1, 1, 0, 0]]
  
  Face B:
  [[1, 0, 0, 0, 0],
   [1, 1, 1, 1, 1],
   [0, 1, 1, 1, 0],
   [0, 1, 1, 1, 0],
   [0, 0, 1, 1, 0]]
  
  Face C:
  [[0, 0, 0, 1, 0],
   [0, 1, 1, 1, 0],
   [1, 1, 1, 1, 1],
   [1, 1, 1, 1, 1],
   [1, 1, 1, 1, 1]]
  
  Face D:
  [[0, 1, 0, 0, 0],
   [0, 1, 1, 1, 1],
   [1, 1, 1, 1, 1],
   [1, 1, 1, 1, 0],
   [1, 1, 0, 1, 0]]
  
  Face E:
  [[1, 1, 1, 0, 1],
   [1, 1, 1, 1, 0],
   [1, 1, 1, 1, 0],
   [0, 1, 1, 1, 1],
   [1, 0, 1, 0, 0]]
  
  Face F:
  [[0, 1, 0, 0, 0],
   [0, 1, 1, 1, 0],
   [0, 1, 1, 1, 0],
   [0, 1, 1, 1, 1],
   [0, 0, 0, 1, 0]]
          
  To help you to solve the problem, there is a partial solution below and you'll just need to fill the rest part to finish the answer:
  ```
  A: ...
  B: ...
  C: (Left, 1, 2)
  D: (Back, 4, 1)
  E: (Right, 2, 3)
  F: (Bottom, 1, 2)
  ```