directions_2 = [

    [ 1,  0 ], [ 0,  1 ],

    [ 2,  0 ], [ 0,  2 ],
    [ 1,  1 ], [ 1, -1 ],

    [ 3,  0 ], [ 0,  3 ],
    [ 1,  2 ], [ 2,  1 ],
    [ 1, -2 ], [-2,  1 ],

    [ 4,  0 ], [ 0,  4 ],
    [ 1,  3 ], [ 3,  1 ],
    [ 1, -3 ], [-3,  1 ],
    [ 2,  2 ], [ 2, -2 ],

    [ 5,  0 ], [ 0,  5 ],
    [ 1,  4 ], [ 4,  1 ],
    [ 1, -4 ], [-4,  1 ],
    [ 2,  3 ], [ 3,  2 ],
    [ 2, -3 ], [-3,  2 ],


    [-1,  0 ], [ 0, -1 ],

    [-2,  0 ], [ 0, -2 ],
    [-1, -1 ], [-1,  1 ],

    [-3,  0 ], [ 0, -3 ],
    [-1, -2 ], [-2, -1 ],
    [-1,  2 ], [ 2, -1 ],

    [-4,  0 ], [ 0, -4 ],
    [-1, -3 ], [-3, -1 ],
    [-1,  3 ], [ 3, -1 ],
    [-2, -2 ], [-2,  2 ],

    [-5,  0 ], [ 0, -5 ],
    [-1, -4 ], [-4, -1 ],
    [-1,  4 ], [ 4, -1 ],
    [-2, -3 ], [-3, -2 ],
    [-2,  3 ], [ 3, -2 ],

    [ 0,  0 ]
]

directions_3 = [
        [ 1,  0,  0],  [ 0,  1,  0],  [ 0,  0,  1],
        [-1,  1,  1],  [ 1, -1,  1],  [ 1,  1, -1],
        [-2,  1,  0],  [ 1, -2,  0],  [-2,  0,  1],
        [ 0, -2,  1],  [ 1,  0, -2],  [ 0,  1, -2],

        [-1,  0,  0],  [ 0, -1,  0],  [ 0,  0, -1],
        [ 1, -1, -1],  [-1,  1, -1],  [-1, -1,  1],
        [ 2, -1,  0],  [-1,  2,  0],  [ 2,  0, -1],
        [ 0,  2, -1],  [-1,  0,  2],  [ 0, -1,  2],

        [ 3,  0,  0],  [ 0,  3,  0],  [ 0,  0,  3],
        [ 2,  1,  0],  [ 2,  0,  1],  [ 1,  2,  0],
        [ 0,  2,  1],  [ 1,  0,  2],  [ 0,  1,  2],
        [ 1,  1,  1],

        [-3,  0,  0],  [ 0, -3,  0],  [ 0,  0, -3],
        [-2, -1,  0],  [-2,  0, -1],  [-1, -2,  0],
        [ 0, -2, -1],  [-1,  0, -2],  [ 0, -1, -2],
        [-1, -1, -1]
]

def idx_ppar( directions, idx, coo ):
    """ Return a pair [ index, data_name ]"""
    cood = ["x", "y", "z"]
    return [ directions.index(idx) * 6 + cood.index(coo) * 2,
             "[%s] in %s-axis" %
             ( ', '.join( map( str, idx ) ), coo ) ]
