"""
TESTS is a dict with all you tests.
Keys for this will be categories' names.
Each test is dict with
    "input" -- input data for user function
    "answer" -- your right answer
    "explanation" -- not necessary key, it's using for additional info in animation.
"""
TESTS = {
    "0. Basics": [
        {
            'input': [4, 6],
            'answer': 38,
            'explanation': [
                [6, 19, 13],
                [['1', '1', '0'],
                 ['1', '1', '1', '0', 6],
                 ['0', '0', '0', '0', 0],
                 ['0', '0', '0', '0', 0],
                 6],
                [['1', '1', '0'],
                 ['1', '1', '1', '1', 7],
                 ['0', '1', '1', '0', 6],
                 ['0', '1', '1', '0', 6],
                 19],
                [['1', '1', '0'],
                 ['1', '0', '0', '1', 1],
                 ['0', '1', '1', '0', 6],
                 ['0', '1', '1', '0', 6],
                 13]],
        },
        {
            'input': [2, 7],
            'answer': 28,
            'explanation': [
                [7, 14, 7],
                [['1', '1', '1'],
                 ['1', '1', '1', '1', 7],
                 ['0', '0', '0', '0', 0],
                 7],
                [['1', '1', '1'],
                 ['1', '1', '1', '1', 7],
                 ['0', '1', '1', '1', 7],
                 14],
                [['1', '1', '1'],
                 ['1', '0', '0', '0', 0],
                 ['0', '1', '1', '1', 7],
                 7]],
        },
        {
            'input': [7, 2],
            'answer': 18,
            'explanation': [
                [6, 9, 3],
                [['1', '0'],
                 ['1', '1', '0', 2],
                 ['1', '1', '0', 2],
                 ['1', '1', '0', 2],
                 6],
                [['1', '0'],
                 ['1', '1', '1', 3],
                 ['1', '1', '1', 3],
                 ['1', '1', '1', 3],
                 9],
                [['1', '0'],
                 ['1', '0', '1', 1],
                 ['1', '0', '1', 1],
                 ['1', '0', '1', 1],
                 3]],
        }
    ],
    "1. Extra": [
        {'answer': 2,
         'explanation': [[1, 1, 0],
                         [['1'], ['1', '1', 1], 1],
                         [['1'], ['1', '1', 1], 1],
                         [['1'], ['1', '0', 0], 0]],
         'input': [1, 1]},
        {'answer': 10,
         'explanation': [[2, 5, 3],
                         [['1', '0'], ['1', '1', '0', 2], ['0', '0', '0', 0], 2],
                         [['1', '0'], ['1', '1', '1', 3], ['0', '1', '0', 2], 5],
                         [['1', '0'], ['1', '0', '1', 1], ['0', '1', '0', 2], 3]],
         'input': [2, 2]},
        {'answer': 60,
         'explanation': [[18, 30, 12],
                         [['1', '0', '0', '1'],
                          ['1', '1', '0', '0', '1', 9],
                          ['1', '1', '0', '0', '1', 9],
                          18],
                         [['1', '0', '0', '1'],
                          ['1', '1', '1', '1', '1', 15],
                          ['1', '1', '1', '1', '1', 15],
                          30],
                         [['1', '0', '0', '1'],
                          ['1', '0', '1', '1', '0', 6],
                          ['1', '0', '1', '1', '0', 6],
                          12]],
         'input': [3, 9]},
        {'answer': 84,
         'explanation': [[9, 42, 33],
                         [['1', '0', '0', '1'],
                          ['1', '1', '0', '0', '1', 9],
                          ['0', '0', '0', '0', '0', 0],
                          ['0', '0', '0', '0', '0', 0],
                          ['0', '0', '0', '0', '0', 0],
                          9],
                         [['1', '0', '0', '1'],
                          ['1', '1', '1', '1', '1', 15],
                          ['0', '1', '0', '0', '1', 9],
                          ['0', '1', '0', '0', '1', 9],
                          ['0', '1', '0', '0', '1', 9],
                          42],
                         [['1', '0', '0', '1'],
                          ['1', '0', '1', '1', '0', 6],
                          ['0', '1', '0', '0', '1', 9],
                          ['0', '1', '0', '0', '1', 9],
                          ['0', '1', '0', '0', '1', 9],
                          33]],
         'input': [8, 9]},
        {'answer': 92,
         'explanation': [[16, 46, 30],
                         [['1', '0', '0', '0'],
                          ['1', '1', '0', '0', '0', 8],
                          ['0', '0', '0', '0', '0', 0],
                          ['0', '0', '0', '0', '0', 0],
                          ['1', '1', '0', '0', '0', 8],
                          16],
                         [['1', '0', '0', '0'],
                          ['1', '1', '1', '1', '1', 15],
                          ['0', '1', '0', '0', '0', 8],
                          ['0', '1', '0', '0', '0', 8],
                          ['1', '1', '1', '1', '1', 15],
                          46],
                         [['1', '0', '0', '0'],
                          ['1', '0', '1', '1', '1', 7],
                          ['0', '1', '0', '0', '0', 8],
                          ['0', '1', '0', '0', '0', 8],
                          ['1', '0', '1', '1', '1', 7],
                          30]],
         'input': [9, 8]},
        {'answer': 28,
         'explanation': [[8, 14, 6],
                         [['1', '0', '0'],
                          ['1', '1', '0', '0', 4],
                          ['1', '1', '0', '0', 4],
                          8],
                         [['1', '0', '0'],
                          ['1', '1', '1', '1', 7],
                          ['1', '1', '1', '1', 7],
                          14],
                         [['1', '0', '0'],
                          ['1', '0', '1', '1', 3],
                          ['1', '0', '1', '1', 3],
                          6]],
         'input': [3, 4]},
        {'answer': 36,
         'explanation': [[8, 18, 10],
                         [['1', '0', '0'],
                          ['1', '1', '0', '0', 4],
                          ['0', '0', '0', '0', 0],
                          ['1', '1', '0', '0', 4],
                          8],
                         [['1', '0', '0'],
                          ['1', '1', '1', '1', 7],
                          ['0', '1', '0', '0', 4],
                          ['1', '1', '1', '1', 7],
                          18],
                         [['1', '0', '0'],
                          ['1', '0', '1', '1', 3],
                          ['0', '1', '0', '0', 4],
                          ['1', '0', '1', '1', 3],
                          10]],
         'input': [5, 4]},
        {'answer': 90,
         'explanation': [[24, 45, 21],
                         [['1', '0', '0', '0'],
                          ['1', '1', '0', '0', '0', 8],
                          ['1', '1', '0', '0', '0', 8],
                          ['1', '1', '0', '0', '0', 8],
                          24],
                         [['1', '0', '0', '0'],
                          ['1', '1', '1', '1', '1', 15],
                          ['1', '1', '1', '1', '1', 15],
                          ['1', '1', '1', '1', '1', 15],
                          45],
                         [['1', '0', '0', '0'],
                          ['1', '0', '1', '1', '1', 7],
                          ['1', '0', '1', '1', '1', 7],
                          ['1', '0', '1', '1', '1', 7],
                          21]],
         'input': [7, 8]},
        {'answer': 12,
         'explanation': [[4, 6, 2],
                         [['1', '0'], ['1', '1', '0', 2], ['1', '1', '0', 2], 4],
                         [['1', '0'], ['1', '1', '1', 3], ['1', '1', '1', 3], 6],
                         [['1', '0'], ['1', '0', '1', 1], ['1', '0', '1', 1], 2]],
         'input': [3, 2]}
    ],
    "2. Extra": [
        {'explanation': [[4, 10, 6],
                         [['1', '0'], ['1', '1', '0', 2], ['0', '0', '0', 0], ['1', '1', '0', 2], ['0', '0', '0', 0],
                          4],
                         [['1', '0'], ['1', '1', '1', 3], ['0', '1', '0', 2], ['1', '1', '1', 3], ['0', '1', '0', 2],
                          10],
                         [['1', '0'], ['1', '0', '1', 1], ['0', '1', '0', 2], ['1', '0', '1', 1], ['0', '1', '0', 2],
                          6]], 'answer': 20, 'input': [10, 2]},
        {'explanation': [[10, 25, 15],
                         [['1', '0', '1', '0'], ['1', '1', '0', '1', '0', 10], ['0', '0', '0', '0', '0', 0], 10],
                         [['1', '0', '1', '0'], ['1', '1', '1', '1', '1', 15], ['0', '1', '0', '1', '0', 10], 25],
                         [['1', '0', '1', '0'], ['1', '0', '1', '0', '1', 5], ['0', '1', '0', '1', '0', 10], 15]],
         'answer': 50, 'input': [2, 10]},
        {'explanation': [[36, 57, 21],
                         [['1', '1', '0', '0'], ['1', '1', '1', '0', '0', 12], ['0', '0', '0', '0', '0', 0],
                          ['1', '1', '1', '0', '0', 12], ['1', '1', '1', '0', '0', 12], 36],
                         [['1', '1', '0', '0'], ['1', '1', '1', '1', '1', 15], ['0', '1', '1', '0', '0', 12],
                          ['1', '1', '1', '1', '1', 15], ['1', '1', '1', '1', '1', 15], 57],
                         [['1', '1', '0', '0'], ['1', '0', '0', '1', '1', 3], ['0', '1', '1', '0', '0', 12],
                          ['1', '0', '0', '1', '1', 3], ['1', '0', '0', '1', '1', 3], 21]], 'answer': 114,
         'input': [11, 12]},
        {'explanation': [[4, 23, 19],
                         [['1', '0', '0'], ['1', '1', '0', '0', 4], ['0', '0', '0', '0', 0], ['0', '0', '0', '0', 0],
                          ['0', '0', '0', '0', 0], ['0', '0', '0', '0', 0], 4],
                         [['1', '0', '0'], ['1', '1', '1', '1', 7], ['0', '1', '0', '0', 4], ['0', '1', '0', '0', 4],
                          ['0', '1', '0', '0', 4], ['0', '1', '0', '0', 4], 23],
                         [['1', '0', '0'], ['1', '0', '1', '1', 3], ['0', '1', '0', '0', 4], ['0', '1', '0', '0', 4],
                          ['0', '1', '0', '0', 4], ['0', '1', '0', '0', 4], 19]], 'answer': 46, 'input': [16, 4]},
        {'explanation': [[8, 30, 22],
                         [['1', '0', '0'], ['1', '1', '0', '0', 4], ['0', '0', '0', '0', 0], ['0', '0', '0', '0', 0],
                          ['0', '0', '0', '0', 0], ['0', '0', '0', '0', 0], ['1', '1', '0', '0', 4], 8],
                         [['1', '0', '0'], ['1', '1', '1', '1', 7], ['0', '1', '0', '0', 4], ['0', '1', '0', '0', 4],
                          ['0', '1', '0', '0', 4], ['0', '1', '0', '0', 4], ['1', '1', '1', '1', 7], 30],
                         [['1', '0', '0'], ['1', '0', '1', '1', 3], ['0', '1', '0', '0', 4], ['0', '1', '0', '0', 4],
                          ['0', '1', '0', '0', 4], ['0', '1', '0', '0', 4], ['1', '0', '1', '1', 3], 22]], 'answer': 60,
         'input': [33, 4]},
        {'explanation': [[32, 94, 62], [['1', '0', '0', '0', '0'], ['1', '1', '0', '0', '0', '0', 16],
                                        ['1', '1', '0', '0', '0', '0', 16], ['0', '0', '0', '0', '0', '0', 0],
                                        ['0', '0', '0', '0', '0', '0', 0], 32],
                         [['1', '0', '0', '0', '0'], ['1', '1', '1', '1', '1', '1', 31],
                          ['1', '1', '1', '1', '1', '1', 31], ['0', '1', '0', '0', '0', '0', 16],
                          ['0', '1', '0', '0', '0', '0', 16], 94],
                         [['1', '0', '0', '0', '0'], ['1', '0', '1', '1', '1', '1', 15],
                          ['1', '0', '1', '1', '1', '1', 15], ['0', '1', '0', '0', '0', '0', 16],
                          ['0', '1', '0', '0', '0', '0', 16], 62]], 'answer': 188, 'input': [12, 16]},
        {'explanation': [[30, 75, 45],
                         [['1', '1', '1', '1'], ['1', '1', '1', '1', '1', 15], ['0', '0', '0', '0', '0', 0],
                          ['0', '0', '0', '0', '0', 0], ['1', '1', '1', '1', '1', 15], ['0', '0', '0', '0', '0', 0],
                          30], [['1', '1', '1', '1'], ['1', '1', '1', '1', '1', 15], ['0', '1', '1', '1', '1', 15],
                                ['0', '1', '1', '1', '1', 15], ['1', '1', '1', '1', '1', 15],
                                ['0', '1', '1', '1', '1', 15], 75],
                         [['1', '1', '1', '1'], ['1', '0', '0', '0', '0', 0], ['0', '1', '1', '1', '1', 15],
                          ['0', '1', '1', '1', '1', 15], ['1', '0', '0', '0', '0', 0], ['0', '1', '1', '1', '1', 15],
                          45]], 'answer': 150, 'input': [18, 15]},
        {'explanation': [[16, 95, 79], [['1', '0', '0', '0', '0'], ['1', '1', '0', '0', '0', '0', 16],
                                        ['0', '0', '0', '0', '0', '0', 0], ['0', '0', '0', '0', '0', '0', 0],
                                        ['0', '0', '0', '0', '0', '0', 0], ['0', '0', '0', '0', '0', '0', 0], 16],
                         [['1', '0', '0', '0', '0'], ['1', '1', '1', '1', '1', '1', 31],
                          ['0', '1', '0', '0', '0', '0', 16], ['0', '1', '0', '0', '0', '0', 16],
                          ['0', '1', '0', '0', '0', '0', 16], ['0', '1', '0', '0', '0', '0', 16], 95],
                         [['1', '0', '0', '0', '0'], ['1', '0', '1', '1', '1', '1', 15],
                          ['0', '1', '0', '0', '0', '0', 16], ['0', '1', '0', '0', '0', '0', 16],
                          ['0', '1', '0', '0', '0', '0', 16], ['0', '1', '0', '0', '0', '0', 16], 79]], 'answer': 190,
         'input': [16, 16]},
        {'explanation': [[3, 21, 18],
                         [['1', '1'], ['1', '1', '1', 3], ['0', '0', '0', 0], ['0', '0', '0', 0], ['0', '0', '0', 0],
                          ['0', '0', '0', 0], ['0', '0', '0', 0], ['0', '0', '0', 0], 3],
                         [['1', '1'], ['1', '1', '1', 3], ['0', '1', '1', 3], ['0', '1', '1', 3], ['0', '1', '1', 3],
                          ['0', '1', '1', 3], ['0', '1', '1', 3], ['0', '1', '1', 3], 21],
                         [['1', '1'], ['1', '0', '0', 0], ['0', '1', '1', 3], ['0', '1', '1', 3], ['0', '1', '1', 3],
                          ['0', '1', '1', 3], ['0', '1', '1', 3], ['0', '1', '1', 3], 18]], 'answer': 42,
         'input': [64, 3]},

    ]
}

