packages feed

leancheck-instances 0.0.1 → 0.0.2

raw patch · 30 files changed

+3952/−24 lines, 30 filesdep +arraydep +containersdep +timedep ~leancheckPVP ok

version bump matches the API change (PVP)

Dependencies added: array, containers, time

Dependency ranges changed: leancheck

API changes (from Hackage documentation)

+ Test.LeanCheck.Instances.Array: instance (GHC.Num.Num i, GHC.Arr.Ix i, Test.LeanCheck.Core.Listable i, Test.LeanCheck.Core.Listable a) => Test.LeanCheck.Core.Listable (GHC.Arr.Array i a)
+ Test.LeanCheck.Instances.Containers: instance (GHC.Classes.Ord a, GHC.Classes.Ord b, Test.LeanCheck.Core.Listable a, Test.LeanCheck.Core.Listable b) => Test.LeanCheck.Core.Listable (Data.Map.Internal.Map a b)
+ Test.LeanCheck.Instances.Containers: instance (GHC.Classes.Ord a, Test.LeanCheck.Core.Listable a) => Test.LeanCheck.Core.Listable (Data.IntMap.Internal.IntMap a)
+ Test.LeanCheck.Instances.Containers: instance (GHC.Classes.Ord a, Test.LeanCheck.Core.Listable a) => Test.LeanCheck.Core.Listable (Data.Sequence.Internal.Seq a)
+ Test.LeanCheck.Instances.Containers: instance (GHC.Classes.Ord a, Test.LeanCheck.Core.Listable a) => Test.LeanCheck.Core.Listable (Data.Set.Internal.Set a)
+ Test.LeanCheck.Instances.Containers: instance Test.LeanCheck.Core.Listable Data.IntSet.Internal.IntSet
+ Test.LeanCheck.Instances.Text: instance Test.LeanCheck.Core.Listable Data.Text.Internal.Lazy.Text
+ Test.LeanCheck.Instances.Time: instance Test.LeanCheck.Core.Listable Data.Time.Calendar.Days.Day
+ Test.LeanCheck.Instances.Time: instance Test.LeanCheck.Core.Listable Data.Time.Clock.Internal.DiffTime.DiffTime
+ Test.LeanCheck.Instances.Time: instance Test.LeanCheck.Core.Listable Data.Time.Clock.Internal.UTCTime.UTCTime

Files

