コード例 #1
0
ファイル: test_estimate_tolerance.py プロジェクト: jopohl/urh
    def test_tolerance_estimation(self):
        data = [[40, 4, 3, 8, 12, 3, 4, 3, 2, 9, 10, 4, 7, 12, 7, 5, 11, 4, 8, 10, 1, 1, 1, 1, 4, 4, 10, 7, 7, 1, 17, 1, 1, 5, 3, 2, 1, 3, 17, 1, 1, 1, 1, 3, 3, 7, 18, 1, 3, 1, 1, 8, 7, 6, 6, 14, 6, 5, 8, 14, 2, 6, 10, 16, 1, 1, 16, 7, 2, 6, 18, 3, 1, 4, 1, 5, 15, 1, 3, 1, 2, 1, 1, 9, 18, 15, 6, 3, 9, 13, 1, 1, 4, 4, 10, 15, 2, 1, 1, 1, 13, 5, 7, 3, 17, 1, 1, 1, 1, 2, 3, 2, 1, 4, 22, 2, 2, 7, 18, 15, 6, 4, 8, 15, 4, 3, 11, 15, 2, 4, 12, 8, 2, 2, 1, 2, 18, 3, 1, 3, 2, 6, 15, 1, 3, 1, 2, 4, 1, 6, 19, 2, 2, 10, 10, 2, 6, 15, 18, 15, 18, 15, 1, 3, 14, 4, 7, 4, 16, 1, 8, 8, 12, 1, 8, 1, 3, 8, 8, 5, 5, 15, 6, 5, 7, 15, 4, 4, 10, 15, 1, 5, 12, 7, 1, 7, 18, 3, 1, 3, 2, 6, 14, 1, 3, 3, 1, 11, 9, 2, 7, 15, 6, 6, 6, 15, 4, 6, 8, 15, 1, 7, 8, 7, 3, 1, 2, 4, 1, 2, 15, 3, 6, 6, 11, 1, 3, 1, 8, 8, 12, 1, 9, 1, 1, 10, 5, 7, 6, 15, 1, 1, 1, 7, 8, 15, 1, 6, 9, 22, 3, 1, 3, 4, 1, 1, 13, 1, 3, 3, 2, 3, 1, 5, 24, 9, 10, 3, 6, 1, 1, 12, 3, 8, 7, 15, 2, 14, 2, 7, 8, 10, 1, 10, 10, 1, 1, 1, 1, 3, 7, 4, 15, 1, 1, 1, 1, 3, 3, 2, 1, 5, 3, 1, 1, 12, 9, 1, 8, 2, 1, 9, 7, 8, 6, 15, 2, 7, 7, 17, 1, 21, 8, 11, 1, 8, 12, 3, 1, 1, 1, 1, 1, 12, 3, 1, 3, 10, 10, 2, 11, 9, 7, 5, 7, 15, 1, 23, 7, 24, 5, 22, 1, 7, 1, 8, 12, 3, 1, 1, 1, 1, 1, 12, 12, 3, 4, 1, 1, 12, 8, 4, 7, 15, 1, 24, 8, 22, 6, 31, 1, 8, 11, 4, 1, 3, 1, 3, 2, 6, 9, 6, 3, 2, 2, 10, 2, 15, 7, 4, 3, 19, 1, 32, 1, 23, 3, 26, 8, 3, 2, 1, 1, 14, 2, 2, 3, 11, 8, 3, 1, 2, 4, 1, 2, 11, 2, 11, 1, 2, 7, 26, 2, 55, 6, 20, 1, 1, 9, 3, 1, 3, 1, 13, 3, 1, 2, 12, 8, 5, 5, 1, 2, 11, 2, 10, 2, 2, 4, 11, 2, 16, 2, 32, 1, 22, 7, 19, 2, 2, 3, 2, 1, 7, 8, 7, 3, 1, 3, 11, 7, 5, 6, 2, 1, 9, 1, 1, 2, 15, 2, 11, 4, 16, 1, 24, 6, 24, 6, 21, 3, 1, 2, 3, 1, 7, 8, 7, 4, 1, 2, 11, 2, 13, 7, 4, 1, 2, 4, 16, 2, 12, 1, 41, 7, 37, 8, 1, 2, 4, 1, 1, 1, 1, 2, 12, 3, 1, 3, 6, 5, 1, 2, 11, 3, 10, 1, 1, 7, 8, 3, 17, 1, 23, 7, 24, 5, 30, 2, 7, 7, 3, 1, 4, 2, 1, 3, 12, 2, 13, 7, 7, 2, 1, 1, 1, 1, 12, 4, 1, 2, 51, 6, 57, 2, 2, 2, 7, 2, 15, 6, 1, 2, 7, 2, 12, 1, 1, 3, 1, 1, 9, 1, 2, 3, 7, 7, 26, 1, 88, 10, 6, 3, 13, 3, 1, 2, 11, 3, 2, 2, 7, 3, 1, 1, 1, 1, 12, 2, 8, 7, 181, 1, 16, 1, 9, 2, 1, 4, 7, 1, 2, 3, 2, 1, 8, 3, 12, 1, 9, 1, 3, 7, 13, 1, 8, 2, 1, 1, 1, 2, 3, 1, 54, 1, 16, 1, 15, 3],
                [1, 1, 2, 3660, 1, 634, 1, 465, 1, 50, 1, 66, 1, 16, 1, 815, 1, 522, 1, 97, 1, 14, 1, 78, 1, 21, 1, 142, 1, 28, 1, 57, 1, 129, 1, 129, 1, 7, 1, 14, 1, 28, 1, 34, 1, 196, 1, 14, 1, 22, 1, 159, 1, 68, 1, 88, 1, 51, 1, 25, 1, 119, 1, 370],
                [4, 2, 2, 1, 8, 1, 1, 1, 6, 2, 6, 2, 2, 1, 1, 1, 6, 1, 1, 2, 1, 1, 2, 2, 1, 1, 3, 2, 3, 1, 6, 1, 4, 2, 2, 1, 4, 2, 3, 2, 1, 2],
                [1, 66, 1, 13, 1, 2, 1, 2, 104, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 209, 104, 105, 208, 104, 312, 105, 104, 104, 104, 521, 416, 105, 104, 208, 104, 313, 208, 209, 104, 104, 104, 417],
                [1, 73, 1, 2, 1, 6, 1, 1, 105, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 105, 103, 104, 105, 208, 104, 104, 209, 104, 312, 105, 104, 104, 104, 521, 417, 104, 104, 208, 104, 313, 208, 209, 104, 104, 104, 416],
                [1, 76, 1, 2, 1, 3, 1, 1, 105, 104, 104, 104, 105, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 105, 208, 104, 104, 209, 103, 313, 105, 103, 104, 105, 521, 416, 104, 105, 208, 104, 313, 208, 209, 103, 104, 105, 416],
                [1, 11, 1, 10, 1, 10, 1, 10, 1, 5, 1, 4, 1, 5, 1, 4, 2, 4, 1, 3, 3, 3, 3, 2, 104, 105, 104, 104, 105, 104, 103, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 103, 105, 104, 104, 105, 104, 104, 104, 208, 104, 105],
                [1, 12, 1, 22, 1, 10, 1, 3, 1, 1, 1, 4, 1, 5, 1, 3, 2, 4, 2, 4, 2, 3, 2, 3, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 105, 104, 105, 103, 104, 104, 104, 105, 104, 104, 104, 105, 104, 103, 105, 104, 104, 104, 105, 104, 104, 104, 209, 103, 105],
                [1, 12, 1, 22, 1, 10, 1, 5, 1, 3, 2, 5, 1, 3, 2, 4, 2, 3, 3, 3, 2, 3, 104, 105, 104, 104, 105, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 104, 103, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 105, 104, 104, 104, 104, 105, 104, 104, 208, 104, 104],
                [1, 66, 1, 2, 1, 6, 1, 6, 1, 1, 105, 104, 104, 104, 105, 104, 104, 104, 105, 103, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 105, 104, 104, 104, 104, 104, 105, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 105, 208, 104, 104, 209, 104, 312, 105, 104, 104, 104, 521, 417, 103, 104, 209, 104, 313, 208, 209, 103, 104, 105, 416],
                [1, 66, 1, 13, 1, 2, 1, 2, 105, 103, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 105, 104, 103, 105, 104, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 208, 105, 104, 208, 104, 312, 105, 104, 104, 104, 521, 417, 104, 104, 208, 105, 312, 208, 209, 104, 104, 105, 416],
                [1, 66, 1, 6, 1, 6, 1, 2, 1, 2, 105, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104, 105, 104, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 105, 104, 104, 104, 208, 105, 104, 208, 104, 312, 105, 104, 104, 104, 521, 417, 104, 105, 207, 104, 314, 208, 208, 104, 104, 105, 416],
                [2, 3, 13, 1, 5, 1, 1, 1, 26, 1, 2, 1, 2, 1, 6, 1, 5, 1, 2, 1, 5, 1, 3, 1, 6, 1, 3, 1, 3, 1, 7, 1, 1, 1, 3, 1, 19, 1, 7, 1, 26, 1, 26, 1, 2, 1, 5, 1, 2, 1, 3, 1, 7, 1, 12, 1, 6, 1, 24, 1, 4, 1, 6, 1, 6, 1, 4, 1, 1, 1, 27, 1, 6, 1, 7, 1, 13, 1, 6, 1, 7, 1, 6, 1, 16, 1, 1, 1, 11, 1, 6, 1, 1, 1, 3, 1, 2, 1, 1, 1, 4, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3, 1, 2, 1, 1, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 2, 1, 3, 1, 4, 1, 112, 1, 2, 1, 5, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 1, 2, 1, 1, 1, 1, 3, 4, 2, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 3, 2, 1, 1, 1, 1, 4, 1, 4, 1, 1, 1, 4, 1, 6, 1, 28, 1, 83, 1, 1, 1, 5, 1, 6, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 1, 1, 5, 1, 9, 1, 6, 1, 4, 1, 11, 1, 13, 1, 7, 1, 6, 1, 40, 1, 3, 1, 1, 1, 2, 1, 6, 1, 3, 1, 2, 1, 3, 1, 13, 1, 6, 1, 6, 1, 25, 1, 6, 1, 4, 1, 6, 1, 45, 1, 14, 1, 6, 1, 6, 1, 14, 1, 16, 1, 1, 1, 3, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 6, 1, 1, 1, 1, 1, 2, 1, 4, 1, 1, 1, 3, 1, 2, 1, 4, 1, 1, 1, 4, 1, 6, 1, 3, 1, 2, 1, 4, 1, 6, 1, 10, 1, 112, 1, 1, 1, 1, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 4, 1, 4, 1, 1, 1, 4, 1, 3, 1, 24, 1, 78, 1, 7, 1, 20, 1, 7, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4, 1, 1, 1, 11, 1, 7, 1, 7, 1, 25, 1, 11, 1, 7, 1, 27, 1, 9, 1, 1, 1, 2, 1, 1, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 25, 1, 13, 1, 11, 1, 65, 1, 13, 1, 7, 1, 6, 1, 6, 1, 3, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 6, 1, 3, 1, 2, 1, 4, 1, 1, 1, 1, 1, 2, 1, 6, 1, 3, 1, 2, 1, 3, 1, 108, 1, 3, 1, 1, 1, 2, 1, 3, 1, 2, 1, 3, 1, 1, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 4, 1, 10, 1, 7, 1, 6, 1, 14, 1, 66, 1, 8, 1, 6, 1, 6, 1, 6, 1, 10, 1, 6, 1, 6, 1, 6, 1, 7, 1, 3, 1, 6, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 19, 1, 7, 1, 14, 1, 18, 1, 10, 1, 7, 1, 6, 1, 13, 1, 7, 1, 1, 1, 6, 1, 1, 1, 4, 1, 5, 1, 2, 1, 3, 1, 7, 1, 6, 1, 6, 1, 3, 1, 6, 1, 6, 1, 18, 1, 11, 1, 57, 1, 14, 1, 13, 1, 6, 1, 11, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 13, 1, 97, 1, 1, 1, 2, 1, 3, 1, 2, 1, 3, 1, 1, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 6, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 2, 4, 1, 1, 1, 2, 12, 1, 6, 1, 7, 1, 21, 1, 14, 1, 13, 1, 26, 1, 8, 1, 5, 1, 6, 1, 13, 1, 10, 1, 6, 1, 7, 1, 6, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 31, 1, 7, 1, 14, 1, 3, 1, 25, 1, 7, 1, 16, 1, 8, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 6, 1, 1, 1, 4, 1, 6, 1, 3, 1, 2, 1, 3, 1, 6, 1, 7, 1, 3, 1, 13, 1, 52, 1, 21, 1, 21, 1, 6, 1, 5, 1, 2, 1, 6, 1, 1, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 4, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 3, 1, 108, 1, 1, 1, 5, 1, 6, 1, 2, 1, 3, 1, 6, 1, 4, 1, 1, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 1, 2, 3, 1, 4, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 15, 1, 3, 1, 6, 1, 7, 1, 29, 1, 46, 1, 2, 1, 8, 1, 12, 1, 25, 1, 13, 1, 11, 1, 3, 1, 6, 1, 6, 1, 21, 1, 7, 1, 14, 1, 6, 1, 7, 1, 6, 1, 5, 1, 4, 1, 11, 1, 6, 1, 7, 1, 6, 1, 20, 1, 6, 1, 6, 1, 13, 1, 57, 1, 1, 1, 6, 1, 6, 1, 6, 1, 6, 1, 6, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 1, 1, 6, 1, 15, 1, 5, 1, 7, 1, 7, 1, 3, 1, 4, 1, 7, 1, 5, 1, 21, 1, 6, 1, 9, 1, 3, 1, 1, 1, 2, 1, 3, 1, 2, 1, 6, 1, 6, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 11, 1, 6, 1, 6, 1, 11, 1, 6, 1, 6, 1, 11, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 1, 1, 1, 1, 4, 1, 2, 1, 3, 1, 2, 1, 1, 1, 1, 1, 4, 1, 4, 1, 1, 1, 1, 2, 1, 1, 9, 1, 25, 1, 7, 1, 6, 1, 14, 1, 6, 1, 28, 1, 6, 1, 2, 1, 1, 1, 6, 1, 6, 1, 6, 1, 10, 1, 13, 1, 6, 1, 10, 1, 7, 1, 6, 1, 3, 1, 7, 1, 6, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 4, 1, 3, 1, 2, 1, 3, 1, 2, 1, 1, 1, 1, 1, 4, 1, 2, 1, 3, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 3, 2, 1, 1, 4, 1, 1, 1, 4, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 4, 1, 6, 1, 3, 1, 2, 1, 4, 1, 3, 1, 2, 1, 3, 1, 7, 1, 3, 1, 2, 1, 3, 1, 4, 1, 82, 1, 21, 1, 3, 1, 5, 1, 1, 1, 4, 1, 1, 1, 6, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 1, 2, 1, 1, 3, 1, 4, 1, 8, 1, 22, 1, 71, 1, 8, 1, 6, 1, 5, 1, 7, 1, 6, 1, 3, 1, 2, 1, 3, 1, 6, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 5, 1, 7, 1, 6, 1, 8, 1, 7, 1, 8, 1, 5, 1, 6, 1, 14, 1, 6, 1, 28, 1, 103, 1, 42, 1, 6, 1, 6, 1, 6, 1, 20, 1, 5, 1, 8, 1, 2, 1, 4, 1, 7, 1, 6, 1, 12, 1, 6, 1, 28, 1, 6, 1, 153, 1, 6, 1, 6, 1, 20, 1, 5, 1, 7, 1, 2, 1, 13, 1, 5, 1, 8, 1, 5, 1, 2, 1, 6, 1, 1, 1, 1, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3, 1, 2, 1, 6, 1, 4, 1, 6, 1, 6, 1, 3, 1, 6, 1, 7, 1, 10, 1, 18, 1, 6, 1, 11, 1, 3, 1, 2, 1, 6, 1, 3, 1, 7, 1, 3, 1, 2, 1, 4, 1, 3, 1, 2, 1, 3, 1, 4, 1, 2, 1, 3, 1, 2, 1, 1, 1, 3, 1, 8, 1, 7, 1, 14, 1, 22, 1, 14, 1, 6, 1, 21, 1, 6, 1, 6, 1, 96, 1, 1, 1, 5, 1, 7, 1, 6, 1, 5, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 4, 1, 6, 1, 8, 1, 2, 1, 14, 1, 6, 1, 13, 1, 7, 1, 6, 1, 28, 1, 6, 1, 104, 1, 2, 1, 5, 1, 2, 1, 6, 1, 5, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 4, 1, 1, 2, 1, 22, 1, 6, 1, 162, 1, 6, 1, 35, 1, 6, 1, 6, 1, 5, 1, 7, 1, 3, 1, 3, 1, 8, 1, 5, 1, 20, 1, 4, 1, 4, 1, 1, 1, 1, 1, 4, 1, 1, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 6, 1, 6, 1, 6, 1, 10, 1, 18, 1, 6, 1, 6, 1, 11, 1, 11, 1, 5, 1, 7, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 2, 1, 4, 1, 3, 1, 6, 1, 4, 1, 1, 1, 4, 1, 22, 1, 17, 1, 6, 1, 7, 1, 6, 1, 21, 1, 6, 1, 28, 1, 98, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 1, 4, 1, 10, 1, 5, 1, 14, 1, 14, 1, 35, 1, 21, 1, 1, 1, 5, 1, 7, 1, 5, 1, 6, 1, 6, 1, 24, 1, 7, 1, 3, 1, 2, 1, 3, 1, 7, 1, 3, 1, 2, 1, 33, 1, 14, 1, 6, 1, 6, 1, 14, 1, 2, 1, 1, 1, 11, 1, 5, 1, 6, 1, 6, 1, 28, 1, 146, 1, 6, 1, 6, 1, 34, 1, 6, 1, 7, 1, 5, 1, 2, 1, 8, 1, 4, 1, 5, 1, 6, 1, 6, 1, 7, 1, 17, 1, 1, 1, 5, 1, 2, 1, 3, 1, 2, 1, 6, 1, 6, 1, 6, 1, 3, 1, 2, 1, 3, 1, 13, 1, 11, 1, 6, 1, 48, 1, 36, 1, 13, 1, 6, 1, 7, 1, 6, 1, 2, 1, 1, 1, 1, 2, 3, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 2, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 10, 1, 6, 1, 11, 1, 11, 1, 13, 1, 11, 1, 3, 1, 6, 1, 7, 1, 3, 1, 37, 1, 6, 1, 22, 1, 6, 1, 6, 1, 11, 1, 3, 1, 7, 1, 3, 1, 6, 1, 1, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 6, 1, 4, 1, 1, 1, 3, 1, 7, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 7, 1, 3, 1, 82, 1, 6, 1, 20, 1, 14, 1, 6, 1, 6, 1, 6, 1, 29, 1, 6, 1, 6, 1, 6, 1, 6, 1, 8, 1, 6, 1, 1, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3, 1, 2, 1, 3, 1, 6, 1, 6, 1, 7, 1, 10, 1, 18, 1, 41, 1, 57, 1, 7, 1, 16, 1, 18, 1, 6, 1, 7, 1, 6, 1, 20, 1, 6, 1, 6, 1, 153, 1, 6, 1, 20, 1, 21, 1, 13, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 6, 1, 1, 1, 1, 1, 2, 1, 4, 1, 1, 1, 3, 1, 2, 1, 4, 1, 1, 1, 3, 1, 7, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 7, 1, 3, 1, 107, 1, 4, 1, 2, 1, 5, 1, 2, 1, 3, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 2, 1, 1, 43, 1, 21, 1, 111, 1, 6, 1, 21, 1, 6, 1, 6, 1, 6, 1, 6, 1, 6, 1, 10, 1, 1, 1, 2, 1, 7, 1, 5, 1, 6, 1, 6, 1, 6, 1, 13, 1, 6, 1, 6, 1, 8, 1, 3, 1, 2, 1, 5, 1, 7, 1, 6, 1, 6, 1, 5, 1, 4, 1, 6, 1, 11, 1, 13, 1, 48, 1, 14, 1, 6, 1, 21, 1, 6, 1, 6, 1, 7, 1, 6, 1, 15, 1, 5, 1, 6, 1, 6, 1, 28, 1, 167, 1, 6, 1, 13, 1, 6, 1, 6, 1, 30, 1, 5, 1, 6, 1, 6, 1, 6, 1, 28, 1, 6, 1, 13, 1, 110, 1, 27, 1, 28, 1, 6, 1, 30, 1, 19, 1, 6, 1, 6, 1, 49, 1, 103, 1, 6, 1, 6, 1, 13, 1, 27, 1, 5, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 3, 2, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 4, 1, 148, 1, 6, 1, 6, 1, 6, 1, 6, 1, 19, 1, 16, 1, 6, 1, 6, 1, 7, 1, 20, 1, 27, 1, 110, 1, 56, 1, 6, 1, 6, 1, 6, 1, 4, 1, 16, 1, 6, 1, 7, 1, 6, 1, 20, 1, 6, 1, 89, 1, 6, 1, 6, 1, 6, 1, 6, 1, 3, 1, 2, 1, 3, 1, 6, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 14, 1, 6, 1, 6, 1, 8, 1, 3, 1, 3, 1, 7, 1, 6, 1, 6, 1, 6, 1, 14, 1, 6, 1, 6, 1, 14, 1, 131, 1, 28, 1, 6, 1, 6, 1, 6, 1, 5, 1, 6, 1, 6, 1, 2, 1, 5, 1, 7, 1, 6, 1, 20, 1, 6, 1, 167, 1, 6, 1, 6, 1, 6, 1, 6, 1, 20, 1, 6, 1, 6, 1, 2, 1, 5, 1, 7, 1, 5, 1, 6, 1, 6, 1, 14, 1, 20, 1, 159, 1, 1, 1, 1, 1, 6, 1, 2, 1, 3, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 1, 2, 1, 1, 1, 1, 3, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 3, 2, 1, 1, 1, 1, 2, 1, 1, 1, 4, 1, 6, 1, 3, 1, 2, 1, 4, 1, 2, 1, 8, 1, 156, 1, 6, 1, 6, 1, 6, 1, 20, 1, 6, 1, 7, 1, 5, 1, 2, 1, 8, 1, 3, 1, 13, 1, 7, 1, 27, 1, 6, 1, 131, 1, 35, 1, 6, 1, 6, 1, 6, 1, 6, 1, 13, 1, 2, 1, 7, 1, 4, 1, 20, 1, 6, 1, 6, 1, 28, 1, 13, 1, 117, 1, 13, 1, 34, 1, 7, 1, 6, 1, 5, 1, 2, 1, 7, 1, 5, 1, 20, 1, 6, 1, 13, 1, 6, 1, 167, 1, 6, 1, 20, 1, 6, 1, 7, 1, 5, 1, 2, 1, 7, 1, 5, 1, 5, 1, 6, 1, 6, 1, 28, 1, 6, 1, 181, 1, 6, 1, 6, 1, 12, 1, 2, 1, 7, 1, 5, 1, 20, 1, 6, 1, 6, 1, 6, 1, 41, 1, 2, 1, 8, 1, 6, 1, 3, 1, 20, 1, 13, 1, 6, 1, 3, 1, 6, 1, 7, 1, 6, 1, 3, 1, 4, 1, 2, 1, 3, 1, 6, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 4, 1, 2, 1, 3, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 3, 2, 1, 2, 1, 2, 3, 1, 1, 1, 2, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 3, 1, 4, 1, 2, 1, 4, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 3, 1, 2, 1, 4, 1, 6, 1, 3, 1, 6, 1, 4, 1, 109, 1, 2, 1, 1, 1, 2, 1, 3, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 2, 3, 1, 4, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 37, 1, 7, 1, 65, 1, 2, 1, 5, 1, 6, 1, 6, 1, 7, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4, 1, 1, 1, 7, 1, 3, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 1, 4, 1, 1, 1, 2, 1, 4, 1, 7, 1, 16, 1, 14, 1, 7, 1, 59, 1, 6, 1, 2, 1, 6, 1, 3, 1, 13, 1, 6, 1, 25, 1, 6, 1, 10, 1, 6, 1, 2, 1, 22, 1, 14, 1, 14, 1, 6, 1, 20, 1, 6, 1, 6, 1, 2, 1, 5, 1, 7, 1, 6, 1, 6, 1, 6, 1, 6, 1, 28, 1, 6, 1, 131, 1, 35, 1, 6, 1, 6, 1, 5, 1, 6, 1, 6, 1, 2, 1, 13, 1, 6, 1, 6, 1, 13, 1, 6, 1, 6, 1, 160, 1, 13, 1, 13, 1, 14, 1, 5, 1, 5, 1, 7, 1, 2, 1, 5, 1, 7, 1, 5, 1, 6, 1, 39, 1, 3, 1, 1, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3, 1, 6, 1, 32, 1, 10, 1, 7, 1, 68, 1, 20, 1, 6, 1, 7, 1, 5, 1, 2, 1, 7, 1, 5, 1, 20, 1, 6, 1, 13, 1, 6, 1, 167, 1, 6, 1, 20, 1, 6, 1, 7, 1, 5, 1, 2, 1, 6, 1, 1, 1, 3, 1, 6, 1, 6, 1, 7, 1, 27, 1, 6, 1, 78, 1, 6, 1, 6, 1, 5, 1, 6, 1, 7, 1, 3, 1, 6, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 2, 1, 41, 1, 16, 1, 11, 1, 7, 1, 29, 1, 5, 1, 2, 1, 3, 1, 2, 1, 1, 1, 3, 1, 2, 1, 4, 1, 5, 1, 7, 1, 3, 1, 2, 1, 3, 1, 6, 1, 6, 1, 4, 1, 13, 1, 6, 1, 4, 1, 6, 1, 6, 1, 3, 1, 7, 1, 3, 1, 2, 1, 3, 1, 4, 1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 1, 1, 2, 1, 3, 1, 9, 1, 5, 1, 2, 1, 7, 1, 6, 1, 6, 1, 6, 1, 7, 1, 6, 1, 6, 1, 14, 1, 123, 1, 2, 1, 1, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 1, 1, 4, 1, 6, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 3, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 11, 1, 7, 1, 7, 1, 212, 1, 6, 1, 6, 1, 13, 1, 15, 1, 27, 1, 6, 1, 6, 1, 153, 1, 6, 1, 6, 1, 6, 1, 6, 1, 20, 1, 7, 1, 13, 1, 3, 1, 11, 1, 5, 1, 6, 1, 7, 1, 27, 1, 80, 1, 20, 1, 2775, 3, 20, 1, 16, 1, 2, 1, 17],
                [1, 53, 1, 9, 1, 3, 1, 6, 1, 5, 2, 2, 1, 1, 105, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 105, 103, 105, 104, 104, 104, 104, 104, 105, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 208, 105, 104, 208, 104, 313, 104, 104, 104, 104, 521, 417, 104, 104, 208, 104, 313, 209, 208, 104, 104, 104, 417],
                [1, 69, 1, 6, 1, 6, 1, 1, 105, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 105, 104, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 105, 103, 104, 105, 208, 104, 105, 208, 104, 312, 105, 104, 104, 104, 521, 417, 104, 104, 208, 105, 312, 208, 209, 104, 104, 104, 417],
                [1, 66, 1, 9, 1, 3, 1, 4, 105, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 104, 105, 208, 105, 104, 208, 104, 312, 105, 104, 104, 104, 521, 417, 104, 104, 208, 104, 313, 208, 209, 104, 104, 105, 416],
                [1, 51, 1, 13, 1, 3, 3, 6, 106, 105, 103, 105, 104, 105, 104, 103, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 105, 103, 105, 105, 104, 104, 103, 104, 105, 104, 104, 105, 104, 104, 103, 209, 105, 104],
                [2, 72, 1, 5, 1, 2, 106, 105, 103, 105, 104, 105, 103, 104, 104, 104, 105, 104, 105, 103, 105, 104, 104, 104, 104, 105, 103, 105, 104, 104, 104, 105, 103, 105, 103, 105, 104, 104, 104, 104, 105, 104, 104, 104, 105, 103, 209, 104, 105],
                [1, 78, 3, 1, 106, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 105, 104, 104, 105, 103, 104, 104, 104, 105, 104, 105, 104, 103, 105, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 105, 103, 208, 105, 103],
                [1, 83, 1, 1, 105, 104, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 105, 103, 104, 104, 105, 104, 104, 104, 105, 103, 105, 103, 105, 104, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 105, 208, 104, 104, 208, 104, 313, 105, 104, 104, 103, 522, 416, 104, 104, 209, 104, 313, 208, 209, 104, 103, 105, 416],
                [1, 80, 1, 2, 1, 1, 105, 104, 104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 105, 104, 104, 104, 104, 208, 105, 104, 208, 104, 313, 105, 104, 103, 104, 522, 416, 104, 104, 209, 104, 313, 208, 208, 104, 104, 105, 416],
                [1, 73, 1, 2, 1, 9, 105, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104, 208, 105, 104, 208, 104, 313, 104, 104, 104, 104, 522, 416, 104, 104, 208, 105, 312, 209, 208, 104, 104, 105, 416],
                [1, 13, 2, 4, 1, 9, 1, 4, 2, 9, 1, 4, 2, 3, 3, 4, 1, 9, 1, 3, 3, 4, 2, 2, 105, 105, 104, 103, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 104, 106, 104, 104, 104, 103, 105, 104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 104, 209, 104, 105],
                [1, 9, 3, 3, 2, 9, 1, 4, 2, 4, 2, 8, 1, 4, 2, 4, 2, 4, 2, 2, 1, 5, 2, 3, 3, 3, 2, 2, 106, 104, 104, 103, 105, 104, 104, 105, 104, 104, 104, 104, 105, 103, 104, 106, 103, 105, 104, 103, 105, 103, 105, 105, 104, 104, 104, 103, 105, 104, 104, 105, 104, 104, 104, 104, 105, 104, 103, 106, 207, 104, 105],]

        found_tolerances = []
        print()
        for i, plateau_lengths in enumerate(data):
            found_tolerances.append(AutoInterpretation.estimate_tolerance_from_plateau_lengths(plateau_lengths))

        print(found_tolerances)
        estimated_tolerance = AutoInterpretation.get_most_frequent_value(found_tolerances)
        self.assertIn(estimated_tolerance, range(4, 7))
