-- vim: set foldmethod=marker :

-- {{{1 metadata
{-|
Module      : Arca_musarithmica.Syntagma1.Pinax05
Description : Data for the ark, syntagma 1, pinax 5 (Anacreonticum)
Copyright   : Data from Kircher, 1650, implementation (c) 2022 Andrew A. Cashner
Stability   : Experimental

Sub-structures used by @Arca_musarithmica@ to build Kircher's ark (bk II, p. 85)
This /pinax/ ('s1p5') is for poetry in Anacreontic meter, 7 syllable lines
with long penultimate. What appear to be eight columns are really four, as
they correspond with verse lines 1--4 as in @Pinax4@.  There is only one
'Aedifico.RpermTable' for all four columns.

It may be used with tone I, II, III, IV, IX, and X.
-}
-- }}}1

module Arca_musarithmica.Syntagma1.Pinax05 (s1p5) where

import Aedifico
    ( Dur (..)
    , buildPinax
    )

-- | Pinax 5
s1p5 = buildPinax [c0, c1, c2, c3]

-- {{{1 c0
c0 = (c0v, c0r)

-- {{{2 c0v
c0v =     [
        -- {{{3 0-9 left side
        [ -- 0
            [5, 5, 5, 4, 3, 2, 3],
            [7, 7, 8, 6, 5, 5, 5],
            [2, 3, 3, 8, 8, 7, 8],
            [5, 3, 8, 4, 8, 5, 8]
        ],
        [ -- 1
            [3, 3, 2, 8, 8, 7, 8],
            [8, 8, 7, 6, 6, 5, 5],
            [5, 5, 5, 3, 4, 2, 3],
            [8, 8, 5, 6, 4, 5, 1]
        ],
        [ -- 2
            [5, 5, 5, 5, 5, 5, 5],
            [8, 8, 8, 8, 7, 8, 8],
            [3, 3, 3, 3, 2, 3, 3],
            [8, 8, 8, 8, 5, 1, 1]
        ],
        [ -- 3
            [5, 5, 6, 5, 3, 2, 3],
            [7, 7, 8, 8, 8, 7, 8],
            [2, 2, 4, 5, 5, 5, 5],
            [5, 5, 4, 3, 1, 5, 1]
        ],
        [ -- 4
            [3, 3, 4, 5, 4, 2, 3],
            [8, 8, 7, 7, 6, 5, 5],
            [5, 5, 4, 3, 8, 7, 8],
            [1, 1, 2, 3, 4, 5, 1]
        ],
        [ -- 5
            [5, 5, 5, 4, 3, 2, 3],
            [8, 7, 8, 6, 5, 5, 5],
            [3, 2, 3, 8, 8, 7, 8],
            [1, 5, 3, 4, 1, 5, 1]
        ],
        [ -- 6
            [3, 4, 5, 4, 3, 2, 3],
            [5, 6, 5, 7, 8, 7, 8],
            [8, 8, 8, 2, 5, 5, 5],
            [1, 4, 3, 2, 1, 5, 1]
        ],
        [ -- 7
            [3, 3, 2, 8, 6, 5, 5],
            [5, 5, 5, 3, 4, 2, 3],
            [8, 8, 7, 8, 8, 7, 8],
            [1, 1, 5, 6, 4, 5, 1]
        ],
        [ -- 8 
            [5, 5, 5, 4, 3, 2, 3],
            [7, 7, 8, 6, 5, 5, 5],
            [2, 3, 3, 8, 8, 7, 8],
            [5, 3, 1, 4, 1, 5, 1]
        ],
        [ -- 9
            [3, 3, 4, 5, 4, 2, 3],
            [8, 8, 7, 7, 6, 5, 5],
            [5, 5, 4, 3, 8, 7, 8],
            [1, 1, 2, 3, 4, 5, 1]
        ],
        -- }}}3

        -- {{{3 10-19 right side
        [ -- 10
            [3, 2, 3, 8, 3, 2, 3],
            [5, 5, 5, 6, 5, 5, 5],
            [8, 7, 8, 8, 8, 7, 8],
            [1, 5, 3, 4, 1, 5, 1]
        ],
        [ -- 11
            [3, 4, 5, 4, 3, 2, 3],
            [5, 6, 5, 7, 8, 7, 8],
            [8, 8, 8, 2, 5, 5, 5],
            [1, 4, 3, 2, 1, 5, 1]
        ],
        [ -- 12
            [5, 6, 5, 4, 3, 2, 3],
            [8, 8, 7, 6, 5, 5, 5],
            [3, 3, 3, 8, 8, 7, 8],
            [8, 6, 3, 4, 1, 5, 1]
        ],
        [ -- 13
            [3, 2, 8, 7, 6, 5, 5],
            [8, 7, 6, 5, 4, 2, 3],
            [5, 5, 3, 3, 8, 7, 8],
            [1, 5, 6, 3, 4, 5, 1]
        ],
        [ -- 14
            [8, 2, 4, 5, 6, 5, 5],
            [5, 7, 8, 7, 8, 7, 8],
            [3, 4, 8, 2, 4, 2, 3],
            [8, 7, 6, 5, 4, 5, 1]
        ],
        [ -- 15
            [8, 8, 7, 6, 5, 5, 5],
            [5, 6, 5, 4, 3, 2, 3],
            [3, 3, 3, 8, 8, 7, 8],
            [8, 6, 3, 4, 1, 5, 1]
        ],
        [ -- 16 (same as #12)
            [5, 6, 5, 4, 3, 2, 3],
            [8, 8, 7, 6, 5, 5, 5],
            [3, 3, 3, 8, 8, 7, 8],
            [1, 6, 3, 4, 1, 5, 1]
        ],
        [ -- 17
            [3, 4, 5, 4, 3, 2 ,3],
            [5, 6, 5, 7, 8, 7, 8],
            [8, 8, 8, 2, 5, 5, 5],
            [1, 4, 3, 2, 1, 5, 1]
        ],
        [ -- 18 (same as #17)
            [3, 4, 5, 4, 3, 2, 3],
            [5, 6, 5, 7, 8, 7, 8],
            [8, 8, 8, 2, 5, 5, 5],
            [1, 4, 3, 2, 1, 5, 1]
        ],
        [ -- 19
            [5, 5, 5, 4, 3, 2, 3],
            [8, 7, 7, 6, 5, 5, 5],
            [3, 2, 3, 8, 8, 7, 8],
            [1, 5, 3, 4, 1, 5, 1] -- CN for 1, *4, 3, 4, 1, 5, 1
        ]
        -- }}}3
    ]
-- }}}2
-- {{{2 c0r
c0r =     [
        [ -- Duple
            [[Sb, SbD, Mn, Mn, Mn, Sb, Sb]],
            [[Mn, Sb, Sb, Sb, Mn, Sb, Sb]],
            [[Mn, Sm, Sm, Sm, Sm, Mn, Sb]],
            [[Mn, SmD, Fs, SmD, Fs, Mn, Sb]],
            [[Mn, Sb, Mn, Mn, Mn, Sb, Sb]],
            [[Sb, MnD, Sm, Sm, Sm, Mn, Sb]],
            [[SmR, Sm, Sm, Sm, Mn, Sm, Sb, Sb]],
            [[Sm, Sm, Sm, MnD, Sm, Sb, Sb]], -- first few cols have prev perm, rest have this
            [[Sm, Mn, Sm, Sm, Sm, Mn, Sb]],
            [[Sm, Fs, Fs, Sm, Sm, Mn, Mn]]
        ],
        [ -- TripleMajor
            [[Sb, Sb, Sb, Br, Sb, BrD, BrD]], -- penultimate dot implied
            [[BrD, Br, Sb, Br, Sb, BrD, BrD]], -- first dot implied
            [[Sb, Sb, Sb, Sb, Sb, Sb, BrD]]
        ],
        [ -- TripleMinor
            [[Mn, Mn, Mn, Sb, Mn, SbD, SbD]], -- penultimate dot implied
            [[Mn, Sb, Mn, Sb, Mn, Sb, SbD]]
        ]
    ]
-- }}}1
-- {{{1 c1
c1 = (c1v, c0r)

-- {{{2 c1v
c1v =     [
        -- {{{3 0-9 left side
        [ -- 0  
            [3, 3, 2, 8, 7, 7, 7],
            [8, 8, 7, 6, 5, 4, 5],
            [5, 5, 4, 3, 3, 2, 3],
            [8, 8, 5, 6, 3, 7, 3]
        ],
        [ -- 1
            [5, 5, 4, 3, 2, 2, 2],
            [7, 7, 7, 5, 7, 6, 7],
            [3, 3, 2, 3, 5, 4, 5],
            [3, 3, 7, 8, 5, 2, 5]
        ],
        [ -- 2
            [3, 3, 3, 3, 3, 4, 4],
            [7, 7, 7, 7, 7, 7, 7],
            [5, 5, 5, 5, 5, 2, 2],
            [3, 3, 3, 5, 3, 7, 7] -- 5 unclear XXX
        ],
        [ -- 3
            [3, 3, 2, 8, 7, 6, 5],
            [8, 8, 7, 6, 5, 4, 5],
            [5, 5, 5, 3, 3, 8, 3],
            [8, 8, 5, 6, 3, 4, 3]
        ],
        [ -- 4
            [5, 5, 4, 4, 3, 2, 2],
            [7, 7, 8, 2, 8, 6, 7],
            [2, 2, 8, 5, 5, 4, 5],
            [5, 5, 6, 7, 8, 2, 5]
        ],
        [ -- 5
            [2, 3, 2, 8, 7, 6, 7],
            [7, 8, 7, 5, 5, 4, 5],
            [5, 5, 4, 3, 2, 2, 2],
            [5, 1, 2, 3, 5, 2, 5]
        ],
        [ -- 6
            [2, 3, 2, 8, 7, 6, 7],
            [7, 8, 7, 5, 5, 4, 5],
            [5, 5, 4, 3, 2, 2, 2],
            [5, 1, 2, 3, 5, 2, 5]
        ],
        [ -- 7
            [3, 3, 2, 8, 7, 6, 7],
            [7, 7, 7, 5, 5, 4, 5],
            [5, 5, 4, 3, 2, 2, 2],
            [3, 3, 7, 8, 5, 2, 5]
        ],
        [ -- 8
            [5, 5, 4, 3, 2, 4, 2],
            [7, 7, 7, 8, 2, 8, 7], -- last unclear XXX
            [3, 3, 4, 5, 5, 8, 5],
            [3, 3, 2, 8, 7, 6, 5] -- unclear
        ],
        [ -- 9
            [5, 5, 4, 3, 3, 2, 3],
            [7, 8, 2, 7, 8, 7, 7],
            [5, 5, 6, 5, 4, 4, 5],
            [3, 3, 4, 5, 6, 7, 3]
        ],
        -- }}}3

        -- {{{3 10-19 right side
        [ -- 10
            [3, 4, 3, 3, 6, 5, 4],
            [8, 8, 7, 8, 8, 8, 6],
            [5, 6, 5, 1, 4, 3, 4],
            [1, 4, 5, 6, 4, 1, 4]
        ],
        [ -- 11
            [5, 3, 2, 8, 7, 6, 7],
            [5, 8, 7, 5, 5, 4, 5],
            [2, 5, 4, 3, 2, 2, 2],
            [5, 1, 2, 3, 5, 2, 5]
        ],
        [ -- 12
            [3, 3, 2, 2, 8, 2, 2],
            [8, 8, 7, 6, 5, 6, 7],
            [5, 5, 5, 4, 5, 4, 5],
            [1, 1, 5, 2, 3, 2, 5]
        ],
        [ -- 13
            [3, 4, 3, 8, 8, 8, 8],
            [8, 8, 7, 6, 6, 5, 6], -- CN for 8, 8, 7, 6, 6, 5, *7
            [5, 6, 5, 3, 4, 3, 4],
            [8, 4, 5, 6, 4, 1, 4]
        ],
        [ -- 14
            [2, 3, 2, 8, 7, 6, 7],
            [7, 8, 7, 5, 5, 4, 5],
            [5, 5, 4, 3, 2, 2, 2],
            [5, 1, 2, 3, 5, 2, 5] -- CN for 5, 1, 2, *4, 5, 2, 5
        ],
        [ -- 15
            [2, 3, 4, 5, 5, 4, 5],
            [7, 8, 7, 7, 7, 6, 7],
            [5, 5, 4, 3, 2, 2, 2],
            [3, 1, 2, 3, 5, 2, 5]
        ],
        [ -- 16
            [3, 3, 2, 2, 8, 2, 2],
            [5, 5, 5, 4, 5, 4, 5],
            [8, 8, 7, 6, 5, 6, 7],
            [1, 1, 5, 2, 3, 2, 5]
        ],
        [ -- 17
            [3, 4, 4, 5, 5, 4, 3],
            [8, 8, 8, 7, 7, 6, 5],
            [5, 1, 1, 2, 3, 1, 1],
            [8, 6, 6, 5, 3, 4, 1]
        ],
        [ -- 18
            [8, 2, 4, 5, 6, 5, 5],
            [5, 7, 8, 7, 8, 7, 8],
            [3, 4, 1, 2, 4, 2, 3],
            [8, 7, 6, 5, 4, 5, 1]
        ],
        [ -- 19
            [2, 3, 2, 8, 7, 6, 7],
            [7, 8, 7, 5, 5, 4, 5],
            [5, 5, 4, 3, 2, 2, 2],
            [5, 1, 2, 3, 5, 2, 5] -- all unclear
        ]
        -- }}}3
    ]
-- }}}2
-- }}}1
-- {{{1 c2
c2 = (c2v, c0r)

-- {{{2 c2v
c2v =     [
        -- {{{3 0-9 left side
        [ -- 0  
            [5, 5, 4, 3, 2, 4, 2],
            [7, 7, 7, 8, 2, 8, 7],
            [3, 3, 4, 5, 5, 8, 5],
            [3, 3, 2, 1, 7, 6, 5]
        ],
        [ -- 1
            [5, 5, 5, 3, 5, 4, 5],
            [8, 8, 7, 8, 7, 7, 7],
            [3, 3, 2, 8, 3, 2, 3],
            [8, 8, 5, 6, 3, 7, 3]
        ],
        [ -- 2
            [2, 2, 2, 2, 2, 8, 7],
            [7, 7, 7, 7, 7, 5, 5],
            [4, 4, 4, 4, 4, 3, 2],
            [7, 7, 7, 7, 7, 8, 5]
        ],
        [ -- 3
            [5, 5, 4, 3, 2, 8, 7],
            [7, 7, 7, 5, 5, 3, 5],
            [3, 3, 2, 8, 7, 8, 2],
            [3, 3, 7, 8, 5, 6, 5]
        ],
        [ -- 4
            [5, 5, 4, 3, 3, 2, 3],
            [2, 7, 2, 7, 8, 7, 7],
            [5, 5, 6, 5, 4, 4, 5],
            [3, 3, 4, 5, 6, 7, 3]
        ],
        [ -- 5
            [3, 6, 5, 3, 6, 5, 4],
            [8, 8, 7, 8, 8, 8, 6],
            [5, 4, 2, 8, 4, 3, 4],
            [8, 4, 5, 6, 4, 8, 4]
        ],
        [ -- 6
            [3, 4, 3, 8, 8, 8, 8],
            [8, 8, 7, 6, 6, 5, 6],
            [5, 6, 5, 3, 4, 3, 4],
            [8, 4, 5, 6, 4, 8, 4]
        ],
        [ -- 7
            [5, 5, 5, 4, 3, 2, 3],
            [7, 7, 7, 7, 6, 7, 7],
            [3, 3, 3, 2, 3, 4, 5],
            [3, 3, 3, 7, 8, 7, 3]
        ],
        [ -- 8
            [5, 5, 5, 3, 3, 2, 3],
            [8, 8, 7, 8, 7, 7, 7],
            [3, 3, 2, 1, 5, 4, 5],
            [8, 8, 5, 6, 3, 7, 3]
        ],
        [ -- 9
            [3, 3, 2, 8, 7, 6, 5],
            [8, 8, 7, 6, 5, 4, 5],
            [5, 5, 5, 3, 3, 8, 3],
            [8, 8, 5, 6, 3, 4, 3]
        ],
        -- }}}3

        -- {{{3 10-19 right side
        [ -- 10
            [5, 5, 5, 4, 3, 6, 5], -- unclear
            [8, 8, 2, 8, 7, 8, 8],
            [3, 3, 2, 4, 5, 1, 3],
            [8, 8, 7, 6, 5, 4, 1]
        ],
        [ -- 11
            [8, 8, 2, 3, 3, 4, 3],
            [5, 5, 7, 8, 7, 8, 8],
            [3, 3, 4, 1, 5, 6, 5],
            [8, 8, 7, 6, 5, 4, 1]
        ],
        [ -- 12
            [3, 4, 3, 3, 2, 8, 8],
            [8, 8, 7, 8, 7, 5, 6],
            [5, 6, 5, 4, 4, 3, 4],
            [8, 4, 5, 6, 7, 8, 4]
        ],
        [ -- 13
            [8, 8, 2, 3, 3, 4, 3],
            [5, 5, 7, 8, 7, 8, 8],
            [3, 3, 4, 1, 5, 6, 5],
            [8, 8, 7, 6, 5, 4, 1]
        ],
        [ -- 14
            [3, 2, 8, 6, 8, 7, 8],
            [8, 7, 5, 4, 3, 5, 5],
            [5, 4, 3, 1, 1, 2, 3],
            [3, 2, 3, 4, 6, 5, 1]
        ],
        [ -- 15
            [2, 3, 2, 8, 7, 6, 7],
            [7, 8, 7, 5, 5, 4, 5],
            [5, 5, 4, 3, 2, 2, 2],
            [5, 1, 2, 3, 5, 2, 5]
        ],
        [ -- 16
            [8, 8, 2, 8, 8, 7, 8],
            [5, 6, 7, 5, 5, 5, 5],
            [3, 4, 4, 3, 3, 2, 3],
            [1, 4, 2, 3, 1, 5, 1]
        ],
        [ -- 17
            [5, 6, 5, 4, 3, 2, 3], -- unclear
            [8, 8, 7, 6, 5, 5, 5],
            [3, 3, 3, 8, 8, 7, 8],
            [8, 6, 3, 4, 1, 5, 1]
        ],
        [ -- 18
            [8, 8, 2, 8, 8, 7, 8],
            [5, 6, 7, 5, 5, 5, 5],
            [3, 4, 4, 3, 3, 2, 3],
            [8, 4, 2, 3, 1, 5, 1]
        ],
        [ -- 19
            [3, 2, 8, 6, 8, 7, 8],
            [8, 7, 5, 4, 3, 5, 5],
            [5, 4, 3, 8, 8, 2, 3],
            [1, 2, 3, 4, 6, 5, 1]
        ]
        -- }}}3
    ]
-- }}}2
-- }}}1
-- {{{1 c3
c3 = (c3v, c0r)

-- {{{2 c3v
c3v =     [
        -- {{{3 0-9 left side
        [ -- 0
            [8, 8, 8, 2, 3, 2, 3],
            [6, 6, 5, 7, 8, 7, 8],
            [4, 4, 5, 4, 5, 5, 5],
            [4, 4, 3, 2, 1, 5, 1]
        ],
        [ -- 1
            [5, 5, 5, 4, 3, 2, 3],
            [7, 7, 7, 6, 5, 5, 5],
            [3, 3, 3, 8, 8, 7, 8],
            [3, 3, 3, 4, 1, 5, 1]
        ],
        [ -- 2
            [7, 7, 7, 6, 8, 7, 8],
            [5, 5, 5, 4, 3, 5, 5],
            [3, 3, 3, 8, 8, 2, 3],
            [3, 3, 3, 4, 6, 5, 1]
        ],
        [ -- 3
            [8, 8, 8, 2, 3, 2, 3],
            [6, 6, 5, 7, 8, 7, 8],
            [8, 8, 3, 4, 5, 5, 5],
            [4, 4, 3, 2, 1, 5, 1]
        ],
        [ -- 4
            [5, 5, 4, 4, 3, 2, 3],
            [7, 7, 6, 6, 5, 5, 5],
            [2, 2, 2, 8, 8, 7, 8],
            [5, 5, 2, 4, 1, 5, 1]
        ],
        [ -- 5
            [3, 2, 8, 7, 6, 5, 5],
            [8, 7, 6, 5, 4, 2, 3],
            [5, 5, 3, 3, 8, 7, 8],
            [8, 5, 6, 3, 4, 5, 1]
        ],
        [ -- 6
            [3, 2, 8, 6, 8, 7, 8],
            [8, 7, 5, 4, 3, 5, 5],
            [1, 4, 3, 6, 8, 2, 3],
            [1, 2, 3, 4, 6, 5, 1]
        ],
        [ -- 7
            [8, 3, 4, 5, 4, 2, 3],
            [6, 8, 7, 7, 6, 5, 5],
            [4, 5, 4, 3, 8, 7, 8],
            [4, 1, 2, 3, 4, 5, 1]
        ],
        [ -- 8
            [8, 8, 8, 2, 3, 2, 3],
            [6, 6, 5, 7, 8, 7, 8],
            [8, 8, 3, 4, 5, 5, 5],
            [4, 4, 3, 2, 1, 5, 1]
        ],
        [ -- 9
            [3, 4, 5, 4, 3, 4, 3],
            [8, 6, 8, 6, 8, 8, 8], -- unclear
            [5, 6, 5, 6, 5, 6, 5],
            [1, 4, 3, 4, 1, 4, 1]
        ],
        -- }}}3

        -- {{{3 10-19 right side
        [ -- 10
            [5, 4, 4, 3, 3, 2, 3],
            [8, 6, 7, 8, 8, 7, 8],
            [3, 8, 2, 5, 5, 5, 5],
            [1, 4, 2, 3, 1, 5, 1]
        ],
        [ -- 11
            [4, 3, 4, 5, 4, 2, 3],
            [8, 8, 7, 7, 6, 5, 5],
            [6, 5, 4, 3, 8, 7, 8],
            [4, 1, 2, 3, 4, 5, 1]
        ],
        [ -- 12
            [3, 2, 8, 6, 8, 7, 8],
            [8, 7, 5, 4, 3, 5, 5], -- unclear
            [5, 4, 3, 8, 8, 2, 3],
            [1, 2, 3, 4, 6, 5, 1]
        ],
        [ -- 13
            [3, 4, 5, 4, 8, 7, 8],
            [8, 7, 7, 6, 3, 5, 5], -- unclear
            [5, 4, 3, 8, 8, 2, 3],
            [1, 2, 3, 4, 6, 5, 1]
        ],
        [ -- 14
            [3, 2, 8, 6, 8, 7, 8],
            [8, 7, 5, 4, 3, 5, 5], -- unclear
            [5, 4, 3, 8, 8, 2, 3],
            [1, 2, 3, 4, 6, 5, 1]
        ],
        [ -- 15
            [5, 5, 4, 5, 5, 5, 5],
            [8, 7, 8, 7, 8, 7, 8], -- unclear
            [3, 2, 8, 2, 3, 2, 3],
            [8, 5, 6, 5, 1, 5, 1]
        ],
        [ -- 16
            [3, 4, 5, 4, 8, 7, 8],
            [8, 7, 7, 6, 3, 5, 5],
            [8, 4, 3, 8, 8, 2, 3], -- unclear
            [1, 2, 3, 4, 6, 5, 1]
        ],
        [ -- 17
            [3, 4, 5, 4, 3, 4, 3],
            [8, 8, 8, 8, 8, 8, 8],
            [8, 6, 5, 6, 5, 6, 5],
            [1, 4, 3, 4, 1, 4, 1] -- unclear
        ],
        [ -- 18
            [4, 3, 4, 5, 4, 2, 3],
            [8, 8, 7, 7, 6, 5, 5],
            [6, 5, 4, 3, 8, 7, 8],
            [4, 1, 2, 3, 4, 5, 1]
        ],
        [ -- 19
            [5, 6, 5, 4, 3, 2, 3], -- unclear
            [8, 8, 7, 6, 5, 5, 5],
            [3, 3, 3, 8, 8, 7, 8],
            [8, 6, 3, 4, 1, 5, 1] -- unclear
        ]
        -- }}}3
    ]
-- }}}2
-- }}}1