[gallery ids='1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270']

Generator: rectile1

'(split-h
  (split-v
   (split-v
    (split-h
     (split-v
      (split-h
       (split-h
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty)))))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v empty square)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))
             square)))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty)))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h square empty))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-h
             square
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))))))
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square)))
          (split-h
           square
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))
            (split-v
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               square))
             (split-v
              (split-h empty circle)
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-v
           (split-h
            (split-v
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h square empty))
               square))
             square)
            (split-h
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               circle))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)))
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h circle empty))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty)))))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             (split-h
              (split-v
               circle
               (split-v (split-h empty circle) (split-h square empty)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-v (split-h empty square) (split-h square empty)))
          (split-h
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty square))))))
             (split-h (split-v square empty) (split-v empty circle)))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))))))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v square empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 square
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             circle
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))))
               circle))
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             empty)
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty square))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))))
           (split-h
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h circle empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty))
               circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 circle)
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))
                 circle)))
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty circle) (split-h square empty))))))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty circle) (split-h circle empty))
               square)
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h circle empty))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               circle)
              (split-h
               circle
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h circle empty)))))
              (split-h
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h circle empty))
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h circle empty))))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))))
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             (split-h
              (split-v square empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               square)))))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h square empty))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle)))
              (split-h
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))))
             (split-h
              (split-v square empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v square empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-v
           (split-h
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle)))))))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))))
               square))
             (split-h
              (split-v square empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))))
           circle))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               square)))
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 square)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               circle
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))))
             square)))
          (split-h
           square
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               square)
              (split-h
               circle
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))
            (split-h
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h
                  (split-v circle empty)
                  (split-v empty circle)))))))))))))
      (split-h
       (split-h
        (split-v
         square
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty))
                 empty)
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 circle))))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty square)))
                (split-v
                 (split-v (split-h empty circle) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               circle))))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))
             square)
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v (split-h empty circle) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))))))))
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h empty square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             circle
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               square))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 empty
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               empty
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 square)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)))))
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)))
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v empty square))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               square))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))))))
         (split-h
          (split-v
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             circle
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v square empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v square empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)
              (split-h
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             square))
           square))))
       (split-v
        (split-h
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h circle empty))
               circle))))
           (split-h
            (split-v circle empty)
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             circle)))
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h circle empty))
           (split-v (split-h empty square) (split-h square empty))))
         (split-v (split-h empty square) (split-h square empty)))
        (split-h
         (split-h
          (split-v
           (split-h
            (split-v
             circle
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               square
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               circle)
              (split-h
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty))))
               square)
              (split-h
               circle
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))
               circle)
              (split-h
               square
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h circle empty))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))
            (split-v
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square)))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))))
         (split-h
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square)))
                (split-h
                 square
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty)))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v (split-h empty square) (split-h circle empty))
                 circle))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               circle
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 square)
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 square)
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))))))))
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h
             square
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))))
           circle))))))
     (split-h
      (split-v
       (split-v
        (split-h
         (split-h
          (split-v
           square
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h circle empty)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 square))
               (split-v
                (split-h
                 empty
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 square
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))))))
             (split-h
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty square))
                 square)
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             circle
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 circle
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               circle)))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square)))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h square empty))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty square)))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 circle)
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty)))))))
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))))
         circle)
        (split-h
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v empty square)))
          (split-h
           (split-h
            (split-v circle empty)
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             circle
             (split-v (split-h empty square) (split-h square empty))))))
         (split-h
          (split-v
           square
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty square)))
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))
             (split-v
              (split-h empty square)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             square)
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h square empty))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))))
           circle))))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           circle)
          (split-h
           square
           (split-v (split-h empty square) (split-h square empty))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h
              (split-v square empty)
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)))
              (split-h
               circle
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 empty))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 empty
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))))
           (split-h (split-v circle empty) (split-v empty circle)))))
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty circle) (split-h circle empty))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h square empty))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))
             (split-v
              (split-h empty circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))))))
           (split-h
            (split-v
             (split-v
              (split-h empty square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             empty)
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v square empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               empty)
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               square
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-h
            (split-v
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty)))))))
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v square empty) (split-v empty square))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))
                 circle)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle))
               circle))
             circle))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square)))
                (split-h
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               circle)
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle)))))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-v
              (split-h empty square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty)))))))))
      (split-v
       (split-v
        (split-h
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               circle)
              (split-h
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))
             square)
            (split-h
             square
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)
              (split-h
               circle
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             empty)
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             square))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h
             square
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 circle)
                (split-h
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))))))
          (split-v
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle)))
              (split-h
               square
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 (split-h
                  (split-v square empty)
                  (split-v
                   empty
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h circle empty)))))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             square))
           (split-v (split-h empty square) (split-h square empty)))))
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty)))))
            (split-h
             square
             (split-h
              (split-v
               circle
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-h
            (split-v
             (split-v
              (split-h empty square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-h (split-v square empty) (split-v empty circle))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty))
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h empty square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h square empty))
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-h
               circle
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h empty square)
                (split-h
                 square
                 (split-v
                  (split-h empty circle)
                  (split-h square empty))))))))))
         (split-v
          (split-h
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h circle empty))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h circle empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               circle)
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h circle empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 empty)
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty circle))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty))))))
           (split-h
            (split-v
             (split-h (split-v square empty) (split-v empty square))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))))))))
       (split-h
        (split-v
         (split-h (split-v circle empty) (split-v empty circle))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           circle)
          (split-h circle empty)))
        (split-v
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           circle)
          (split-h
           square
           (split-v (split-h empty square) (split-h square empty))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle))))
           square)
          (split-h
           (split-h
            (split-v circle empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             square))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h circle empty)))))))))
    (split-h
     circle
     (split-v
      (split-h
       (split-v
        (split-h
         (split-h
          (split-v
           circle
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               empty))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)
              (split-h
               circle
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             empty))))
         (split-v
          (split-h
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v empty circle)))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))))
           square)
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h circle empty))))
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             square
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))))))
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h empty square)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               square
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle)))
            (split-h
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               empty
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h square empty)))))))
          (split-v
           (split-h
            (split-v
             square
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h circle empty))
             (split-h (split-v circle empty) (split-v empty circle))))
           square))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             square)
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             empty)
            (split-v
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty)))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty))
             circle)
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v empty square))
             circle)
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v circle empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))))))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h empty square)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle))))
           square)
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             square)
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v (split-h empty square) (split-h square empty))))))
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           circle)
          (split-h
           circle
           (split-h
            (split-v
             square
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))))
        (split-v
         (split-h
          (split-v
           square
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h circle empty)))
            (split-v
             (split-h (split-v square empty) (split-v empty square))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h square empty)))))
          (split-v
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square))
           (split-v
            (split-h
             (split-v (split-h empty circle) (split-h square empty))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             empty))))
         circle)))
      (split-h
       (split-h
        (split-v
         square
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h square empty)))
        (split-v
         (split-h
          (split-v
           square
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v empty circle)))
            (split-h
             square
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))))
          (split-v
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v empty square))
           circle))
         (split-v
          (split-h
           (split-h
            (split-v circle empty)
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square))
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             circle)))
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))))))
       (split-h
        (split-v
         (split-h
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-h
            (split-v
             (split-v (split-h empty circle) (split-h circle empty))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             circle)))
          (split-v
           (split-h
            (split-v circle empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v empty square))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h (split-v square empty) (split-v empty square))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             circle
             (split-h
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))
              (split-v
               empty
               (split-v (split-h empty circle) (split-h square empty))))))
           square)
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))
            (split-v
             (split-h
              (split-v
               circle
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty)))))
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h square empty)))
              (split-v empty circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty))
               square)
              (split-h
               square
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-h
                  (split-v circle empty)
                  (split-v empty circle)))))))))))
        (split-v
         (split-h
          (split-v
           circle
           (split-h
            (split-v
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-v
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               empty)))
            (split-v
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))))))
          (split-v
           (split-h
            (split-v
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               circle)))
            (split-h
             circle
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty circle))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty circle) (split-h square empty)))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             circle)))
          (split-h
           (split-h
            (split-v
             square
             (split-v
              (split-h empty circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             circle))))))))))
   (split-v
    (split-h
     (split-v
      (split-h
       (split-h
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             square
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty))))
           square)
          (split-h
           (split-h
            (split-v
             circle
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             circle))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))
             circle)
            (split-h
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))
             circle)
            (split-h
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle)))
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty square))
               circle)))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 empty))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h circle empty))
                 square))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v square empty)
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               empty
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               square
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v
                  (split-h empty square)
                  (split-h square empty)))))))))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty circle))
                 square))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h square empty))))))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h circle empty)))
              (split-v
               empty
               (split-v
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h square empty))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))))
           (split-h
            (split-v
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               empty))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h circle empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))
            (split-h
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   square
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               circle)
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle))))))))
         (split-h (split-v circle empty) (split-v empty circle))))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty)))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             circle))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               square)
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h square empty))))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))))
         (split-h
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             empty)
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v empty square))
             circle))
           (split-v
            (split-h empty circle)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty)))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             square)
            (split-h
             circle
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-v
              (split-h empty square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             square
             (split-v
              (split-h
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             empty
             (split-h (split-v square empty) (split-v empty square)))
            (split-h
             square
             (split-v
              (split-h empty circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-v
              (split-h empty square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h
               square
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h empty circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-v
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty circle))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h
                  (split-v circle empty)
                  (split-v empty circle))))))))))
         (split-v
          (split-h
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-h
            (split-v
             circle
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))))))
      (split-h
       (split-h
        (split-v
         circle
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             empty))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-v
           (split-h
            (split-v
             square
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             circle))
           square)))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h circle empty))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty))
             square)))
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty square))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h empty circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h (split-v circle empty) (split-v empty circle))))
         (split-h
          (split-v
           circle
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             square
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h circle empty))))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty circle)))
            (split-h
             square
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))))))))
       (split-v
        (split-h
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h (split-v circle empty) (split-v empty square))
             square)))
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               empty)
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v empty square))))))
         (split-h
          (split-v
           circle
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty square))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             circle)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v circle empty)
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty)))))))))
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))))
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-h
               circle
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-h
              (split-v
               circle
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))
               square)))
            (split-h
             circle
             (split-v
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))
                 circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 square)))))))
          (split-v
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 square)))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))))
             circle))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               empty)
              (split-v
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty circle))
               circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty)))))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h circle empty)))
            (split-h
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))
              (split-h
               square
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))))))))))
     (split-v
      (split-h
       (split-v
        (split-h
         (split-v
          (split-h empty square)
          (split-h
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square))
           empty))
         circle)
        (split-h
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h square empty))
         (split-v (split-h empty square) (split-h square empty))))
       (split-v
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h circle empty))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h square empty)))
          (split-v
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             square))
           square))
         (split-h (split-v circle empty) (split-v empty circle)))
        (split-h
         (split-v (split-h empty square) (split-h square empty))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h empty square)
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             empty))
           (split-v
            (split-h
             empty
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h circle empty)))))))
      (split-h
       (split-h
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h
           (split-h
            (split-v
             circle
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square))
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h circle empty))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-h
             square
             (split-v (split-h empty circle) (split-h circle empty))))
           (split-h
            (split-v
             square
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty)))))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty square))))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty)))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             circle)))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-h
              (split-v circle empty)
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))))
           square))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h (split-v square empty) (split-v empty circle)))
          (split-h
           circle
           (split-v (split-h empty square) (split-h square empty))))))
       (split-v
        (split-h
         (split-h
          (split-v
           square
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square)))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h circle empty))))
           (split-v (split-h empty square) (split-h square empty))))
         (split-h
          (split-v
           circle
           (split-v
            (split-h
             (split-v (split-h empty circle) (split-h circle empty))
             square)
            (split-h
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle)))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             circle)
            (split-h
             circle
             (split-v (split-h empty square) (split-h square empty))))
           square)))
        (split-h
         (split-h
          (split-v
           circle
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             square)
            (split-h
             circle
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             circle
             (split-v
              (split-h empty circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h empty square)
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h circle empty))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h square empty))
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h circle empty)))))
          (split-v
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             circle))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))))))))
    (split-h
     (split-h
      (split-v
       (split-v
        (split-h
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             square)))
          (split-h
           (split-h
            (split-v
             square
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle))))))
         square)
        (split-h
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               empty)
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             square
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v (split-h empty square) (split-h circle empty))
               circle)))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h empty circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h circle empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               circle)
              (split-h
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h circle empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h circle empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 circle))))))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-h
           (split-h
            (split-v
             (split-h
              (split-v circle empty)
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             square))
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v (split-h empty circle) (split-h square empty))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-h
              (split-v
               circle
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h circle empty)))))
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h circle empty))
                 empty)
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 square))
               circle))))))))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h circle empty))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               square))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h circle empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               square
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-h
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             square
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))))))
         (split-v
          (split-h
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))
           (split-h
            (split-v
             circle
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-h (split-v circle empty) (split-v empty circle)))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             square)
            (split-h
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 square))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-h
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))))))
             square)
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 empty)
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty)))))))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 square))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty circle) (split-h circle empty))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 square))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             circle))
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             square)
            (split-h
             circle
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty circle) (split-h circle empty))
             circle)
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             square)
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle)))))
          (split-v
           (split-v
            (split-h
             empty
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           circle)))))
      (split-v
       (split-v
        (split-h
         (split-h
          (split-v
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h (split-v square empty) (split-v empty square))
             circle))
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h circle empty)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle)))
          (split-v
           (split-h
            (split-v
             square
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square)))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             circle))
           circle))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h empty square)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             square
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               square))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               square)
              (split-h
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))
             square)))))
        (split-h
         (split-h (split-v circle empty) (split-v empty circle))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))
               circle))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               empty
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty circle) (split-h circle empty)))
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))))
           square))))
       (split-v
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty))))
           empty)
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             (split-v
              (split-h empty circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             square
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v square empty) (split-v empty square)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))
            (split-v
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty))))))))
         (split-h
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-v (split-h empty square) (split-h square empty)))
          (split-v
           empty
           (split-v (split-h empty square) (split-h square empty)))))
        (split-h
         (split-h
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           (split-h
            (split-v
             square
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h empty circle)
              (split-h
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty circle))))
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty))
             (split-h
              (split-v circle empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             circle
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             circle)
            (split-h
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))))
               square)
              (split-h
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-h
            (split-v
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 circle))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square))
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))))
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-h
               circle
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-h
             circle
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v
                (split-h empty square)
                (split-h square empty))))))))))))
     (split-h
      (split-v
       (split-v
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h circle empty)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h circle empty))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle)))
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty)))
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h (split-v square empty) (split-v empty square)))
            (split-v
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             circle))
           (split-v
            (split-h
             (split-v
              (split-h empty circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v empty circle)))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               empty)
              (split-v
               (split-v (split-h empty circle) (split-h circle empty))
               square))))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             empty)
            (split-v
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             square))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h circle empty))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             square)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle)))))))
        (split-h
         circle
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             circle)))
          (split-h
           circle
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             circle)
            (split-h circle empty))))))
       (split-v
        (split-h
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty circle) (split-h square empty))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-h
           square
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               square
               (split-v (split-h empty circle) (split-h square empty))))
             (split-v
              (split-h
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))
            (split-v
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v empty square))
           square)
          (split-h
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             square))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty square))))
             (split-v
              (split-h empty circle)
              (split-h
               circle
               (split-h (split-v square empty) (split-v empty circle)))))))))
        (split-h
         (split-h
          (split-v
           circle
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             square)
            (split-h
             square
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               circle)))))
          (split-v
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-h
               square
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h circle empty))
             circle)
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty)))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               circle))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty square))
               circle))))
           (split-h (split-v circle empty) (split-v empty circle)))))))
      (split-v
       (split-v
        (split-h
         (split-h
          (split-v
           square
           (split-h
            (split-v
             (split-h (split-v square empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               square
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))))))
          (split-v
           (split-h
            (split-v
             square
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h empty circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h circle empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-v
                  (split-h empty square)
                  (split-h square empty))))))))))
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           circle)
          (split-h
           (split-h
            (split-v
             square
             (split-v
              (split-h empty circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty)))
            (split-v
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h square empty)))))))
        (split-h
         square
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square)))
                (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v empty circle)))
            (split-v
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-h (split-v circle empty) (split-v empty square)))
            (split-h
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-v
            (split-h
             (split-v
              (split-h
               empty
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 circle)))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty)))))
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h circle empty))
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))))))))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h empty circle)
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             square
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             square)))
          (split-h
           square
           (split-v
            (split-h
             empty
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h circle empty))))
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h
           circle
           (split-v (split-h empty square) (split-h square empty)))))
        (split-v
         (split-h
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-h
            (split-v
             square
             (split-v
              (split-h empty square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))))
          (split-v
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-v
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v (split-h empty square) (split-h square empty))))))
           square))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))))
             square)
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v square empty) (split-v empty square)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v (split-h empty circle) (split-h square empty))))
             empty))
           square)
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h circle empty))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square))
               circle)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))))))))))))
  (split-v
   (split-h
    (split-v
     (split-v
      (split-h
       (split-h
        (split-v
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           circle)
          (split-h
           (split-h
            (split-v
             circle
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             square))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle))))))
         (split-v
          (split-h
           (split-v
            (split-h empty square)
            (split-h
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           circle
           (split-h
            (split-v
             (split-v
              (split-h empty square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))))))
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-h (split-v square empty) (split-v empty square))
             (split-v
              (split-h empty circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             circle
             (split-v
              (split-h empty circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v empty square)))
          (split-h
           circle
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             circle
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))))))
         (split-h
          (split-v
           square
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-v empty square))))
       (split-h
        (split-v
         (split-h
          (split-v
           square
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             square)
            (split-h circle empty)))
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             square)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square)))
            (split-h
             circle
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               circle)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))))))
           circle)
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-v
              (split-h empty square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             circle))
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))
               empty)
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square)))))))))
        (split-v
         empty
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h square empty))
           circle)
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h circle empty))
           (split-h (split-v square empty) (split-v empty circle)))))))
      (split-h
       (split-h
        (split-v
         circle
         (split-v
          (split-h
           (split-h
            (split-v circle empty)
            (split-v
             empty
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           square)
          (split-h
           circle
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square)))
            (split-h
             square
             (split-v
              (split-h empty circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle))))
             circle)
            (split-h
             square
             (split-v
              (split-h empty square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           empty)
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               empty
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty circle))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h (split-v square empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v (split-h empty square) (split-h square empty)))
          (split-h
           circle
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             circle))))))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           circle)
          (split-h square empty))
         (split-h
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h circle empty)))
          (split-v
           (split-v
            (split-h empty square)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h (split-v circle empty) (split-v empty circle)))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty))))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           circle))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h square empty))
           (split-v (split-h empty square) (split-h square empty)))
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-v (split-h empty square) (split-h square empty))))))))
     (split-v
      (split-h
       (split-v
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v empty circle))))
         square)
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty)))))
          (split-v
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             circle
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))))))
         (split-v
          (split-h
           (split-v
            (split-h
             empty
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty))))
           circle)
          (split-h
           (split-h
            (split-v square empty)
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h empty square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))))))
       (split-h
        (split-v
         (split-h
          (split-v
           (split-h
            (split-v
             square
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             circle))
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             square)
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty square)))))
          (split-v
           (split-h
            (split-v
             (split-h
              (split-v square empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h square empty))))
         (split-h
          (split-v
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty square)))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               circle
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))))
             square))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square))))
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-v
              (split-h
               (split-v (split-h empty circle) (split-h square empty))
               circle)
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square)))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h circle empty))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               empty))))
           (split-h (split-v circle empty) (split-v empty circle)))))
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty circle))
             square)
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h circle empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))
               empty))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h empty circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             circle))
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty)))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               empty)
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h circle empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square))
             (split-v
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             square)))
          (split-v
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle)))))))
      (split-h
       (split-v
        (split-h
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty))))
           empty))
         (split-h
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           (split-h
            (split-v
             square
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v empty circle)))
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           circle)))
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h empty circle)
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           square))
         (split-h
          (split-v
           square
           (split-v (split-h empty square) (split-h square empty)))
          (split-v empty square))))
       (split-v
        (split-h
         (split-h
          (split-v
           square
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-h
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             circle)
            (split-h
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square))))
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 square))
               square))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             empty))))
         square)
        (split-h
         (split-h
          (split-v
           circle
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty circle))
             square)
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))))
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           (split-v
            (split-h
             empty
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h circle empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               circle)))
            (split-h
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h empty square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-v
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               circle)
              (split-h
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               square)
              (split-h square empty))))
           (split-v
            (split-h
             empty
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h circle empty)))))))))
    (split-v
     (split-h
      (split-v
       (split-v
        (split-h
         (split-v (split-h empty square) (split-h square empty))
         square)
        (split-h
         (split-h (split-v circle empty) (split-v empty circle))
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           circle)
          (split-h square empty))))
       (split-v
        (split-h
         (split-h
          (split-v
           square
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h circle empty)))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             square)
            (split-h
             square
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v circle empty)
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             circle))))
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h square empty)))
        (split-h
         (split-v (split-h empty square) (split-h square empty))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             square))
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-v
             empty
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h circle empty)))))))))
      (split-v
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             circle)
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 square)))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-h
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square)))))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))))))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-h
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               circle)))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 square))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 empty
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-h
               circle
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 empty
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               circle
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))))
            (split-v
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h (split-v square empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-v
                  (split-h empty square)
                  (split-h square empty))))))))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               circle)
              (split-h
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h circle empty))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h circle empty)))
                (split-v
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty circle) (split-h circle empty))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty square))
                 circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             circle)))
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             square
             (split-h (split-v square empty) (split-v empty square))))
           (split-v
            (split-h empty square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty)))))))
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               circle
               (split-h
                (split-v
                 (split-v (split-h empty circle) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h circle empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 empty)
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v empty circle)))))
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))))
            (split-v
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))))))
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-h
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 square)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 square))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h circle empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty circle) (split-h circle empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h circle empty))
               empty)
              (split-v
               empty
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))))
          (split-h
           (split-h
            (split-v
             square
             (split-h
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               circle)))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 empty)
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               square))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))))
               circle)))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 circle)
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))))
             (split-h (split-v circle empty) (split-v empty circle))))))))
       (split-v
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               empty)
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               square))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-h
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h square empty))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-v
              (split-h empty square)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               empty)))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v circle empty)
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               square)))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             square))
           (split-h
            (split-v
             circle
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v
             (split-v
              (split-h empty circle)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h empty circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))))
         (split-h
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h circle empty)))
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-v
            (split-h
             empty
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty)))))))
        (split-h
         (split-h
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           (split-v (split-h empty square) (split-h square empty)))
          (split-v
           (split-h
            (split-v
             square
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               circle)))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty square))))
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               square))
             circle)
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-v
            (split-h
             empty
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-v (split-h empty square) (split-h circle empty))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty))
               circle)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             circle
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v empty square))))))))
     (split-v
      (split-h
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h circle empty))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             empty)
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty square))
             circle))))
         (split-v
          (split-h
           (split-h
            (split-v square empty)
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-h
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h circle empty))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square)))))))
          (split-h
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h empty square)
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))
               circle)
              (split-h
               square
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v circle empty)
                  (split-v empty circle)))))))))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h empty circle)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             circle)
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h circle empty))
             circle)
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             empty))
           (split-h (split-v circle empty) (split-v empty circle))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             circle
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               empty))))
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               circle)))
            (split-v
             empty
             (split-v
              (split-h
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)
              (split-h
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))))))
          (split-h
           circle
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               square
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))
             (split-h
              (split-v
               circle
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-h
             square
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-h
                  (split-v circle empty)
                  (split-v empty circle))))))))))))
       (split-v (split-h empty square) (split-h square empty)))
      (split-h
       (split-h
        (split-v
         circle
         (split-v
          (split-h
           (split-v
            (split-h empty circle)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           square)
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-v empty circle))
           (split-v
            (split-h empty square)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty)))))))
        (split-v
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           square)
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-v (split-h empty square) (split-h square empty))))
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           square)
          (split-h
           square
           (split-h (split-v circle empty) (split-v empty circle))))))
       (split-h
        (split-v
         (split-h
          (split-v
           circle
           (split-v (split-h empty square) (split-h square empty)))
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           square))
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-h
            (split-v circle empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle)))
          (split-h
           (split-h
            (split-v square empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             square))
           (split-h (split-v circle empty) (split-v empty circle)))))
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h circle empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             empty
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-v (split-h empty square) (split-h circle empty)))))
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             circle)
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-v (split-h empty circle) (split-h circle empty))))))))))
   (split-v
    (split-h
     (split-h (split-v square empty) (split-v empty circle))
     (split-v
      (split-h
       (split-h
        (split-v (split-v (split-h empty square) (split-h square empty)) empty)
        (split-v empty square))
       square)
      (split-h
       circle
       (split-h
        (split-v
         square
         (split-v (split-h empty square) (split-h square empty)))
        (split-v
         (split-v (split-h empty square) (split-h square empty))
         square)))))
    (split-h
     (split-h
      (split-v circle (split-v (split-h empty square) (split-h square empty)))
      (split-v empty square))
     (split-v
      (split-h
       (split-v
        (split-h
         (split-h
          (split-v
           circle
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           square))
         (split-h
          (split-v
           (split-v
            (split-h empty square)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h empty circle)
            (split-h
             circle
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-h (split-v circle empty) (split-v empty circle)))))
        (split-h
         (split-h
          (split-v
           circle
           (split-v
            (split-h empty circle)
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-v
            (split-h
             empty
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle))))))
         (split-v
          (split-h
           (split-v (split-h empty square) (split-h square empty))
           circle)
          (split-h
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             circle)
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty))))))))
       (split-v (split-h empty square) (split-h square empty)))
      (split-h
       (split-h (split-v circle empty) (split-v empty circle))
       (split-h
        (split-v
         (split-v (split-h empty square) (split-h square empty))
         (split-h
          (split-v circle empty)
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           circle)))
        (split-v
         (split-h
          (split-v
           square
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-v
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             empty
             (split-v (split-h empty square) (split-h square empty))))
           (split-v (split-h empty circle) (split-h square empty))))
         square))))))))