コード例 #2
0
 def test_estimate_tolerance_from_plateau_lengths(self):
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([]), None)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([10]), None)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([100, 49, 1, 50, 100]), 1)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([100, 49, 2, 50, 100]), 2)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([100, 49, 2, 50, 100, 1]), 2)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([8, 8, 6, 1, 1]), 1)
コード例 #3
0
 def test_estimate_tolerance_from_plateau_lengths(self):
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([]), None)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([10]), None)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([100, 49, 1, 50, 100]), 1)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([100, 49, 2, 50, 100]), 2)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([100, 49, 2, 50, 100, 1]), 2)
     self.assertEqual(AutoInterpretation.estimate_tolerance_from_plateau_lengths([8, 8, 6, 1, 1]), 1)
コード例 #4
0
    def test_tolerance_estimation(self):
        data = [
            [
                40, 4, 3, 8, 12, 3, 4, 3, 2, 9, 10, 4, 7, 12, 7, 5, 11, 4, 8,
                10, 1, 1, 1, 1, 4, 4, 10, 7, 7, 1, 17, 1, 1, 5, 3, 2, 1, 3, 17,
                1, 1, 1, 1, 3, 3, 7, 18, 1, 3, 1, 1, 8, 7, 6, 6, 14, 6, 5, 8,
                14, 2, 6, 10, 16, 1, 1, 16, 7, 2, 6, 18, 3, 1, 4, 1, 5, 15, 1,
                3, 1, 2, 1, 1, 9, 18, 15, 6, 3, 9, 13, 1, 1, 4, 4, 10, 15, 2,
                1, 1, 1, 13, 5, 7, 3, 17, 1, 1, 1, 1, 2, 3, 2, 1, 4, 22, 2, 2,
                7, 18, 15, 6, 4, 8, 15, 4, 3, 11, 15, 2, 4, 12, 8, 2, 2, 1, 2,
                18, 3, 1, 3, 2, 6, 15, 1, 3, 1, 2, 4, 1, 6, 19, 2, 2, 10, 10,
                2, 6, 15, 18, 15, 18, 15, 1, 3, 14, 4, 7, 4, 16, 1, 8, 8, 12,
                1, 8, 1, 3, 8, 8, 5, 5, 15, 6, 5, 7, 15, 4, 4, 10, 15, 1, 5,
                12, 7, 1, 7, 18, 3, 1, 3, 2, 6, 14, 1, 3, 3, 1, 11, 9, 2, 7,
                15, 6, 6, 6, 15, 4, 6, 8, 15, 1, 7, 8, 7, 3, 1, 2, 4, 1, 2, 15,
                3, 6, 6, 11, 1, 3, 1, 8, 8, 12, 1, 9, 1, 1, 10, 5, 7, 6, 15, 1,
                1, 1, 7, 8, 15, 1, 6, 9, 22, 3, 1, 3, 4, 1, 1, 13, 1, 3, 3, 2,
                3, 1, 5, 24, 9, 10, 3, 6, 1, 1, 12, 3, 8, 7, 15, 2, 14, 2, 7,
                8, 10, 1, 10, 10, 1, 1, 1, 1, 3, 7, 4, 15, 1, 1, 1, 1, 3, 3, 2,
                1, 5, 3, 1, 1, 12, 9, 1, 8, 2, 1, 9, 7, 8, 6, 15, 2, 7, 7, 17,
                1, 21, 8, 11, 1, 8, 12, 3, 1, 1, 1, 1, 1, 12, 3, 1, 3, 10, 10,
                2, 11, 9, 7, 5, 7, 15, 1, 23, 7, 24, 5, 22, 1, 7, 1, 8, 12, 3,
                1, 1, 1, 1, 1, 12, 12, 3, 4, 1, 1, 12, 8, 4, 7, 15, 1, 24, 8,
                22, 6, 31, 1, 8, 11, 4, 1, 3, 1, 3, 2, 6, 9, 6, 3, 2, 2, 10, 2,
                15, 7, 4, 3, 19, 1, 32, 1, 23, 3, 26, 8, 3, 2, 1, 1, 14, 2, 2,
                3, 11, 8, 3, 1, 2, 4, 1, 2, 11, 2, 11, 1, 2, 7, 26, 2, 55, 6,
                20, 1, 1, 9, 3, 1, 3, 1, 13, 3, 1, 2, 12, 8, 5, 5, 1, 2, 11, 2,
                10, 2, 2, 4, 11, 2, 16, 2, 32, 1, 22, 7, 19, 2, 2, 3, 2, 1, 7,
                8, 7, 3, 1, 3, 11, 7, 5, 6, 2, 1, 9, 1, 1, 2, 15, 2, 11, 4, 16,
                1, 24, 6, 24, 6, 21, 3, 1, 2, 3, 1, 7, 8, 7, 4, 1, 2, 11, 2,
                13, 7, 4, 1, 2, 4, 16, 2, 12, 1, 41, 7, 37, 8, 1, 2, 4, 1, 1,
                1, 1, 2, 12, 3, 1, 3, 6, 5, 1, 2, 11, 3, 10, 1, 1, 7, 8, 3, 17,
                1, 23, 7, 24, 5, 30, 2, 7, 7, 3, 1, 4, 2, 1, 3, 12, 2, 13, 7,
                7, 2, 1, 1, 1, 1, 12, 4, 1, 2, 51, 6, 57, 2, 2, 2, 7, 2, 15, 6,
                1, 2, 7, 2, 12, 1, 1, 3, 1, 1, 9, 1, 2, 3, 7, 7, 26, 1, 88, 10,
                6, 3, 13, 3, 1, 2, 11, 3, 2, 2, 7, 3, 1, 1, 1, 1, 12, 2, 8, 7,
                181, 1, 16, 1, 9, 2, 1, 4, 7, 1, 2, 3, 2, 1, 8, 3, 12, 1, 9, 1,
                3, 7, 13, 1, 8, 2, 1, 1, 1, 2, 3, 1, 54, 1, 16, 1, 15, 3
            ],
            [
                1, 1, 2, 3660, 1, 634, 1, 465, 1, 50, 1, 66, 1, 16, 1, 815, 1,
                522, 1, 97, 1, 14, 1, 78, 1, 21, 1, 142, 1, 28, 1, 57, 1, 129,
                1, 129, 1, 7, 1, 14, 1, 28, 1, 34, 1, 196, 1, 14, 1, 22, 1,
                159, 1, 68, 1, 88, 1, 51, 1, 25, 1, 119, 1, 370
            ],
            [
                4, 2, 2, 1, 8, 1, 1, 1, 6, 2, 6, 2, 2, 1, 1, 1, 6, 1, 1, 2, 1,
                1, 2, 2, 1, 1, 3, 2, 3, 1, 6, 1, 4, 2, 2, 1, 4, 2, 3, 2, 1, 2
            ],
            [
                1, 66, 1, 13, 1, 2, 1, 2, 104, 104, 104, 105, 104, 104, 104,
                105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104,
                104, 105, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104,
                104, 105, 104, 104, 104, 104, 104, 104, 104, 209, 104, 105,
                208, 104, 312, 105, 104, 104, 104, 521, 416, 105, 104, 208,
                104, 313, 208, 209, 104, 104, 104, 417
            ],
            [
                1, 73, 1, 2, 1, 6, 1, 1, 105, 104, 104, 105, 104, 104, 104,
                105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104,
                105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104,
                104, 105, 104, 104, 104, 105, 103, 104, 105, 208, 104, 104,
                209, 104, 312, 105, 104, 104, 104, 521, 417, 104, 104, 208,
                104, 313, 208, 209, 104, 104, 104, 416
            ],
            [
                1, 76, 1, 2, 1, 3, 1, 1, 105, 104, 104, 104, 105, 104, 104,
                104, 105, 103, 104, 105, 104, 104, 104, 105, 104, 104, 104,
                104, 105, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104,
                104, 105, 103, 104, 105, 104, 104, 104, 105, 208, 104, 104,
                209, 103, 313, 105, 103, 104, 105, 521, 416, 104, 105, 208,
                104, 313, 208, 209, 103, 104, 105, 416
            ],
            [
                1, 11, 1, 10, 1, 10, 1, 10, 1, 5, 1, 4, 1, 5, 1, 4, 2, 4, 1, 3,
                3, 3, 3, 2, 104, 105, 104, 104, 105, 104, 103, 104, 105, 104,
                104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104,
                104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 103, 105,
                104, 104, 105, 104, 104, 104, 208, 104, 105
            ],
            [
                1, 12, 1, 22, 1, 10, 1, 3, 1, 1, 1, 4, 1, 5, 1, 3, 2, 4, 2, 4,
                2, 3, 2, 3, 104, 104, 105, 104, 104, 104, 105, 104, 104, 104,
                104, 104, 105, 104, 104, 104, 104, 104, 105, 104, 105, 103,
                104, 104, 104, 105, 104, 104, 104, 105, 104, 103, 105, 104,
                104, 104, 105, 104, 104, 104, 209, 103, 105
            ],
            [
                1, 12, 1, 22, 1, 10, 1, 5, 1, 3, 2, 5, 1, 3, 2, 4, 2, 3, 3, 3,
                2, 3, 104, 105, 104, 104, 105, 103, 104, 105, 104, 104, 104,
                104, 105, 104, 104, 104, 104, 105, 104, 103, 105, 104, 104,
                104, 104, 105, 104, 104, 104, 104, 105, 103, 105, 104, 104,
                104, 104, 105, 104, 104, 208, 104, 104
            ],
            [
                1, 66, 1, 2, 1, 6, 1, 6, 1, 1, 105, 104, 104, 104, 105, 104,
                104, 104, 105, 103, 105, 104, 104, 104, 104, 105, 104, 104,
                104, 104, 105, 103, 105, 104, 104, 104, 104, 104, 105, 104,
                104, 104, 105, 103, 104, 105, 104, 104, 104, 105, 208, 104,
                104, 209, 104, 312, 105, 104, 104, 104, 521, 417, 103, 104,
                209, 104, 313, 208, 209, 103, 104, 105, 416
            ],
            [
                1, 66, 1, 13, 1, 2, 1, 2, 105, 103, 104, 105, 104, 104, 104,
                105, 104, 104, 104, 104, 105, 103, 104, 105, 104, 104, 104,
                104, 105, 104, 104, 104, 105, 104, 103, 105, 104, 104, 104,
                105, 104, 104, 104, 105, 104, 104, 104, 104, 208, 105, 104,
                208, 104, 312, 105, 104, 104, 104, 521, 417, 104, 104, 208,
                105, 312, 208, 209, 104, 104, 105, 416
            ],
            [
                1, 66, 1, 6, 1, 6, 1, 2, 1, 2, 105, 104, 104, 104, 105, 103,
                104, 105, 104, 104, 104, 104, 105, 104, 104, 105, 104, 103,
                104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104,
                105, 104, 104, 104, 104, 104, 105, 104, 104, 104, 208, 105,
                104, 208, 104, 312, 105, 104, 104, 104, 521, 417, 104, 105,
                207, 104, 314, 208, 208, 104, 104, 105, 416
            ],
            [
                2, 3, 13, 1, 5, 1, 1, 1, 26, 1, 2, 1, 2, 1, 6, 1, 5, 1, 2, 1,
                5, 1, 3, 1, 6, 1, 3, 1, 3, 1, 7, 1, 1, 1, 3, 1, 19, 1, 7, 1,
                26, 1, 26, 1, 2, 1, 5, 1, 2, 1, 3, 1, 7, 1, 12, 1, 6, 1, 24, 1,
                4, 1, 6, 1, 6, 1, 4, 1, 1, 1, 27, 1, 6, 1, 7, 1, 13, 1, 6, 1,
                7, 1, 6, 1, 16, 1, 1, 1, 11, 1, 6, 1, 1, 1, 3, 1, 2, 1, 1, 1,
                4, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3, 1, 2, 1, 1, 1, 2,
                1, 3, 1, 2, 1, 3, 1, 6, 1, 2, 1, 3, 1, 4, 1, 112, 1, 2, 1, 5,
                1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 1, 2, 1,
                1, 1, 1, 3, 4, 2, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 3, 2, 1, 1, 1,
                1, 4, 1, 4, 1, 1, 1, 4, 1, 6, 1, 28, 1, 83, 1, 1, 1, 5, 1, 6,
                1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1,
                3, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 1, 1, 5,
                1, 9, 1, 6, 1, 4, 1, 11, 1, 13, 1, 7, 1, 6, 1, 40, 1, 3, 1, 1,
                1, 2, 1, 6, 1, 3, 1, 2, 1, 3, 1, 13, 1, 6, 1, 6, 1, 25, 1, 6,
                1, 4, 1, 6, 1, 45, 1, 14, 1, 6, 1, 6, 1, 14, 1, 16, 1, 1, 1, 3,
                2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 6, 1, 1, 1, 1, 1,
                2, 1, 4, 1, 1, 1, 3, 1, 2, 1, 4, 1, 1, 1, 4, 1, 6, 1, 3, 1, 2,
                1, 4, 1, 6, 1, 10, 1, 112, 1, 1, 1, 1, 1, 4, 1, 1, 1, 4, 1, 2,
                1, 3, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1,
                1, 4, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 4,
                1, 4, 1, 1, 1, 4, 1, 3, 1, 24, 1, 78, 1, 7, 1, 20, 1, 7, 1, 6,
                1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1,
                6, 1, 4, 1, 1, 1, 11, 1, 7, 1, 7, 1, 25, 1, 11, 1, 7, 1, 27, 1,
                9, 1, 1, 1, 2, 1, 1, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3,
                1, 2, 1, 3, 1, 6, 1, 25, 1, 13, 1, 11, 1, 65, 1, 13, 1, 7, 1,
                6, 1, 6, 1, 3, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1,
                1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1,
                1, 1, 4, 1, 6, 1, 3, 1, 2, 1, 4, 1, 1, 1, 1, 1, 2, 1, 6, 1, 3,
                1, 2, 1, 3, 1, 108, 1, 3, 1, 1, 1, 2, 1, 3, 1, 2, 1, 3, 1, 1,
                1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 1, 1, 1, 2,
                1, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1,
                1, 2, 1, 1, 1, 2, 1, 1, 1, 4, 1, 10, 1, 7, 1, 6, 1, 14, 1, 66,
                1, 8, 1, 6, 1, 6, 1, 6, 1, 10, 1, 6, 1, 6, 1, 6, 1, 7, 1, 3, 1,
                6, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 19, 1, 7, 1, 14, 1, 18, 1,
                10, 1, 7, 1, 6, 1, 13, 1, 7, 1, 1, 1, 6, 1, 1, 1, 4, 1, 5, 1,
                2, 1, 3, 1, 7, 1, 6, 1, 6, 1, 3, 1, 6, 1, 6, 1, 18, 1, 11, 1,
                57, 1, 14, 1, 13, 1, 6, 1, 11, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 2,
                1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 4, 1, 1,
                1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 4, 1, 1, 1, 4, 1,
                3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 13, 1, 97, 1, 1, 1, 2, 1, 3, 1,
                2, 1, 3, 1, 1, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4,
                1, 1, 1, 4, 1, 1, 1, 4, 1, 6, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1,
                1, 2, 1, 1, 1, 1, 2, 4, 1, 1, 1, 2, 12, 1, 6, 1, 7, 1, 21, 1,
                14, 1, 13, 1, 26, 1, 8, 1, 5, 1, 6, 1, 13, 1, 10, 1, 6, 1, 7,
                1, 6, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 31, 1, 7, 1,
                14, 1, 3, 1, 25, 1, 7, 1, 16, 1, 8, 1, 1, 1, 4, 1, 1, 1, 4, 1,
                1, 1, 4, 1, 6, 1, 1, 1, 4, 1, 6, 1, 3, 1, 2, 1, 3, 1, 6, 1, 7,
                1, 3, 1, 13, 1, 52, 1, 21, 1, 21, 1, 6, 1, 5, 1, 2, 1, 6, 1, 1,
                1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1,
                1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 4, 1, 4, 1, 1, 1, 4,
                1, 1, 1, 4, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 3, 1, 108, 1, 1,
                1, 5, 1, 6, 1, 2, 1, 3, 1, 6, 1, 4, 1, 1, 1, 6, 1, 4, 1, 2, 1,
                3, 1, 2, 1, 3, 1, 1, 2, 3, 1, 4, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1,
                1, 1, 2, 1, 1, 1, 1, 1, 1, 15, 1, 3, 1, 6, 1, 7, 1, 29, 1, 46,
                1, 2, 1, 8, 1, 12, 1, 25, 1, 13, 1, 11, 1, 3, 1, 6, 1, 6, 1,
                21, 1, 7, 1, 14, 1, 6, 1, 7, 1, 6, 1, 5, 1, 4, 1, 11, 1, 6, 1,
                7, 1, 6, 1, 20, 1, 6, 1, 6, 1, 13, 1, 57, 1, 1, 1, 6, 1, 6, 1,
                6, 1, 6, 1, 6, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4,
                1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 1, 1, 6, 1, 15, 1, 5, 1, 7, 1,
                7, 1, 3, 1, 4, 1, 7, 1, 5, 1, 21, 1, 6, 1, 9, 1, 3, 1, 1, 1, 2,
                1, 3, 1, 2, 1, 6, 1, 6, 1, 6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1,
                11, 1, 6, 1, 6, 1, 11, 1, 6, 1, 6, 1, 11, 1, 3, 1, 6, 1, 4, 1,
                2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 1, 1, 1, 1, 4, 1, 2,
                1, 3, 1, 2, 1, 1, 1, 1, 1, 4, 1, 4, 1, 1, 1, 1, 2, 1, 1, 9, 1,
                25, 1, 7, 1, 6, 1, 14, 1, 6, 1, 28, 1, 6, 1, 2, 1, 1, 1, 6, 1,
                6, 1, 6, 1, 10, 1, 13, 1, 6, 1, 10, 1, 7, 1, 6, 1, 3, 1, 7, 1,
                6, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 4, 1, 3, 1, 2, 1, 3,
                1, 2, 1, 1, 1, 1, 1, 4, 1, 2, 1, 3, 1, 1, 2, 1, 1, 1, 1, 4, 1,
                1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1,
                1, 1, 1, 2, 1, 1, 1, 3, 2, 1, 1, 4, 1, 1, 1, 4, 1, 4, 1, 1, 1,
                4, 1, 1, 1, 4, 1, 4, 1, 6, 1, 3, 1, 2, 1, 4, 1, 3, 1, 2, 1, 3,
                1, 7, 1, 3, 1, 2, 1, 3, 1, 4, 1, 82, 1, 21, 1, 3, 1, 5, 1, 1,
                1, 4, 1, 1, 1, 6, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 2, 1,
                1, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1,
                2, 1, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 1, 2, 1, 1, 3, 1, 4, 1,
                8, 1, 22, 1, 71, 1, 8, 1, 6, 1, 5, 1, 7, 1, 6, 1, 3, 1, 2, 1,
                3, 1, 6, 1, 2, 1, 3, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 4, 1, 1,
                1, 4, 1, 1, 1, 4, 1, 5, 1, 7, 1, 6, 1, 8, 1, 7, 1, 8, 1, 5, 1,
                6, 1, 14, 1, 6, 1, 28, 1, 103, 1, 42, 1, 6, 1, 6, 1, 6, 1, 20,
                1, 5, 1, 8, 1, 2, 1, 4, 1, 7, 1, 6, 1, 12, 1, 6, 1, 28, 1, 6,
                1, 153, 1, 6, 1, 6, 1, 20, 1, 5, 1, 7, 1, 2, 1, 13, 1, 5, 1, 8,
                1, 5, 1, 2, 1, 6, 1, 1, 1, 1, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3, 1,
                2, 1, 6, 1, 4, 1, 6, 1, 6, 1, 3, 1, 6, 1, 7, 1, 10, 1, 18, 1,
                6, 1, 11, 1, 3, 1, 2, 1, 6, 1, 3, 1, 7, 1, 3, 1, 2, 1, 4, 1, 3,
                1, 2, 1, 3, 1, 4, 1, 2, 1, 3, 1, 2, 1, 1, 1, 3, 1, 8, 1, 7, 1,
                14, 1, 22, 1, 14, 1, 6, 1, 21, 1, 6, 1, 6, 1, 96, 1, 1, 1, 5,
                1, 7, 1, 6, 1, 5, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1,
                4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 4,
                1, 6, 1, 8, 1, 2, 1, 14, 1, 6, 1, 13, 1, 7, 1, 6, 1, 28, 1, 6,
                1, 104, 1, 2, 1, 5, 1, 2, 1, 6, 1, 5, 1, 4, 1, 2, 1, 3, 1, 2,
                1, 3, 1, 2, 1, 3, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1,
                1, 1, 4, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 4, 1, 1, 2,
                1, 22, 1, 6, 1, 162, 1, 6, 1, 35, 1, 6, 1, 6, 1, 5, 1, 7, 1, 3,
                1, 3, 1, 8, 1, 5, 1, 20, 1, 4, 1, 4, 1, 1, 1, 1, 1, 4, 1, 1, 1,
                3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 6, 1, 6, 1, 6, 1, 10, 1, 18, 1,
                6, 1, 6, 1, 11, 1, 11, 1, 5, 1, 7, 1, 3, 1, 6, 1, 4, 1, 2, 1,
                3, 1, 4, 1, 1, 1, 4, 1, 2, 1, 4, 1, 3, 1, 6, 1, 4, 1, 1, 1, 4,
                1, 22, 1, 17, 1, 6, 1, 7, 1, 6, 1, 21, 1, 6, 1, 28, 1, 98, 1,
                2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6,
                1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 1,
                4, 1, 1, 1, 4, 1, 1, 2, 1, 1, 1, 1, 4, 1, 10, 1, 5, 1, 14, 1,
                14, 1, 35, 1, 21, 1, 1, 1, 5, 1, 7, 1, 5, 1, 6, 1, 6, 1, 24, 1,
                7, 1, 3, 1, 2, 1, 3, 1, 7, 1, 3, 1, 2, 1, 33, 1, 14, 1, 6, 1,
                6, 1, 14, 1, 2, 1, 1, 1, 11, 1, 5, 1, 6, 1, 6, 1, 28, 1, 146,
                1, 6, 1, 6, 1, 34, 1, 6, 1, 7, 1, 5, 1, 2, 1, 8, 1, 4, 1, 5, 1,
                6, 1, 6, 1, 7, 1, 17, 1, 1, 1, 5, 1, 2, 1, 3, 1, 2, 1, 6, 1, 6,
                1, 6, 1, 3, 1, 2, 1, 3, 1, 13, 1, 11, 1, 6, 1, 48, 1, 36, 1,
                13, 1, 6, 1, 7, 1, 6, 1, 2, 1, 1, 1, 1, 2, 3, 1, 2, 1, 1, 1, 1,
                1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1,
                4, 1, 3, 2, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 3,
                1, 2, 1, 4, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 10, 1, 6, 1, 11,
                1, 11, 1, 13, 1, 11, 1, 3, 1, 6, 1, 7, 1, 3, 1, 37, 1, 6, 1,
                22, 1, 6, 1, 6, 1, 11, 1, 3, 1, 7, 1, 3, 1, 6, 1, 1, 1, 1, 1,
                4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 6, 1, 4,
                1, 1, 1, 3, 1, 7, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 7, 1, 3, 1,
                82, 1, 6, 1, 20, 1, 14, 1, 6, 1, 6, 1, 6, 1, 29, 1, 6, 1, 6, 1,
                6, 1, 6, 1, 8, 1, 6, 1, 1, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2,
                1, 6, 1, 3, 1, 2, 1, 3, 1, 6, 1, 6, 1, 7, 1, 10, 1, 18, 1, 41,
                1, 57, 1, 7, 1, 16, 1, 18, 1, 6, 1, 7, 1, 6, 1, 20, 1, 6, 1, 6,
                1, 153, 1, 6, 1, 20, 1, 21, 1, 13, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                2, 1, 1, 1, 2, 1, 1, 1, 6, 1, 1, 1, 1, 1, 2, 1, 4, 1, 1, 1, 3,
                1, 2, 1, 4, 1, 1, 1, 3, 1, 7, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1,
                7, 1, 3, 1, 107, 1, 4, 1, 2, 1, 5, 1, 2, 1, 3, 1, 1, 1, 4, 1,
                1, 1, 4, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1,
                2, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1,
                4, 1, 3, 2, 1, 1, 43, 1, 21, 1, 111, 1, 6, 1, 21, 1, 6, 1, 6,
                1, 6, 1, 6, 1, 6, 1, 10, 1, 1, 1, 2, 1, 7, 1, 5, 1, 6, 1, 6, 1,
                6, 1, 13, 1, 6, 1, 6, 1, 8, 1, 3, 1, 2, 1, 5, 1, 7, 1, 6, 1, 6,
                1, 5, 1, 4, 1, 6, 1, 11, 1, 13, 1, 48, 1, 14, 1, 6, 1, 21, 1,
                6, 1, 6, 1, 7, 1, 6, 1, 15, 1, 5, 1, 6, 1, 6, 1, 28, 1, 167, 1,
                6, 1, 13, 1, 6, 1, 6, 1, 30, 1, 5, 1, 6, 1, 6, 1, 6, 1, 28, 1,
                6, 1, 13, 1, 110, 1, 27, 1, 28, 1, 6, 1, 30, 1, 19, 1, 6, 1, 6,
                1, 49, 1, 103, 1, 6, 1, 6, 1, 13, 1, 27, 1, 5, 1, 1, 1, 1, 1,
                1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 3,
                2, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1,
                4, 1, 1, 1, 4, 1, 1, 1, 4, 1, 3, 1, 2, 1, 4, 1, 148, 1, 6, 1,
                6, 1, 6, 1, 6, 1, 19, 1, 16, 1, 6, 1, 6, 1, 7, 1, 20, 1, 27, 1,
                110, 1, 56, 1, 6, 1, 6, 1, 6, 1, 4, 1, 16, 1, 6, 1, 7, 1, 6, 1,
                20, 1, 6, 1, 89, 1, 6, 1, 6, 1, 6, 1, 6, 1, 3, 1, 2, 1, 3, 1,
                6, 1, 6, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3,
                1, 2, 1, 14, 1, 6, 1, 6, 1, 8, 1, 3, 1, 3, 1, 7, 1, 6, 1, 6, 1,
                6, 1, 14, 1, 6, 1, 6, 1, 14, 1, 131, 1, 28, 1, 6, 1, 6, 1, 6,
                1, 5, 1, 6, 1, 6, 1, 2, 1, 5, 1, 7, 1, 6, 1, 20, 1, 6, 1, 167,
                1, 6, 1, 6, 1, 6, 1, 6, 1, 20, 1, 6, 1, 6, 1, 2, 1, 5, 1, 7, 1,
                5, 1, 6, 1, 6, 1, 14, 1, 20, 1, 159, 1, 1, 1, 1, 1, 6, 1, 2, 1,
                3, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 1, 2, 1, 1, 1, 1, 3, 2, 1, 1,
                2, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 3, 2, 1, 1, 1, 1, 2, 1, 1, 1,
                4, 1, 6, 1, 3, 1, 2, 1, 4, 1, 2, 1, 8, 1, 156, 1, 6, 1, 6, 1,
                6, 1, 20, 1, 6, 1, 7, 1, 5, 1, 2, 1, 8, 1, 3, 1, 13, 1, 7, 1,
                27, 1, 6, 1, 131, 1, 35, 1, 6, 1, 6, 1, 6, 1, 6, 1, 13, 1, 2,
                1, 7, 1, 4, 1, 20, 1, 6, 1, 6, 1, 28, 1, 13, 1, 117, 1, 13, 1,
                34, 1, 7, 1, 6, 1, 5, 1, 2, 1, 7, 1, 5, 1, 20, 1, 6, 1, 13, 1,
                6, 1, 167, 1, 6, 1, 20, 1, 6, 1, 7, 1, 5, 1, 2, 1, 7, 1, 5, 1,
                5, 1, 6, 1, 6, 1, 28, 1, 6, 1, 181, 1, 6, 1, 6, 1, 12, 1, 2, 1,
                7, 1, 5, 1, 20, 1, 6, 1, 6, 1, 6, 1, 41, 1, 2, 1, 8, 1, 6, 1,
                3, 1, 20, 1, 13, 1, 6, 1, 3, 1, 6, 1, 7, 1, 6, 1, 3, 1, 4, 1,
                2, 1, 3, 1, 6, 1, 4, 1, 1, 1, 4, 1, 2, 1, 3, 1, 4, 1, 2, 1, 3,
                1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1,
                1, 2, 1, 1, 1, 3, 2, 1, 2, 1, 2, 3, 1, 1, 1, 2, 1, 1, 4, 1, 1,
                1, 4, 1, 1, 1, 2, 1, 1, 1, 4, 1, 1, 1, 3, 1, 4, 1, 2, 1, 4, 1,
                6, 1, 3, 1, 2, 1, 3, 1, 2, 1, 4, 1, 3, 1, 2, 1, 4, 1, 6, 1, 3,
                1, 6, 1, 4, 1, 109, 1, 2, 1, 1, 1, 2, 1, 3, 1, 1, 1, 4, 1, 1,
                1, 4, 1, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 2, 3, 1, 4, 1, 1, 1,
                2, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 4, 1, 4, 1, 1, 1, 4,
                1, 1, 1, 4, 1, 3, 1, 2, 1, 37, 1, 7, 1, 65, 1, 2, 1, 5, 1, 6,
                1, 6, 1, 7, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 4, 1, 1, 1,
                7, 1, 3, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 1, 4, 1, 1, 1, 2, 1, 4,
                1, 7, 1, 16, 1, 14, 1, 7, 1, 59, 1, 6, 1, 2, 1, 6, 1, 3, 1, 13,
                1, 6, 1, 25, 1, 6, 1, 10, 1, 6, 1, 2, 1, 22, 1, 14, 1, 14, 1,
                6, 1, 20, 1, 6, 1, 6, 1, 2, 1, 5, 1, 7, 1, 6, 1, 6, 1, 6, 1, 6,
                1, 28, 1, 6, 1, 131, 1, 35, 1, 6, 1, 6, 1, 5, 1, 6, 1, 6, 1, 2,
                1, 13, 1, 6, 1, 6, 1, 13, 1, 6, 1, 6, 1, 160, 1, 13, 1, 13, 1,
                14, 1, 5, 1, 5, 1, 7, 1, 2, 1, 5, 1, 7, 1, 5, 1, 6, 1, 39, 1,
                3, 1, 1, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 6, 1, 3,
                1, 6, 1, 32, 1, 10, 1, 7, 1, 68, 1, 20, 1, 6, 1, 7, 1, 5, 1, 2,
                1, 7, 1, 5, 1, 20, 1, 6, 1, 13, 1, 6, 1, 167, 1, 6, 1, 20, 1,
                6, 1, 7, 1, 5, 1, 2, 1, 6, 1, 1, 1, 3, 1, 6, 1, 6, 1, 7, 1, 27,
                1, 6, 1, 78, 1, 6, 1, 6, 1, 5, 1, 6, 1, 7, 1, 3, 1, 6, 1, 4, 1,
                1, 1, 4, 1, 2, 1, 3, 1, 2, 1, 3, 1, 4, 1, 2, 1, 41, 1, 16, 1,
                11, 1, 7, 1, 29, 1, 5, 1, 2, 1, 3, 1, 2, 1, 1, 1, 3, 1, 2, 1,
                4, 1, 5, 1, 7, 1, 3, 1, 2, 1, 3, 1, 6, 1, 6, 1, 4, 1, 13, 1, 6,
                1, 4, 1, 6, 1, 6, 1, 3, 1, 7, 1, 3, 1, 2, 1, 3, 1, 4, 1, 2, 1,
                3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 6, 1, 4, 1, 2, 1, 3, 1, 4, 1, 1,
                1, 4, 1, 1, 1, 2, 1, 3, 1, 9, 1, 5, 1, 2, 1, 7, 1, 6, 1, 6, 1,
                6, 1, 7, 1, 6, 1, 6, 1, 14, 1, 123, 1, 2, 1, 1, 1, 3, 1, 2, 1,
                3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 6, 1, 1, 1, 4, 1, 6, 1, 4, 1, 1,
                1, 4, 1, 1, 1, 4, 1, 1, 2, 3, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1,
                2, 1, 1, 2, 1, 1, 1, 1, 11, 1, 7, 1, 7, 1, 212, 1, 6, 1, 6, 1,
                13, 1, 15, 1, 27, 1, 6, 1, 6, 1, 153, 1, 6, 1, 6, 1, 6, 1, 6,
                1, 20, 1, 7, 1, 13, 1, 3, 1, 11, 1, 5, 1, 6, 1, 7, 1, 27, 1,
                80, 1, 20, 1, 2775, 3, 20, 1, 16, 1, 2, 1, 17
            ],
            [
                1, 53, 1, 9, 1, 3, 1, 6, 1, 5, 2, 2, 1, 1, 105, 104, 104, 104,
                105, 103, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104,
                105, 103, 105, 104, 104, 104, 104, 104, 105, 104, 104, 104,
                105, 103, 104, 105, 104, 104, 104, 105, 104, 104, 104, 104,
                208, 105, 104, 208, 104, 313, 104, 104, 104, 104, 521, 417,
                104, 104, 208, 104, 313, 209, 208, 104, 104, 104, 417
            ],
            [
                1, 69, 1, 6, 1, 6, 1, 1, 105, 104, 104, 105, 104, 104, 104,
                105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104,
                105, 104, 104, 104, 105, 104, 103, 104, 105, 104, 104, 104,
                104, 105, 104, 104, 104, 105, 103, 104, 105, 208, 104, 105,
                208, 104, 312, 105, 104, 104, 104, 521, 417, 104, 104, 208,
                105, 312, 208, 209, 104, 104, 104, 417
            ],
            [
                1, 66, 1, 9, 1, 3, 1, 4, 105, 104, 105, 104, 104, 104, 104,
                105, 104, 104, 104, 104, 105, 103, 105, 104, 104, 104, 104,
                105, 104, 104, 104, 104, 104, 104, 104, 105, 104, 104, 104,
                105, 104, 104, 104, 104, 105, 103, 104, 105, 208, 105, 104,
                208, 104, 312, 105, 104, 104, 104, 521, 417, 104, 104, 208,
                104, 313, 208, 209, 104, 104, 105, 416
            ],
            [
                1, 51, 1, 13, 1, 3, 3, 6, 106, 105, 103, 105, 104, 105, 104,
                103, 105, 104, 104, 104, 105, 104, 104, 104, 104, 104, 104,
                105, 104, 104, 104, 104, 104, 105, 103, 105, 105, 104, 104,
                103, 104, 105, 104, 104, 105, 104, 104, 103, 209, 105, 104
            ],
            [
                2, 72, 1, 5, 1, 2, 106, 105, 103, 105, 104, 105, 103, 104, 104,
                104, 105, 104, 105, 103, 105, 104, 104, 104, 104, 105, 103,
                105, 104, 104, 104, 105, 103, 105, 103, 105, 104, 104, 104,
                104, 105, 104, 104, 104, 105, 103, 209, 104, 105
            ],
            [
                1, 78, 3, 1, 106, 104, 104, 104, 104, 105, 104, 104, 104, 104,
                104, 105, 104, 104, 105, 103, 104, 104, 104, 105, 104, 105,
                104, 103, 105, 104, 104, 105, 104, 104, 104, 104, 104, 104,
                104, 105, 104, 104, 105, 103, 208, 105, 103
            ],
            [
                1, 83, 1, 1, 105, 104, 104, 104, 105, 104, 104, 104, 105, 104,
                104, 104, 105, 103, 104, 104, 105, 104, 104, 104, 105, 103,
                105, 103, 105, 104, 104, 104, 105, 104, 104, 104, 105, 104,
                104, 104, 104, 104, 104, 105, 208, 104, 104, 208, 104, 313,
                105, 104, 104, 103, 522, 416, 104, 104, 209, 104, 313, 208,
                209, 104, 103, 105, 416
            ],
            [
                1, 80, 1, 2, 1, 1, 105, 104, 104, 104, 105, 104, 104, 104, 104,
                105, 104, 104, 104, 104, 104, 105, 104, 104, 104, 104, 104,
                104, 104, 105, 104, 104, 104, 104, 105, 104, 104, 104, 104,
                105, 103, 105, 104, 104, 104, 104, 208, 105, 104, 208, 104,
                313, 105, 104, 103, 104, 522, 416, 104, 104, 209, 104, 313,
                208, 208, 104, 104, 105, 416
            ],
            [
                1, 73, 1, 2, 1, 9, 105, 104, 104, 104, 105, 103, 104, 105, 104,
                104, 104, 105, 104, 104, 104, 104, 105, 103, 105, 104, 104,
                104, 104, 105, 104, 104, 104, 104, 104, 104, 104, 105, 104,
                104, 104, 105, 104, 104, 104, 104, 208, 105, 104, 208, 104,
                313, 104, 104, 104, 104, 522, 416, 104, 104, 208, 105, 312,
                209, 208, 104, 104, 105, 416
            ],
            [
                1, 13, 2, 4, 1, 9, 1, 4, 2, 9, 1, 4, 2, 3, 3, 4, 1, 9, 1, 3, 3,
                4, 2, 2, 105, 105, 104, 103, 105, 104, 104, 104, 105, 104, 104,
                104, 104, 104, 104, 105, 104, 104, 104, 104, 105, 103, 104,
                106, 104, 104, 104, 103, 105, 104, 104, 105, 104, 104, 104,
                104, 104, 104, 104, 104, 209, 104, 105
            ],
            [
                1, 9, 3, 3, 2, 9, 1, 4, 2, 4, 2, 8, 1, 4, 2, 4, 2, 4, 2, 2, 1,
                5, 2, 3, 3, 3, 2, 2, 106, 104, 104, 103, 105, 104, 104, 105,
                104, 104, 104, 104, 105, 103, 104, 106, 103, 105, 104, 103,
                105, 103, 105, 105, 104, 104, 104, 103, 105, 104, 104, 105,
                104, 104, 104, 104, 105, 104, 103, 106, 207, 104, 105
            ],
        ]

        found_tolerances = []
        print()
        for i, plateau_lengths in enumerate(data):
            found_tolerances.append(
                AutoInterpretation.estimate_tolerance_from_plateau_lengths(
                    plateau_lengths))

        print(found_tolerances)
        estimated_tolerance = AutoInterpretation.get_most_frequent_value(
            found_tolerances)
        self.assertIn(estimated_tolerance, range(4, 7))