# noinspection LongLineForFile

DROP TABLE IF EXISTS implant_requirement;
CREATE TABLE IF NOT EXISTS implant_requirement (ql INTEGER NOT NULL PRIMARY KEY, treatment INTEGER NOT NULL, ability INTEGER NOT NULL, ability_shiny INTEGER NOT NULL, ability_bright INTEGER NOT NULL, ability_faded INTEGER NOT NULL, skill_shiny INTEGER NOT NULL, skill_bright INTEGER NOT NULL, skill_faded INTEGER NOT NULL);
INSERT INTO implant_requirement (ql, treatment, ability, ability_shiny, ability_bright, ability_faded, skill_shiny, skill_bright, skill_faded) VALUES (1, 11, 6, 5, 3, 2, 6, 3, 2), (2, 16, 8, 5, 3, 2, 6, 3, 2), (3, 20, 10, 6, 3, 2, 7, 4, 2), (4, 25, 12, 6, 3, 2, 7, 4, 3), (5, 30, 14, 6, 4, 2, 8, 4, 3), (6, 35, 16, 6, 4, 3, 8, 5, 3), (7, 39, 18, 7, 4, 3, 9, 5, 3), (8, 44, 20, 7, 4, 3, 9, 5, 3), (9, 49, 22, 7, 4, 3, 10, 5, 4), (10, 54, 24, 7, 4, 3, 10, 6, 4), (11, 58, 26, 8, 5, 3, 11, 6, 4), (12, 63, 28, 8, 5, 3, 11, 6, 4), (13, 68, 30, 8, 5, 3, 12, 7, 4), (14, 72, 32, 8, 5, 3, 12, 7, 5), (15, 77, 34, 9, 5, 3, 13, 7, 5), (16, 82, 36, 9, 5, 4, 13, 8, 5), (17, 87, 38, 9, 5, 4, 14, 8, 5), (18, 91, 40, 9, 6, 4, 14, 8, 5), (19, 96, 42, 10, 6, 4, 15, 8, 6), (20, 101, 44, 10, 6, 4, 15, 9, 6), (21, 105, 46, 10, 6, 4, 16, 9, 6), (22, 110, 48, 10, 6, 4, 16, 9, 6), (23, 115, 50, 11, 6, 4, 17, 10, 6), (24, 120, 52, 11, 6, 4, 17, 10, 7), (25, 124, 54, 11, 7, 4, 18, 10, 7), (26, 129, 56, 11, 7, 5, 18, 11, 7), (27, 134, 58, 12, 7, 5, 19, 11, 7), (28, 139, 60, 12, 7, 5, 19, 11, 7), (29, 143, 62, 12, 7, 5, 20, 11, 8), (30, 148, 64, 12, 7, 5, 20, 12, 8), (31, 153, 66, 13, 8, 5, 21, 12, 8), (32, 157, 68, 13, 8, 5, 21, 12, 8), (33, 162, 70, 13, 8, 5, 22, 13, 8), (34, 167, 72, 13, 8, 5, 22, 13, 9), (35, 172, 74, 14, 8, 5, 23, 13, 9), (36, 176, 76, 14, 8, 6, 23, 14, 9), (37, 181, 78, 14, 8, 6, 24, 14, 9), (38, 186, 80, 14, 9, 6, 24, 14, 9), (39, 190, 82, 15, 9, 6, 25, 14, 10), (40, 195, 84, 15, 9, 6, 25, 15, 10), (41, 200, 86, 15, 9, 6, 26, 15, 10), (42, 205, 88, 15, 9, 6, 26, 15, 10), (43, 209, 90, 16, 9, 6, 27, 16, 10), (44, 214, 92, 16, 9, 6, 27, 16, 11), (45, 219, 94, 16, 10, 6, 28, 16, 11), (46, 224, 96, 16, 10, 7, 28, 17, 11), (47, 228, 98, 17, 10, 7, 29, 17, 11), (48, 233, 100, 17, 10, 7, 29, 17, 11), (49, 238, 102, 17, 10, 7, 30, 17, 12), (50, 242, 104, 17, 10, 7, 30, 18, 12), (51, 247, 106, 18, 11, 7, 31, 18, 12), (52, 252, 108, 18, 11, 7, 31, 18, 12), (53, 257, 110, 18, 11, 7, 32, 19, 12), (54, 261, 112, 18, 11, 7, 32, 19, 13), (55, 266, 114, 19, 11, 7, 33, 19, 13), (56, 271, 116, 19, 11, 8, 33, 20, 13), (57, 276, 118, 19, 11, 8, 34, 20, 13), (58, 280, 120, 19, 12, 8, 34, 20, 13), (59, 285, 122, 20, 12, 8, 35, 20, 14), (60, 290, 124, 20, 12, 8, 35, 21, 14), (61, 294, 126, 20, 12, 8, 36, 21, 14), (62, 299, 128, 20, 12, 8, 36, 21, 14), (63, 304, 130, 21, 12, 8, 37, 22, 14), (64, 309, 132, 21, 12, 8, 37, 22, 15), (65, 313, 134, 21, 13, 8, 38, 22, 15), (66, 318, 136, 21, 13, 9, 38, 23, 15), (67, 323, 138, 22, 13, 9, 39, 23, 15), (68, 327, 140, 22, 13, 9, 39, 23, 15), (69, 332, 142, 22, 13, 9, 40, 24, 16), (70, 337, 144, 22, 13, 9, 40, 24, 16), (71, 342, 146, 23, 14, 9, 41, 24, 16), (72, 346, 148, 23, 14, 9, 41, 24, 16), (73, 351, 150, 23, 14, 9, 42, 25, 16), (74, 356, 152, 23, 14, 9, 42, 25, 17), (75, 361, 154, 24, 14, 9, 43, 25, 17), (76, 365, 156, 24, 14, 10, 43, 26, 17), (77, 370, 158, 24, 14, 10, 44, 26, 17), (78, 375, 160, 24, 15, 10, 44, 26, 17), (79, 379, 162, 25, 15, 10, 45, 27, 18), (80, 384, 164, 25, 15, 10, 45, 27, 18), (81, 389, 166, 25, 15, 10, 46, 27, 18), (82, 394, 168, 25, 15, 10, 46, 27, 18), (83, 398, 170, 26, 15, 10, 47, 28, 18), (84, 403, 172, 26, 16, 10, 47, 28, 19), (85, 408, 174, 26, 16, 10, 48, 28, 19), (86, 413, 176, 26, 16, 11, 48, 29, 19), (87, 417, 178, 27, 16, 11, 49, 29, 19), (88, 422, 180, 27, 16, 11, 49, 29, 19), (89, 427, 182, 27, 16, 11, 50, 30, 20), (90, 431, 184, 27, 16, 11, 50, 30, 20), (91, 436, 186, 28, 17, 11, 51, 30, 20), (92, 441, 188, 28, 17, 11, 51, 30, 20), (93, 446, 190, 28, 17, 11, 52, 31, 20), (94, 450, 192, 28, 17, 11, 52, 31, 21), (95, 455, 194, 29, 17, 11, 53, 31, 21), (96, 460, 196, 29, 17, 12, 53, 32, 21), (97, 464, 198, 29, 17, 12, 54, 32, 21), (98, 469, 200, 29, 18, 12, 54, 32, 21), (99, 474, 202, 30, 18, 12, 55, 33, 22), (100, 479, 204, 30, 18, 12, 55, 33, 22), (101, 483, 206, 30, 18, 12, 56, 33, 22), (102, 488, 208, 30, 18, 12, 56, 33, 22), (103, 493, 210, 31, 18, 12, 57, 34, 23), (104, 498, 212, 31, 19, 12, 57, 34, 23), (105, 502, 214, 31, 19, 12, 58, 34, 23), (106, 507, 216, 31, 19, 13, 58, 35, 23), (107, 512, 218, 32, 19, 13, 59, 35, 23), (108, 516, 220, 32, 19, 13, 59, 35, 24), (109, 521, 222, 32, 19, 13, 60, 36, 24), (110, 526, 224, 32, 19, 13, 60, 36, 24), (111, 531, 226, 33, 20, 13, 61, 36, 24), (112, 535, 228, 33, 20, 13, 61, 36, 24), (113, 540, 230, 33, 20, 13, 62, 37, 25), (114, 545, 232, 33, 20, 13, 62, 37, 25), (115, 549, 234, 34, 20, 13, 63, 37, 25), (116, 554, 236, 34, 20, 14, 63, 38, 25), (117, 559, 238, 34, 20, 14, 64, 38, 25), (118, 564, 240, 34, 21, 14, 64, 38, 26), (119, 568, 242, 35, 21, 14, 65, 39, 26), (120, 573, 244, 35, 21, 14, 65, 39, 26), (121, 578, 246, 35, 21, 14, 66, 39, 26), (122, 583, 248, 35, 21, 14, 66, 39, 26), (123, 587, 250, 36, 21, 14, 67, 40, 27), (124, 592, 252, 36, 22, 14, 67, 40, 27), (125, 597, 254, 36, 22, 14, 68, 40, 27), (126, 601, 256, 36, 22, 15, 68, 41, 27), (127, 606, 258, 37, 22, 15, 69, 41, 27), (128, 611, 260, 37, 22, 15, 69, 41, 28), (129, 616, 262, 37, 22, 15, 70, 42, 28), (130, 620, 264, 37, 22, 15, 70, 42, 28), (131, 625, 266, 38, 23, 15, 71, 42, 28), (132, 630, 268, 38, 23, 15, 71, 42, 28), (133, 635, 270, 38, 23, 15, 72, 43, 29), (134, 639, 272, 38, 23, 15, 72, 43, 29), (135, 644, 274, 39, 23, 15, 73, 43, 29), (136, 649, 276, 39, 23, 16, 73, 44, 29), (137, 653, 278, 39, 24, 16, 74, 44, 29), (138, 658, 280, 39, 24, 16, 74, 44, 30), (139, 663, 282, 40, 24, 16, 75, 45, 30), (140, 668, 284, 40, 24, 16, 75, 45, 30), (141, 672, 286, 40, 24, 16, 76, 45, 30), (142, 677, 288, 40, 24, 16, 76, 46, 30), (143, 682, 290, 41, 24, 16, 77, 46, 31), (144, 686, 292, 41, 25, 16, 77, 46, 31), (145, 691, 294, 41, 25, 16, 78, 46, 31), (146, 696, 296, 41, 25, 17, 78, 47, 31), (147, 701, 298, 42, 25, 17, 79, 47, 31), (148, 705, 300, 42, 25, 17, 79, 47, 32), (149, 710, 302, 42, 25, 17, 80, 48, 32), (150, 715, 304, 42, 25, 17, 80, 48, 32), (151, 720, 306, 43, 26, 17, 81, 48, 32), (152, 724, 308, 43, 26, 17, 81, 49, 32), (153, 729, 310, 43, 26, 17, 82, 49, 33), (154, 734, 312, 43, 26, 17, 82, 49, 33), (155, 738, 314, 44, 26, 17, 83, 49, 33), (156, 743, 316, 44, 26, 18, 83, 50, 33), (157, 748, 318, 44, 27, 18, 84, 50, 33), (158, 753, 320, 44, 27, 18, 84, 50, 34), (159, 757, 322, 45, 27, 18, 85, 51, 34), (160, 762, 324, 45, 27, 18, 85, 51, 34), (161, 767, 326, 45, 27, 18, 86, 51, 34), (162, 772, 328, 45, 27, 18, 86, 52, 34), (163, 776, 330, 46, 27, 18, 87, 52, 35), (164, 781, 332, 46, 28, 18, 87, 52, 35), (165, 786, 334, 46, 28, 18, 88, 52, 35), (166, 790, 336, 46, 28, 19, 88, 53, 35), (167, 795, 338, 47, 28, 19, 89, 53, 35), (168, 800, 340, 47, 28, 19, 89, 53, 36), (169, 805, 342, 47, 28, 19, 90, 54, 36), (170, 809, 344, 47, 28, 19, 90, 54, 36), (171, 814, 346, 48, 29, 19, 91, 54, 36), (172, 819, 348, 48, 29, 19, 91, 55, 36), (173, 823, 350, 48, 29, 19, 92, 55, 37), (174, 828, 352, 48, 29, 19, 92, 55, 37), (175, 833, 354, 49, 29, 19, 93, 55, 37), (176, 838, 356, 49, 29, 20, 93, 56, 37), (177, 842, 358, 49, 30, 20, 94, 56, 37), (178, 847, 360, 49, 30, 20, 94, 56, 38), (179, 852, 362, 50, 30, 20, 95, 57, 38), (180, 857, 364, 50, 30, 20, 95, 57, 38), (181, 861, 366, 50, 30, 20, 96, 57, 38), (182, 866, 368, 50, 30, 20, 96, 58, 38), (183, 871, 370, 51, 30, 20, 97, 58, 39), (184, 875, 372, 51, 31, 20, 97, 58, 39), (185, 880, 374, 51, 31, 20, 98, 58, 39), (186, 885, 376, 51, 31, 21, 98, 59, 39), (187, 890, 378, 52, 31, 21, 99, 59, 39), (188, 894, 380, 52, 31, 21, 99, 59, 40), (189, 899, 382, 52, 31, 21, 100, 60, 40), (190, 904, 384, 52, 31, 21, 100, 60, 40), (191, 908, 386, 53, 32, 21, 101, 60, 40), (192, 913, 388, 53, 32, 21, 101, 61, 40), (193, 918, 390, 53, 32, 21, 102, 61, 41), (194, 923, 392, 53, 32, 21, 102, 61, 41), (195, 927, 394, 54, 32, 21, 103, 61, 41), (196, 932, 396, 54, 32, 22, 103, 62, 41), (197, 937, 398, 54, 33, 22, 104, 62, 41), (198, 942, 400, 54, 33, 22, 104, 62, 42), (199, 946, 402, 55, 33, 22, 105, 63, 42), (200, 951, 404, 55, 33, 22, 105, 63, 42), (201, 1001, 426, 55, 33, 22, 106, 63, 42), (202, 1012, 433, 55, 33, 22, 106, 63, 42), (203, 1022, 440, 55, 33, 22, 107, 63, 42), (204, 1033, 446, 56, 33, 22, 107, 64, 42), (205, 1043, 453, 56, 33, 22, 107, 64, 43), (206, 1054, 460, 56, 34, 22, 108, 64, 43), (207, 1065, 467, 56, 34, 22, 108, 64, 43), (208, 1075, 473, 56, 34, 22, 108, 65, 43), (209, 1086, 480, 56, 34, 23, 109, 65, 43), (210, 1096, 487, 57, 34, 23, 109, 65, 43), (211, 1107, 494, 57, 34, 23, 110, 65, 44), (212, 1118, 500, 57, 34, 23, 110, 65, 44), (213, 1128, 507, 57, 34, 23, 110, 66, 44), (214, 1139, 514, 57, 34, 23, 111, 66, 44), (215, 1149, 521, 58, 35, 23, 111, 66, 44), (216, 1160, 527, 58, 35, 23, 111, 66, 44), (217, 1171, 534, 58, 35, 23, 112, 67, 44), (218, 1181, 541, 58, 35, 23, 112, 67, 45), (219, 1192, 548, 58, 35, 23, 112, 67, 45), (220, 1203, 554, 58, 35, 23, 113, 67, 45), (221, 1213, 561, 59, 35, 23, 113, 67, 45), (222, 1224, 568, 59, 35, 23, 113, 68, 45), (223, 1234, 575, 59, 35, 24, 114, 68, 45), (224, 1245, 581, 59, 36, 24, 114, 68, 45), (225, 1256, 588, 59, 36, 24, 114, 68, 46), (226, 1266, 595, 60, 36, 24, 115, 69, 46), (227, 1277, 602, 60, 36, 24, 115, 69, 46), (228, 1287, 608, 60, 36, 24, 116, 69, 46), (229, 1298, 615, 60, 36, 24, 116, 69, 46), (230, 1309, 622, 60, 36, 24, 116, 69, 46), (231, 1319, 629, 60, 36, 24, 117, 70, 47), (232, 1330, 635, 61, 36, 24, 117, 70, 47), (233, 1340, 642, 61, 37, 24, 117, 70, 47), (234, 1351, 649, 61, 37, 24, 118, 70, 47), (235, 1362, 656, 61, 37, 24, 118, 71, 47), (236, 1372, 663, 61, 37, 24, 118, 71, 47), (237, 1383, 669, 62, 37, 25, 119, 71, 47), (238, 1393, 676, 62, 37, 25, 119, 71, 48), (239, 1404, 683, 62, 37, 25, 119, 71, 48), (240, 1415, 690, 62, 37, 25, 120, 72, 48), (241, 1425, 696, 62, 37, 25, 120, 72, 48), (242, 1436, 703, 62, 38, 25, 120, 72, 48), (243, 1446, 710, 63, 38, 25, 121, 72, 48), (244, 1457, 717, 63, 38, 25, 121, 73, 49), (245, 1468, 723, 63, 38, 25, 122, 73, 49), (246, 1478, 730, 63, 38, 25, 122, 73, 49), (247, 1489, 737, 63, 38, 25, 122, 73, 49), (248, 1499, 744, 64, 38, 25, 123, 73, 49), (249, 1510, 750, 64, 38, 25, 123, 74, 49), (250, 1521, 757, 64, 38, 25, 123, 74, 49), (251, 1531, 764, 64, 39, 26, 124, 74, 50), (252, 1542, 771, 64, 39, 26, 124, 74, 50), (253, 1553, 777, 64, 39, 26, 124, 75, 50), (254, 1563, 784, 65, 39, 26, 125, 75, 50), (255, 1574, 791, 65, 39, 26, 125, 75, 50), (256, 1584, 798, 65, 39, 26, 125, 75, 50), (257, 1595, 804, 65, 39, 26, 126, 75, 50), (258, 1606, 811, 65, 39, 26, 126, 76, 51), (259, 1616, 818, 66, 39, 26, 127, 76, 51), (260, 1627, 825, 66, 40, 26, 127, 76, 51), (261, 1637, 831, 66, 40, 26, 127, 76, 51), (262, 1648, 838, 66, 40, 26, 128, 77, 51), (263, 1659, 845, 66, 40, 26, 128, 77, 51), (264, 1669, 852, 66, 40, 26, 128, 77, 52), (265, 1680, 858, 67, 40, 27, 129, 77, 52), (266, 1690, 865, 67, 40, 27, 129, 77, 52), (267, 1701, 872, 67, 40, 27, 129, 78, 52), (268, 1712, 879, 67, 40, 27, 130, 78, 52), (269, 1722, 886, 67, 41, 27, 130, 78, 52), (270, 1733, 892, 68, 41, 27, 130, 78, 52), (271, 1743, 899, 68, 41, 27, 131, 79, 53), (272, 1754, 906, 68, 41, 27, 131, 79, 53), (273, 1765, 913, 68, 41, 27, 131, 79, 53), (274, 1775, 919, 68, 41, 27, 132, 79, 53), (275, 1786, 926, 68, 41, 27, 132, 79, 53), (276, 1796, 933, 69, 41, 27, 133, 80, 53), (277, 1807, 940, 69, 41, 27, 133, 80, 54), (278, 1818, 946, 69, 42, 27, 133, 80, 54), (279, 1828, 953, 69, 42, 28, 134, 80, 54), (280, 1839, 960, 69, 42, 28, 134, 81, 54), (281, 1849, 967, 70, 42, 28, 134, 81, 54), (282, 1860, 973, 70, 42, 28, 135, 81, 54), (283, 1871, 980, 70, 42, 28, 135, 81, 54), (284, 1881, 987, 70, 42, 28, 135, 81, 55), (285, 1892, 994, 70, 42, 28, 136, 82, 55), (286, 1903, 1000, 70, 42, 28, 136, 82, 55), (287, 1913, 1007, 71, 43, 28, 136, 82, 55), (288, 1924, 1014, 71, 43, 28, 137, 82, 55), (289, 1934, 1021, 71, 43, 28, 137, 83, 55), (290, 1945, 1027, 71, 43, 28, 137, 83, 55), (291, 1956, 1034, 71, 43, 28, 138, 83, 56), (292, 1966, 1041, 72, 43, 28, 138, 83, 56), (293, 1977, 1048, 72, 43, 29, 139, 83, 56), (294, 1987, 1054, 72, 43, 29, 139, 84, 56), (295, 1998, 1061, 72, 43, 29, 139, 84, 56), (296, 2009, 1068, 72, 44, 29, 140, 84, 56), (297, 2019, 1075, 72, 44, 29, 140, 84, 57), (298, 2030, 1081, 73, 44, 29, 140, 85, 57), (299, 2040, 1088, 73, 44, 29, 141, 85, 57), (300, 2051, 1095, 73, 44, 29, 141, 85, 57);