'(split-h
  (split-v
   (split-h
    (split-v
     circle
     (split-v
      (split-h
       (split-v
        (split-h
         (split-h
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-v (split-h empty square) (split-h square empty)))
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-v (split-h empty square) (split-h square empty))))
         square)
        (split-h
         square
         (split-h
          (split-v square empty)
          (split-v
           empty
           (split-v (split-h empty square) (split-h square empty))))))
       (split-h (split-v circle empty) (split-v empty circle)))
      (split-h
       (split-h
        (split-v
         square
         (split-v (split-h empty square) (split-h square empty)))
        (split-v
         (split-h (split-v circle empty) (split-v empty circle))
         square))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           circle)
          (split-h circle empty))
         (split-v
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           square)
          (split-h
           circle
           (split-h (split-v circle empty) (split-v empty circle)))))
        (split-v
         (split-h
          (split-v square empty)
          (split-v
           (split-h (split-v circle empty) (split-v empty circle))
           (split-v (split-h empty square) (split-h square empty))))
         square)))))
    (split-v
     (split-h
      (split-v
       circle
       (split-v
        (split-h empty circle)
        (split-h
         circle
         (split-h
          (split-v
           square
           (split-h (split-v circle empty) (split-v empty circle)))
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           circle)))))
      (split-v
       (split-h (split-v circle empty) (split-v empty circle))
       (split-v (split-h empty square) (split-h square empty))))
     (split-v
      (split-h
       (split-v
        (split-h
         (split-h (split-v circle empty) (split-v empty circle))
         circle)
        (split-h
         square
         (split-h (split-v circle empty) (split-v empty circle))))
       square)
      (split-h
       square
       (split-h
        (split-v
         circle
         (split-v (split-h empty square) (split-h square empty)))
        (split-v
         empty
         (split-v (split-h empty square) (split-h square empty))))))))
   (split-v
    (split-h
     (split-v
      (split-h
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))))
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty circle))
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle)))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             square
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             empty
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h circle empty))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h
               square
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))))))
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-h
              (split-v square empty)
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty circle) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             empty))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h square empty)))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 circle))
               square)
              (split-h
               circle
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))
            (split-v
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 square)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h circle empty))))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty circle))))))
         (split-h
          (split-v
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             square))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   circle
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty square)))
                  (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   square))
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h square empty))
                   square))
                 square)
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h
                    (split-v circle empty)
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h empty circle)
                    (split-h
                     circle
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))))))
            (split-v
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 circle
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             square))
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h circle empty))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h circle empty))))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   circle
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty square)))
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     circle
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))))
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               square)))
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))))))
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   square)
                  (split-h
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty circle))))))
               empty)
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               square)))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle)
                (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v empty square)))
              (split-h
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-h
                 square
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   circle))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h circle empty))))
                 (split-v
                  (split-h
                   empty
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 empty
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h circle empty)))
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty circle)))
                  (split-h
                   square
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty square)))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h circle empty))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty square)))
                  (split-v
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   empty
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h circle empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               square
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               square)
              (split-h
               circle
               (split-h
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   circle
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 square)))))))
          (split-h
           circle
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               square)
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 empty))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h square empty))))
                 circle)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty circle))))))))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   circle)
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   circle
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle)))))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h square empty)))))
                (split-v
                 empty
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))))
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-h
                   (split-h (split-v square empty) (split-v empty square))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h square empty)))))))
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))
                  (split-v
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     square
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-h
                   square
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))))))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle)))
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     empty
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty square)))
                  (split-v
                   (split-h (split-v square empty) (split-v empty square))
                   circle)))
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty square)))
                  (split-h circle empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v square empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v (split-h empty circle) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v empty square))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty circle)))
                  (split-v
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   square
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v empty circle))
               (split-h
                (split-v square empty)
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 circle)))
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty square)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))))
               circle)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 circle
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v
                    (split-h empty circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty square))
                   square))
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)))))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty square)))
                  (split-v
                   empty
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     square
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-h
                  (split-v
                   circle
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   square)))
                (split-h
                 square
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty))
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty circle) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))
                  (split-h
                   square
                   (split-h
                    (split-v circle empty)
                    (split-v
                     empty
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty)))
                (split-v empty square))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   circle)
                  (split-h
                   square
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle)))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle)))
                (split-v
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 circle)))
              (split-h
               circle
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))))))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle)
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty square))
                   square)
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-h (split-v square empty) (split-v empty square))
                   square)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square))))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))
                  (split-v
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v
                    (split-h empty circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))
                  (split-v empty square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))))
               square)))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty circle))))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   circle
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     square
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v
                    (split-h empty circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty))))))
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 circle
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v (split-h empty circle) (split-h circle empty))))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))))
               (split-h
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h circle empty))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v
                    (split-h empty circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h square empty)))))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h circle empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 empty)))
              (split-h
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h circle empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 square))
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               circle
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h circle empty))
                 circle))))))))))
       (split-v
        (split-h
         (split-h
          (split-v
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               circle)
              (split-h
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             empty
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               circle)
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle)))
            (split-h
             circle
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h empty square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))))
           square))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             square)
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               circle))))
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))))
          (split-v
           (split-h
            (split-v
             square
             (split-v
              (split-h empty circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty)))
            (split-v
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v (split-h empty circle) (split-h square empty))
               circle))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h (split-v circle empty) (split-v empty circle)))))
        (split-h
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             square)
            (split-h square empty))
           (split-h
            (split-v square empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-v (split-h empty square) (split-h square empty)))))
          (split-v
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-v (split-h empty square) (split-h square empty))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))
           (split-v
            (split-h
             empty
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           (split-h (split-v circle empty) (split-v empty circle))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             circle)
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle)))))))))
      (split-h
       (split-h
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square))
               (split-v
                (split-h
                 empty
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 square
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle)))))))))
            (split-v
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty circle) (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h square empty))
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))))
          (split-h
           square
           (split-h
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v (split-h empty circle) (split-h circle empty))
               circle))
             (split-v
              (split-h empty square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               circle))
             square))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               empty)
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h square empty)))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle)))
              (split-h
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))))
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))))))
           (split-h
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h circle empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-v
                  (split-h
                   (split-v
                    (split-h empty circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h square empty)))))))
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)
                (split-h
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h empty circle)
                    (split-h square empty)))))))))
            (split-v
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-v
                    (split-h empty circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v
                    (split-h empty circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))))
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               square))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty square))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))))))))))
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 (split-h (split-v square empty) (split-v empty square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))))
             square)
            (split-h
             (split-h
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty))
               (split-v
                (split-h
                 empty
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 circle)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))))))
           circle)
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 circle)))
              (split-h
               circle
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))))
            (split-v
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))))
              (split-v
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h (split-v circle empty) (split-v empty circle))))
               square))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 square))
               circle)
              (split-h square empty))))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-v
            (split-h empty square)
            (split-h
             circle
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           circle
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-h
               circle
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-h
             square
             (split-h (split-v circle empty) (split-v empty circle))))))))
       (split-h
        (split-v
         (split-h
          (split-v
           square
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             circle
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square))
             square)
            (split-h
             square
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-h
             circle
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty square))))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))
           (split-h
            (split-v
             circle
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 empty
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 empty)))
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle)))))))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 square)))
              (split-h
               circle
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))))))
             (split-h (split-v circle empty) (split-v empty circle)))))
          (split-h
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))))
               circle)
              (split-h
               circle
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 empty
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h circle empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             circle))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v circle empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h (split-v circle empty) (split-v empty circle)))))))
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             circle
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v empty circle))))
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square)))
            (split-v
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-h
           square
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               square
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))))
            (split-v
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             circle))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 square)))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 square)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h circle empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))
               square)))
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 square))
               circle))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 square))
               (split-v
                (split-h
                 empty
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty circle))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-h
               (split-v (split-h empty circle) (split-h square empty))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               empty
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h circle empty))))))
             circle)))
          (split-h
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             circle))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h circle empty))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty))))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               square)))
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               square
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 square
                 (split-v (split-h empty circle) (split-h circle empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               empty
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 empty))))))))))))
     (split-h
      (split-v
       (split-h
        (split-v
         (split-h
          (split-v
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v empty square))
           empty)
          (split-v
           (split-h
            (split-v
             square
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle)))
            (split-v
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-v
              (split-h empty square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))
             circle)
            (split-h
             circle
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))))))
         (split-h
          (split-v
           (split-h
            (split-v
             circle
             (split-v (split-h empty square) (split-h square empty)))
            (split-v empty square))
           (split-h
            (split-v
             square
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square)))
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty)))))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               empty
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             circle
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h square empty))))
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               square))
             square)
            (split-h
             square
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h circle empty))
               circle)))))))
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h square empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty square))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             square)
            (split-h
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               circle))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))))
               square))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h empty circle)
              (split-h
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v (split-h empty square) (split-h square empty)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty))))
           (split-v
            (split-h
             (split-h (split-v square empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             square
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               circle))))))
         square))
       (split-h
        (split-v
         (split-v
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty square))
             (split-v (split-h empty square) (split-h square empty)))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v empty square))))
           (split-h
            (split-v
             (split-h
              (split-v circle empty)
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h circle empty))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty))
               (split-h (split-v circle empty) (split-v empty square)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))))
                 (split-h
                  (split-v
                   square
                   (split-v
                    (split-h empty circle)
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h circle empty))
                   square))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty circle)))
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h square empty))))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v
                    (split-h empty circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v square empty)
                    (split-v
                     empty
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))))
          (split-h
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))
             square)
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h (split-v circle empty) (split-v empty circle))))
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               circle))
             (split-v (split-h empty circle) (split-h square empty))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v square empty) (split-v empty square)))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))
               (split-v (split-h empty square) (split-h square empty))))
             circle)
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))))
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 circle))
               circle)
              (split-h
               square
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   square))
                 square)
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h empty square)
                    (split-h
                     circle
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))))))))
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty circle))
                   square)
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v square empty) (split-v empty square))
                 (split-v
                  (split-h empty square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h empty square)
                    (split-h
                     circle
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)))
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 square
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-v empty square))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 square)))))))
          (split-v
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-v
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 circle)
                (split-h circle empty)))
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h
                (split-v square empty)
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 square))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)
                (split-h square empty))
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               square)))
            (split-v
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   circle)))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square))
                 circle)
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))))
               square)
              (split-h
               square
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty square))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             empty
             (split-h
              (split-v
               square
               (split-v
                (split-h empty square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))))))
        (split-v
         (split-h
          (split-v
           square
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h square empty))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 circle
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))))
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square))
                   square)
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v
                    (split-h empty circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   square)
                  (split-h
                   square
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty square))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h
                    (split-v square empty)
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))
                  (split-h
                   circle
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             (split-h (split-v circle empty) (split-v empty square)))
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))
                  (split-h
                   (split-h
                    (split-v square empty)
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               circle))
             (split-h
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-h
                  (split-v
                   square
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle)))
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))))))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               square)))
            (split-h
             square
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square))))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty circle) (split-h circle empty)))
                (split-v
                 empty
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h
                    (split-v circle empty)
                    (split-v empty circle))))))))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h circle empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty circle))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               circle)
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 empty)
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 square)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))
               (split-v
                (split-h empty circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             circle)))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h circle empty))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h circle empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))))))
            (split-h
             (split-v (split-h empty square) (split-h square empty))
             (split-h
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-h
                (split-v square empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v (split-h empty square) (split-h square empty))))))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               empty)
              (split-v empty circle))
             (split-h (split-v square empty) (split-v empty square)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty)))))))))
      (split-v
       (split-h
        (split-v
         (split-h
          (split-v
           (split-v (split-h empty square) (split-h square empty))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h circle empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square)))
            (split-h
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle)))))))
          (split-v
           (split-h
            (split-v
             circle
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               square
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               empty
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square))
               (split-h
                (split-v
                 square
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square)))
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-v (split-h empty square) (split-h square empty))))))
         (split-h
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty square))))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty square))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   circle))
                 circle)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))))))
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     square
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 circle)))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h circle empty))))
               square)))
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))))
               circle)
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h circle empty))
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))))))
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v
                    (split-h empty circle)
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle)
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     empty
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty)))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))))
               square)))
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h circle empty))
                 circle)
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h square empty))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   square)))
                (split-h
                 square
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))
                  (split-v
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   square))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v square empty) (split-v empty circle))))
                 circle)
                (split-h
                 square
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square)))))))))
          (split-v
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)
                  (split-v
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   circle))
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)
                  (split-v
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-v
                    (split-h empty circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))
                  (split-h
                   square
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle)
                  (split-h
                   circle
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))))
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))))))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v square empty) (split-v empty square)))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-v
                    (split-h empty square)
                    (split-h square empty)))))))))
            (split-h
             (split-h
              (split-v square empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))))))
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h square empty))
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)))
                  (split-h
                   square
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h circle empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)
                  (split-v
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h square empty))))
                 square)))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h circle empty))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h
                    (split-v square empty)
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   circle))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v
                    (split-h empty circle)
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h empty circle)
                    (split-h
                     square
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))))))
             (split-h
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h square empty)))))
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   square
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))
                (split-v
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     empty
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty)))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 square))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle)))))))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v empty circle))
                   square)
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   empty)))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     square
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle)))))))
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))))
               circle)))))))
        (split-v
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 circle)))
              (split-v
               (split-h
                (split-v circle empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             circle)
            (split-h
             circle
             (split-v
              (split-h
               empty
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h circle empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     circle
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)
              (split-h
               square
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)
                (split-v
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   circle))
                 circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   circle)
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h circle empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-h
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   square)
                  (split-h
                   circle
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 square)
                (split-h
                 square
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h empty circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty circle))
                   circle)))))))
            (split-v
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)))
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-v
                    (split-h empty circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty)))))))
                (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h empty square)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)))
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h empty circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-h
                    (split-v square empty)
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)))
                (split-h
                 circle
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h square empty))
                   (split-v
                    (split-h empty square)
                    (split-h
                     square
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))))))
             (split-v (split-h empty square) (split-h square empty)))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v circle empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 circle)
                (split-h
                 circle
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square)))))
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty)))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h circle empty))))
               (split-v
                (split-h empty square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty circle) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty square))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v
                      (split-h empty square)
                      (split-h square empty))))))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h empty square)
                    (split-h square empty))))))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               empty)))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               circle)
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   square
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty square)))
                (split-v
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               empty))
             (split-v (split-h empty square) (split-h square empty))))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v (split-h empty square) (split-h square empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-v
                 (split-h
                  (split-v circle empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty square))
                 circle))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)))
                  (split-v empty square))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     empty
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     circle
                     (split-h (split-v circle empty) (split-v empty circle))))
                   square)
                  (split-h
                   (split-h
                    (split-v
                     circle
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square))
                   empty)))))
              (split-v
               (split-h
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle))))
                   circle)
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty circle))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     square
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-h
                  (split-v
                   circle
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h square empty)))
                  (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v square empty) (split-v empty square)))))))
            (split-v
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle))))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 square
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h circle empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty circle) (split-h circle empty))))))
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               square)
              (split-h square empty))))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 square)
                (split-h
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   square))
                 (split-v
                  (split-h empty square)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 circle)
                (split-h
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle))))
                 empty))))
             (split-h
              (split-v
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))))
                  (split-v
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle))
                   square)))
                (split-h
                 (split-h
                  (split-v
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   empty)
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-v
                    (split-h empty circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle)))
                  (split-v
                   (split-h
                    (split-v square empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)))
                  (split-v
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty))
                   square))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     square
                     (split-v (split-h empty square) (split-h square empty))))
                   circle)
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     square)
                    (split-h
                     circle
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-h
                  (split-v
                   square
                   (split-v
                    (split-h empty square)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))
                  (split-v
                   (split-h
                    (split-v circle empty)
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     circle)))
                  (split-h
                   square
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty square)))
                  (split-h
                   square
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-v
                  (split-h empty circle)
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v empty circle))
                   (split-v (split-h empty square) (split-h square empty)))))))
              (split-v
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-h square empty))
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty square))
                 circle)
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-h
                    (split-v
                     square
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-h
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   empty)
                  (split-v
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     (split-v (split-h empty square) (split-h square empty))))
                   circle))))))
             (split-h
              (split-v
               circle
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     square))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))
                 (split-v
                  (split-h
                   (split-v
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)
                    (split-h
                     circle
                     (split-v (split-h empty square) (split-h square empty))))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     (split-v (split-h empty square) (split-h square empty)))
                    (split-v
                     empty
                     (split-v (split-h empty square) (split-h square empty)))))
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h
                    (split-v
                     square
                     (split-h (split-v circle empty) (split-v empty circle)))
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     square)))))))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty square))
                   (split-h
                    (split-v
                     (split-v (split-h empty square) (split-h square empty))
                     empty)
                    (split-v
                     (split-h (split-v circle empty) (split-v empty circle))
                     circle)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     square
                     (split-h
                      (split-v circle empty)
                      (split-v empty circle))))))
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))))
               (split-h
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle))))
                 square))))))
           (split-h
            (split-v
             (split-h
              (split-v square empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               square
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   empty
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-h
                (split-v
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty))
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v empty circle)))
                (split-h square empty))))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty square)))
                (split-v
                 empty
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 circle
                 (split-h
                  (split-v
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v
                  (split-h empty square)
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   empty)))))))))
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h square empty))
               square)))
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty circle) (split-h circle empty))
               empty)
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-v
              (split-h
               empty
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               circle
               (split-v (split-h empty square) (split-h square empty))))))
           (split-h
            (split-v
             square
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               square)
              (split-h
               square
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))))
            (split-v
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle))))
                 (split-v
                  (split-h
                   empty
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v
                  (split-h
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-h
                   square
                   (split-v (split-h empty square) (split-h square empty))))
                 square))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-h
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v empty circle))
                 empty)
                (split-v
                 (split-h
                  (split-v
                   (split-h (split-v circle empty) (split-v empty circle))
                   (split-v
                    (split-h
                     (split-v (split-h empty square) (split-h square empty))
                     circle)
                    (split-h
                     (split-h (split-v circle empty) (split-v empty circle))
                     empty)))
                  (split-v
                   (split-v (split-h empty circle) (split-h circle empty))
                   circle))
                 (split-h
                  (split-v
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   square))))
               (split-h
                (split-v
                 square
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   circle)
                  (split-h
                   circle
                   (split-h (split-v circle empty) (split-v empty circle)))))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             square))))))
       (split-h
        (split-v
         (split-h
          (split-v
           (split-v
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h square empty))
           (split-v
            (split-h empty square)
            (split-h
             circle
             (split-v (split-h empty square) (split-h square empty)))))
          (split-v
           (split-h
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             empty)
            (split-v
             (split-v (split-h empty square) (split-h square empty))
             square))
           (split-h (split-v circle empty) (split-v empty circle))))
         (split-v
          (split-h
           (split-v
            (split-h
             (split-h
              (split-v
               square
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h (split-v circle empty) (split-v empty circle))))
             square)
            (split-h
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               empty
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 square
                 (split-v (split-h empty square) (split-h square empty))))
               circle))))
           (split-v
            (split-h
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               circle)
              (split-h
               circle
               (split-h (split-v circle empty) (split-v empty circle))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               square)))
            (split-h
             (split-h
              (split-v
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               empty)
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               square))
             (split-v
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty square)))
              (split-h
               circle
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v circle empty)
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h circle empty))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               square))
             circle))
           (split-h
            (split-v
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               square)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty))))
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v
                (split-h empty circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h
                  (split-v
                   circle
                   (split-v (split-h empty square) (split-h square empty)))
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 square
                 (split-v
                  (split-h empty circle)
                  (split-h
                   circle
                   (split-v (split-h empty square) (split-h square empty))))))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               square
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty circle))))
             (split-v
              (split-h
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-v (split-h empty square) (split-h square empty)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v empty square)))))))))
        (split-v
         (split-h
          (split-v
           (split-h
            (split-v
             circle
             (split-v
              (split-h empty square)
              (split-h
               square
               (split-v (split-h empty square) (split-h square empty)))))
            (split-v
             empty
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               square)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle))))))
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))
               square))
             (split-v
              (split-h empty circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h (split-v circle empty) (split-v empty circle)))))
            (split-h
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty circle))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v empty square))))
             (split-h
              (split-v
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 square)
                (split-h circle empty))
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-h (split-v circle empty) (split-v empty circle)))))
              (split-v
               (split-v
                (split-h
                 (split-v
                  (split-h
                   (split-h (split-v circle empty) (split-v empty circle))
                   square)
                  (split-h square empty))
                 square)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h
                  (split-v square empty)
                  (split-v
                   (split-v (split-h empty square) (split-h square empty))
                   (split-v (split-h empty square) (split-h square empty))))))
               square)))))
          (split-v
           (split-v
            (split-h
             (split-h
              (split-v
               circle
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               square
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-h (split-v circle empty) (split-v empty circle))
               (split-v (split-h empty square) (split-h square empty)))))
            (split-h
             circle
             (split-v (split-h empty square) (split-h square empty))))
           (split-v
            (split-h
             (split-h
              (split-v circle empty)
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-v (split-h empty square) (split-h square empty))))
             (split-h (split-v circle empty) (split-v empty circle)))
            (split-h
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v (split-h empty square) (split-h square empty))))))
         (split-v
          (split-h
           (split-h
            (split-v
             (split-h (split-v circle empty) (split-v empty circle))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v circle empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 empty)
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty)))))))
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               square)
              (split-h
               square
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v empty square))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle)))
              (split-h
               (split-h
                (split-v square empty)
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))))))
           (split-v
            (split-h
             (split-v
              (split-h empty square)
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-h
              (split-v
               (split-v (split-h empty square) (split-h square empty))
               (split-h (split-v circle empty) (split-v empty circle)))
              (split-v
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 empty
                 (split-v (split-h empty square) (split-h square empty))))
               square)))
            (split-h
             (split-h
              (split-v
               circle
               (split-v (split-h empty square) (split-h square empty)))
              (split-v
               (split-v
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)
                (split-h
                 circle
                 (split-v (split-h empty square) (split-h square empty))))
               square))
             (split-v
              (split-h
               (split-v (split-h empty square) (split-h square empty))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square)))
              (split-h
               circle
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))))))
          (split-h
           (split-h
            (split-v
             (split-v
              (split-h
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 empty))
               circle)
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty))))))
             (split-v
              (split-h
               (split-h
                (split-v circle empty)
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 circle))
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 circle))
               empty)))
            (split-v
             (split-h
              (split-v
               square
               (split-h
                (split-v
                 circle
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 square)))
              (split-v
               (split-v
                (split-h empty square)
                (split-h
                 circle
                 (split-h (split-v circle empty) (split-v empty circle))))
               (split-v
                (split-h
                 (split-v (split-h empty square) (split-h square empty))
                 circle)
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             (split-v
              (split-h
               (split-h (split-v circle empty) (split-v empty circle))
               (split-h
                (split-v
                 square
                 (split-v (split-h empty square) (split-h square empty)))
                (split-v
                 (split-v (split-h empty square) (split-h square empty))
                 (split-v (split-h empty square) (split-h square empty)))))
              (split-h circle empty))))
           (split-v
            (split-h
             (split-v
              (split-h empty square)
              (split-h
               (split-h
                (split-v
                 circle
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-v
                 (split-h (split-v circle empty) (split-v empty circle))
                 square))
               (split-v
                (split-h
                 empty
                 (split-h (split-v circle empty) (split-v empty circle)))
                (split-h
                 (split-h (split-v circle empty) (split-v empty circle))
                 (split-h (split-v circle empty) (split-v empty circle))))))
             circle)
            (split-h
             (split-h
              (split-v
               (split-v (split-h