.travis.yml view
@@ -61,7 +61,7 @@     env:                   GHCVER=8.0.2        CABALVER=1.24     addons: {apt: {packages: [ghc-8.0.2,  cabal-install-1.24], sources: hvr-ghc}}   - ghc: '7.10'-    env:                   GHCVER=7.10.3       CABALVER=1.22   STACKR=--resolver=lts-11.11+    env:                   GHCVER=7.10.3       CABALVER=1.22   STACK_YAML=stack-lts-11.yaml     addons: {apt: {packages: [ghc-7.10.3, cabal-install-1.22], sources: hvr-ghc}}   # we only support stack with GHC >= 7.10   - ghc: '7.8'
LICENSE view
@@ -1,4 +1,4 @@-Copyright (c) 2018, Rudy Matela+Copyright (c) 2018-2019, Rudy Matela  All rights reserved. 
Makefile view
@@ -12,7 +12,8 @@ GHCIMPORTDIRS = src:test # -dynamic is needed only for src/Test/LeanCheck/Derive.hs and test/derive.hs GHCFLAGS = -O2 $(shell grep -q "Arch Linux" /etc/lsb-release && echo -dynamic)-HADDOCKFLAGS = --no-print-missing-docs+HADDOCKFLAGS = --no-print-missing-docs \+  $(shell grep -q "Arch Linux" /etc/lsb-release && echo --optghc=-dynamic)  all: mk/toplibs @@ -92,8 +93,28 @@ 	./bench/tiers "Natural"          | diff -rud test/diff/tiers-Natural.out     - 	./bench/tiers "Text"             | diff -rud test/diff/tiers-Text.out        - 	./bench/tiers "ByteString" 6     | diff -rud test/diff/tiers-ByteString.out  -+	./bench/tiers "Set Int"          | diff -rud test/diff/tiers-SetInt.out      -+	./bench/tiers "Set Bool"         | diff -rud test/diff/tiers-SetBool.out     -+	./bench/tiers "Map Int Int"      | diff -rud test/diff/tiers-MapIntInt.out   -+	./bench/tiers "Map Bool Bool"    | diff -rud test/diff/tiers-MapBoolBool.out -+	./bench/tiers "Seq Int"          | diff -rud test/diff/tiers-SeqInt.out      -+	./bench/tiers "Seq Bool"         | diff -rud test/diff/tiers-SeqBool.out     -+	./bench/tiers "IntMap Int"       | diff -rud test/diff/tiers-IntMapInt.out   -+	./bench/tiers "IntSet"           | diff -rud test/diff/tiers-IntSet.out      -+	./bench/tiers "UTCTime"          | diff -rud test/diff/tiers-UTCTime.out     -+	./bench/tiers "Array Int Int"    | diff -rud test/diff/tiers-ArrayIntInt.out -  update-diff-test-tiers: bench/tiers 	./bench/tiers "Natural"          > test/diff/tiers-Natural.out 	./bench/tiers "Text"             > test/diff/tiers-Text.out 	./bench/tiers "ByteString" 6     > test/diff/tiers-ByteString.out+	./bench/tiers "Set Int"          > test/diff/tiers-SetInt.out+	./bench/tiers "Set Bool"         > test/diff/tiers-SetBool.out+	./bench/tiers "Map Int Int"      > test/diff/tiers-MapIntInt.out+	./bench/tiers "Map Bool Bool"    > test/diff/tiers-MapBoolBool.out+	./bench/tiers "Seq Int"          > test/diff/tiers-SeqInt.out+	./bench/tiers "Seq Bool"         > test/diff/tiers-SeqBool.out+	./bench/tiers "IntMap Int"       > test/diff/tiers-IntMapInt.out+	./bench/tiers "IntSet"           > test/diff/tiers-IntSet.out+	./bench/tiers "UTCTime"          > test/diff/tiers-UTCTime.out+	./bench/tiers "Array Int Int"    > test/diff/tiers-ArrayIntInt.out
README.md view
@@ -25,9 +25,45 @@ Examples -------- -TBA+Importing the library: +	> import Test.LeanCheck+	> import Test.LeanCheck.Instances +Checking properties of `Text`:++	> import qualified Data.Text as T+	> check $ \t -> T.reverse (T.reverse t) == t+	+++ OK, passed 200 tests.+	> check $ \t -> T.reverse t == t+	*** Failed! Falsifiable (after 6 tests):+	"a "++Enumerating maps:++	> import Data.Map+	> list :: [Map Bool Bool]+	[ fromList []+	, fromList [(False,False)]+	, fromList [(False,True)]+	, fromList [(True,False)]+	, fromList [(True,True)]+	, fromList [(False,False),(True,False)]+	, fromList [(False,False),(True,True)]+	, fromList [(False,True),(True,False)]+	, fromList [(False,True),(True,True)]+	]+	> take 7 $ list :: [Map Int Int]+	[ fromList []+	, fromList [(0,0)]+	, fromList [(0,1)]+	, fromList [(1,0)]+	, fromList [(0,-1)]+	, fromList [(1,1)]+	, fromList [(0,0),(1,0)]+	]++ Further reading / see also -------------------------- @@ -62,8 +98,8 @@ [build-log]:    https://travis-ci.org/rudymatela/leancheck-instances [hackage-version]: https://img.shields.io/hackage/v/leancheck-instances.svg [leancheck-instances-on-hackage]:          https://hackage.haskell.org/package/leancheck-instances-[stackage-lts-badge]:                      http://stackage.org/package/leancheck-instances/badge/lts-[stackage-nightly-badge]:                  http://stackage.org/package/leancheck-instances/badge/nightly-[leancheck-instances-on-stackage]:         http://stackage.org/package/leancheck-instances-[leancheck-instances-on-stackage-lts]:     http://stackage.org/lts/package/leancheck-instances-[leancheck-instances-on-stackage-nightly]: http://stackage.org/nightly/package/leancheck-instances+[stackage-lts-badge]:                      https://stackage.org/package/leancheck-instances/badge/lts+[stackage-nightly-badge]:                  https://stackage.org/package/leancheck-instances/badge/nightly+[leancheck-instances-on-stackage]:         https://stackage.org/package/leancheck-instances+[leancheck-instances-on-stackage-lts]:     https://stackage.org/lts/package/leancheck-instances+[leancheck-instances-on-stackage-nightly]: https://stackage.org/nightly/package/leancheck-instances
TODO.md view
@@ -8,6 +8,6 @@  2. add support for all types supported by quickcheck-instances (& release); -* add `WithInstances` module;+* check why the Array instance produces repetitions  * support more types?
bench/tiers.hs view
@@ -10,8 +10,15 @@ import System.Environment import qualified Data.ByteString as BS import Data.List (intercalate, nub)+import Data.Array import Data.Ratio ((%))+import Data.Set (Set)+import Data.Map (Map)+import Data.Sequence (Seq)+import Data.IntMap (IntMap)+import Data.IntSet (IntSet) import Data.Text (Text)+import Data.Time import Numeric.Natural  dropEmptyTiersTail :: [[a]] -> [[a]]@@ -90,9 +97,21 @@     "Rational"         -> put t n (u :: Rational             )     "[()]"             -> put t n (u :: [()]                 )     "[Int]"            -> put t n (u :: [Int]                )+    "Array Int Int"    -> put t n (u :: Array Int Int        )     -- other     "Text"             -> put t n (u :: Text                 )     "Natural"          -> put t n (u :: Natural              )     "ByteString"       -> put t n (u :: BS.ByteString        )+    -- containers+    "Set Int"          -> put t n (u :: Set Int              )+    "Set Bool"         -> put t n (u :: Set Bool             )+    "Map Int Int"      -> put t n (u :: Map Int Int          )+    "Map Bool Bool"    -> put t n (u :: Map Bool Bool        )+    "Seq Int"          -> put t n (u :: Seq Int              )+    "Seq Bool"         -> put t n (u :: Seq Bool             )+    "IntMap Int"       -> put t n (u :: IntMap Int           )+    "IntSet"           -> put t n (u :: IntSet               )+    -- time+    "UTCTime"          -> put t n (u :: UTCTime              )     -- unhandled     _                  -> putStrLn $ "unknown/unhandled type `" ++ t ++ "'"
changelog.md view
@@ -1,6 +1,17 @@ Changelog for leancheck-instances ================================= +v0.0.2+------++* Listable Set instance;+* Listable Map instance;+* Listable IntSet instance;+* Listable IntMap instance;+* Some Data.Time instances;+* Listable Array instance.++ v0.0.1 ------ 
leancheck-instances.cabal view
@@ -1,6 +1,6 @@ -- Cabal file for leancheck-instances name:                leancheck-instances-version:             0.0.1+version:             0.0.2 synopsis:            Common LeanCheck instances description:   Listable instances for types provided by the Haskell Platform.@@ -32,6 +32,7 @@                   , mk/haddock-i                   , mk/haskell.mk                   , stack.yaml+                  , stack-lts-11.yaml                   , test/diff/*.out                   , test/diff/eg/*.out                   , test/sdist@@ -46,19 +47,26 @@ source-repository this   type:            git   location:        https://github.com/rudymatela/leancheck-instances-  tag:             v0.0.1+  tag:             v0.0.2  library   exposed-modules: Test.LeanCheck.Instances+                 , Test.LeanCheck.Instances.Array                  , Test.LeanCheck.Instances.Text+                 , Test.LeanCheck.Instances.Time                  , Test.LeanCheck.Instances.Natural                  , Test.LeanCheck.Instances.ByteString+                 , Test.LeanCheck.Instances.Containers+                 , Test.LeanCheck.WithInstances   hs-source-dirs: src   build-depends: base >= 4 && < 5-               , leancheck+               , leancheck >= 0.7.7                , bytestring+               , containers                , nats                , text+               , time+               , array   default-language: Haskell2010  test-suite main@@ -69,6 +77,7 @@                      , leancheck                      , leancheck-instances                      , bytestring+                     , containers                      , nats                      , text   default-language:    Haskell2010
mk/depend.mk view
@@ -2,54 +2,91 @@   bench/tiers.hs \   mk/toplibs bench/tiers.o: \+  src/Test/LeanCheck/Instances/Time.hs \   src/Test/LeanCheck/Instances/Text.hs \   src/Test/LeanCheck/Instances.hs \   src/Test/LeanCheck/Instances/Natural.hs \+  src/Test/LeanCheck/Instances/Containers.hs \+  src/Test/LeanCheck/Instances/ByteString.hs \   bench/tiers.hs eg/test-text: \   eg/test-text.hs \   mk/toplibs eg/test-text.o: \+  src/Test/LeanCheck/Instances/Time.hs \   src/Test/LeanCheck/Instances/Text.hs \   src/Test/LeanCheck/Instances.hs \   src/Test/LeanCheck/Instances/Natural.hs \+  src/Test/LeanCheck/Instances/Containers.hs \+  src/Test/LeanCheck/Instances/ByteString.hs \   eg/test-text.hs mk/All.o: \+  src/Test/LeanCheck/Instances/Time.hs \   src/Test/LeanCheck/Instances/Text.hs \   src/Test/LeanCheck/Instances.hs \   src/Test/LeanCheck/Instances/Natural.hs \+  src/Test/LeanCheck/Instances/Containers.hs \+  src/Test/LeanCheck/Instances/ByteString.hs \   mk/All.hs mk/Toplibs.o: \+  src/Test/LeanCheck/Instances/Time.hs \   src/Test/LeanCheck/Instances/Text.hs \   src/Test/LeanCheck/Instances.hs \   src/Test/LeanCheck/Instances/Natural.hs \+  src/Test/LeanCheck/Instances/Containers.hs \+  src/Test/LeanCheck/Instances/ByteString.hs \   mk/Toplibs.hs Setup.o: \   Setup.hs Setup: \   Setup.hs \   mk/toplibs+src/Test/LeanCheck/Instances/ByteString.o: \+  src/Test/LeanCheck/Instances/ByteString.hs+src/Test/LeanCheck/Instances/Containers.o: \+  src/Test/LeanCheck/Instances/Containers.hs+src/Test/LeanCheck/Instances: \+  mk/toplibs src/Test/LeanCheck/Instances/Natural.o: \   src/Test/LeanCheck/Instances/Natural.hs src/Test/LeanCheck/Instances.o: \+  src/Test/LeanCheck/Instances/Time.hs \   src/Test/LeanCheck/Instances/Text.hs \   src/Test/LeanCheck/Instances.hs \-  src/Test/LeanCheck/Instances/Natural.hs+  src/Test/LeanCheck/Instances/Natural.hs \+  src/Test/LeanCheck/Instances/Containers.hs \+  src/Test/LeanCheck/Instances/ByteString.hs src/Test/LeanCheck/Instances/Text.o: \   src/Test/LeanCheck/Instances/Text.hs+src/Test/LeanCheck/Instances/Time.o: \+  src/Test/LeanCheck/Instances/Time.hs+src/Test/LeanCheck/WithInstances.o: \+  src/Test/LeanCheck/WithInstances.hs \+  src/Test/LeanCheck/Instances/Time.hs \+  src/Test/LeanCheck/Instances/Text.hs \+  src/Test/LeanCheck/Instances.hs \+  src/Test/LeanCheck/Instances/Natural.hs \+  src/Test/LeanCheck/Instances/Containers.hs \+  src/Test/LeanCheck/Instances/ByteString.hs test/main.o: \   test/main.hs \+  src/Test/LeanCheck/Instances/Time.hs \   src/Test/LeanCheck/Instances/Text.hs \   src/Test/LeanCheck/Instances.hs \-  src/Test/LeanCheck/Instances/Natural.hs+  src/Test/LeanCheck/Instances/Natural.hs \+  src/Test/LeanCheck/Instances/Containers.hs \+  src/Test/LeanCheck/Instances/ByteString.hs test/main: \   test/main.hs \   mk/toplibs test/text.o: \   test/text.hs \+  src/Test/LeanCheck/Instances/Time.hs \   src/Test/LeanCheck/Instances/Text.hs \   src/Test/LeanCheck/Instances.hs \-  src/Test/LeanCheck/Instances/Natural.hs+  src/Test/LeanCheck/Instances/Natural.hs \+  src/Test/LeanCheck/Instances/Containers.hs \+  src/Test/LeanCheck/Instances/ByteString.hs test/text: \   test/text.hs \   mk/toplibs
src/Test/LeanCheck/Instances.hs view
@@ -1,5 +1,39 @@+-- |+-- Module      : Test.LeanCheck.Instances+-- Copyright   : (c) 2018 Rudy Matela+-- License     : 3-Clause BSD  (see the file LICENSE)+-- Maintainer  : Rudy Matela <rudy@matela.com.br>+--+-- This module provides "Test.LeanCheck" 'Listable' instances for types+-- provided by the Haskell Platform.  More specifically, for types of the+-- following packages:+--+-- * <https://hackage.haskell.org/package/bytestring bytestring>+-- * <https://hackage.haskell.org/package/containers containers>+-- * <https://hackage.haskell.org/package/nats       nats>+-- * <https://hackage.haskell.org/package/text       text>+-- * <https://hackage.haskell.org/package/time       time>+--+-- These instances are not defined in the+-- <https://hackage.haskell.org/package/leancheck main leancheck package>+-- to not introduce needless dependencies to LeanCheck.+--+-- These instances are defined in the following submodules:+--+-- * "Test.LeanCheck.Instances.Text"+-- * "Test.LeanCheck.Instances.Natural"+-- * "Test.LeanCheck.Instances.ByteString"+-- * "Test.LeanCheck.Instances.Containers"+-- * "Test.LeanCheck.Instances.Time"+--+-- Check the Haddock documentation of each module listed above for the full+-- list of supported types. module Test.LeanCheck.Instances () where -import Test.LeanCheck.Instances.Text-import Test.LeanCheck.Instances.Natural-import Test.LeanCheck.Instances.ByteString+import Test.LeanCheck (Listable) -- for Haddock+import Test.LeanCheck.Instances.Text ()+import Test.LeanCheck.Instances.Natural ()+import Test.LeanCheck.Instances.Array ()+import Test.LeanCheck.Instances.ByteString ()+import Test.LeanCheck.Instances.Containers ()+import Test.LeanCheck.Instances.Time ()
+ src/Test/LeanCheck/Instances/Array.hs view
@@ -0,0 +1,18 @@+-- |+-- Module      : Test.LeanCheck.Instances.Array+-- Copyright   : (c) 2019 Rudy Matela+-- License     : 3-Clause BSD  (see the file LICENSE)+-- Maintainer  : Rudy Matela <rudy@matela.com.br>+--+-- Declares 'Listable' 'Array'+--+-- This 'Listable' instance imposes a 'Num' restriction on the index.+module Test.LeanCheck.Instances.Array () where++import Test.LeanCheck+import Data.Array++instance (Num i, Ix i, Listable i, Listable a) => Listable (Array i a) where+  tiers = cons2 mkArray+    where+    mkArray l xs = listArray (l, l + fromIntegral (length xs - 1)) xs
src/Test/LeanCheck/Instances/ByteString.hs view
@@ -1,3 +1,10 @@+-- |+-- Module      : Test.LeanCheck.Instances.ByteString+-- Copyright   : (c) 2018 Rudy Matela+-- License     : 3-Clause BSD  (see the file LICENSE)+-- Maintainer  : Rudy Matela <rudy@matela.com.br>+--+-- Instances of 'Listable' for 'ByteString'. module Test.LeanCheck.Instances.ByteString () where  import Test.LeanCheck
+ src/Test/LeanCheck/Instances/Containers.hs view
@@ -0,0 +1,40 @@+-- |+-- Module      : Test.LeanCheck.Instances.Containers+-- Copyright   : (c) 2018 Rudy Matela+-- License     : 3-Clause BSD  (see the file LICENSE)+-- Maintainer  : Rudy Matela <rudy@matela.com.br>+--+-- 'Listable' containers.+module Test.LeanCheck.Instances.Containers () where++import Test.LeanCheck++import Data.Set (Set)+import qualified Data.Set as Set++import Data.Map (Map)+import qualified Data.Map as Map++import Data.Sequence (Seq)+import qualified Data.Sequence as Seq++import Data.IntMap (IntMap)+import qualified Data.IntMap as IntMap++import Data.IntSet (IntSet)+import qualified Data.IntSet as IntSet++instance (Ord a, Listable a) => Listable (Set a) where+  tiers = setCons Set.fromList++instance (Ord a, Ord b, Listable a, Listable b) => Listable (Map a b) where+  tiers = mapCons Map.fromList++instance (Ord a, Listable a) => Listable (Seq a) where+  tiers = setCons Seq.fromList++instance (Ord a, Listable a) => Listable (IntMap a) where+  tiers = mapCons IntMap.fromList++instance Listable IntSet where+  tiers = setCons IntSet.fromList
src/Test/LeanCheck/Instances/Natural.hs view
@@ -1,3 +1,10 @@+-- |+-- Module      : Test.LeanCheck.Instances.Natural+-- Copyright   : (c) 2018 Rudy Matela+-- License     : 3-Clause BSD  (see the file LICENSE)+-- Maintainer  : Rudy Matela <rudy@matela.com.br>+--+-- Declares a 'Listable' 'Natural' instance. module Test.LeanCheck.Instances.Natural () where  import Numeric.Natural
src/Test/LeanCheck/Instances/Text.hs view
@@ -1,7 +1,18 @@+-- |+-- Module      : Test.LeanCheck.Instances.Text+-- Copyright   : (c) 2018 Rudy Matela+-- License     : 3-Clause BSD  (see the file LICENSE)+-- Maintainer  : Rudy Matela <rudy@matela.com.br>+--+-- Declares 'Listable' 'Text' instances. module Test.LeanCheck.Instances.Text () where  import Data.Text+import qualified Data.Text.Lazy as Lazy import Test.LeanCheck  instance Listable Text where   tiers = cons1 pack++instance Listable Lazy.Text where+  tiers = cons1 Lazy.pack
+ src/Test/LeanCheck/Instances/Time.hs view
@@ -0,0 +1,55 @@+-- |+-- Module      : Test.LeanCheck.Instances.Time+-- Copyright   : (c) 2019 Rudy Matela+-- License     : 3-Clause BSD  (see the file LICENSE)+-- Maintainer  : Rudy Matela <rudy@matela.com.br>+--+-- Declares 'Listable' time datatype instances.+--+-- Admitedly, these 'Listable' enumerations are defined somewhat arbitrarily...+module Test.LeanCheck.Instances.Time () where++import Data.Time+import Test.LeanCheck++-- This could be made more efficient.+-- Nevertheless, it is probably efficient enough for millions of tests.+binarySearchIndexes :: (Num a, Integral a) => a -> a -> [a]+binarySearchIndexes min max+  | min > max   = []+  | max == min  = [max]+  | otherwise   =  let mid = (max - min) `div` 2 + min in+                   mid : (binarySearchIndexes (mid + 1) max +| binarySearchIndexes min (mid - 1))++binarySearchIndexesThen :: (Num a, Integral a) => a -> a -> [a]+binarySearchIndexesThen min max  =  binarySearchIndexes min max ++ ([(min-1),(min-2)..] +| [(max+1)..])++secondsInADay :: Num a => a+secondsInADay  =  24*60*60-1++-- | This listable enumeration starts with January 2019 then switches back and+--   forth between past and future.+--+-- > list :: [Day] =+-- >   [ 2019-01-01+-- >   , 2099-01-24+-- >   , 1938-12-09+-- >   , 2139-02-05+-- >   , 1978-12-20+-- >   , 2059-01-12+-- >   , 1898-11-27+-- >   , 2159-02-11+-- >   , 1998-12-26+-- >   , 2079-01-18+-- >   , ...+-- >   ]+instance Listable Day where+  list  =  map ModifiedJulianDay $ binarySearchIndexesThen 0 116969++instance Listable DiffTime where+  tiers  =  mapT (\(x,y) -> fromInteger x / fromInteger y) . reset+         $  tiers `suchThat` \(n,d) -> n > 0 && d > 0 && n `gcd` d == 1+++instance Listable UTCTime where+  tiers  =  cons2 UTCTime
+ src/Test/LeanCheck/WithInstances.hs view
@@ -0,0 +1,17 @@+-- |+-- Module      : Test.LeanCheck.WithInstances+-- Copyright   : (c) 2018-2019 Rudy Matela+-- License     : 3-Clause BSD  (see the file LICENSE)+-- Maintainer  : Rudy Matela <rudy@matela.com.br>+--+-- "Test.LeanCheck" with additional 'Listable' instances+-- from "Test.LeanCheck.Instances".+--+-- Importhing this is the same as:+--+-- > import Test.LeanCheck+-- > import Test.LeanCheck.Instances+module Test.LeanCheck.WithInstances (module Test.LeanCheck) where++import Test.LeanCheck+import Test.LeanCheck.Instances
+ stack-lts-11.yaml view
@@ -0,0 +1,12 @@+# stack.yaml for leancheck-instances+resolver: lts-11.22++packages:+- .++extra-deps:+- leancheck-0.8.0++flags: {}++extra-package-dbs: []
stack.yaml view
@@ -1,8 +1,4 @@-# stack.yaml docs:-# https://docs.haskellstack.org/en/stable/yaml_configuration/--# resolver: nightly-2015-09-21-# resolver: ghc-7.10.2+# stack file for leancheck-instances resolver: lts-12.14  packages:
+ test/diff/tiers-ArrayIntInt.out view
@@ -0,0 +1,2069 @@+map length (tiers :: [[ Array Int Int ]])  =  [0,1,2,4,8,16,32,64,128,256,512,1024,...]++length (list :: [ Array Int Int ])  =  Infinity++allUnique (list :: [ Array Int Int ])  =  False++ratioRepetitions (list :: [ Array Int Int ])  =  10 % 2047++tiers :: [Array Int Int]  =+  [ []+  , [array (0,-1) []]+  , [ array (0,0) [(0,0)]+    , array (1,0) []+    ]+  , [ array (0,1) [(0,0),(1,0)]+    , array (0,0) [(0,1)]+    , array (1,1) [(1,0)]+    , array (-1,-2) []+    ]+  , [ array (0,2) [(0,0),(1,0),(2,0)]+    , array (0,1) [(0,0),(1,1)]+    , array (0,1) [(0,1),(1,0)]+    , array (0,0) [(0,-1)]+    , array (1,2) [(1,0),(2,0)]+    , array (1,1) [(1,1)]+    , array (-1,-1) [(-1,0)]+    , array (2,1) []+    ]+  , [ array (0,3) [(0,0),(1,0),(2,0),(3,0)]+    , array (0,2) [(0,0),(1,0),(2,1)]+    , array (0,2) [(0,0),(1,1),(2,0)]+    , array (0,1) [(0,0),(1,-1)]+    , array (0,2) [(0,1),(1,0),(2,0)]+    , array (0,1) [(0,1),(1,1)]+    , array (0,1) [(0,-1),(1,0)]+    , array (0,0) [(0,2)]+    , array (1,3) [(1,0),(2,0),(3,0)]+    , array (1,2) [(1,0),(2,1)]+    , array (1,2) [(1,1),(2,0)]+    , array (1,1) [(1,-1)]+    , array (-1,0) [(-1,0),(0,0)]+    , array (-1,-1) [(-1,1)]+    , array (2,2) [(2,0)]+    , array (-2,-3) []+    ]+  , [ array (0,4) [(0,0),(1,0),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,0),(3,1)]+    , array (0,3) [(0,0),(1,0),(2,1),(3,0)]+    , array (0,2) [(0,0),(1,0),(2,-1)]+    , array (0,3) [(0,0),(1,1),(2,0),(3,0)]+    , array (0,2) [(0,0),(1,1),(2,1)]+    , array (0,2) [(0,0),(1,-1),(2,0)]+    , array (0,1) [(0,0),(1,2)]+    , array (0,3) [(0,1),(1,0),(2,0),(3,0)]+    , array (0,2) [(0,1),(1,0),(2,1)]+    , array (0,2) [(0,1),(1,1),(2,0)]+    , array (0,1) [(0,1),(1,-1)]+    , array (0,2) [(0,-1),(1,0),(2,0)]+    , array (0,1) [(0,-1),(1,1)]+    , array (0,1) [(0,2),(1,0)]+    , array (0,0) [(0,-2)]+    , array (1,4) [(1,0),(2,0),(3,0),(4,0)]+    , array (1,3) [(1,0),(2,0),(3,1)]+    , array (1,3) [(1,0),(2,1),(3,0)]+    , array (1,2) [(1,0),(2,-1)]+    , array (1,3) [(1,1),(2,0),(3,0)]+    , array (1,2) [(1,1),(2,1)]+    , array (1,2) [(1,-1),(2,0)]+    , array (1,1) [(1,2)]+    , array (-1,1) [(-1,0),(0,0),(1,0)]+    , array (-1,0) [(-1,0),(0,1)]+    , array (-1,0) [(-1,1),(0,0)]+    , array (-1,-1) [(-1,-1)]+    , array (2,3) [(2,0),(3,0)]+    , array (2,2) [(2,1)]+    , array (-2,-2) [(-2,0)]+    , array (3,2) []+    ]+  , [ array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,0),(3,-1)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,1),(3,1)]+    , array (0,3) [(0,0),(1,0),(2,-1),(3,0)]+    , array (0,2) [(0,0),(1,0),(2,2)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,0),(3,1)]+    , array (0,3) [(0,0),(1,1),(2,1),(3,0)]+    , array (0,2) [(0,0),(1,1),(2,-1)]+    , array (0,3) [(0,0),(1,-1),(2,0),(3,0)]+    , array (0,2) [(0,0),(1,-1),(2,1)]+    , array (0,2) [(0,0),(1,2),(2,0)]+    , array (0,1) [(0,0),(1,-2)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,0),(3,1)]+    , array (0,3) [(0,1),(1,0),(2,1),(3,0)]+    , array (0,2) [(0,1),(1,0),(2,-1)]+    , array (0,3) [(0,1),(1,1),(2,0),(3,0)]+    , array (0,2) [(0,1),(1,1),(2,1)]+    , array (0,2) [(0,1),(1,-1),(2,0)]+    , array (0,1) [(0,1),(1,2)]+    , array (0,3) [(0,-1),(1,0),(2,0),(3,0)]+    , array (0,2) [(0,-1),(1,0),(2,1)]+    , array (0,2) [(0,-1),(1,1),(2,0)]+    , array (0,1) [(0,-1),(1,-1)]+    , array (0,2) [(0,2),(1,0),(2,0)]+    , array (0,1) [(0,2),(1,1)]+    , array (0,1) [(0,-2),(1,0)]+    , array (0,0) [(0,3)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,0),(4,1)]+    , array (1,4) [(1,0),(2,0),(3,1),(4,0)]+    , array (1,3) [(1,0),(2,0),(3,-1)]+    , array (1,4) [(1,0),(2,1),(3,0),(4,0)]+    , array (1,3) [(1,0),(2,1),(3,1)]+    , array (1,3) [(1,0),(2,-1),(3,0)]+    , array (1,2) [(1,0),(2,2)]+    , array (1,4) [(1,1),(2,0),(3,0),(4,0)]+    , array (1,3) [(1,1),(2,0),(3,1)]+    , array (1,3) [(1,1),(2,1),(3,0)]+    , array (1,2) [(1,1),(2,-1)]+    , array (1,3) [(1,-1),(2,0),(3,0)]+    , array (1,2) [(1,-1),(2,1)]+    , array (1,2) [(1,2),(2,0)]+    , array (1,1) [(1,-2)]+    , array (-1,2) [(-1,0),(0,0),(1,0),(2,0)]+    , array (-1,1) [(-1,0),(0,0),(1,1)]+    , array (-1,1) [(-1,0),(0,1),(1,0)]+    , array (-1,0) [(-1,0),(0,-1)]+    , array (-1,1) [(-1,1),(0,0),(1,0)]+    , array (-1,0) [(-1,1),(0,1)]+    , array (-1,0) [(-1,-1),(0,0)]+    , array (-1,-1) [(-1,2)]+    , array (2,4) [(2,0),(3,0),(4,0)]+    , array (2,3) [(2,0),(3,1)]+    , array (2,3) [(2,1),(3,0)]+    , array (2,2) [(2,-1)]+    , array (-2,-1) [(-2,0),(-1,0)]+    , array (-2,-2) [(-2,1)]+    , array (3,3) [(3,0)]+    , array (-3,-4) []+    ]+  , [ array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,0),(3,2)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,1),(3,-1)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,-1),(3,1)]+    , array (0,3) [(0,0),(1,0),(2,2),(3,0)]+    , array (0,2) [(0,0),(1,0),(2,-2)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,0),(3,-1)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,1),(3,1)]+    , array (0,3) [(0,0),(1,1),(2,-1),(3,0)]+    , array (0,2) [(0,0),(1,1),(2,2)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,0),(3,1)]+    , array (0,3) [(0,0),(1,-1),(2,1),(3,0)]+    , array (0,2) [(0,0),(1,-1),(2,-1)]+    , array (0,3) [(0,0),(1,2),(2,0),(3,0)]+    , array (0,2) [(0,0),(1,2),(2,1)]+    , array (0,2) [(0,0),(1,-2),(2,0)]+    , array (0,1) [(0,0),(1,3)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,0),(3,-1)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,1),(3,1)]+    , array (0,3) [(0,1),(1,0),(2,-1),(3,0)]+    , array (0,2) [(0,1),(1,0),(2,2)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,0),(3,1)]+    , array (0,3) [(0,1),(1,1),(2,1),(3,0)]+    , array (0,2) [(0,1),(1,1),(2,-1)]+    , array (0,3) [(0,1),(1,-1),(2,0),(3,0)]+    , array (0,2) [(0,1),(1,-1),(2,1)]+    , array (0,2) [(0,1),(1,2),(2,0)]+    , array (0,1) [(0,1),(1,-2)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,0),(3,1)]+    , array (0,3) [(0,-1),(1,0),(2,1),(3,0)]+    , array (0,2) [(0,-1),(1,0),(2,-1)]+    , array (0,3) [(0,-1),(1,1),(2,0),(3,0)]+    , array (0,2) [(0,-1),(1,1),(2,1)]+    , array (0,2) [(0,-1),(1,-1),(2,0)]+    , array (0,1) [(0,-1),(1,2)]+    , array (0,3) [(0,2),(1,0),(2,0),(3,0)]+    , array (0,2) [(0,2),(1,0),(2,1)]+    , array (0,2) [(0,2),(1,1),(2,0)]+    , array (0,1) [(0,2),(1,-1)]+    , array (0,2) [(0,-2),(1,0),(2,0)]+    , array (0,1) [(0,-2),(1,1)]+    , array (0,1) [(0,3),(1,0)]+    , array (0,0) [(0,-3)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,0),(4,-1)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,1),(4,1)]+    , array (1,4) [(1,0),(2,0),(3,-1),(4,0)]+    , array (1,3) [(1,0),(2,0),(3,2)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,0),(4,1)]+    , array (1,4) [(1,0),(2,1),(3,1),(4,0)]+    , array (1,3) [(1,0),(2,1),(3,-1)]+    , array (1,4) [(1,0),(2,-1),(3,0),(4,0)]+    , array (1,3) [(1,0),(2,-1),(3,1)]+    , array (1,3) [(1,0),(2,2),(3,0)]+    , array (1,2) [(1,0),(2,-2)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,0),(4,1)]+    , array (1,4) [(1,1),(2,0),(3,1),(4,0)]+    , array (1,3) [(1,1),(2,0),(3,-1)]+    , array (1,4) [(1,1),(2,1),(3,0),(4,0)]+    , array (1,3) [(1,1),(2,1),(3,1)]+    , array (1,3) [(1,1),(2,-1),(3,0)]+    , array (1,2) [(1,1),(2,2)]+    , array (1,4) [(1,-1),(2,0),(3,0),(4,0)]+    , array (1,3) [(1,-1),(2,0),(3,1)]+    , array (1,3) [(1,-1),(2,1),(3,0)]+    , array (1,2) [(1,-1),(2,-1)]+    , array (1,3) [(1,2),(2,0),(3,0)]+    , array (1,2) [(1,2),(2,1)]+    , array (1,2) [(1,-2),(2,0)]+    , array (1,1) [(1,3)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,0),(2,1)]+    , array (-1,2) [(-1,0),(0,0),(1,1),(2,0)]+    , array (-1,1) [(-1,0),(0,0),(1,-1)]+    , array (-1,2) [(-1,0),(0,1),(1,0),(2,0)]+    , array (-1,1) [(-1,0),(0,1),(1,1)]+    , array (-1,1) [(-1,0),(0,-1),(1,0)]+    , array (-1,0) [(-1,0),(0,2)]+    , array (-1,2) [(-1,1),(0,0),(1,0),(2,0)]+    , array (-1,1) [(-1,1),(0,0),(1,1)]+    , array (-1,1) [(-1,1),(0,1),(1,0)]+    , array (-1,0) [(-1,1),(0,-1)]+    , array (-1,1) [(-1,-1),(0,0),(1,0)]+    , array (-1,0) [(-1,-1),(0,1)]+    , array (-1,0) [(-1,2),(0,0)]+    , array (-1,-1) [(-1,-2)]+    , array (2,5) [(2,0),(3,0),(4,0),(5,0)]+    , array (2,4) [(2,0),(3,0),(4,1)]+    , array (2,4) [(2,0),(3,1),(4,0)]+    , array (2,3) [(2,0),(3,-1)]+    , array (2,4) [(2,1),(3,0),(4,0)]+    , array (2,3) [(2,1),(3,1)]+    , array (2,3) [(2,-1),(3,0)]+    , array (2,2) [(2,2)]+    , array (-2,0) [(-2,0),(-1,0),(0,0)]+    , array (-2,-1) [(-2,0),(-1,1)]+    , array (-2,-1) [(-2,1),(-1,0)]+    , array (-2,-2) [(-2,-1)]+    , array (3,4) [(3,0),(4,0)]+    , array (3,3) [(3,1)]+    , array (-3,-3) [(-3,0)]+    , array (4,3) []+    ]+  , [ array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,0),(4,2)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,1),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,-1),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,2),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,0),(3,-2)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,1),(3,2)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,-1),(3,-1)]+    , array (0,4) [(0,0),(1,0),(2,2),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,2),(3,1)]+    , array (0,3) [(0,0),(1,0),(2,-2),(3,0)]+    , array (0,2) [(0,0),(1,0),(2,3)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,0),(3,2)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,1),(3,-1)]+    , array (0,4) [(0,0),(1,1),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,-1),(3,1)]+    , array (0,3) [(0,0),(1,1),(2,2),(3,0)]+    , array (0,2) [(0,0),(1,1),(2,-2)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,0),(3,-1)]+    , array (0,4) [(0,0),(1,-1),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,1),(3,1)]+    , array (0,3) [(0,0),(1,-1),(2,-1),(3,0)]+    , array (0,2) [(0,0),(1,-1),(2,2)]+    , array (0,4) [(0,0),(1,2),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,2),(2,0),(3,1)]+    , array (0,3) [(0,0),(1,2),(2,1),(3,0)]+    , array (0,2) [(0,0),(1,2),(2,-1)]+    , array (0,3) [(0,0),(1,-2),(2,0),(3,0)]+    , array (0,2) [(0,0),(1,-2),(2,1)]+    , array (0,2) [(0,0),(1,3),(2,0)]+    , array (0,1) [(0,0),(1,-3)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,0),(3,2)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,1),(3,-1)]+    , array (0,4) [(0,1),(1,0),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,-1),(3,1)]+    , array (0,3) [(0,1),(1,0),(2,2),(3,0)]+    , array (0,2) [(0,1),(1,0),(2,-2)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,0),(3,-1)]+    , array (0,4) [(0,1),(1,1),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,1),(3,1)]+    , array (0,3) [(0,1),(1,1),(2,-1),(3,0)]+    , array (0,2) [(0,1),(1,1),(2,2)]+    , array (0,4) [(0,1),(1,-1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,-1),(2,0),(3,1)]+    , array (0,3) [(0,1),(1,-1),(2,1),(3,0)]+    , array (0,2) [(0,1),(1,-1),(2,-1)]+    , array (0,3) [(0,1),(1,2),(2,0),(3,0)]+    , array (0,2) [(0,1),(1,2),(2,1)]+    , array (0,2) [(0,1),(1,-2),(2,0)]+    , array (0,1) [(0,1),(1,3)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,0),(3,-1)]+    , array (0,4) [(0,-1),(1,0),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,1),(3,1)]+    , array (0,3) [(0,-1),(1,0),(2,-1),(3,0)]+    , array (0,2) [(0,-1),(1,0),(2,2)]+    , array (0,4) [(0,-1),(1,1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,1),(2,0),(3,1)]+    , array (0,3) [(0,-1),(1,1),(2,1),(3,0)]+    , array (0,2) [(0,-1),(1,1),(2,-1)]+    , array (0,3) [(0,-1),(1,-1),(2,0),(3,0)]+    , array (0,2) [(0,-1),(1,-1),(2,1)]+    , array (0,2) [(0,-1),(1,2),(2,0)]+    , array (0,1) [(0,-1),(1,-2)]+    , array (0,4) [(0,2),(1,0),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,2),(1,0),(2,0),(3,1)]+    , array (0,3) [(0,2),(1,0),(2,1),(3,0)]+    , array (0,2) [(0,2),(1,0),(2,-1)]+    , array (0,3) [(0,2),(1,1),(2,0),(3,0)]+    , array (0,2) [(0,2),(1,1),(2,1)]+    , array (0,2) [(0,2),(1,-1),(2,0)]+    , array (0,1) [(0,2),(1,2)]+    , array (0,3) [(0,-2),(1,0),(2,0),(3,0)]+    , array (0,2) [(0,-2),(1,0),(2,1)]+    , array (0,2) [(0,-2),(1,1),(2,0)]+    , array (0,1) [(0,-2),(1,-1)]+    , array (0,2) [(0,3),(1,0),(2,0)]+    , array (0,1) [(0,3),(1,1)]+    , array (0,1) [(0,-3),(1,0)]+    , array (0,0) [(0,4)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,0),(5,-1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,1),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,-1),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,0),(4,2)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,1),(4,-1)]+    , array (1,5) [(1,0),(2,0),(3,-1),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,-1),(4,1)]+    , array (1,4) [(1,0),(2,0),(3,2),(4,0)]+    , array (1,3) [(1,0),(2,0),(3,-2)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,0),(4,-1)]+    , array (1,5) [(1,0),(2,1),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,1),(4,1)]+    , array (1,4) [(1,0),(2,1),(3,-1),(4,0)]+    , array (1,3) [(1,0),(2,1),(3,2)]+    , array (1,5) [(1,0),(2,-1),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,-1),(3,0),(4,1)]+    , array (1,4) [(1,0),(2,-1),(3,1),(4,0)]+    , array (1,3) [(1,0),(2,-1),(3,-1)]+    , array (1,4) [(1,0),(2,2),(3,0),(4,0)]+    , array (1,3) [(1,0),(2,2),(3,1)]+    , array (1,3) [(1,0),(2,-2),(3,0)]+    , array (1,2) [(1,0),(2,3)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,0),(4,-1)]+    , array (1,5) [(1,1),(2,0),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,1),(4,1)]+    , array (1,4) [(1,1),(2,0),(3,-1),(4,0)]+    , array (1,3) [(1,1),(2,0),(3,2)]+    , array (1,5) [(1,1),(2,1),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,1),(3,0),(4,1)]+    , array (1,4) [(1,1),(2,1),(3,1),(4,0)]+    , array (1,3) [(1,1),(2,1),(3,-1)]+    , array (1,4) [(1,1),(2,-1),(3,0),(4,0)]+    , array (1,3) [(1,1),(2,-1),(3,1)]+    , array (1,3) [(1,1),(2,2),(3,0)]+    , array (1,2) [(1,1),(2,-2)]+    , array (1,5) [(1,-1),(2,0),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,-1),(2,0),(3,0),(4,1)]+    , array (1,4) [(1,-1),(2,0),(3,1),(4,0)]+    , array (1,3) [(1,-1),(2,0),(3,-1)]+    , array (1,4) [(1,-1),(2,1),(3,0),(4,0)]+    , array (1,3) [(1,-1),(2,1),(3,1)]+    , array (1,3) [(1,-1),(2,-1),(3,0)]+    , array (1,2) [(1,-1),(2,2)]+    , array (1,4) [(1,2),(2,0),(3,0),(4,0)]+    , array (1,3) [(1,2),(2,0),(3,1)]+    , array (1,3) [(1,2),(2,1),(3,0)]+    , array (1,2) [(1,2),(2,-1)]+    , array (1,3) [(1,-2),(2,0),(3,0)]+    , array (1,2) [(1,-2),(2,1)]+    , array (1,2) [(1,3),(2,0)]+    , array (1,1) [(1,-3)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,0),(3,1)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,1),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,0),(2,-1)]+    , array (-1,3) [(-1,0),(0,0),(1,1),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,1),(2,1)]+    , array (-1,2) [(-1,0),(0,0),(1,-1),(2,0)]+    , array (-1,1) [(-1,0),(0,0),(1,2)]+    , array (-1,3) [(-1,0),(0,1),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,1),(1,0),(2,1)]+    , array (-1,2) [(-1,0),(0,1),(1,1),(2,0)]+    , array (-1,1) [(-1,0),(0,1),(1,-1)]+    , array (-1,2) [(-1,0),(0,-1),(1,0),(2,0)]+    , array (-1,1) [(-1,0),(0,-1),(1,1)]+    , array (-1,1) [(-1,0),(0,2),(1,0)]+    , array (-1,0) [(-1,0),(0,-2)]+    , array (-1,3) [(-1,1),(0,0),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,1),(0,0),(1,0),(2,1)]+    , array (-1,2) [(-1,1),(0,0),(1,1),(2,0)]+    , array (-1,1) [(-1,1),(0,0),(1,-1)]+    , array (-1,2) [(-1,1),(0,1),(1,0),(2,0)]+    , array (-1,1) [(-1,1),(0,1),(1,1)]+    , array (-1,1) [(-1,1),(0,-1),(1,0)]+    , array (-1,0) [(-1,1),(0,2)]+    , array (-1,2) [(-1,-1),(0,0),(1,0),(2,0)]+    , array (-1,1) [(-1,-1),(0,0),(1,1)]+    , array (-1,1) [(-1,-1),(0,1),(1,0)]+    , array (-1,0) [(-1,-1),(0,-1)]+    , array (-1,1) [(-1,2),(0,0),(1,0)]+    , array (-1,0) [(-1,2),(0,1)]+    , array (-1,0) [(-1,-2),(0,0)]+    , array (-1,-1) [(-1,3)]+    , array (2,6) [(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (2,5) [(2,0),(3,0),(4,0),(5,1)]+    , array (2,5) [(2,0),(3,0),(4,1),(5,0)]+    , array (2,4) [(2,0),(3,0),(4,-1)]+    , array (2,5) [(2,0),(3,1),(4,0),(5,0)]+    , array (2,4) [(2,0),(3,1),(4,1)]+    , array (2,4) [(2,0),(3,-1),(4,0)]+    , array (2,3) [(2,0),(3,2)]+    , array (2,5) [(2,1),(3,0),(4,0),(5,0)]+    , array (2,4) [(2,1),(3,0),(4,1)]+    , array (2,4) [(2,1),(3,1),(4,0)]+    , array (2,3) [(2,1),(3,-1)]+    , array (2,4) [(2,-1),(3,0),(4,0)]+    , array (2,3) [(2,-1),(3,1)]+    , array (2,3) [(2,2),(3,0)]+    , array (2,2) [(2,-2)]+    , array (-2,1) [(-2,0),(-1,0),(0,0),(1,0)]+    , array (-2,0) [(-2,0),(-1,0),(0,1)]+    , array (-2,0) [(-2,0),(-1,1),(0,0)]+    , array (-2,-1) [(-2,0),(-1,-1)]+    , array (-2,0) [(-2,1),(-1,0),(0,0)]+    , array (-2,-1) [(-2,1),(-1,1)]+    , array (-2,-1) [(-2,-1),(-1,0)]+    , array (-2,-2) [(-2,2)]+    , array (3,5) [(3,0),(4,0),(5,0)]+    , array (3,4) [(3,0),(4,1)]+    , array (3,4) [(3,1),(4,0)]+    , array (3,3) [(3,-1)]+    , array (-3,-2) [(-3,0),(-2,0)]+    , array (-3,-3) [(-3,1)]+    , array (4,4) [(4,0)]+    , array (-4,-5) []+    ]+  , [ array (0,8) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,1),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,-1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,1),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,1),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,-1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,2)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,-1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,-1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,2),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,0),(4,-2)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,1),(4,2)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,-1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,-1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,-1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,-1),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,2),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,2),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,-2),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,0),(3,3)]+    , array (0,7) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,0),(4,2)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,1),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,-1),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,2),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,1),(3,-2)]+    , array (0,6) [(0,0),(1,0),(2,-1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,-1),(3,2)]+    , array (0,5) [(0,0),(1,0),(2,2),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,2),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,2),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,2),(3,-1)]+    , array (0,4) [(0,0),(1,0),(2,-2),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,-2),(3,1)]+    , array (0,3) [(0,0),(1,0),(2,3),(3,0)]+    , array (0,2) [(0,0),(1,0),(2,-3)]+    , array (0,7) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,0),(4,2)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,1),(4,-1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,-1),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,2),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,0),(3,-2)]+    , array (0,6) [(0,0),(1,1),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,1),(3,2)]+    , array (0,5) [(0,0),(1,1),(2,-1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,-1),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,-1),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,-1),(3,-1)]+    , array (0,4) [(0,0),(1,1),(2,2),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,2),(3,1)]+    , array (0,3) [(0,0),(1,1),(2,-2),(3,0)]+    , array (0,2) [(0,0),(1,1),(2,3)]+    , array (0,6) [(0,0),(1,-1),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,0),(3,2)]+    , array (0,5) [(0,0),(1,-1),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,-1),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,1),(3,-1)]+    , array (0,4) [(0,0),(1,-1),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,-1),(3,1)]+    , array (0,3) [(0,0),(1,-1),(2,2),(3,0)]+    , array (0,2) [(0,0),(1,-1),(2,-2)]+    , array (0,5) [(0,0),(1,2),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,2),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,2),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,2),(2,0),(3,-1)]+    , array (0,4) [(0,0),(1,2),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,2),(2,1),(3,1)]+    , array (0,3) [(0,0),(1,2),(2,-1),(3,0)]+    , array (0,2) [(0,0),(1,2),(2,2)]+    , array (0,4) [(0,0),(1,-2),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,-2),(2,0),(3,1)]+    , array (0,3) [(0,0),(1,-2),(2,1),(3,0)]+    , array (0,2) [(0,0),(1,-2),(2,-1)]+    , array (0,3) [(0,0),(1,3),(2,0),(3,0)]+    , array (0,2) [(0,0),(1,3),(2,1)]+    , array (0,2) [(0,0),(1,-3),(2,0)]+    , array (0,1) [(0,0),(1,4)]+    , array (0,7) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,0),(4,2)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,1),(4,-1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,-1),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,2),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,0),(3,-2)]+    , array (0,6) [(0,1),(1,0),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,0),(4,-1)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,1),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,-1),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,1),(3,2)]+    , array (0,5) [(0,1),(1,0),(2,-1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,-1),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,-1),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,-1),(3,-1)]+    , array (0,4) [(0,1),(1,0),(2,2),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,2),(3,1)]+    , array (0,3) [(0,1),(1,0),(2,-2),(3,0)]+    , array (0,2) [(0,1),(1,0),(2,3)]+    , array (0,6) [(0,1),(1,1),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,0),(3,2)]+    , array (0,5) [(0,1),(1,1),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,1),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,1),(3,-1)]+    , array (0,4) [(0,1),(1,1),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,-1),(3,1)]+    , array (0,3) [(0,1),(1,1),(2,2),(3,0)]+    , array (0,2) [(0,1),(1,1),(2,-2)]+    , array (0,5) [(0,1),(1,-1),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,-1),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,-1),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,-1),(2,0),(3,-1)]+    , array (0,4) [(0,1),(1,-1),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,-1),(2,1),(3,1)]+    , array (0,3) [(0,1),(1,-1),(2,-1),(3,0)]+    , array (0,2) [(0,1),(1,-1),(2,2)]+    , array (0,4) [(0,1),(1,2),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,2),(2,0),(3,1)]+    , array (0,3) [(0,1),(1,2),(2,1),(3,0)]+    , array (0,2) [(0,1),(1,2),(2,-1)]+    , array (0,3) [(0,1),(1,-2),(2,0),(3,0)]+    , array (0,2) [(0,1),(1,-2),(2,1)]+    , array (0,2) [(0,1),(1,3),(2,0)]+    , array (0,1) [(0,1),(1,-3)]+    , array (0,6) [(0,-1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,0),(3,2)]+    , array (0,5) [(0,-1),(1,0),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,-1),(1,0),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,1),(3,-1)]+    , array (0,4) [(0,-1),(1,0),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,-1),(3,1)]+    , array (0,3) [(0,-1),(1,0),(2,2),(3,0)]+    , array (0,2) [(0,-1),(1,0),(2,-2)]+    , array (0,5) [(0,-1),(1,1),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,1),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,-1),(1,1),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,-1),(1,1),(2,0),(3,-1)]+    , array (0,4) [(0,-1),(1,1),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,1),(2,1),(3,1)]+    , array (0,3) [(0,-1),(1,1),(2,-1),(3,0)]+    , array (0,2) [(0,-1),(1,1),(2,2)]+    , array (0,4) [(0,-1),(1,-1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,-1),(2,0),(3,1)]+    , array (0,3) [(0,-1),(1,-1),(2,1),(3,0)]+    , array (0,2) [(0,-1),(1,-1),(2,-1)]+    , array (0,3) [(0,-1),(1,2),(2,0),(3,0)]+    , array (0,2) [(0,-1),(1,2),(2,1)]+    , array (0,2) [(0,-1),(1,-2),(2,0)]+    , array (0,1) [(0,-1),(1,3)]+    , array (0,5) [(0,2),(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,2),(1,0),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,2),(1,0),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,2),(1,0),(2,0),(3,-1)]+    , array (0,4) [(0,2),(1,0),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,2),(1,0),(2,1),(3,1)]+    , array (0,3) [(0,2),(1,0),(2,-1),(3,0)]+    , array (0,2) [(0,2),(1,0),(2,2)]+    , array (0,4) [(0,2),(1,1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,2),(1,1),(2,0),(3,1)]+    , array (0,3) [(0,2),(1,1),(2,1),(3,0)]+    , array (0,2) [(0,2),(1,1),(2,-1)]+    , array (0,3) [(0,2),(1,-1),(2,0),(3,0)]+    , array (0,2) [(0,2),(1,-1),(2,1)]+    , array (0,2) [(0,2),(1,2),(2,0)]+    , array (0,1) [(0,2),(1,-2)]+    , array (0,4) [(0,-2),(1,0),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,-2),(1,0),(2,0),(3,1)]+    , array (0,3) [(0,-2),(1,0),(2,1),(3,0)]+    , array (0,2) [(0,-2),(1,0),(2,-1)]+    , array (0,3) [(0,-2),(1,1),(2,0),(3,0)]+    , array (0,2) [(0,-2),(1,1),(2,1)]+    , array (0,2) [(0,-2),(1,-1),(2,0)]+    , array (0,1) [(0,-2),(1,2)]+    , array (0,3) [(0,3),(1,0),(2,0),(3,0)]+    , array (0,2) [(0,3),(1,0),(2,1)]+    , array (0,2) [(0,3),(1,1),(2,0)]+    , array (0,1) [(0,3),(1,-1)]+    , array (0,2) [(0,-3),(1,0),(2,0)]+    , array (0,1) [(0,-3),(1,1)]+    , array (0,1) [(0,4),(1,0)]+    , array (0,0) [(0,-4)]+    , array (1,8) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,1)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,1),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,-1)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,1),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,1),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,-1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,0),(5,2)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,1),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,1),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,1),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,1),(5,-1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,-1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,-1),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,2),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,0),(4,-2)]+    , array (1,7) [(1,0),(2,0),(3,1),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,0),(5,-1)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,1),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,-1),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,1),(4,2)]+    , array (1,6) [(1,0),(2,0),(3,-1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,-1),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,-1),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,-1),(4,-1)]+    , array (1,5) [(1,0),(2,0),(3,2),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,2),(4,1)]+    , array (1,4) [(1,0),(2,0),(3,-2),(4,0)]+    , array (1,3) [(1,0),(2,0),(3,3)]+    , array (1,7) [(1,0),(2,1),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,0),(5,-1)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,1),(5,1)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,-1),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,0),(4,2)]+    , array (1,6) [(1,0),(2,1),(3,1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,1),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,1),(3,1),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,1),(4,-1)]+    , array (1,5) [(1,0),(2,1),(3,-1),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,-1),(4,1)]+    , array (1,4) [(1,0),(2,1),(3,2),(4,0)]+    , array (1,3) [(1,0),(2,1),(3,-2)]+    , array (1,6) [(1,0),(2,-1),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,-1),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,-1),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,-1),(3,0),(4,-1)]+    , array (1,5) [(1,0),(2,-1),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,-1),(3,1),(4,1)]+    , array (1,4) [(1,0),(2,-1),(3,-1),(4,0)]+    , array (1,3) [(1,0),(2,-1),(3,2)]+    , array (1,5) [(1,0),(2,2),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,2),(3,0),(4,1)]+    , array (1,4) [(1,0),(2,2),(3,1),(4,0)]+    , array (1,3) [(1,0),(2,2),(3,-1)]+    , array (1,4) [(1,0),(2,-2),(3,0),(4,0)]+    , array (1,3) [(1,0),(2,-2),(3,1)]+    , array (1,3) [(1,0),(2,3),(3,0)]+    , array (1,2) [(1,0),(2,-3)]+    , array (1,7) [(1,1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,0),(5,-1)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,1),(5,1)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,-1),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,0),(4,2)]+    , array (1,6) [(1,1),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,1),(4,0),(5,1)]+    , array (1,5) [(1,1),(2,0),(3,1),(4,1),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,1),(4,-1)]+    , array (1,5) [(1,1),(2,0),(3,-1),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,-1),(4,1)]+    , array (1,4) [(1,1),(2,0),(3,2),(4,0)]+    , array (1,3) [(1,1),(2,0),(3,-2)]+    , array (1,6) [(1,1),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,1),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,1),(2,1),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,1),(2,1),(3,0),(4,-1)]+    , array (1,5) [(1,1),(2,1),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,1),(3,1),(4,1)]+    , array (1,4) [(1,1),(2,1),(3,-1),(4,0)]+    , array (1,3) [(1,1),(2,1),(3,2)]+    , array (1,5) [(1,1),(2,-1),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,-1),(3,0),(4,1)]+    , array (1,4) [(1,1),(2,-1),(3,1),(4,0)]+    , array (1,3) [(1,1),(2,-1),(3,-1)]+    , array (1,4) [(1,1),(2,2),(3,0),(4,0)]+    , array (1,3) [(1,1),(2,2),(3,1)]+    , array (1,3) [(1,1),(2,-2),(3,0)]+    , array (1,2) [(1,1),(2,3)]+    , array (1,6) [(1,-1),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,-1),(2,0),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,-1),(2,0),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,-1),(2,0),(3,0),(4,-1)]+    , array (1,5) [(1,-1),(2,0),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,-1),(2,0),(3,1),(4,1)]+    , array (1,4) [(1,-1),(2,0),(3,-1),(4,0)]+    , array (1,3) [(1,-1),(2,0),(3,2)]+    , array (1,5) [(1,-1),(2,1),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,-1),(2,1),(3,0),(4,1)]+    , array (1,4) [(1,-1),(2,1),(3,1),(4,0)]+    , array (1,3) [(1,-1),(2,1),(3,-1)]+    , array (1,4) [(1,-1),(2,-1),(3,0),(4,0)]+    , array (1,3) [(1,-1),(2,-1),(3,1)]+    , array (1,3) [(1,-1),(2,2),(3,0)]+    , array (1,2) [(1,-1),(2,-2)]+    , array (1,5) [(1,2),(2,0),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,2),(2,0),(3,0),(4,1)]+    , array (1,4) [(1,2),(2,0),(3,1),(4,0)]+    , array (1,3) [(1,2),(2,0),(3,-1)]+    , array (1,4) [(1,2),(2,1),(3,0),(4,0)]+    , array (1,3) [(1,2),(2,1),(3,1)]+    , array (1,3) [(1,2),(2,-1),(3,0)]+    , array (1,2) [(1,2),(2,2)]+    , array (1,4) [(1,-2),(2,0),(3,0),(4,0)]+    , array (1,3) [(1,-2),(2,0),(3,1)]+    , array (1,3) [(1,-2),(2,1),(3,0)]+    , array (1,2) [(1,-2),(2,-1)]+    , array (1,3) [(1,3),(2,0),(3,0)]+    , array (1,2) [(1,3),(2,1)]+    , array (1,2) [(1,-3),(2,0)]+    , array (1,1) [(1,4)]+    , array (-1,5) [(-1,0),(0,0),(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,0),(3,0),(4,1)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,0),(3,1),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,0),(3,-1)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,1),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,1),(3,1)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,-1),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,0),(2,2)]+    , array (-1,4) [(-1,0),(0,0),(1,1),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,1),(2,0),(3,1)]+    , array (-1,3) [(-1,0),(0,0),(1,1),(2,1),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,1),(2,-1)]+    , array (-1,3) [(-1,0),(0,0),(1,-1),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,-1),(2,1)]+    , array (-1,2) [(-1,0),(0,0),(1,2),(2,0)]+    , array (-1,1) [(-1,0),(0,0),(1,-2)]+    , array (-1,4) [(-1,0),(0,1),(1,0),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,1),(1,0),(2,0),(3,1)]+    , array (-1,3) [(-1,0),(0,1),(1,0),(2,1),(3,0)]+    , array (-1,2) [(-1,0),(0,1),(1,0),(2,-1)]+    , array (-1,3) [(-1,0),(0,1),(1,1),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,1),(1,1),(2,1)]+    , array (-1,2) [(-1,0),(0,1),(1,-1),(2,0)]+    , array (-1,1) [(-1,0),(0,1),(1,2)]+    , array (-1,3) [(-1,0),(0,-1),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,-1),(1,0),(2,1)]+    , array (-1,2) [(-1,0),(0,-1),(1,1),(2,0)]+    , array (-1,1) [(-1,0),(0,-1),(1,-1)]+    , array (-1,2) [(-1,0),(0,2),(1,0),(2,0)]+    , array (-1,1) [(-1,0),(0,2),(1,1)]+    , array (-1,1) [(-1,0),(0,-2),(1,0)]+    , array (-1,0) [(-1,0),(0,3)]+    , array (-1,4) [(-1,1),(0,0),(1,0),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,1),(0,0),(1,0),(2,0),(3,1)]+    , array (-1,3) [(-1,1),(0,0),(1,0),(2,1),(3,0)]+    , array (-1,2) [(-1,1),(0,0),(1,0),(2,-1)]+    , array (-1,3) [(-1,1),(0,0),(1,1),(2,0),(3,0)]+    , array (-1,2) [(-1,1),(0,0),(1,1),(2,1)]+    , array (-1,2) [(-1,1),(0,0),(1,-1),(2,0)]+    , array (-1,1) [(-1,1),(0,0),(1,2)]+    , array (-1,3) [(-1,1),(0,1),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,1),(0,1),(1,0),(2,1)]+    , array (-1,2) [(-1,1),(0,1),(1,1),(2,0)]+    , array (-1,1) [(-1,1),(0,1),(1,-1)]+    , array (-1,2) [(-1,1),(0,-1),(1,0),(2,0)]+    , array (-1,1) [(-1,1),(0,-1),(1,1)]+    , array (-1,1) [(-1,1),(0,2),(1,0)]+    , array (-1,0) [(-1,1),(0,-2)]+    , array (-1,3) [(-1,-1),(0,0),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,-1),(0,0),(1,0),(2,1)]+    , array (-1,2) [(-1,-1),(0,0),(1,1),(2,0)]+    , array (-1,1) [(-1,-1),(0,0),(1,-1)]+    , array (-1,2) [(-1,-1),(0,1),(1,0),(2,0)]+    , array (-1,1) [(-1,-1),(0,1),(1,1)]+    , array (-1,1) [(-1,-1),(0,-1),(1,0)]+    , array (-1,0) [(-1,-1),(0,2)]+    , array (-1,2) [(-1,2),(0,0),(1,0),(2,0)]+    , array (-1,1) [(-1,2),(0,0),(1,1)]+    , array (-1,1) [(-1,2),(0,1),(1,0)]+    , array (-1,0) [(-1,2),(0,-1)]+    , array (-1,1) [(-1,-2),(0,0),(1,0)]+    , array (-1,0) [(-1,-2),(0,1)]+    , array (-1,0) [(-1,3),(0,0)]+    , array (-1,-1) [(-1,-3)]+    , array (2,7) [(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (2,6) [(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (2,6) [(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (2,5) [(2,0),(3,0),(4,0),(5,-1)]+    , array (2,6) [(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (2,5) [(2,0),(3,0),(4,1),(5,1)]+    , array (2,5) [(2,0),(3,0),(4,-1),(5,0)]+    , array (2,4) [(2,0),(3,0),(4,2)]+    , array (2,6) [(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (2,5) [(2,0),(3,1),(4,0),(5,1)]+    , array (2,5) [(2,0),(3,1),(4,1),(5,0)]+    , array (2,4) [(2,0),(3,1),(4,-1)]+    , array (2,5) [(2,0),(3,-1),(4,0),(5,0)]+    , array (2,4) [(2,0),(3,-1),(4,1)]+    , array (2,4) [(2,0),(3,2),(4,0)]+    , array (2,3) [(2,0),(3,-2)]+    , array (2,6) [(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (2,5) [(2,1),(3,0),(4,0),(5,1)]+    , array (2,5) [(2,1),(3,0),(4,1),(5,0)]+    , array (2,4) [(2,1),(3,0),(4,-1)]+    , array (2,5) [(2,1),(3,1),(4,0),(5,0)]+    , array (2,4) [(2,1),(3,1),(4,1)]+    , array (2,4) [(2,1),(3,-1),(4,0)]+    , array (2,3) [(2,1),(3,2)]+    , array (2,5) [(2,-1),(3,0),(4,0),(5,0)]+    , array (2,4) [(2,-1),(3,0),(4,1)]+    , array (2,4) [(2,-1),(3,1),(4,0)]+    , array (2,3) [(2,-1),(3,-1)]+    , array (2,4) [(2,2),(3,0),(4,0)]+    , array (2,3) [(2,2),(3,1)]+    , array (2,3) [(2,-2),(3,0)]+    , array (2,2) [(2,3)]+    , array (-2,2) [(-2,0),(-1,0),(0,0),(1,0),(2,0)]+    , array (-2,1) [(-2,0),(-1,0),(0,0),(1,1)]+    , array (-2,1) [(-2,0),(-1,0),(0,1),(1,0)]+    , array (-2,0) [(-2,0),(-1,0),(0,-1)]+    , array (-2,1) [(-2,0),(-1,1),(0,0),(1,0)]+    , array (-2,0) [(-2,0),(-1,1),(0,1)]+    , array (-2,0) [(-2,0),(-1,-1),(0,0)]+    , array (-2,-1) [(-2,0),(-1,2)]+    , array (-2,1) [(-2,1),(-1,0),(0,0),(1,0)]+    , array (-2,0) [(-2,1),(-1,0),(0,1)]+    , array (-2,0) [(-2,1),(-1,1),(0,0)]+    , array (-2,-1) [(-2,1),(-1,-1)]+    , array (-2,0) [(-2,-1),(-1,0),(0,0)]+    , array (-2,-1) [(-2,-1),(-1,1)]+    , array (-2,-1) [(-2,2),(-1,0)]+    , array (-2,-2) [(-2,-2)]+    , array (3,6) [(3,0),(4,0),(5,0),(6,0)]+    , array (3,5) [(3,0),(4,0),(5,1)]+    , array (3,5) [(3,0),(4,1),(5,0)]+    , array (3,4) [(3,0),(4,-1)]+    , array (3,5) [(3,1),(4,0),(5,0)]+    , array (3,4) [(3,1),(4,1)]+    , array (3,4) [(3,-1),(4,0)]+    , array (3,3) [(3,2)]+    , array (-3,-1) [(-3,0),(-2,0),(-1,0)]+    , array (-3,-2) [(-3,0),(-2,1)]+    , array (-3,-2) [(-3,1),(-2,0)]+    , array (-3,-3) [(-3,-1)]+    , array (4,5) [(4,0),(5,0)]+    , array (4,4) [(4,1)]+    , array (-4,-4) [(-4,0)]+    , array (5,4) []+    ]+  , [ array (0,9) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0),(9,0)]+    , array (0,8) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,1)]+    , array (0,8) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,1),(8,0)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,-1)]+    , array (0,8) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,1),(7,0),(8,0)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,1),(7,1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,-1),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,2)]+    , array (0,8) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,1),(6,0),(7,0),(8,0)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,1),(6,0),(7,1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,1),(6,1),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,1),(6,-1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,-1),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,-1),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,2),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,0),(5,-2)]+    , array (0,8) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,0),(6,0),(7,0),(8,0)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,0),(6,0),(7,1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,0),(6,1),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,0),(6,-1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,1),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,1),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,-1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,1),(5,2)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,0),(4,-1),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,-1),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,-1),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,-1),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,0),(4,2),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,2),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,0),(4,-2),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,0),(4,3)]+    , array (0,8) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,0),(6,0),(7,1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,0),(6,1),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,0),(6,-1)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,1),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,1),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,-1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,0),(5,2)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,1),(4,1),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,1),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,1),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,1),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,1),(4,-1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,-1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,1),(4,2),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,1),(4,-2)]+    , array (0,7) [(0,0),(1,0),(2,0),(3,-1),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,-1),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,-1),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,-1),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,-1),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,-1),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,-1),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,-1),(4,2)]+    , array (0,6) [(0,0),(1,0),(2,0),(3,2),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,2),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,2),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,2),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,0),(3,-2),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,-2),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,0),(3,3),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,0),(3,-3)]+    , array (0,8) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (0,7) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,0),(6,0),(7,1)]+    , array (0,7) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,0),(6,1),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,0),(6,-1)]+    , array (0,7) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,1),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,1),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,-1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,0),(5,2)]+    , array (0,7) [(0,0),(1,0),(2,1),(3,0),(4,1),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,1),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,1),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,1),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,0),(4,-1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,-1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,0),(4,2),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,0),(4,-2)]+    , array (0,7) [(0,0),(1,0),(2,1),(3,1),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,1),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,1),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,1),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,1),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,1),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,1),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,1),(4,2)]+    , array (0,6) [(0,0),(1,0),(2,1),(3,-1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,-1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,-1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,-1),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,1),(3,2),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,2),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,1),(3,-2),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,1),(3,3)]+    , array (0,7) [(0,0),(1,0),(2,-1),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,0),(2,-1),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,0),(2,-1),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,0),(2,-1),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,0),(4,2)]+    , array (0,6) [(0,0),(1,0),(2,-1),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,1),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,-1),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,-1),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,-1),(3,2),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,-1),(3,-2)]+    , array (0,6) [(0,0),(1,0),(2,2),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,0),(2,2),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,0),(2,2),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,2),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,0),(2,2),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,2),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,2),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,2),(3,2)]+    , array (0,5) [(0,0),(1,0),(2,-2),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,0),(2,-2),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,0),(2,-2),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,-2),(3,-1)]+    , array (0,4) [(0,0),(1,0),(2,3),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,0),(2,3),(3,1)]+    , array (0,3) [(0,0),(1,0),(2,-3),(3,0)]+    , array (0,2) [(0,0),(1,0),(2,4)]+    , array (0,8) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (0,7) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,1)]+    , array (0,7) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,0),(6,1),(7,0)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,0),(6,-1)]+    , array (0,7) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,1),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,1),(6,1)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,-1),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,0),(5,2)]+    , array (0,7) [(0,0),(1,1),(2,0),(3,0),(4,1),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,1),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,1),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,1),(5,-1)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,0),(4,-1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,-1),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,0),(4,2),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,0),(4,-2)]+    , array (0,7) [(0,0),(1,1),(2,0),(3,1),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,1),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,1),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,1),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,1),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,1),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,1),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,1),(4,2)]+    , array (0,6) [(0,0),(1,1),(2,0),(3,-1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,-1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,-1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,-1),(4,-1)]+    , array (0,5) [(0,0),(1,1),(2,0),(3,2),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,2),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,0),(3,-2),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,0),(3,3)]+    , array (0,7) [(0,0),(1,1),(2,1),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,1),(2,1),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,1),(2,1),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,1),(2,1),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,0),(4,2)]+    , array (0,6) [(0,0),(1,1),(2,1),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,1),(4,-1)]+    , array (0,5) [(0,0),(1,1),(2,1),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,-1),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,1),(3,2),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,1),(3,-2)]+    , array (0,6) [(0,0),(1,1),(2,-1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,1),(2,-1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,1),(2,-1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,-1),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,1),(2,-1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,-1),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,-1),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,-1),(3,2)]+    , array (0,5) [(0,0),(1,1),(2,2),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,1),(2,2),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,1),(2,2),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,2),(3,-1)]+    , array (0,4) [(0,0),(1,1),(2,-2),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,1),(2,-2),(3,1)]+    , array (0,3) [(0,0),(1,1),(2,3),(3,0)]+    , array (0,2) [(0,0),(1,1),(2,-3)]+    , array (0,7) [(0,0),(1,-1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,0),(1,-1),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,0),(1,-1),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,0),(1,-1),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,0),(4,2)]+    , array (0,6) [(0,0),(1,-1),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,1),(4,-1)]+    , array (0,5) [(0,0),(1,-1),(2,0),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,-1),(4,1)]+    , array (0,4) [(0,0),(1,-1),(2,0),(3,2),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,0),(3,-2)]+    , array (0,6) [(0,0),(1,-1),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,-1),(2,1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,-1),(2,1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,1),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,-1),(2,1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,1),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,-1),(2,1),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,1),(3,2)]+    , array (0,5) [(0,0),(1,-1),(2,-1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,-1),(2,-1),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,-1),(2,-1),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,-1),(3,-1)]+    , array (0,4) [(0,0),(1,-1),(2,2),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,-1),(2,2),(3,1)]+    , array (0,3) [(0,0),(1,-1),(2,-2),(3,0)]+    , array (0,2) [(0,0),(1,-1),(2,3)]+    , array (0,6) [(0,0),(1,2),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,0),(1,2),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,0),(1,2),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,0),(1,2),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,0),(1,2),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,2),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,0),(1,2),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,0),(1,2),(2,0),(3,2)]+    , array (0,5) [(0,0),(1,2),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,2),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,2),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,2),(2,1),(3,-1)]+    , array (0,4) [(0,0),(1,2),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,2),(2,-1),(3,1)]+    , array (0,3) [(0,0),(1,2),(2,2),(3,0)]+    , array (0,2) [(0,0),(1,2),(2,-2)]+    , array (0,5) [(0,0),(1,-2),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,0),(1,-2),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,0),(1,-2),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,0),(1,-2),(2,0),(3,-1)]+    , array (0,4) [(0,0),(1,-2),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,-2),(2,1),(3,1)]+    , array (0,3) [(0,0),(1,-2),(2,-1),(3,0)]+    , array (0,2) [(0,0),(1,-2),(2,2)]+    , array (0,4) [(0,0),(1,3),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,0),(1,3),(2,0),(3,1)]+    , array (0,3) [(0,0),(1,3),(2,1),(3,0)]+    , array (0,2) [(0,0),(1,3),(2,-1)]+    , array (0,3) [(0,0),(1,-3),(2,0),(3,0)]+    , array (0,2) [(0,0),(1,-3),(2,1)]+    , array (0,2) [(0,0),(1,4),(2,0)]+    , array (0,1) [(0,0),(1,-4)]+    , array (0,8) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (0,7) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,1)]+    , array (0,7) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,1),(7,0)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,-1)]+    , array (0,7) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,1),(6,0),(7,0)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,1),(6,1)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,-1),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,0),(5,2)]+    , array (0,7) [(0,1),(1,0),(2,0),(3,0),(4,1),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,1),(5,0),(6,1)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,1),(5,1),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,1),(5,-1)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,0),(4,-1),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,-1),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,0),(4,2),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,0),(4,-2)]+    , array (0,7) [(0,1),(1,0),(2,0),(3,1),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,1),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,1),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,1),(4,0),(5,-1)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,1),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,1),(4,1),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,1),(4,-1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,1),(4,2)]+    , array (0,6) [(0,1),(1,0),(2,0),(3,-1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,-1),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,-1),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,-1),(4,-1)]+    , array (0,5) [(0,1),(1,0),(2,0),(3,2),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,2),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,0),(3,-2),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,0),(3,3)]+    , array (0,7) [(0,1),(1,0),(2,1),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,1),(1,0),(2,1),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,1),(1,0),(2,1),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,1),(1,0),(2,1),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,0),(4,2)]+    , array (0,6) [(0,1),(1,0),(2,1),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,1),(4,-1)]+    , array (0,5) [(0,1),(1,0),(2,1),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,-1),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,1),(3,2),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,1),(3,-2)]+    , array (0,6) [(0,1),(1,0),(2,-1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,0),(2,-1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,0),(2,-1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,-1),(3,0),(4,-1)]+    , array (0,5) [(0,1),(1,0),(2,-1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,-1),(3,1),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,-1),(3,-1),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,-1),(3,2)]+    , array (0,5) [(0,1),(1,0),(2,2),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,0),(2,2),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,0),(2,2),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,2),(3,-1)]+    , array (0,4) [(0,1),(1,0),(2,-2),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,0),(2,-2),(3,1)]+    , array (0,3) [(0,1),(1,0),(2,3),(3,0)]+    , array (0,2) [(0,1),(1,0),(2,-3)]+    , array (0,7) [(0,1),(1,1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,1),(1,1),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,1),(1,1),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,1),(1,1),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,0),(4,2)]+    , array (0,6) [(0,1),(1,1),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,1),(4,-1)]+    , array (0,5) [(0,1),(1,1),(2,0),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,-1),(4,1)]+    , array (0,4) [(0,1),(1,1),(2,0),(3,2),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,0),(3,-2)]+    , array (0,6) [(0,1),(1,1),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,1),(2,1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,1),(2,1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,1),(3,0),(4,-1)]+    , array (0,5) [(0,1),(1,1),(2,1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,1),(3,1),(4,1)]+    , array (0,4) [(0,1),(1,1),(2,1),(3,-1),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,1),(3,2)]+    , array (0,5) [(0,1),(1,1),(2,-1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,1),(2,-1),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,1),(2,-1),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,-1),(3,-1)]+    , array (0,4) [(0,1),(1,1),(2,2),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,1),(2,2),(3,1)]+    , array (0,3) [(0,1),(1,1),(2,-2),(3,0)]+    , array (0,2) [(0,1),(1,1),(2,3)]+    , array (0,6) [(0,1),(1,-1),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,1),(1,-1),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,1),(1,-1),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,1),(1,-1),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,1),(1,-1),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,-1),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,1),(1,-1),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,1),(1,-1),(2,0),(3,2)]+    , array (0,5) [(0,1),(1,-1),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,-1),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,-1),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,-1),(2,1),(3,-1)]+    , array (0,4) [(0,1),(1,-1),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,-1),(2,-1),(3,1)]+    , array (0,3) [(0,1),(1,-1),(2,2),(3,0)]+    , array (0,2) [(0,1),(1,-1),(2,-2)]+    , array (0,5) [(0,1),(1,2),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,1),(1,2),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,1),(1,2),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,1),(1,2),(2,0),(3,-1)]+    , array (0,4) [(0,1),(1,2),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,2),(2,1),(3,1)]+    , array (0,3) [(0,1),(1,2),(2,-1),(3,0)]+    , array (0,2) [(0,1),(1,2),(2,2)]+    , array (0,4) [(0,1),(1,-2),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,1),(1,-2),(2,0),(3,1)]+    , array (0,3) [(0,1),(1,-2),(2,1),(3,0)]+    , array (0,2) [(0,1),(1,-2),(2,-1)]+    , array (0,3) [(0,1),(1,3),(2,0),(3,0)]+    , array (0,2) [(0,1),(1,3),(2,1)]+    , array (0,2) [(0,1),(1,-3),(2,0)]+    , array (0,1) [(0,1),(1,4)]+    , array (0,7) [(0,-1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (0,6) [(0,-1),(1,0),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (0,6) [(0,-1),(1,0),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,0),(4,0),(5,-1)]+    , array (0,6) [(0,-1),(1,0),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,0),(4,1),(5,1)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,0),(4,-1),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,0),(4,2)]+    , array (0,6) [(0,-1),(1,0),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,1),(4,0),(5,1)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,1),(4,1),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,1),(4,-1)]+    , array (0,5) [(0,-1),(1,0),(2,0),(3,-1),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,-1),(4,1)]+    , array (0,4) [(0,-1),(1,0),(2,0),(3,2),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,0),(3,-2)]+    , array (0,6) [(0,-1),(1,0),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,-1),(1,0),(2,1),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,-1),(1,0),(2,1),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,1),(3,0),(4,-1)]+    , array (0,5) [(0,-1),(1,0),(2,1),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,1),(3,1),(4,1)]+    , array (0,4) [(0,-1),(1,0),(2,1),(3,-1),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,1),(3,2)]+    , array (0,5) [(0,-1),(1,0),(2,-1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,0),(2,-1),(3,0),(4,1)]+    , array (0,4) [(0,-1),(1,0),(2,-1),(3,1),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,-1),(3,-1)]+    , array (0,4) [(0,-1),(1,0),(2,2),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,0),(2,2),(3,1)]+    , array (0,3) [(0,-1),(1,0),(2,-2),(3,0)]+    , array (0,2) [(0,-1),(1,0),(2,3)]+    , array (0,6) [(0,-1),(1,1),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,-1),(1,1),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,-1),(1,1),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,-1),(1,1),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,-1),(1,1),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,1),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,-1),(1,1),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,-1),(1,1),(2,0),(3,2)]+    , array (0,5) [(0,-1),(1,1),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,1),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,-1),(1,1),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,-1),(1,1),(2,1),(3,-1)]+    , array (0,4) [(0,-1),(1,1),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,1),(2,-1),(3,1)]+    , array (0,3) [(0,-1),(1,1),(2,2),(3,0)]+    , array (0,2) [(0,-1),(1,1),(2,-2)]+    , array (0,5) [(0,-1),(1,-1),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,-1),(1,-1),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,-1),(1,-1),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,-1),(1,-1),(2,0),(3,-1)]+    , array (0,4) [(0,-1),(1,-1),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,-1),(2,1),(3,1)]+    , array (0,3) [(0,-1),(1,-1),(2,-1),(3,0)]+    , array (0,2) [(0,-1),(1,-1),(2,2)]+    , array (0,4) [(0,-1),(1,2),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,-1),(1,2),(2,0),(3,1)]+    , array (0,3) [(0,-1),(1,2),(2,1),(3,0)]+    , array (0,2) [(0,-1),(1,2),(2,-1)]+    , array (0,3) [(0,-1),(1,-2),(2,0),(3,0)]+    , array (0,2) [(0,-1),(1,-2),(2,1)]+    , array (0,2) [(0,-1),(1,3),(2,0)]+    , array (0,1) [(0,-1),(1,-3)]+    , array (0,6) [(0,2),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (0,5) [(0,2),(1,0),(2,0),(3,0),(4,0),(5,1)]+    , array (0,5) [(0,2),(1,0),(2,0),(3,0),(4,1),(5,0)]+    , array (0,4) [(0,2),(1,0),(2,0),(3,0),(4,-1)]+    , array (0,5) [(0,2),(1,0),(2,0),(3,1),(4,0),(5,0)]+    , array (0,4) [(0,2),(1,0),(2,0),(3,1),(4,1)]+    , array (0,4) [(0,2),(1,0),(2,0),(3,-1),(4,0)]+    , array (0,3) [(0,2),(1,0),(2,0),(3,2)]+    , array (0,5) [(0,2),(1,0),(2,1),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,2),(1,0),(2,1),(3,0),(4,1)]+    , array (0,4) [(0,2),(1,0),(2,1),(3,1),(4,0)]+    , array (0,3) [(0,2),(1,0),(2,1),(3,-1)]+    , array (0,4) [(0,2),(1,0),(2,-1),(3,0),(4,0)]+    , array (0,3) [(0,2),(1,0),(2,-1),(3,1)]+    , array (0,3) [(0,2),(1,0),(2,2),(3,0)]+    , array (0,2) [(0,2),(1,0),(2,-2)]+    , array (0,5) [(0,2),(1,1),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,2),(1,1),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,2),(1,1),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,2),(1,1),(2,0),(3,-1)]+    , array (0,4) [(0,2),(1,1),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,2),(1,1),(2,1),(3,1)]+    , array (0,3) [(0,2),(1,1),(2,-1),(3,0)]+    , array (0,2) [(0,2),(1,1),(2,2)]+    , array (0,4) [(0,2),(1,-1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,2),(1,-1),(2,0),(3,1)]+    , array (0,3) [(0,2),(1,-1),(2,1),(3,0)]+    , array (0,2) [(0,2),(1,-1),(2,-1)]+    , array (0,3) [(0,2),(1,2),(2,0),(3,0)]+    , array (0,2) [(0,2),(1,2),(2,1)]+    , array (0,2) [(0,2),(1,-2),(2,0)]+    , array (0,1) [(0,2),(1,3)]+    , array (0,5) [(0,-2),(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (0,4) [(0,-2),(1,0),(2,0),(3,0),(4,1)]+    , array (0,4) [(0,-2),(1,0),(2,0),(3,1),(4,0)]+    , array (0,3) [(0,-2),(1,0),(2,0),(3,-1)]+    , array (0,4) [(0,-2),(1,0),(2,1),(3,0),(4,0)]+    , array (0,3) [(0,-2),(1,0),(2,1),(3,1)]+    , array (0,3) [(0,-2),(1,0),(2,-1),(3,0)]+    , array (0,2) [(0,-2),(1,0),(2,2)]+    , array (0,4) [(0,-2),(1,1),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,-2),(1,1),(2,0),(3,1)]+    , array (0,3) [(0,-2),(1,1),(2,1),(3,0)]+    , array (0,2) [(0,-2),(1,1),(2,-1)]+    , array (0,3) [(0,-2),(1,-1),(2,0),(3,0)]+    , array (0,2) [(0,-2),(1,-1),(2,1)]+    , array (0,2) [(0,-2),(1,2),(2,0)]+    , array (0,1) [(0,-2),(1,-2)]+    , array (0,4) [(0,3),(1,0),(2,0),(3,0),(4,0)]+    , array (0,3) [(0,3),(1,0),(2,0),(3,1)]+    , array (0,3) [(0,3),(1,0),(2,1),(3,0)]+    , array (0,2) [(0,3),(1,0),(2,-1)]+    , array (0,3) [(0,3),(1,1),(2,0),(3,0)]+    , array (0,2) [(0,3),(1,1),(2,1)]+    , array (0,2) [(0,3),(1,-1),(2,0)]+    , array (0,1) [(0,3),(1,2)]+    , array (0,3) [(0,-3),(1,0),(2,0),(3,0)]+    , array (0,2) [(0,-3),(1,0),(2,1)]+    , array (0,2) [(0,-3),(1,1),(2,0)]+    , array (0,1) [(0,-3),(1,-1)]+    , array (0,2) [(0,4),(1,0),(2,0)]+    , array (0,1) [(0,4),(1,1)]+    , array (0,1) [(0,-4),(1,0)]+    , array (0,0) [(0,5)]+    , array (1,9) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0),(9,0)]+    , array (1,8) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,1)]+    , array (1,8) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,1),(8,0)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,0),(7,-1)]+    , array (1,8) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,1),(7,0),(8,0)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,1),(7,1)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,-1),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,0),(6,2)]+    , array (1,8) [(1,0),(2,0),(3,0),(4,0),(5,1),(6,0),(7,0),(8,0)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,1),(6,0),(7,1)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,1),(6,1),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,1),(6,-1)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,0),(5,-1),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,-1),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,0),(5,2),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,0),(5,-2)]+    , array (1,8) [(1,0),(2,0),(3,0),(4,1),(5,0),(6,0),(7,0),(8,0)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,1),(5,0),(6,0),(7,1)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,1),(5,0),(6,1),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,1),(5,0),(6,-1)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,1),(5,1),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,1),(5,1),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,1),(5,-1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,1),(5,2)]+    , array (1,7) [(1,0),(2,0),(3,0),(4,-1),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,-1),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,-1),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,-1),(5,-1)]+    , array (1,6) [(1,0),(2,0),(3,0),(4,2),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,2),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,0),(4,-2),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,0),(4,3)]+    , array (1,8) [(1,0),(2,0),(3,1),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (1,7) [(1,0),(2,0),(3,1),(4,0),(5,0),(6,0),(7,1)]+    , array (1,7) [(1,0),(2,0),(3,1),(4,0),(5,0),(6,1),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,0),(5,0),(6,-1)]+    , array (1,7) [(1,0),(2,0),(3,1),(4,0),(5,1),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,0),(5,1),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,0),(5,-1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,0),(5,2)]+    , array (1,7) [(1,0),(2,0),(3,1),(4,1),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,1),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,1),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,1),(5,-1)]+    , array (1,6) [(1,0),(2,0),(3,1),(4,-1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,-1),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,1),(4,2),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,1),(4,-2)]+    , array (1,7) [(1,0),(2,0),(3,-1),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,0),(3,-1),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,0),(3,-1),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,-1),(4,0),(5,-1)]+    , array (1,6) [(1,0),(2,0),(3,-1),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,-1),(4,1),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,-1),(4,-1),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,-1),(4,2)]+    , array (1,6) [(1,0),(2,0),(3,2),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,0),(3,2),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,0),(3,2),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,2),(4,-1)]+    , array (1,5) [(1,0),(2,0),(3,-2),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,0),(3,-2),(4,1)]+    , array (1,4) [(1,0),(2,0),(3,3),(4,0)]+    , array (1,3) [(1,0),(2,0),(3,-3)]+    , array (1,8) [(1,0),(2,1),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (1,7) [(1,0),(2,1),(3,0),(4,0),(5,0),(6,0),(7,1)]+    , array (1,7) [(1,0),(2,1),(3,0),(4,0),(5,0),(6,1),(7,0)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,0),(5,0),(6,-1)]+    , array (1,7) [(1,0),(2,1),(3,0),(4,0),(5,1),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,0),(5,1),(6,1)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,0),(5,-1),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,0),(5,2)]+    , array (1,7) [(1,0),(2,1),(3,0),(4,1),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,1),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,1),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,1),(5,-1)]+    , array (1,6) [(1,0),(2,1),(3,0),(4,-1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,-1),(5,1)]+    , array (1,5) [(1,0),(2,1),(3,0),(4,2),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,0),(4,-2)]+    , array (1,7) [(1,0),(2,1),(3,1),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,1),(3,1),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,1),(3,1),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,1),(4,0),(5,-1)]+    , array (1,6) [(1,0),(2,1),(3,1),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,1),(4,1),(5,1)]+    , array (1,5) [(1,0),(2,1),(3,1),(4,-1),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,1),(4,2)]+    , array (1,6) [(1,0),(2,1),(3,-1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,1),(3,-1),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,1),(3,-1),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,-1),(4,-1)]+    , array (1,5) [(1,0),(2,1),(3,2),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,1),(3,2),(4,1)]+    , array (1,4) [(1,0),(2,1),(3,-2),(4,0)]+    , array (1,3) [(1,0),(2,1),(3,3)]+    , array (1,7) [(1,0),(2,-1),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,0),(2,-1),(3,0),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,0),(2,-1),(3,0),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,0),(2,-1),(3,0),(4,0),(5,-1)]+    , array (1,6) [(1,0),(2,-1),(3,0),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,-1),(3,0),(4,1),(5,1)]+    , array (1,5) [(1,0),(2,-1),(3,0),(4,-1),(5,0)]+    , array (1,4) [(1,0),(2,-1),(3,0),(4,2)]+    , array (1,6) [(1,0),(2,-1),(3,1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,-1),(3,1),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,-1),(3,1),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,-1),(3,1),(4,-1)]+    , array (1,5) [(1,0),(2,-1),(3,-1),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,-1),(3,-1),(4,1)]+    , array (1,4) [(1,0),(2,-1),(3,2),(4,0)]+    , array (1,3) [(1,0),(2,-1),(3,-2)]+    , array (1,6) [(1,0),(2,2),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,0),(2,2),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,0),(2,2),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,0),(2,2),(3,0),(4,-1)]+    , array (1,5) [(1,0),(2,2),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,2),(3,1),(4,1)]+    , array (1,4) [(1,0),(2,2),(3,-1),(4,0)]+    , array (1,3) [(1,0),(2,2),(3,2)]+    , array (1,5) [(1,0),(2,-2),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,0),(2,-2),(3,0),(4,1)]+    , array (1,4) [(1,0),(2,-2),(3,1),(4,0)]+    , array (1,3) [(1,0),(2,-2),(3,-1)]+    , array (1,4) [(1,0),(2,3),(3,0),(4,0)]+    , array (1,3) [(1,0),(2,3),(3,1)]+    , array (1,3) [(1,0),(2,-3),(3,0)]+    , array (1,2) [(1,0),(2,4)]+    , array (1,8) [(1,1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (1,7) [(1,1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,1)]+    , array (1,7) [(1,1),(2,0),(3,0),(4,0),(5,0),(6,1),(7,0)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,0),(5,0),(6,-1)]+    , array (1,7) [(1,1),(2,0),(3,0),(4,0),(5,1),(6,0),(7,0)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,0),(5,1),(6,1)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,0),(5,-1),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,0),(5,2)]+    , array (1,7) [(1,1),(2,0),(3,0),(4,1),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,1),(5,0),(6,1)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,1),(5,1),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,1),(5,-1)]+    , array (1,6) [(1,1),(2,0),(3,0),(4,-1),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,-1),(5,1)]+    , array (1,5) [(1,1),(2,0),(3,0),(4,2),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,0),(4,-2)]+    , array (1,7) [(1,1),(2,0),(3,1),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,1),(2,0),(3,1),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,1),(2,0),(3,1),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,1),(4,0),(5,-1)]+    , array (1,6) [(1,1),(2,0),(3,1),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,1),(4,1),(5,1)]+    , array (1,5) [(1,1),(2,0),(3,1),(4,-1),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,1),(4,2)]+    , array (1,6) [(1,1),(2,0),(3,-1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,0),(3,-1),(4,0),(5,1)]+    , array (1,5) [(1,1),(2,0),(3,-1),(4,1),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,-1),(4,-1)]+    , array (1,5) [(1,1),(2,0),(3,2),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,0),(3,2),(4,1)]+    , array (1,4) [(1,1),(2,0),(3,-2),(4,0)]+    , array (1,3) [(1,1),(2,0),(3,3)]+    , array (1,7) [(1,1),(2,1),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,1),(2,1),(3,0),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,1),(2,1),(3,0),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,1),(2,1),(3,0),(4,0),(5,-1)]+    , array (1,6) [(1,1),(2,1),(3,0),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,1),(3,0),(4,1),(5,1)]+    , array (1,5) [(1,1),(2,1),(3,0),(4,-1),(5,0)]+    , array (1,4) [(1,1),(2,1),(3,0),(4,2)]+    , array (1,6) [(1,1),(2,1),(3,1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,1),(3,1),(4,0),(5,1)]+    , array (1,5) [(1,1),(2,1),(3,1),(4,1),(5,0)]+    , array (1,4) [(1,1),(2,1),(3,1),(4,-1)]+    , array (1,5) [(1,1),(2,1),(3,-1),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,1),(3,-1),(4,1)]+    , array (1,4) [(1,1),(2,1),(3,2),(4,0)]+    , array (1,3) [(1,1),(2,1),(3,-2)]+    , array (1,6) [(1,1),(2,-1),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,1),(2,-1),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,1),(2,-1),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,1),(2,-1),(3,0),(4,-1)]+    , array (1,5) [(1,1),(2,-1),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,-1),(3,1),(4,1)]+    , array (1,4) [(1,1),(2,-1),(3,-1),(4,0)]+    , array (1,3) [(1,1),(2,-1),(3,2)]+    , array (1,5) [(1,1),(2,2),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,1),(2,2),(3,0),(4,1)]+    , array (1,4) [(1,1),(2,2),(3,1),(4,0)]+    , array (1,3) [(1,1),(2,2),(3,-1)]+    , array (1,4) [(1,1),(2,-2),(3,0),(4,0)]+    , array (1,3) [(1,1),(2,-2),(3,1)]+    , array (1,3) [(1,1),(2,3),(3,0)]+    , array (1,2) [(1,1),(2,-3)]+    , array (1,7) [(1,-1),(2,0),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (1,6) [(1,-1),(2,0),(3,0),(4,0),(5,0),(6,1)]+    , array (1,6) [(1,-1),(2,0),(3,0),(4,0),(5,1),(6,0)]+    , array (1,5) [(1,-1),(2,0),(3,0),(4,0),(5,-1)]+    , array (1,6) [(1,-1),(2,0),(3,0),(4,1),(5,0),(6,0)]+    , array (1,5) [(1,-1),(2,0),(3,0),(4,1),(5,1)]+    , array (1,5) [(1,-1),(2,0),(3,0),(4,-1),(5,0)]+    , array (1,4) [(1,-1),(2,0),(3,0),(4,2)]+    , array (1,6) [(1,-1),(2,0),(3,1),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,-1),(2,0),(3,1),(4,0),(5,1)]+    , array (1,5) [(1,-1),(2,0),(3,1),(4,1),(5,0)]+    , array (1,4) [(1,-1),(2,0),(3,1),(4,-1)]+    , array (1,5) [(1,-1),(2,0),(3,-1),(4,0),(5,0)]+    , array (1,4) [(1,-1),(2,0),(3,-1),(4,1)]+    , array (1,4) [(1,-1),(2,0),(3,2),(4,0)]+    , array (1,3) [(1,-1),(2,0),(3,-2)]+    , array (1,6) [(1,-1),(2,1),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,-1),(2,1),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,-1),(2,1),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,-1),(2,1),(3,0),(4,-1)]+    , array (1,5) [(1,-1),(2,1),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,-1),(2,1),(3,1),(4,1)]+    , array (1,4) [(1,-1),(2,1),(3,-1),(4,0)]+    , array (1,3) [(1,-1),(2,1),(3,2)]+    , array (1,5) [(1,-1),(2,-1),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,-1),(2,-1),(3,0),(4,1)]+    , array (1,4) [(1,-1),(2,-1),(3,1),(4,0)]+    , array (1,3) [(1,-1),(2,-1),(3,-1)]+    , array (1,4) [(1,-1),(2,2),(3,0),(4,0)]+    , array (1,3) [(1,-1),(2,2),(3,1)]+    , array (1,3) [(1,-1),(2,-2),(3,0)]+    , array (1,2) [(1,-1),(2,3)]+    , array (1,6) [(1,2),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (1,5) [(1,2),(2,0),(3,0),(4,0),(5,1)]+    , array (1,5) [(1,2),(2,0),(3,0),(4,1),(5,0)]+    , array (1,4) [(1,2),(2,0),(3,0),(4,-1)]+    , array (1,5) [(1,2),(2,0),(3,1),(4,0),(5,0)]+    , array (1,4) [(1,2),(2,0),(3,1),(4,1)]+    , array (1,4) [(1,2),(2,0),(3,-1),(4,0)]+    , array (1,3) [(1,2),(2,0),(3,2)]+    , array (1,5) [(1,2),(2,1),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,2),(2,1),(3,0),(4,1)]+    , array (1,4) [(1,2),(2,1),(3,1),(4,0)]+    , array (1,3) [(1,2),(2,1),(3,-1)]+    , array (1,4) [(1,2),(2,-1),(3,0),(4,0)]+    , array (1,3) [(1,2),(2,-1),(3,1)]+    , array (1,3) [(1,2),(2,2),(3,0)]+    , array (1,2) [(1,2),(2,-2)]+    , array (1,5) [(1,-2),(2,0),(3,0),(4,0),(5,0)]+    , array (1,4) [(1,-2),(2,0),(3,0),(4,1)]+    , array (1,4) [(1,-2),(2,0),(3,1),(4,0)]+    , array (1,3) [(1,-2),(2,0),(3,-1)]+    , array (1,4) [(1,-2),(2,1),(3,0),(4,0)]+    , array (1,3) [(1,-2),(2,1),(3,1)]+    , array (1,3) [(1,-2),(2,-1),(3,0)]+    , array (1,2) [(1,-2),(2,2)]+    , array (1,4) [(1,3),(2,0),(3,0),(4,0)]+    , array (1,3) [(1,3),(2,0),(3,1)]+    , array (1,3) [(1,3),(2,1),(3,0)]+    , array (1,2) [(1,3),(2,-1)]+    , array (1,3) [(1,-3),(2,0),(3,0)]+    , array (1,2) [(1,-3),(2,1)]+    , array (1,2) [(1,4),(2,0)]+    , array (1,1) [(1,-4)]+    , array (-1,6) [(-1,0),(0,0),(1,0),(2,0),(3,0),(4,0),(5,0),(6,0)]+    , array (-1,5) [(-1,0),(0,0),(1,0),(2,0),(3,0),(4,0),(5,1)]+    , array (-1,5) [(-1,0),(0,0),(1,0),(2,0),(3,0),(4,1),(5,0)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,0),(3,0),(4,-1)]+    , array (-1,5) [(-1,0),(0,0),(1,0),(2,0),(3,1),(4,0),(5,0)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,0),(3,1),(4,1)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,0),(3,-1),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,0),(3,2)]+    , array (-1,5) [(-1,0),(0,0),(1,0),(2,1),(3,0),(4,0),(5,0)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,1),(3,0),(4,1)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,1),(3,1),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,1),(3,-1)]+    , array (-1,4) [(-1,0),(0,0),(1,0),(2,-1),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,-1),(3,1)]+    , array (-1,3) [(-1,0),(0,0),(1,0),(2,2),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,0),(2,-2)]+    , array (-1,5) [(-1,0),(0,0),(1,1),(2,0),(3,0),(4,0),(5,0)]+    , array (-1,4) [(-1,0),(0,0),(1,1),(2,0),(3,0),(4,1)]+    , array (-1,4) [(-1,0),(0,0),(1,1),(2,0),(3,1),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,1),(2,0),(3,-1)]+    , array (-1,4) [(-1,0),(0,0),(1,1),(2,1),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,1),(2,1),(3,1)]+    , array (-1,3) [(-1,0),(0,0),(1,1),(2,-1),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,1),(2,2)]+    , array (-1,4) [(-1,0),(0,0),(1,-1),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,0),(1,-1),(2,0),(3,1)]+    , array (-1,3) [(-1,0),(0,0),(1,-1),(2,1),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,-1),(2,-1)]+    , array (-1,3) [(-1,0),(0,0),(1,2),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,0),(1,2),(2,1)]+    , array (-1,2) [(-1,0),(0,0),(1,-2),(2,0)]+    , array (-1,1) [(-1,0),(0,0),(1,3)]+    , array (-1,5) [(-1,0),(0,1),(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (-1,4) [(-1,0),(0,1),(1,0),(2,0),(3,0),(4,1)]+    , array (-1,4) [(-1,0),(0,1),(1,0),(2,0),(3,1),(4,0)]+    , array (-1,3) [(-1,0),(0,1),(1,0),(2,0),(3,-1)]+    , array (-1,4) [(-1,0),(0,1),(1,0),(2,1),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,1),(1,0),(2,1),(3,1)]+    , array (-1,3) [(-1,0),(0,1),(1,0),(2,-1),(3,0)]+    , array (-1,2) [(-1,0),(0,1),(1,0),(2,2)]+    , array (-1,4) [(-1,0),(0,1),(1,1),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,1),(1,1),(2,0),(3,1)]+    , array (-1,3) [(-1,0),(0,1),(1,1),(2,1),(3,0)]+    , array (-1,2) [(-1,0),(0,1),(1,1),(2,-1)]+    , array (-1,3) [(-1,0),(0,1),(1,-1),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,1),(1,-1),(2,1)]+    , array (-1,2) [(-1,0),(0,1),(1,2),(2,0)]+    , array (-1,1) [(-1,0),(0,1),(1,-2)]+    , array (-1,4) [(-1,0),(0,-1),(1,0),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,0),(0,-1),(1,0),(2,0),(3,1)]+    , array (-1,3) [(-1,0),(0,-1),(1,0),(2,1),(3,0)]+    , array (-1,2) [(-1,0),(0,-1),(1,0),(2,-1)]+    , array (-1,3) [(-1,0),(0,-1),(1,1),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,-1),(1,1),(2,1)]+    , array (-1,2) [(-1,0),(0,-1),(1,-1),(2,0)]+    , array (-1,1) [(-1,0),(0,-1),(1,2)]+    , array (-1,3) [(-1,0),(0,2),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,0),(0,2),(1,0),(2,1)]+    , array (-1,2) [(-1,0),(0,2),(1,1),(2,0)]+    , array (-1,1) [(-1,0),(0,2),(1,-1)]+    , array (-1,2) [(-1,0),(0,-2),(1,0),(2,0)]+    , array (-1,1) [(-1,0),(0,-2),(1,1)]+    , array (-1,1) [(-1,0),(0,3),(1,0)]+    , array (-1,0) [(-1,0),(0,-3)]+    , array (-1,5) [(-1,1),(0,0),(1,0),(2,0),(3,0),(4,0),(5,0)]+    , array (-1,4) [(-1,1),(0,0),(1,0),(2,0),(3,0),(4,1)]+    , array (-1,4) [(-1,1),(0,0),(1,0),(2,0),(3,1),(4,0)]+    , array (-1,3) [(-1,1),(0,0),(1,0),(2,0),(3,-1)]+    , array (-1,4) [(-1,1),(0,0),(1,0),(2,1),(3,0),(4,0)]+    , array (-1,3) [(-1,1),(0,0),(1,0),(2,1),(3,1)]+    , array (-1,3) [(-1,1),(0,0),(1,0),(2,-1),(3,0)]+    , array (-1,2) [(-1,1),(0,0),(1,0),(2,2)]+    , array (-1,4) [(-1,1),(0,0),(1,1),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,1),(0,0),(1,1),(2,0),(3,1)]+    , array (-1,3) [(-1,1),(0,0),(1,1),(2,1),(3,0)]+    , array (-1,2) [(-1,1),(0,0),(1,1),(2,-1)]+    , array (-1,3) [(-1,1),(0,0),(1,-1),(2,0),(3,0)]+    , array (-1,2) [(-1,1),(0,0),(1,-1),(2,1)]+    , array (-1,2) [(-1,1),(0,0),(1,2),(2,0)]+    , array (-1,1) [(-1,1),(0,0),(1,-2)]+    , array (-1,4) [(-1,1),(0,1),(1,0),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,1),(0,1),(1,0),(2,0),(3,1)]+    , array (-1,3) [(-1,1),(0,1),(1,0),(2,1),(3,0)]+    , array (-1,2) [(-1,1),(0,1),(1,0),(2,-1)]+    , array (-1,3) [(-1,1),(0,1),(1,1),(2,0),(3,0)]+    , array (-1,2) [(-1,1),(0,1),(1,1),(2,1)]+    , array (-1,2) [(-1,1),(0,1),(1,-1),(2,0)]+    , array (-1,1) [(-1,1),(0,1),(1,2)]+    , array (-1,3) [(-1,1),(0,-1),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,1),(0,-1),(1,0),(2,1)]+    , array (-1,2) [(-1,1),(0,-1),(1,1),(2,0)]+    , array (-1,1) [(-1,1),(0,-1),(1,-1)]+    , array (-1,2) [(-1,1),(0,2),(1,0),(2,0)]+    , array (-1,1) [(-1,1),(0,2),(1,1)]+    , array (-1,1) [(-1,1),(0,-2),(1,0)]+    , array (-1,0) [(-1,1),(0,3)]+    , array (-1,4) [(-1,-1),(0,0),(1,0),(2,0),(3,0),(4,0)]+    , array (-1,3) [(-1,-1),(0,0),(1,0),(2,0),(3,1)]+    , array (-1,3) [(-1,-1),(0,0),(1,0),(2,1),(3,0)]+    , array (-1,2) [(-1,-1),(0,0),(1,0),(2,-1)]+    , array (-1,3) [(-1,-1),(0,0),(1,1),(2,0),(3,0)]+    , array (-1,2) [(-1,-1),(0,0),(1,1),(2,1)]+    , array (-1,2) [(-1,-1),(0,0),(1,-1),(2,0)]+    , array (-1,1) [(-1,-1),(0,0),(1,2)]+    , array (-1,3) [(-1,-1),(0,1),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,-1),(0,1),(1,0),(2,1)]+    , array (-1,2) [(-1,-1),(0,1),(1,1),(2,0)]+    , array (-1,1) [(-1,-1),(0,1),(1,-1)]+    , array (-1,2) [(-1,-1),(0,-1),(1,0),(2,0)]+    , array (-1,1) [(-1,-1),(0,-1),(1,1)]+    , array (-1,1) [(-1,-1),(0,2),(1,0)]+    , array (-1,0) [(-1,-1),(0,-2)]+    , array (-1,3) [(-1,2),(0,0),(1,0),(2,0),(3,0)]+    , array (-1,2) [(-1,2),(0,0),(1,0),(2,1)]+    , array (-1,2) [(-1,2),(0,0),(1,1),(2,0)]+    , array (-1,1) [(-1,2),(0,0),(1,-1)]+    , array (-1,2) [(-1,2),(0,1),(1,0),(2,0)]+    , array (-1,1) [(-1,2),(0,1),(1,1)]+    , array (-1,1) [(-1,2),(0,-1),(1,0)]+    , array (-1,0) [(-1,2),(0,2)]+    , array (-1,2) [(-1,-2),(0,0),(1,0),(2,0)]+    , array (-1,1) [(-1,-2),(0,0),(1,1)]+    , array (-1,1) [(-1,-2),(0,1),(1,0)]+    , array (-1,0) [(-1,-2),(0,-1)]+    , array (-1,1) [(-1,3),(0,0),(1,0)]+    , array (-1,0) [(-1,3),(0,1)]+    , array (-1,0) [(-1,-3),(0,0)]+    , array (-1,-1) [(-1,4)]+    , array (2,8) [(2,0),(3,0),(4,0),(5,0),(6,0),(7,0),(8,0)]+    , array (2,7) [(2,0),(3,0),(4,0),(5,0),(6,0),(7,1)]+    , array (2,7) [(2,0),(3,0),(4,0),(5,0),(6,1),(7,0)]+    , array (2,6) [(2,0),(3,0),(4,0),(5,0),(6,-1)]+    , array (2,7) [(2,0),(3,0),(4,0),(5,1),(6,0),(7,0)]+    , array (2,6) [(2,0),(3,0),(4,0),(5,1),(6,1)]+    , array (2,6) [(2,0),(3,0),(4,0),(5,-1),(6,0)]+    , array (2,5) [(2,0),(3,0),(4,0),(5,2)]+    , array (2,7) [(2,0),(3,0),(4,1),(5,0),(6,0),(7,0)]+    , array (2,6) [(2,0),(3,0),(4,1),(5,0),(6,1)]+    , array (2,6) [(2,0),(3,0),(4,1),(5,1),(6,0)]+    , array (2,5) [(2,0),(3,0),(4,1),(5,-1)]+    , array (2,6) [(2,0),(3,0),(4,-1),(5,0),(6,0)]+    , array (2,5) [(2,0),(3,0),(4,-1),(5,1)]+    , array (2,5) [(2,0),(3,0),(4,2),(5,0)]+    , array (2,4) [(2,0),(3,0),(4,-2)]+    , array (2,7) [(2,0),(3,1),(4,0),(5,0),(6,0),(7,0)]+    , array (2,6) [(2,0),(3,1),(4,0),(5,0),(6,1)]+    , array (2,6) [(2,0),(3,1),(4,0),(5,1),(6,0)]+    , array (2,5) [(2,0),(3,1),(4,0),(5,-1)]+    , array (2,6) [(2,0),(3,1),(4,1),(5,0),(6,0)]+    , array (2,5) [(2,0),(3,1),(4,1),(5,1)]+    , array (2,5) [(2,0),(3,1),(4,-1),(5,0)]+    , array (2,4) [(2,0),(3,1),(4,2)]+    , array (2,6) [(2,0),(3,-1),(4,0),(5,0),(6,0)]+    , array (2,5) [(2,0),(3,-1),(4,0),(5,1)]+    , array (2,5) [(2,0),(3,-1),(4,1),(5,0)]+    , array (2,4) [(2,0),(3,-1),(4,-1)]+    , array (2,5) [(2,0),(3,2),(4,0),(5,0)]+    , array (2,4) [(2,0),(3,2),(4,1)]+    , array (2,4) [(2,0),(3,-2),(4,0)]+    , array (2,3) [(2,0),(3,3)]+    , array (2,7) [(2,1),(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (2,6) [(2,1),(3,0),(4,0),(5,0),(6,1)]+    , array (2,6) [(2,1),(3,0),(4,0),(5,1),(6,0)]+    , array (2,5) [(2,1),(3,0),(4,0),(5,-1)]+    , array (2,6) [(2,1),(3,0),(4,1),(5,0),(6,0)]+    , array (2,5) [(2,1),(3,0),(4,1),(5,1)]+    , array (2,5) [(2,1),(3,0),(4,-1),(5,0)]+    , array (2,4) [(2,1),(3,0),(4,2)]+    , array (2,6) [(2,1),(3,1),(4,0),(5,0),(6,0)]+    , array (2,5) [(2,1),(3,1),(4,0),(5,1)]+    , array (2,5) [(2,1),(3,1),(4,1),(5,0)]+    , array (2,4) [(2,1),(3,1),(4,-1)]+    , array (2,5) [(2,1),(3,-1),(4,0),(5,0)]+    , array (2,4) [(2,1),(3,-1),(4,1)]+    , array (2,4) [(2,1),(3,2),(4,0)]+    , array (2,3) [(2,1),(3,-2)]+    , array (2,6) [(2,-1),(3,0),(4,0),(5,0),(6,0)]+    , array (2,5) [(2,-1),(3,0),(4,0),(5,1)]+    , array (2,5) [(2,-1),(3,0),(4,1),(5,0)]+    , array (2,4) [(2,-1),(3,0),(4,-1)]+    , array (2,5) [(2,-1),(3,1),(4,0),(5,0)]+    , array (2,4) [(2,-1),(3,1),(4,1)]+    , array (2,4) [(2,-1),(3,-1),(4,0)]+    , array (2,3) [(2,-1),(3,2)]+    , array (2,5) [(2,2),(3,0),(4,0),(5,0)]+    , array (2,4) [(2,2),(3,0),(4,1)]+    , array (2,4) [(2,2),(3,1),(4,0)]+    , array (2,3) [(2,2),(3,-1)]+    , array (2,4) [(2,-2),(3,0),(4,0)]+    , array (2,3) [(2,-2),(3,1)]+    , array (2,3) [(2,3),(3,0)]+    , array (2,2) [(2,-3)]+    , array (-2,3) [(-2,0),(-1,0),(0,0),(1,0),(2,0),(3,0)]+    , array (-2,2) [(-2,0),(-1,0),(0,0),(1,0),(2,1)]+    , array (-2,2) [(-2,0),(-1,0),(0,0),(1,1),(2,0)]+    , array (-2,1) [(-2,0),(-1,0),(0,0),(1,-1)]+    , array (-2,2) [(-2,0),(-1,0),(0,1),(1,0),(2,0)]+    , array (-2,1) [(-2,0),(-1,0),(0,1),(1,1)]+    , array (-2,1) [(-2,0),(-1,0),(0,-1),(1,0)]+    , array (-2,0) [(-2,0),(-1,0),(0,2)]+    , array (-2,2) [(-2,0),(-1,1),(0,0),(1,0),(2,0)]+    , array (-2,1) [(-2,0),(-1,1),(0,0),(1,1)]+    , array (-2,1) [(-2,0),(-1,1),(0,1),(1,0)]+    , array (-2,0) [(-2,0),(-1,1),(0,-1)]+    , array (-2,1) [(-2,0),(-1,-1),(0,0),(1,0)]+    , array (-2,0) [(-2,0),(-1,-1),(0,1)]+    , array (-2,0) [(-2,0),(-1,2),(0,0)]+    , array (-2,-1) [(-2,0),(-1,-2)]+    , array (-2,2) [(-2,1),(-1,0),(0,0),(1,0),(2,0)]+    , array (-2,1) [(-2,1),(-1,0),(0,0),(1,1)]+    , array (-2,1) [(-2,1),(-1,0),(0,1),(1,0)]+    , array (-2,0) [(-2,1),(-1,0),(0,-1)]+    , array (-2,1) [(-2,1),(-1,1),(0,0),(1,0)]+    , array (-2,0) [(-2,1),(-1,1),(0,1)]+    , array (-2,0) [(-2,1),(-1,-1),(0,0)]+    , array (-2,-1) [(-2,1),(-1,2)]+    , array (-2,1) [(-2,-1),(-1,0),(0,0),(1,0)]+    , array (-2,0) [(-2,-1),(-1,0),(0,1)]+    , array (-2,0) [(-2,-1),(-1,1),(0,0)]+    , array (-2,-1) [(-2,-1),(-1,-1)]+    , array (-2,0) [(-2,2),(-1,0),(0,0)]+    , array (-2,-1) [(-2,2),(-1,1)]+    , array (-2,-1) [(-2,-2),(-1,0)]+    , array (-2,-2) [(-2,3)]+    , array (3,7) [(3,0),(4,0),(5,0),(6,0),(7,0)]+    , array (3,6) [(3,0),(4,0),(5,0),(6,1)]+    , array (3,6) [(3,0),(4,0),(5,1),(6,0)]+    , array (3,5) [(3,0),(4,0),(5,-1)]+    , array (3,6) [(3,0),(4,1),(5,0),(6,0)]+    , array (3,5) [(3,0),(4,1),(5,1)]+    , array (3,5) [(3,0),(4,-1),(5,0)]+    , array (3,4) [(3,0),(4,2)]+    , array (3,6) [(3,1),(4,0),(5,0),(6,0)]+    , array (3,5) [(3,1),(4,0),(5,1)]+    , array (3,5) [(3,1),(4,1),(5,0)]+    , array (3,4) [(3,1),(4,-1)]+    , array (3,5) [(3,-1),(4,0),(5,0)]+    , array (3,4) [(3,-1),(4,1)]+    , array (3,4) [(3,2),(4,0)]+    , array (3,3) [(3,-2)]+    , array (-3,0) [(-3,0),(-2,0),(-1,0),(0,0)]+    , array (-3,-1) [(-3,0),(-2,0),(-1,1)]+    , array (-3,-1) [(-3,0),(-2,1),(-1,0)]+    , array (-3,-2) [(-3,0),(-2,-1)]+    , array (-3,-1) [(-3,1),(-2,0),(-1,0)]+    , array (-3,-2) [(-3,1),(-2,1)]+    , array (-3,-2) [(-3,-1),(-2,0)]+    , array (-3,-3) [(-3,2)]+    , array (4,6) [(4,0),(5,0),(6,0)]+    , array (4,5) [(4,0),(5,1)]+    , array (4,5) [(4,1),(5,0)]+    , array (4,4) [(4,-1)]+    , array (-4,-3) [(-4,0),(-3,0)]+    , array (-4,-4) [(-4,1)]+    , array (5,5) [(5,0)]+    , array (-5,-6) []+    ]+  , ...+  ]
+ test/diff/tiers-IntMapInt.out view
@@ -0,0 +1,571 @@+map length (tiers :: [[ IntMap Int ]])  =  [1,1,2,4,7,12,20,33,53,84,131,202,...]++length (list :: [ IntMap Int ])  =  Infinity++allUnique (list :: [ IntMap Int ])  =  True++ratioRepetitions (list :: [ IntMap Int ])  =  0 % 1++tiers :: [IntMap Int]  =+  [ [fromList []]+  , [fromList [(0,0)]]+  , [ fromList [(0,1)]+    , fromList [(1,0)]+    ]+  , [ fromList [(0,-1)]+    , fromList [(1,1)]+    , fromList [(0,0),(1,0)]+    , fromList [(-1,0)]+    ]+  , [ fromList [(0,2)]+    , fromList [(1,-1)]+    , fromList [(0,0),(1,1)]+    , fromList [(0,1),(1,0)]+    , fromList [(-1,1)]+    , fromList [(-1,0),(0,0)]+    , fromList [(2,0)]+    ]+  , [ fromList [(0,-2)]+    , fromList [(1,2)]+    , fromList [(0,0),(1,-1)]+    , fromList [(0,1),(1,1)]+    , fromList [(0,-1),(1,0)]+    , fromList [(-1,-1)]+    , fromList [(-1,1),(0,0)]+    , fromList [(-1,0),(0,1)]+    , fromList [(2,1)]+    , fromList [(0,0),(2,0)]+    , fromList [(-1,0),(1,0)]+    , fromList [(-2,0)]+    ]+  , [ fromList [(0,3)]+    , fromList [(1,-2)]+    , fromList [(0,0),(1,2)]+    , fromList [(0,1),(1,-1)]+    , fromList [(0,-1),(1,1)]+    , fromList [(0,2),(1,0)]+    , fromList [(-1,2)]+    , fromList [(-1,-1),(0,0)]+    , fromList [(-1,1),(0,1)]+    , fromList [(-1,0),(0,-1)]+    , fromList [(2,-1)]+    , fromList [(0,0),(2,1)]+    , fromList [(0,1),(2,0)]+    , fromList [(-1,1),(1,0)]+    , fromList [(-1,0),(1,1)]+    , fromList [(-2,1)]+    , fromList [(-1,0),(0,0),(1,0)]+    , fromList [(-2,0),(0,0)]+    , fromList [(1,0),(2,0)]+    , fromList [(3,0)]+    ]+  , [ fromList [(0,-3)]+    , fromList [(1,3)]+    , fromList [(0,0),(1,-2)]+    , fromList [(0,1),(1,2)]+    , fromList [(0,-1),(1,-1)]+    , fromList [(0,2),(1,1)]+    , fromList [(0,-2),(1,0)]+    , fromList [(-1,-2)]+    , fromList [(-1,2),(0,0)]+    , fromList [(-1,-1),(0,1)]+    , fromList [(-1,1),(0,-1)]+    , fromList [(-1,0),(0,2)]+    , fromList [(2,2)]+    , fromList [(0,0),(2,-1)]+    , fromList [(0,1),(2,1)]+    , fromList [(0,-1),(2,0)]+    , fromList [(-1,-1),(1,0)]+    , fromList [(-1,1),(1,1)]+    , fromList [(-1,0),(1,-1)]+    , fromList [(-2,-1)]+    , fromList [(-1,1),(0,0),(1,0)]+    , fromList [(-1,0),(0,0),(1,1)]+    , fromList [(-1,0),(0,1),(1,0)]+    , fromList [(-2,1),(0,0)]+    , fromList [(-2,0),(0,1)]+    , fromList [(1,0),(2,1)]+    , fromList [(1,1),(2,0)]+    , fromList [(3,1)]+    , fromList [(0,0),(1,0),(2,0)]+    , fromList [(0,0),(3,0)]+    , fromList [(-2,0),(1,0)]+    , fromList [(-1,0),(2,0)]+    , fromList [(-3,0)]+    ]+  , [ fromList [(0,4)]+    , fromList [(1,-3)]+    , fromList [(0,0),(1,3)]+    , fromList [(0,1),(1,-2)]+    , fromList [(0,-1),(1,2)]+    , fromList [(0,2),(1,-1)]+    , fromList [(0,-2),(1,1)]+    , fromList [(0,3),(1,0)]+    , fromList [(-1,3)]+    , fromList [(-1,-2),(0,0)]+    , fromList [(-1,2),(0,1)]+    , fromList [(-1,-1),(0,-1)]+    , fromList [(-1,1),(0,2)]+    , fromList [(-1,0),(0,-2)]+    , fromList [(2,-2)]+    , fromList [(0,0),(2,2)]+    , fromList [(0,1),(2,-1)]+    , fromList [(0,-1),(2,1)]+    , fromList [(0,2),(2,0)]+    , fromList [(-1,2),(1,0)]+    , fromList [(-1,-1),(1,1)]+    , fromList [(-1,1),(1,-1)]+    , fromList [(-1,0),(1,2)]+    , fromList [(-2,2)]+    , fromList [(-1,-1),(0,0),(1,0)]+    , fromList [(-1,1),(0,0),(1,1)]+    , fromList [(-1,0),(0,0),(1,-1)]+    , fromList [(-1,1),(0,1),(1,0)]+    , fromList [(-1,0),(0,1),(1,1)]+    , fromList [(-1,0),(0,-1),(1,0)]+    , fromList [(-2,-1),(0,0)]+    , fromList [(-2,1),(0,1)]+    , fromList [(-2,0),(0,-1)]+    , fromList [(1,0),(2,-1)]+    , fromList [(1,1),(2,1)]+    , fromList [(1,-1),(2,0)]+    , fromList [(3,-1)]+    , fromList [(0,0),(1,0),(2,1)]+    , fromList [(0,0),(1,1),(2,0)]+    , fromList [(0,1),(1,0),(2,0)]+    , fromList [(0,0),(3,1)]+    , fromList [(0,1),(3,0)]+    , fromList [(-2,1),(1,0)]+    , fromList [(-2,0),(1,1)]+    , fromList [(-1,0),(2,1)]+    , fromList [(-1,1),(2,0)]+    , fromList [(-3,1)]+    , fromList [(-2,0),(0,0),(1,0)]+    , fromList [(-1,0),(0,0),(2,0)]+    , fromList [(-3,0),(0,0)]+    , fromList [(1,0),(3,0)]+    , fromList [(-2,0),(-1,0)]+    , fromList [(4,0)]+    ]+  , [ fromList [(0,-4)]+    , fromList [(1,4)]+    , fromList [(0,0),(1,-3)]+    , fromList [(0,1),(1,3)]+    , fromList [(0,-1),(1,-2)]+    , fromList [(0,2),(1,2)]+    , fromList [(0,-2),(1,-1)]+    , fromList [(0,3),(1,1)]+    , fromList [(0,-3),(1,0)]+    , fromList [(-1,-3)]+    , fromList [(-1,3),(0,0)]+    , fromList [(-1,-2),(0,1)]+    , fromList [(-1,2),(0,-1)]+    , fromList [(-1,-1),(0,2)]+    , fromList [(-1,1),(0,-2)]+    , fromList [(-1,0),(0,3)]+    , fromList [(2,3)]+    , fromList [(0,0),(2,-2)]+    , fromList [(0,1),(2,2)]+    , fromList [(0,-1),(2,-1)]+    , fromList [(0,2),(2,1)]+    , fromList [(0,-2),(2,0)]+    , fromList [(-1,-2),(1,0)]+    , fromList [(-1,2),(1,1)]+    , fromList [(-1,-1),(1,-1)]+    , fromList [(-1,1),(1,2)]+    , fromList [(-1,0),(1,-2)]+    , fromList [(-2,-2)]+    , fromList [(-1,2),(0,0),(1,0)]+    , fromList [(-1,-1),(0,0),(1,1)]+    , fromList [(-1,1),(0,0),(1,-1)]+    , fromList [(-1,0),(0,0),(1,2)]+    , fromList [(-1,-1),(0,1),(1,0)]+    , fromList [(-1,1),(0,1),(1,1)]+    , fromList [(-1,0),(0,1),(1,-1)]+    , fromList [(-1,1),(0,-1),(1,0)]+    , fromList [(-1,0),(0,-1),(1,1)]+    , fromList [(-1,0),(0,2),(1,0)]+    , fromList [(-2,2),(0,0)]+    , fromList [(-2,-1),(0,1)]+    , fromList [(-2,1),(0,-1)]+    , fromList [(-2,0),(0,2)]+    , fromList [(1,0),(2,2)]+    , fromList [(1,1),(2,-1)]+    , fromList [(1,-1),(2,1)]+    , fromList [(1,2),(2,0)]+    , fromList [(3,2)]+    , fromList [(0,0),(1,0),(2,-1)]+    , fromList [(0,0),(1,1),(2,1)]+    , fromList [(0,0),(1,-1),(2,0)]+    , fromList [(0,1),(1,0),(2,1)]+    , fromList [(0,1),(1,1),(2,0)]+    , fromList [(0,-1),(1,0),(2,0)]+    , fromList [(0,0),(3,-1)]+    , fromList [(0,1),(3,1)]+    , fromList [(0,-1),(3,0)]+    , fromList [(-2,-1),(1,0)]+    , fromList [(-2,1),(1,1)]+    , fromList [(-2,0),(1,-1)]+    , fromList [(-1,0),(2,-1)]+    , fromList [(-1,1),(2,1)]+    , fromList [(-1,-1),(2,0)]+    , fromList [(-3,-1)]+    , fromList [(-2,1),(0,0),(1,0)]+    , fromList [(-2,0),(0,0),(1,1)]+    , fromList [(-2,0),(0,1),(1,0)]+    , fromList [(-1,0),(0,0),(2,1)]+    , fromList [(-1,1),(0,0),(2,0)]+    , fromList [(-1,0),(0,1),(2,0)]+    , fromList [(-3,1),(0,0)]+    , fromList [(-3,0),(0,1)]+    , fromList [(1,0),(3,1)]+    , fromList [(1,1),(3,0)]+    , fromList [(-2,1),(-1,0)]+    , fromList [(-2,0),(-1,1)]+    , fromList [(4,1)]+    , fromList [(0,0),(1,0),(3,0)]+    , fromList [(-2,0),(-1,0),(0,0)]+    , fromList [(0,0),(4,0)]+    , fromList [(-1,0),(1,0),(2,0)]+    , fromList [(-3,0),(1,0)]+    , fromList [(-1,0),(3,0)]+    , fromList [(-2,0),(2,0)]+    , fromList [(-4,0)]+    ]+  , [ fromList [(0,5)]+    , fromList [(1,-4)]+    , fromList [(0,0),(1,4)]+    , fromList [(0,1),(1,-3)]+    , fromList [(0,-1),(1,3)]+    , fromList [(0,2),(1,-2)]+    , fromList [(0,-2),(1,2)]+    , fromList [(0,3),(1,-1)]+    , fromList [(0,-3),(1,1)]+    , fromList [(0,4),(1,0)]+    , fromList [(-1,4)]+    , fromList [(-1,-3),(0,0)]+    , fromList [(-1,3),(0,1)]+    , fromList [(-1,-2),(0,-1)]+    , fromList [(-1,2),(0,2)]+    , fromList [(-1,-1),(0,-2)]+    , fromList [(-1,1),(0,3)]+    , fromList [(-1,0),(0,-3)]+    , fromList [(2,-3)]+    , fromList [(0,0),(2,3)]+    , fromList [(0,1),(2,-2)]+    , fromList [(0,-1),(2,2)]+    , fromList [(0,2),(2,-1)]+    , fromList [(0,-2),(2,1)]+    , fromList [(0,3),(2,0)]+    , fromList [(-1,3),(1,0)]+    , fromList [(-1,-2),(1,1)]+    , fromList [(-1,2),(1,-1)]+    , fromList [(-1,-1),(1,2)]+    , fromList [(-1,1),(1,-2)]+    , fromList [(-1,0),(1,3)]+    , fromList [(-2,3)]+    , fromList [(-1,-2),(0,0),(1,0)]+    , fromList [(-1,2),(0,0),(1,1)]+    , fromList [(-1,-1),(0,0),(1,-1)]+    , fromList [(-1,1),(0,0),(1,2)]+    , fromList [(-1,0),(0,0),(1,-2)]+    , fromList [(-1,2),(0,1),(1,0)]+    , fromList [(-1,-1),(0,1),(1,1)]+    , fromList [(-1,1),(0,1),(1,-1)]+    , fromList [(-1,0),(0,1),(1,2)]+    , fromList [(-1,-1),(0,-1),(1,0)]+    , fromList [(-1,1),(0,-1),(1,1)]+    , fromList [(-1,0),(0,-1),(1,-1)]+    , fromList [(-1,1),(0,2),(1,0)]+    , fromList [(-1,0),(0,2),(1,1)]+    , fromList [(-1,0),(0,-2),(1,0)]+    , fromList [(-2,-2),(0,0)]+    , fromList [(-2,2),(0,1)]+    , fromList [(-2,-1),(0,-1)]+    , fromList [(-2,1),(0,2)]+    , fromList [(-2,0),(0,-2)]+    , fromList [(1,0),(2,-2)]+    , fromList [(1,1),(2,2)]+    , fromList [(1,-1),(2,-1)]+    , fromList [(1,2),(2,1)]+    , fromList [(1,-2),(2,0)]+    , fromList [(3,-2)]+    , fromList [(0,0),(1,0),(2,2)]+    , fromList [(0,0),(1,1),(2,-1)]+    , fromList [(0,0),(1,-1),(2,1)]+    , fromList [(0,0),(1,2),(2,0)]+    , fromList [(0,1),(1,0),(2,-1)]+    , fromList [(0,1),(1,1),(2,1)]+    , fromList [(0,1),(1,-1),(2,0)]+    , fromList [(0,-1),(1,0),(2,1)]+    , fromList [(0,-1),(1,1),(2,0)]+    , fromList [(0,2),(1,0),(2,0)]+    , fromList [(0,0),(3,2)]+    , fromList [(0,1),(3,-1)]+    , fromList [(0,-1),(3,1)]+    , fromList [(0,2),(3,0)]+    , fromList [(-2,2),(1,0)]+    , fromList [(-2,-1),(1,1)]+    , fromList [(-2,1),(1,-1)]+    , fromList [(-2,0),(1,2)]+    , fromList [(-1,0),(2,2)]+    , fromList [(-1,1),(2,-1)]+    , fromList [(-1,-1),(2,1)]+    , fromList [(-1,2),(2,0)]+    , fromList [(-3,2)]+    , fromList [(-2,-1),(0,0),(1,0)]+    , fromList [(-2,1),(0,0),(1,1)]+    , fromList [(-2,0),(0,0),(1,-1)]+    , fromList [(-2,1),(0,1),(1,0)]+    , fromList [(-2,0),(0,1),(1,1)]+    , fromList [(-2,0),(0,-1),(1,0)]+    , fromList [(-1,0),(0,0),(2,-1)]+    , fromList [(-1,1),(0,0),(2,1)]+    , fromList [(-1,-1),(0,0),(2,0)]+    , fromList [(-1,0),(0,1),(2,1)]+    , fromList [(-1,1),(0,1),(2,0)]+    , fromList [(-1,0),(0,-1),(2,0)]+    , fromList [(-3,-1),(0,0)]+    , fromList [(-3,1),(0,1)]+    , fromList [(-3,0),(0,-1)]+    , fromList [(1,0),(3,-1)]+    , fromList [(1,1),(3,1)]+    , fromList [(1,-1),(3,0)]+    , fromList [(-2,-1),(-1,0)]+    , fromList [(-2,1),(-1,1)]+    , fromList [(-2,0),(-1,-1)]+    , fromList [(4,-1)]+    , fromList [(0,0),(1,0),(3,1)]+    , fromList [(0,0),(1,1),(3,0)]+    , fromList [(0,1),(1,0),(3,0)]+    , fromList [(-2,1),(-1,0),(0,0)]+    , fromList [(-2,0),(-1,1),(0,0)]+    , fromList [(-2,0),(-1,0),(0,1)]+    , fromList [(0,0),(4,1)]+    , fromList [(0,1),(4,0)]+    , fromList [(-1,0),(1,0),(2,1)]+    , fromList [(-1,1),(1,0),(2,0)]+    , fromList [(-1,0),(1,1),(2,0)]+    , fromList [(-3,1),(1,0)]+    , fromList [(-3,0),(1,1)]+    , fromList [(-1,0),(3,1)]+    , fromList [(-1,1),(3,0)]+    , fromList [(-2,1),(2,0)]+    , fromList [(-2,0),(2,1)]+    , fromList [(-4,1)]+    , fromList [(-1,0),(0,0),(1,0),(2,0)]+    , fromList [(-3,0),(0,0),(1,0)]+    , fromList [(-1,0),(0,0),(3,0)]+    , fromList [(-2,0),(0,0),(2,0)]+    , fromList [(-4,0),(0,0)]+    , fromList [(-2,0),(-1,0),(1,0)]+    , fromList [(1,0),(4,0)]+    , fromList [(-3,0),(-1,0)]+    , fromList [(2,0),(3,0)]+    , fromList [(5,0)]+    ]+  , [ fromList [(0,-5)]+    , fromList [(1,5)]+    , fromList [(0,0),(1,-4)]+    , fromList [(0,1),(1,4)]+    , fromList [(0,-1),(1,-3)]+    , fromList [(0,2),(1,3)]+    , fromList [(0,-2),(1,-2)]+    , fromList [(0,3),(1,2)]+    , fromList [(0,-3),(1,-1)]+    , fromList [(0,4),(1,1)]+    , fromList [(0,-4),(1,0)]+    , fromList [(-1,-4)]+    , fromList [(-1,4),(0,0)]+    , fromList [(-1,-3),(0,1)]+    , fromList [(-1,3),(0,-1)]+    , fromList [(-1,-2),(0,2)]+    , fromList [(-1,2),(0,-2)]+    , fromList [(-1,-1),(0,3)]+    , fromList [(-1,1),(0,-3)]+    , fromList [(-1,0),(0,4)]+    , fromList [(2,4)]+    , fromList [(0,0),(2,-3)]+    , fromList [(0,1),(2,3)]+    , fromList [(0,-1),(2,-2)]+    , fromList [(0,2),(2,2)]+    , fromList [(0,-2),(2,-1)]+    , fromList [(0,3),(2,1)]+    , fromList [(0,-3),(2,0)]+    , fromList [(-1,-3),(1,0)]+    , fromList [(-1,3),(1,1)]+    , fromList [(-1,-2),(1,-1)]+    , fromList [(-1,2),(1,2)]+    , fromList [(-1,-1),(1,-2)]+    , fromList [(-1,1),(1,3)]+    , fromList [(-1,0),(1,-3)]+    , fromList [(-2,-3)]+    , fromList [(-1,3),(0,0),(1,0)]+    , fromList [(-1,-2),(0,0),(1,1)]+    , fromList [(-1,2),(0,0),(1,-1)]+    , fromList [(-1,-1),(0,0),(1,2)]+    , fromList [(-1,1),(0,0),(1,-2)]+    , fromList [(-1,0),(0,0),(1,3)]+    , fromList [(-1,-2),(0,1),(1,0)]+    , fromList [(-1,2),(0,1),(1,1)]+    , fromList [(-1,-1),(0,1),(1,-1)]+    , fromList [(-1,1),(0,1),(1,2)]+    , fromList [(-1,0),(0,1),(1,-2)]+    , fromList [(-1,2),(0,-1),(1,0)]+    , fromList [(-1,-1),(0,-1),(1,1)]+    , fromList [(-1,1),(0,-1),(1,-1)]+    , fromList [(-1,0),(0,-1),(1,2)]+    , fromList [(-1,-1),(0,2),(1,0)]+    , fromList [(-1,1),(0,2),(1,1)]+    , fromList [(-1,0),(0,2),(1,-1)]+    , fromList [(-1,1),(0,-2),(1,0)]+    , fromList [(-1,0),(0,-2),(1,1)]+    , fromList [(-1,0),(0,3),(1,0)]+    , fromList [(-2,3),(0,0)]+    , fromList [(-2,-2),(0,1)]+    , fromList [(-2,2),(0,-1)]+    , fromList [(-2,-1),(0,2)]+    , fromList [(-2,1),(0,-2)]+    , fromList [(-2,0),(0,3)]+    , fromList [(1,0),(2,3)]+    , fromList [(1,1),(2,-2)]+    , fromList [(1,-1),(2,2)]+    , fromList [(1,2),(2,-1)]+    , fromList [(1,-2),(2,1)]+    , fromList [(1,3),(2,0)]+    , fromList [(3,3)]+    , fromList [(0,0),(1,0),(2,-2)]+    , fromList [(0,0),(1,1),(2,2)]+    , fromList [(0,0),(1,-1),(2,-1)]+    , fromList [(0,0),(1,2),(2,1)]+    , fromList [(0,0),(1,-2),(2,0)]+    , fromList [(0,1),(1,0),(2,2)]+    , fromList [(0,1),(1,1),(2,-1)]+    , fromList [(0,1),(1,-1),(2,1)]+    , fromList [(0,1),(1,2),(2,0)]+    , fromList [(0,-1),(1,0),(2,-1)]+    , fromList [(0,-1),(1,1),(2,1)]+    , fromList [(0,-1),(1,-1),(2,0)]+    , fromList [(0,2),(1,0),(2,1)]+    , fromList [(0,2),(1,1),(2,0)]+    , fromList [(0,-2),(1,0),(2,0)]+    , fromList [(0,0),(3,-2)]+    , fromList [(0,1),(3,2)]+    , fromList [(0,-1),(3,-1)]+    , fromList [(0,2),(3,1)]+    , fromList [(0,-2),(3,0)]+    , fromList [(-2,-2),(1,0)]+    , fromList [(-2,2),(1,1)]+    , fromList [(-2,-1),(1,-1)]+    , fromList [(-2,1),(1,2)]+    , fromList [(-2,0),(1,-2)]+    , fromList [(-1,0),(2,-2)]+    , fromList [(-1,1),(2,2)]+    , fromList [(-1,-1),(2,-1)]+    , fromList [(-1,2),(2,1)]+    , fromList [(-1,-2),(2,0)]+    , fromList [(-3,-2)]+    , fromList [(-2,2),(0,0),(1,0)]+    , fromList [(-2,-1),(0,0),(1,1)]+    , fromList [(-2,1),(0,0),(1,-1)]+    , fromList [(-2,0),(0,0),(1,2)]+    , fromList [(-2,-1),(0,1),(1,0)]+    , fromList [(-2,1),(0,1),(1,1)]+    , fromList [(-2,0),(0,1),(1,-1)]+    , fromList [(-2,1),(0,-1),(1,0)]+    , fromList [(-2,0),(0,-1),(1,1)]+    , fromList [(-2,0),(0,2),(1,0)]+    , fromList [(-1,0),(0,0),(2,2)]+    , fromList [(-1,1),(0,0),(2,-1)]+    , fromList [(-1,-1),(0,0),(2,1)]+    , fromList [(-1,2),(0,0),(2,0)]+    , fromList [(-1,0),(0,1),(2,-1)]+    , fromList [(-1,1),(0,1),(2,1)]+    , fromList [(-1,-1),(0,1),(2,0)]+    , fromList [(-1,0),(0,-1),(2,1)]+    , fromList [(-1,1),(0,-1),(2,0)]+    , fromList [(-1,0),(0,2),(2,0)]+    , fromList [(-3,2),(0,0)]+    , fromList [(-3,-1),(0,1)]+    , fromList [(-3,1),(0,-1)]+    , fromList [(-3,0),(0,2)]+    , fromList [(1,0),(3,2)]+    , fromList [(1,1),(3,-1)]+    , fromList [(1,-1),(3,1)]+    , fromList [(1,2),(3,0)]+    , fromList [(-2,2),(-1,0)]+    , fromList [(-2,-1),(-1,1)]+    , fromList [(-2,1),(-1,-1)]+    , fromList [(-2,0),(-1,2)]+    , fromList [(4,2)]+    , fromList [(0,0),(1,0),(3,-1)]+    , fromList [(0,0),(1,1),(3,1)]+    , fromList [(0,0),(1,-1),(3,0)]+    , fromList [(0,1),(1,0),(3,1)]+    , fromList [(0,1),(1,1),(3,0)]+    , fromList [(0,-1),(1,0),(3,0)]+    , fromList [(-2,-1),(-1,0),(0,0)]+    , fromList [(-2,1),(-1,1),(0,0)]+    , fromList [(-2,0),(-1,-1),(0,0)]+    , fromList [(-2,1),(-1,0),(0,1)]+    , fromList [(-2,0),(-1,1),(0,1)]+    , fromList [(-2,0),(-1,0),(0,-1)]+    , fromList [(0,0),(4,-1)]+    , fromList [(0,1),(4,1)]+    , fromList [(0,-1),(4,0)]+    , fromList [(-1,0),(1,0),(2,-1)]+    , fromList [(-1,1),(1,0),(2,1)]+    , fromList [(-1,-1),(1,0),(2,0)]+    , fromList [(-1,0),(1,1),(2,1)]+    , fromList [(-1,1),(1,1),(2,0)]+    , fromList [(-1,0),(1,-1),(2,0)]+    , fromList [(-3,-1),(1,0)]+    , fromList [(-3,1),(1,1)]+    , fromList [(-3,0),(1,-1)]+    , fromList [(-1,0),(3,-1)]+    , fromList [(-1,1),(3,1)]+    , fromList [(-1,-1),(3,0)]+    , fromList [(-2,-1),(2,0)]+    , fromList [(-2,1),(2,1)]+    , fromList [(-2,0),(2,-1)]+    , fromList [(-4,-1)]+    , fromList [(-1,0),(0,0),(1,0),(2,1)]+    , fromList [(-1,1),(0,0),(1,0),(2,0)]+    , fromList [(-1,0),(0,0),(1,1),(2,0)]+    , fromList [(-1,0),(0,1),(1,0),(2,0)]+    , fromList [(-3,1),(0,0),(1,0)]+    , fromList [(-3,0),(0,0),(1,1)]+    , fromList [(-3,0),(0,1),(1,0)]+    , fromList [(-1,0),(0,0),(3,1)]+    , fromList [(-1,1),(0,0),(3,0)]+    , fromList [(-1,0),(0,1),(3,0)]+    , fromList [(-2,1),(0,0),(2,0)]+    , fromList [(-2,0),(0,0),(2,1)]+    , fromList [(-2,0),(0,1),(2,0)]+    , fromList [(-4,1),(0,0)]+    , fromList [(-4,0),(0,1)]+    , fromList [(-2,1),(-1,0),(1,0)]+    , fromList [(-2,0),(-1,1),(1,0)]+    , fromList [(-2,0),(-1,0),(1,1)]+    , fromList [(1,0),(4,1)]+    , fromList [(1,1),(4,0)]+    , fromList [(-3,1),(-1,0)]+    , fromList [(-3,0),(-1,1)]+    , fromList [(2,0),(3,1)]+    , fromList [(2,1),(3,0)]+    , fromList [(5,1)]+    , fromList [(-2,0),(-1,0),(0,0),(1,0)]+    , fromList [(0,0),(1,0),(4,0)]+    , fromList [(-3,0),(-1,0),(0,0)]+    , fromList [(0,0),(2,0),(3,0)]+    , fromList [(0,0),(5,0)]+    , fromList [(-1,0),(1,0),(3,0)]+    , fromList [(-2,0),(1,0),(2,0)]+    , fromList [(-4,0),(1,0)]+    , fromList [(-1,0),(4,0)]+    , fromList [(-3,0),(2,0)]+    , fromList [(-2,0),(3,0)]+    , fromList [(-5,0)]+    ]+  , ...+  ]
+ test/diff/tiers-IntSet.out view
@@ -0,0 +1,75 @@+map length (tiers :: [[ IntSet ]])  =  [1,1,1,2,2,3,4,5,6,8,10,12,...]++length (list :: [ IntSet ])  =  Infinity++allUnique (list :: [ IntSet ])  =  True++ratioRepetitions (list :: [ IntSet ])  =  0 % 1++tiers :: [IntSet]  =+  [ [fromList []]+  , [fromList [0]]+  , [fromList [1]]+  , [ fromList [0,1]+    , fromList [-1]+    ]+  , [ fromList [-1,0]+    , fromList [2]+    ]+  , [ fromList [0,2]+    , fromList [-1,1]+    , fromList [-2]+    ]+  , [ fromList [-1,0,1]+    , fromList [-2,0]+    , fromList [1,2]+    , fromList [3]+    ]+  , [ fromList [0,1,2]+    , fromList [0,3]+    , fromList [-2,1]+    , fromList [-1,2]+    , fromList [-3]+    ]+  , [ fromList [-2,0,1]+    , fromList [-1,0,2]+    , fromList [-3,0]+    , fromList [1,3]+    , fromList [-2,-1]+    , fromList [4]+    ]+  , [ fromList [0,1,3]+    , fromList [-2,-1,0]+    , fromList [0,4]+    , fromList [-1,1,2]+    , fromList [-3,1]+    , fromList [-1,3]+    , fromList [-2,2]+    , fromList [-4]+    ]+  , [ fromList [-1,0,1,2]+    , fromList [-3,0,1]+    , fromList [-1,0,3]+    , fromList [-2,0,2]+    , fromList [-4,0]+    , fromList [-2,-1,1]+    , fromList [1,4]+    , fromList [-3,-1]+    , fromList [2,3]+    , fromList [5]+    ]+  , [ fromList [-2,-1,0,1]+    , fromList [0,1,4]+    , fromList [-3,-1,0]+    , fromList [0,2,3]+    , fromList [0,5]+    , fromList [-1,1,3]+    , fromList [-2,1,2]+    , fromList [-4,1]+    , fromList [-1,4]+    , fromList [-3,2]+    , fromList [-2,3]+    , fromList [-5]+    ]+  , ...+  ]
+ test/diff/tiers-MapBoolBool.out view
@@ -0,0 +1,21 @@+map length (tiers :: [[ Map Bool Bool ]])  =  [1,4,4]++length (list :: [ Map Bool Bool ])  =  9++allUnique (list :: [ Map Bool Bool ])  =  True++ratioRepetitions (list :: [ Map Bool Bool ])  =  0 % 1++tiers :: [Map Bool Bool]  =+  [ [fromList []]+  , [ fromList [(False,False)]+    , fromList [(False,True)]+    , fromList [(True,False)]+    , fromList [(True,True)]+    ]+  , [ fromList [(False,False),(True,False)]+    , fromList [(False,False),(True,True)]+    , fromList [(False,True),(True,False)]+    , fromList [(False,True),(True,True)]+    ]+  ]
+ test/diff/tiers-MapIntInt.out view
@@ -0,0 +1,571 @@+map length (tiers :: [[ Map Int Int ]])  =  [1,1,2,4,7,12,20,33,53,84,131,202,...]++length (list :: [ Map Int Int ])  =  Infinity++allUnique (list :: [ Map Int Int ])  =  True++ratioRepetitions (list :: [ Map Int Int ])  =  0 % 1++tiers :: [Map Int Int]  =+  [ [fromList []]+  , [fromList [(0,0)]]+  , [ fromList [(0,1)]+    , fromList [(1,0)]+    ]+  , [ fromList [(0,-1)]+    , fromList [(1,1)]+    , fromList [(0,0),(1,0)]+    , fromList [(-1,0)]+    ]+  , [ fromList [(0,2)]+    , fromList [(1,-1)]+    , fromList [(0,0),(1,1)]+    , fromList [(0,1),(1,0)]+    , fromList [(-1,1)]+    , fromList [(-1,0),(0,0)]+    , fromList [(2,0)]+    ]+  , [ fromList [(0,-2)]+    , fromList [(1,2)]+    , fromList [(0,0),(1,-1)]+    , fromList [(0,1),(1,1)]+    , fromList [(0,-1),(1,0)]+    , fromList [(-1,-1)]+    , fromList [(-1,1),(0,0)]+    , fromList [(-1,0),(0,1)]+    , fromList [(2,1)]+    , fromList [(0,0),(2,0)]+    , fromList [(-1,0),(1,0)]+    , fromList [(-2,0)]+    ]+  , [ fromList [(0,3)]+    , fromList [(1,-2)]+    , fromList [(0,0),(1,2)]+    , fromList [(0,1),(1,-1)]+    , fromList [(0,-1),(1,1)]+    , fromList [(0,2),(1,0)]+    , fromList [(-1,2)]+    , fromList [(-1,-1),(0,0)]+    , fromList [(-1,1),(0,1)]+    , fromList [(-1,0),(0,-1)]+    , fromList [(2,-1)]+    , fromList [(0,0),(2,1)]+    , fromList [(0,1),(2,0)]+    , fromList [(-1,1),(1,0)]+    , fromList [(-1,0),(1,1)]+    , fromList [(-2,1)]+    , fromList [(-1,0),(0,0),(1,0)]+    , fromList [(-2,0),(0,0)]+    , fromList [(1,0),(2,0)]+    , fromList [(3,0)]+    ]+  , [ fromList [(0,-3)]+    , fromList [(1,3)]+    , fromList [(0,0),(1,-2)]+    , fromList [(0,1),(1,2)]+    , fromList [(0,-1),(1,-1)]+    , fromList [(0,2),(1,1)]+    , fromList [(0,-2),(1,0)]+    , fromList [(-1,-2)]+    , fromList [(-1,2),(0,0)]+    , fromList [(-1,-1),(0,1)]+    , fromList [(-1,1),(0,-1)]+    , fromList [(-1,0),(0,2)]+    , fromList [(2,2)]+    , fromList [(0,0),(2,-1)]+    , fromList [(0,1),(2,1)]+    , fromList [(0,-1),(2,0)]+    , fromList [(-1,-1),(1,0)]+    , fromList [(-1,1),(1,1)]+    , fromList [(-1,0),(1,-1)]+    , fromList [(-2,-1)]+    , fromList [(-1,1),(0,0),(1,0)]+    , fromList [(-1,0),(0,0),(1,1)]+    , fromList [(-1,0),(0,1),(1,0)]+    , fromList [(-2,1),(0,0)]+    , fromList [(-2,0),(0,1)]+    , fromList [(1,0),(2,1)]+    , fromList [(1,1),(2,0)]+    , fromList [(3,1)]+    , fromList [(0,0),(1,0),(2,0)]+    , fromList [(0,0),(3,0)]+    , fromList [(-2,0),(1,0)]+    , fromList [(-1,0),(2,0)]+    , fromList [(-3,0)]+    ]+  , [ fromList [(0,4)]+    , fromList [(1,-3)]+    , fromList [(0,0),(1,3)]+    , fromList [(0,1),(1,-2)]+    , fromList [(0,-1),(1,2)]+    , fromList [(0,2),(1,-1)]+    , fromList [(0,-2),(1,1)]+    , fromList [(0,3),(1,0)]+    , fromList [(-1,3)]+    , fromList [(-1,-2),(0,0)]+    , fromList [(-1,2),(0,1)]+    , fromList [(-1,-1),(0,-1)]+    , fromList [(-1,1),(0,2)]+    , fromList [(-1,0),(0,-2)]+    , fromList [(2,-2)]+    , fromList [(0,0),(2,2)]+    , fromList [(0,1),(2,-1)]+    , fromList [(0,-1),(2,1)]+    , fromList [(0,2),(2,0)]+    , fromList [(-1,2),(1,0)]+    , fromList [(-1,-1),(1,1)]+    , fromList [(-1,1),(1,-1)]+    , fromList [(-1,0),(1,2)]+    , fromList [(-2,2)]+    , fromList [(-1,-1),(0,0),(1,0)]+    , fromList [(-1,1),(0,0),(1,1)]+    , fromList [(-1,0),(0,0),(1,-1)]+    , fromList [(-1,1),(0,1),(1,0)]+    , fromList [(-1,0),(0,1),(1,1)]+    , fromList [(-1,0),(0,-1),(1,0)]+    , fromList [(-2,-1),(0,0)]+    , fromList [(-2,1),(0,1)]+    , fromList [(-2,0),(0,-1)]+    , fromList [(1,0),(2,-1)]+    , fromList [(1,1),(2,1)]+    , fromList [(1,-1),(2,0)]+    , fromList [(3,-1)]+    , fromList [(0,0),(1,0),(2,1)]+    , fromList [(0,0),(1,1),(2,0)]+    , fromList [(0,1),(1,0),(2,0)]+    , fromList [(0,0),(3,1)]+    , fromList [(0,1),(3,0)]+    , fromList [(-2,1),(1,0)]+    , fromList [(-2,0),(1,1)]+    , fromList [(-1,0),(2,1)]+    , fromList [(-1,1),(2,0)]+    , fromList [(-3,1)]+    , fromList [(-2,0),(0,0),(1,0)]+    , fromList [(-1,0),(0,0),(2,0)]+    , fromList [(-3,0),(0,0)]+    , fromList [(1,0),(3,0)]+    , fromList [(-2,0),(-1,0)]+    , fromList [(4,0)]+    ]+  , [ fromList [(0,-4)]+    , fromList [(1,4)]+    , fromList [(0,0),(1,-3)]+    , fromList [(0,1),(1,3)]+    , fromList [(0,-1),(1,-2)]+    , fromList [(0,2),(1,2)]+    , fromList [(0,-2),(1,-1)]+    , fromList [(0,3),(1,1)]+    , fromList [(0,-3),(1,0)]+    , fromList [(-1,-3)]+    , fromList [(-1,3),(0,0)]+    , fromList [(-1,-2),(0,1)]+    , fromList [(-1,2),(0,-1)]+    , fromList [(-1,-1),(0,2)]+    , fromList [(-1,1),(0,-2)]+    , fromList [(-1,0),(0,3)]+    , fromList [(2,3)]+    , fromList [(0,0),(2,-2)]+    , fromList [(0,1),(2,2)]+    , fromList [(0,-1),(2,-1)]+    , fromList [(0,2),(2,1)]+    , fromList [(0,-2),(2,0)]+    , fromList [(-1,-2),(1,0)]+    , fromList [(-1,2),(1,1)]+    , fromList [(-1,-1),(1,-1)]+    , fromList [(-1,1),(1,2)]+    , fromList [(-1,0),(1,-2)]+    , fromList [(-2,-2)]+    , fromList [(-1,2),(0,0),(1,0)]+    , fromList [(-1,-1),(0,0),(1,1)]+    , fromList [(-1,1),(0,0),(1,-1)]+    , fromList [(-1,0),(0,0),(1,2)]+    , fromList [(-1,-1),(0,1),(1,0)]+    , fromList [(-1,1),(0,1),(1,1)]+    , fromList [(-1,0),(0,1),(1,-1)]+    , fromList [(-1,1),(0,-1),(1,0)]+    , fromList [(-1,0),(0,-1),(1,1)]+    , fromList [(-1,0),(0,2),(1,0)]+    , fromList [(-2,2),(0,0)]+    , fromList [(-2,-1),(0,1)]+    , fromList [(-2,1),(0,-1)]+    , fromList [(-2,0),(0,2)]+    , fromList [(1,0),(2,2)]+    , fromList [(1,1),(2,-1)]+    , fromList [(1,-1),(2,1)]+    , fromList [(1,2),(2,0)]+    , fromList [(3,2)]+    , fromList [(0,0),(1,0),(2,-1)]+    , fromList [(0,0),(1,1),(2,1)]+    , fromList [(0,0),(1,-1),(2,0)]+    , fromList [(0,1),(1,0),(2,1)]+    , fromList [(0,1),(1,1),(2,0)]+    , fromList [(0,-1),(1,0),(2,0)]+    , fromList [(0,0),(3,-1)]+    , fromList [(0,1),(3,1)]+    , fromList [(0,-1),(3,0)]+    , fromList [(-2,-1),(1,0)]+    , fromList [(-2,1),(1,1)]+    , fromList [(-2,0),(1,-1)]+    , fromList [(-1,0),(2,-1)]+    , fromList [(-1,1),(2,1)]+    , fromList [(-1,-1),(2,0)]+    , fromList [(-3,-1)]+    , fromList [(-2,1),(0,0),(1,0)]+    , fromList [(-2,0),(0,0),(1,1)]+    , fromList [(-2,0),(0,1),(1,0)]+    , fromList [(-1,0),(0,0),(2,1)]+    , fromList [(-1,1),(0,0),(2,0)]+    , fromList [(-1,0),(0,1),(2,0)]+    , fromList [(-3,1),(0,0)]+    , fromList [(-3,0),(0,1)]+    , fromList [(1,0),(3,1)]+    , fromList [(1,1),(3,0)]+    , fromList [(-2,1),(-1,0)]+    , fromList [(-2,0),(-1,1)]+    , fromList [(4,1)]+    , fromList [(0,0),(1,0),(3,0)]+    , fromList [(-2,0),(-1,0),(0,0)]+    , fromList [(0,0),(4,0)]+    , fromList [(-1,0),(1,0),(2,0)]+    , fromList [(-3,0),(1,0)]+    , fromList [(-1,0),(3,0)]+    , fromList [(-2,0),(2,0)]+    , fromList [(-4,0)]+    ]+  , [ fromList [(0,5)]+    , fromList [(1,-4)]+    , fromList [(0,0),(1,4)]+    , fromList [(0,1),(1,-3)]+    , fromList [(0,-1),(1,3)]+    , fromList [(0,2),(1,-2)]+    , fromList [(0,-2),(1,2)]+    , fromList [(0,3),(1,-1)]+    , fromList [(0,-3),(1,1)]+    , fromList [(0,4),(1,0)]+    , fromList [(-1,4)]+    , fromList [(-1,-3),(0,0)]+    , fromList [(-1,3),(0,1)]+    , fromList [(-1,-2),(0,-1)]+    , fromList [(-1,2),(0,2)]+    , fromList [(-1,-1),(0,-2)]+    , fromList [(-1,1),(0,3)]+    , fromList [(-1,0),(0,-3)]+    , fromList [(2,-3)]+    , fromList [(0,0),(2,3)]+    , fromList [(0,1),(2,-2)]+    , fromList [(0,-1),(2,2)]+    , fromList [(0,2),(2,-1)]+    , fromList [(0,-2),(2,1)]+    , fromList [(0,3),(2,0)]+    , fromList [(-1,3),(1,0)]+    , fromList [(-1,-2),(1,1)]+    , fromList [(-1,2),(1,-1)]+    , fromList [(-1,-1),(1,2)]+    , fromList [(-1,1),(1,-2)]+    , fromList [(-1,0),(1,3)]+    , fromList [(-2,3)]+    , fromList [(-1,-2),(0,0),(1,0)]+    , fromList [(-1,2),(0,0),(1,1)]+    , fromList [(-1,-1),(0,0),(1,-1)]+    , fromList [(-1,1),(0,0),(1,2)]+    , fromList [(-1,0),(0,0),(1,-2)]+    , fromList [(-1,2),(0,1),(1,0)]+    , fromList [(-1,-1),(0,1),(1,1)]+    , fromList [(-1,1),(0,1),(1,-1)]+    , fromList [(-1,0),(0,1),(1,2)]+    , fromList [(-1,-1),(0,-1),(1,0)]+    , fromList [(-1,1),(0,-1),(1,1)]+    , fromList [(-1,0),(0,-1),(1,-1)]+    , fromList [(-1,1),(0,2),(1,0)]+    , fromList [(-1,0),(0,2),(1,1)]+    , fromList [(-1,0),(0,-2),(1,0)]+    , fromList [(-2,-2),(0,0)]+    , fromList [(-2,2),(0,1)]+    , fromList [(-2,-1),(0,-1)]+    , fromList [(-2,1),(0,2)]+    , fromList [(-2,0),(0,-2)]+    , fromList [(1,0),(2,-2)]+    , fromList [(1,1),(2,2)]+    , fromList [(1,-1),(2,-1)]+    , fromList [(1,2),(2,1)]+    , fromList [(1,-2),(2,0)]+    , fromList [(3,-2)]+    , fromList [(0,0),(1,0),(2,2)]+    , fromList [(0,0),(1,1),(2,-1)]+    , fromList [(0,0),(1,-1),(2,1)]+    , fromList [(0,0),(1,2),(2,0)]+    , fromList [(0,1),(1,0),(2,-1)]+    , fromList [(0,1),(1,1),(2,1)]+    , fromList [(0,1),(1,-1),(2,0)]+    , fromList [(0,-1),(1,0),(2,1)]+    , fromList [(0,-1),(1,1),(2,0)]+    , fromList [(0,2),(1,0),(2,0)]+    , fromList [(0,0),(3,2)]+    , fromList [(0,1),(3,-1)]+    , fromList [(0,-1),(3,1)]+    , fromList [(0,2),(3,0)]+    , fromList [(-2,2),(1,0)]+    , fromList [(-2,-1),(1,1)]+    , fromList [(-2,1),(1,-1)]+    , fromList [(-2,0),(1,2)]+    , fromList [(-1,0),(2,2)]+    , fromList [(-1,1),(2,-1)]+    , fromList [(-1,-1),(2,1)]+    , fromList [(-1,2),(2,0)]+    , fromList [(-3,2)]+    , fromList [(-2,-1),(0,0),(1,0)]+    , fromList [(-2,1),(0,0),(1,1)]+    , fromList [(-2,0),(0,0),(1,-1)]+    , fromList [(-2,1),(0,1),(1,0)]+    , fromList [(-2,0),(0,1),(1,1)]+    , fromList [(-2,0),(0,-1),(1,0)]+    , fromList [(-1,0),(0,0),(2,-1)]+    , fromList [(-1,1),(0,0),(2,1)]+    , fromList [(-1,-1),(0,0),(2,0)]+    , fromList [(-1,0),(0,1),(2,1)]+    , fromList [(-1,1),(0,1),(2,0)]+    , fromList [(-1,0),(0,-1),(2,0)]+    , fromList [(-3,-1),(0,0)]+    , fromList [(-3,1),(0,1)]+    , fromList [(-3,0),(0,-1)]+    , fromList [(1,0),(3,-1)]+    , fromList [(1,1),(3,1)]+    , fromList [(1,-1),(3,0)]+    , fromList [(-2,-1),(-1,0)]+    , fromList [(-2,1),(-1,1)]+    , fromList [(-2,0),(-1,-1)]+    , fromList [(4,-1)]+    , fromList [(0,0),(1,0),(3,1)]+    , fromList [(0,0),(1,1),(3,0)]+    , fromList [(0,1),(1,0),(3,0)]+    , fromList [(-2,1),(-1,0),(0,0)]+    , fromList [(-2,0),(-1,1),(0,0)]+    , fromList [(-2,0),(-1,0),(0,1)]+    , fromList [(0,0),(4,1)]+    , fromList [(0,1),(4,0)]+    , fromList [(-1,0),(1,0),(2,1)]+    , fromList [(-1,1),(1,0),(2,0)]+    , fromList [(-1,0),(1,1),(2,0)]+    , fromList [(-3,1),(1,0)]+    , fromList [(-3,0),(1,1)]+    , fromList [(-1,0),(3,1)]+    , fromList [(-1,1),(3,0)]+    , fromList [(-2,1),(2,0)]+    , fromList [(-2,0),(2,1)]+    , fromList [(-4,1)]+    , fromList [(-1,0),(0,0),(1,0),(2,0)]+    , fromList [(-3,0),(0,0),(1,0)]+    , fromList [(-1,0),(0,0),(3,0)]+    , fromList [(-2,0),(0,0),(2,0)]+    , fromList [(-4,0),(0,0)]+    , fromList [(-2,0),(-1,0),(1,0)]+    , fromList [(1,0),(4,0)]+    , fromList [(-3,0),(-1,0)]+    , fromList [(2,0),(3,0)]+    , fromList [(5,0)]+    ]+  , [ fromList [(0,-5)]+    , fromList [(1,5)]+    , fromList [(0,0),(1,-4)]+    , fromList [(0,1),(1,4)]+    , fromList [(0,-1),(1,-3)]+    , fromList [(0,2),(1,3)]+    , fromList [(0,-2),(1,-2)]+    , fromList [(0,3),(1,2)]+    , fromList [(0,-3),(1,-1)]+    , fromList [(0,4),(1,1)]+    , fromList [(0,-4),(1,0)]+    , fromList [(-1,-4)]+    , fromList [(-1,4),(0,0)]+    , fromList [(-1,-3),(0,1)]+    , fromList [(-1,3),(0,-1)]+    , fromList [(-1,-2),(0,2)]+    , fromList [(-1,2),(0,-2)]+    , fromList [(-1,-1),(0,3)]+    , fromList [(-1,1),(0,-3)]+    , fromList [(-1,0),(0,4)]+    , fromList [(2,4)]+    , fromList [(0,0),(2,-3)]+    , fromList [(0,1),(2,3)]+    , fromList [(0,-1),(2,-2)]+    , fromList [(0,2),(2,2)]+    , fromList [(0,-2),(2,-1)]+    , fromList [(0,3),(2,1)]+    , fromList [(0,-3),(2,0)]+    , fromList [(-1,-3),(1,0)]+    , fromList [(-1,3),(1,1)]+    , fromList [(-1,-2),(1,-1)]+    , fromList [(-1,2),(1,2)]+    , fromList [(-1,-1),(1,-2)]+    , fromList [(-1,1),(1,3)]+    , fromList [(-1,0),(1,-3)]+    , fromList [(-2,-3)]+    , fromList [(-1,3),(0,0),(1,0)]+    , fromList [(-1,-2),(0,0),(1,1)]+    , fromList [(-1,2),(0,0),(1,-1)]+    , fromList [(-1,-1),(0,0),(1,2)]+    , fromList [(-1,1),(0,0),(1,-2)]+    , fromList [(-1,0),(0,0),(1,3)]+    , fromList [(-1,-2),(0,1),(1,0)]+    , fromList [(-1,2),(0,1),(1,1)]+    , fromList [(-1,-1),(0,1),(1,-1)]+    , fromList [(-1,1),(0,1),(1,2)]+    , fromList [(-1,0),(0,1),(1,-2)]+    , fromList [(-1,2),(0,-1),(1,0)]+    , fromList [(-1,-1),(0,-1),(1,1)]+    , fromList [(-1,1),(0,-1),(1,-1)]+    , fromList [(-1,0),(0,-1),(1,2)]+    , fromList [(-1,-1),(0,2),(1,0)]+    , fromList [(-1,1),(0,2),(1,1)]+    , fromList [(-1,0),(0,2),(1,-1)]+    , fromList [(-1,1),(0,-2),(1,0)]+    , fromList [(-1,0),(0,-2),(1,1)]+    , fromList [(-1,0),(0,3),(1,0)]+    , fromList [(-2,3),(0,0)]+    , fromList [(-2,-2),(0,1)]+    , fromList [(-2,2),(0,-1)]+    , fromList [(-2,-1),(0,2)]+    , fromList [(-2,1),(0,-2)]+    , fromList [(-2,0),(0,3)]+    , fromList [(1,0),(2,3)]+    , fromList [(1,1),(2,-2)]+    , fromList [(1,-1),(2,2)]+    , fromList [(1,2),(2,-1)]+    , fromList [(1,-2),(2,1)]+    , fromList [(1,3),(2,0)]+    , fromList [(3,3)]+    , fromList [(0,0),(1,0),(2,-2)]+    , fromList [(0,0),(1,1),(2,2)]+    , fromList [(0,0),(1,-1),(2,-1)]+    , fromList [(0,0),(1,2),(2,1)]+    , fromList [(0,0),(1,-2),(2,0)]+    , fromList [(0,1),(1,0),(2,2)]+    , fromList [(0,1),(1,1),(2,-1)]+    , fromList [(0,1),(1,-1),(2,1)]+    , fromList [(0,1),(1,2),(2,0)]+    , fromList [(0,-1),(1,0),(2,-1)]+    , fromList [(0,-1),(1,1),(2,1)]+    , fromList [(0,-1),(1,-1),(2,0)]+    , fromList [(0,2),(1,0),(2,1)]+    , fromList [(0,2),(1,1),(2,0)]+    , fromList [(0,-2),(1,0),(2,0)]+    , fromList [(0,0),(3,-2)]+    , fromList [(0,1),(3,2)]+    , fromList [(0,-1),(3,-1)]+    , fromList [(0,2),(3,1)]+    , fromList [(0,-2),(3,0)]+    , fromList [(-2,-2),(1,0)]+    , fromList [(-2,2),(1,1)]+    , fromList [(-2,-1),(1,-1)]+    , fromList [(-2,1),(1,2)]+    , fromList [(-2,0),(1,-2)]+    , fromList [(-1,0),(2,-2)]+    , fromList [(-1,1),(2,2)]+    , fromList [(-1,-1),(2,-1)]+    , fromList [(-1,2),(2,1)]+    , fromList [(-1,-2),(2,0)]+    , fromList [(-3,-2)]+    , fromList [(-2,2),(0,0),(1,0)]+    , fromList [(-2,-1),(0,0),(1,1)]+    , fromList [(-2,1),(0,0),(1,-1)]+    , fromList [(-2,0),(0,0),(1,2)]+    , fromList [(-2,-1),(0,1),(1,0)]+    , fromList [(-2,1),(0,1),(1,1)]+    , fromList [(-2,0),(0,1),(1,-1)]+    , fromList [(-2,1),(0,-1),(1,0)]+    , fromList [(-2,0),(0,-1),(1,1)]+    , fromList [(-2,0),(0,2),(1,0)]+    , fromList [(-1,0),(0,0),(2,2)]+    , fromList [(-1,1),(0,0),(2,-1)]+    , fromList [(-1,-1),(0,0),(2,1)]+    , fromList [(-1,2),(0,0),(2,0)]+    , fromList [(-1,0),(0,1),(2,-1)]+    , fromList [(-1,1),(0,1),(2,1)]+    , fromList [(-1,-1),(0,1),(2,0)]+    , fromList [(-1,0),(0,-1),(2,1)]+    , fromList [(-1,1),(0,-1),(2,0)]+    , fromList [(-1,0),(0,2),(2,0)]+    , fromList [(-3,2),(0,0)]+    , fromList [(-3,-1),(0,1)]+    , fromList [(-3,1),(0,-1)]+    , fromList [(-3,0),(0,2)]+    , fromList [(1,0),(3,2)]+    , fromList [(1,1),(3,-1)]+    , fromList [(1,-1),(3,1)]+    , fromList [(1,2),(3,0)]+    , fromList [(-2,2),(-1,0)]+    , fromList [(-2,-1),(-1,1)]+    , fromList [(-2,1),(-1,-1)]+    , fromList [(-2,0),(-1,2)]+    , fromList [(4,2)]+    , fromList [(0,0),(1,0),(3,-1)]+    , fromList [(0,0),(1,1),(3,1)]+    , fromList [(0,0),(1,-1),(3,0)]+    , fromList [(0,1),(1,0),(3,1)]+    , fromList [(0,1),(1,1),(3,0)]+    , fromList [(0,-1),(1,0),(3,0)]+    , fromList [(-2,-1),(-1,0),(0,0)]+    , fromList [(-2,1),(-1,1),(0,0)]+    , fromList [(-2,0),(-1,-1),(0,0)]+    , fromList [(-2,1),(-1,0),(0,1)]+    , fromList [(-2,0),(-1,1),(0,1)]+    , fromList [(-2,0),(-1,0),(0,-1)]+    , fromList [(0,0),(4,-1)]+    , fromList [(0,1),(4,1)]+    , fromList [(0,-1),(4,0)]+    , fromList [(-1,0),(1,0),(2,-1)]+    , fromList [(-1,1),(1,0),(2,1)]+    , fromList [(-1,-1),(1,0),(2,0)]+    , fromList [(-1,0),(1,1),(2,1)]+    , fromList [(-1,1),(1,1),(2,0)]+    , fromList [(-1,0),(1,-1),(2,0)]+    , fromList [(-3,-1),(1,0)]+    , fromList [(-3,1),(1,1)]+    , fromList [(-3,0),(1,-1)]+    , fromList [(-1,0),(3,-1)]+    , fromList [(-1,1),(3,1)]+    , fromList [(-1,-1),(3,0)]+    , fromList [(-2,-1),(2,0)]+    , fromList [(-2,1),(2,1)]+    , fromList [(-2,0),(2,-1)]+    , fromList [(-4,-1)]+    , fromList [(-1,0),(0,0),(1,0),(2,1)]+    , fromList [(-1,1),(0,0),(1,0),(2,0)]+    , fromList [(-1,0),(0,0),(1,1),(2,0)]+    , fromList [(-1,0),(0,1),(1,0),(2,0)]+    , fromList [(-3,1),(0,0),(1,0)]+    , fromList [(-3,0),(0,0),(1,1)]+    , fromList [(-3,0),(0,1),(1,0)]+    , fromList [(-1,0),(0,0),(3,1)]+    , fromList [(-1,1),(0,0),(3,0)]+    , fromList [(-1,0),(0,1),(3,0)]+    , fromList [(-2,1),(0,0),(2,0)]+    , fromList [(-2,0),(0,0),(2,1)]+    , fromList [(-2,0),(0,1),(2,0)]+    , fromList [(-4,1),(0,0)]+    , fromList [(-4,0),(0,1)]+    , fromList [(-2,1),(-1,0),(1,0)]+    , fromList [(-2,0),(-1,1),(1,0)]+    , fromList [(-2,0),(-1,0),(1,1)]+    , fromList [(1,0),(4,1)]+    , fromList [(1,1),(4,0)]+    , fromList [(-3,1),(-1,0)]+    , fromList [(-3,0),(-1,1)]+    , fromList [(2,0),(3,1)]+    , fromList [(2,1),(3,0)]+    , fromList [(5,1)]+    , fromList [(-2,0),(-1,0),(0,0),(1,0)]+    , fromList [(0,0),(1,0),(4,0)]+    , fromList [(-3,0),(-1,0),(0,0)]+    , fromList [(0,0),(2,0),(3,0)]+    , fromList [(0,0),(5,0)]+    , fromList [(-1,0),(1,0),(3,0)]+    , fromList [(-2,0),(1,0),(2,0)]+    , fromList [(-4,0),(1,0)]+    , fromList [(-1,0),(4,0)]+    , fromList [(-3,0),(2,0)]+    , fromList [(-2,0),(3,0)]+    , fromList [(-5,0)]+    ]+  , ...+  ]
+ test/diff/tiers-SeqBool.out view
@@ -0,0 +1,15 @@+map length (tiers :: [[ Seq Bool ]])  =  [1,2,1]++length (list :: [ Seq Bool ])  =  4++allUnique (list :: [ Seq Bool ])  =  True++ratioRepetitions (list :: [ Seq Bool ])  =  0 % 1++tiers :: [Seq Bool]  =+  [ [fromList []]+  , [ fromList [False]+    , fromList [True]+    ]+  , [fromList [False,True]]+  ]
+ test/diff/tiers-SeqInt.out view
@@ -0,0 +1,75 @@+map length (tiers :: [[ Seq Int ]])  =  [1,1,1,2,2,3,4,5,6,8,10,12,...]++length (list :: [ Seq Int ])  =  Infinity++allUnique (list :: [ Seq Int ])  =  True++ratioRepetitions (list :: [ Seq Int ])  =  0 % 1++tiers :: [Seq Int]  =+  [ [fromList []]+  , [fromList [0]]+  , [fromList [1]]+  , [ fromList [0,1]+    , fromList [-1]+    ]+  , [ fromList [0,-1]+    , fromList [2]+    ]+  , [ fromList [0,2]+    , fromList [1,-1]+    , fromList [-2]+    ]+  , [ fromList [0,1,-1]+    , fromList [0,-2]+    , fromList [1,2]+    , fromList [3]+    ]+  , [ fromList [0,1,2]+    , fromList [0,3]+    , fromList [1,-2]+    , fromList [-1,2]+    , fromList [-3]+    ]+  , [ fromList [0,1,-2]+    , fromList [0,-1,2]+    , fromList [0,-3]+    , fromList [1,3]+    , fromList [-1,-2]+    , fromList [4]+    ]+  , [ fromList [0,1,3]+    , fromList [0,-1,-2]+    , fromList [0,4]+    , fromList [1,-1,2]+    , fromList [1,-3]+    , fromList [-1,3]+    , fromList [2,-2]+    , fromList [-4]+    ]+  , [ fromList [0,1,-1,2]+    , fromList [0,1,-3]+    , fromList [0,-1,3]+    , fromList [0,2,-2]+    , fromList [0,-4]+    , fromList [1,-1,-2]+    , fromList [1,4]+    , fromList [-1,-3]+    , fromList [2,3]+    , fromList [5]+    ]+  , [ fromList [0,1,-1,-2]+    , fromList [0,1,4]+    , fromList [0,-1,-3]+    , fromList [0,2,3]+    , fromList [0,5]+    , fromList [1,-1,3]+    , fromList [1,2,-2]+    , fromList [1,-4]+    , fromList [-1,4]+    , fromList [2,-3]+    , fromList [-2,3]+    , fromList [-5]+    ]+  , ...+  ]
+ test/diff/tiers-SetBool.out view
@@ -0,0 +1,15 @@+map length (tiers :: [[ Set Bool ]])  =  [1,2,1]++length (list :: [ Set Bool ])  =  4++allUnique (list :: [ Set Bool ])  =  True++ratioRepetitions (list :: [ Set Bool ])  =  0 % 1++tiers :: [Set Bool]  =+  [ [fromList []]+  , [ fromList [False]+    , fromList [True]+    ]+  , [fromList [False,True]]+  ]
+ test/diff/tiers-SetInt.out view
@@ -0,0 +1,75 @@+map length (tiers :: [[ Set Int ]])  =  [1,1,1,2,2,3,4,5,6,8,10,12,...]++length (list :: [ Set Int ])  =  Infinity++allUnique (list :: [ Set Int ])  =  True++ratioRepetitions (list :: [ Set Int ])  =  0 % 1++tiers :: [Set Int]  =+  [ [fromList []]+  , [fromList [0]]+  , [fromList [1]]+  , [ fromList [0,1]+    , fromList [-1]+    ]+  , [ fromList [-1,0]+    , fromList [2]+    ]+  , [ fromList [0,2]+    , fromList [-1,1]+    , fromList [-2]+    ]+  , [ fromList [-1,0,1]+    , fromList [-2,0]+    , fromList [1,2]+    , fromList [3]+    ]+  , [ fromList [0,1,2]+    , fromList [0,3]+    , fromList [-2,1]+    , fromList [-1,2]+    , fromList [-3]+    ]+  , [ fromList [-2,0,1]+    , fromList [-1,0,2]+    , fromList [-3,0]+    , fromList [1,3]+    , fromList [-2,-1]+    , fromList [4]+    ]+  , [ fromList [0,1,3]+    , fromList [-2,-1,0]+    , fromList [0,4]+    , fromList [-1,1,2]+    , fromList [-3,1]+    , fromList [-1,3]+    , fromList [-2,2]+    , fromList [-4]+    ]+  , [ fromList [-1,0,1,2]+    , fromList [-3,0,1]+    , fromList [-1,0,3]+    , fromList [-2,0,2]+    , fromList [-4,0]+    , fromList [-2,-1,1]+    , fromList [1,4]+    , fromList [-3,-1]+    , fromList [2,3]+    , fromList [5]+    ]+  , [ fromList [-2,-1,0,1]+    , fromList [0,1,4]+    , fromList [-3,-1,0]+    , fromList [0,2,3]+    , fromList [0,5]+    , fromList [-1,1,3]+    , fromList [-2,1,2]+    , fromList [-4,1]+    , fromList [-1,4]+    , fromList [-3,2]+    , fromList [-2,3]+    , fromList [-5]+    ]+  , ...+  ]
+ test/diff/tiers-UTCTime.out view
@@ -0,0 +1,96 @@+map length (tiers :: [[ UTCTime ]])  =  [0,1,1,3,3,5,5,9,9,11,11,17,...]++length (list :: [ UTCTime ])  =  Infinity++allUnique (list :: [ UTCTime ])  =  True++ratioRepetitions (list :: [ UTCTime ])  =  0 % 1++tiers :: [UTCTime]  =+  [ []+  , [2019-01-01 00:00:01 UTC]+  , [2099-01-24 00:00:01 UTC]+  , [ 2019-01-01 00:00:00.5 UTC+    , 2019-01-01 00:00:02 UTC+    , 1938-12-09 00:00:01 UTC+    ]+  , [ 2099-01-24 00:00:00.5 UTC+    , 2099-01-24 00:00:02 UTC+    , 2139-02-05 00:00:01 UTC+    ]+  , [ 2019-01-01 00:00:00.333333333333 UTC+    , 2019-01-01 00:00:03 UTC+    , 1938-12-09 00:00:00.5 UTC+    , 1938-12-09 00:00:02 UTC+    , 1978-12-20 00:00:01 UTC+    ]+  , [ 2099-01-24 00:00:00.333333333333 UTC+    , 2099-01-24 00:00:03 UTC+    , 2139-02-05 00:00:00.5 UTC+    , 2139-02-05 00:00:02 UTC+    , 2059-01-12 00:00:01 UTC+    ]+  , [ 2019-01-01 00:00:00.25 UTC+    , 2019-01-01 00:00:00.666666666666 UTC+    , 2019-01-01 00:00:01.5 UTC+    , 2019-01-01 00:00:04 UTC+    , 1938-12-09 00:00:00.333333333333 UTC+    , 1938-12-09 00:00:03 UTC+    , 1978-12-20 00:00:00.5 UTC+    , 1978-12-20 00:00:02 UTC+    , 1898-11-27 00:00:01 UTC+    ]+  , [ 2099-01-24 00:00:00.25 UTC+    , 2099-01-24 00:00:00.666666666666 UTC+    , 2099-01-24 00:00:01.5 UTC+    , 2099-01-24 00:00:04 UTC+    , 2139-02-05 00:00:00.333333333333 UTC+    , 2139-02-05 00:00:03 UTC+    , 2059-01-12 00:00:00.5 UTC+    , 2059-01-12 00:00:02 UTC+    , 2159-02-11 00:00:01 UTC+    ]+  , [ 2019-01-01 00:00:00.2 UTC+    , 2019-01-01 00:00:05 UTC+    , 1938-12-09 00:00:00.25 UTC+    , 1938-12-09 00:00:00.666666666666 UTC+    , 1938-12-09 00:00:01.5 UTC+    , 1938-12-09 00:00:04 UTC+    , 1978-12-20 00:00:00.333333333333 UTC+    , 1978-12-20 00:00:03 UTC+    , 1898-11-27 00:00:00.5 UTC+    , 1898-11-27 00:00:02 UTC+    , 1998-12-26 00:00:01 UTC+    ]+  , [ 2099-01-24 00:00:00.2 UTC+    , 2099-01-24 00:00:05 UTC+    , 2139-02-05 00:00:00.25 UTC+    , 2139-02-05 00:00:00.666666666666 UTC+    , 2139-02-05 00:00:01.5 UTC+    , 2139-02-05 00:00:04 UTC+    , 2059-01-12 00:00:00.333333333333 UTC+    , 2059-01-12 00:00:03 UTC+    , 2159-02-11 00:00:00.5 UTC+    , 2159-02-11 00:00:02 UTC+    , 2079-01-18 00:00:01 UTC+    ]+  , [ 2019-01-01 00:00:00.166666666666 UTC+    , 2019-01-01 00:00:00.4 UTC+    , 2019-01-01 00:00:00.75 UTC+    , 2019-01-01 00:00:01.333333333333 UTC+    , 2019-01-01 00:00:02.5 UTC+    , 2019-01-01 00:00:06 UTC+    , 1938-12-09 00:00:00.2 UTC+    , 1938-12-09 00:00:05 UTC+    , 1978-12-20 00:00:00.25 UTC+    , 1978-12-20 00:00:00.666666666666 UTC+    , 1978-12-20 00:00:01.5 UTC+    , 1978-12-20 00:00:04 UTC+    , 1898-11-27 00:00:00.333333333333 UTC+    , 1898-11-27 00:00:03 UTC+    , 1998-12-26 00:00:00.5 UTC+    , 1998-12-26 00:00:02 UTC+    , 1918-12-03 00:00:01 UTC+    ]+  , ...+  ]
test/main.hs view
@@ -5,6 +5,12 @@ import qualified Data.Text as T import qualified Data.ByteString as BS import qualified Data.ByteString.Lazy as BL+import Data.Set (Set)+import Data.Map (Map)+import Data.Sequence (Seq)+import qualified Data.Set as Set+import qualified Data.Map as Map+import qualified Data.Sequence as Seq import Numeric.Natural  import Test.LeanCheck@@ -32,4 +38,13 @@    , fails n $ \bs -> BL.reverse bs == bs   , holds n $ \bs -> BL.reverse (BL.reverse bs) == bs++  , holds n $ \s -> Seq.reverse (Seq.reverse s :: Seq Int) == s+  , fails n $ \s -> Seq.reverse (s :: Seq Int) == s++  , holds n $ \a b -> a `Set.union` b == b `Set.union` (a :: Set Int)+  , fails n $ \a b -> a `Set.union` b == (a :: Set Int)++  , fails n $ \m1 m2 -> m1 `Map.union` m2 == m2 `Map.union` (m1 :: Map Int Int)+  , holds n $ \m1 -> m1 `Map.union` m1 == (m1 :: Map Int Int)   ]