# C. elegans example

celegans = [(1, 3), (1, 5), (1, 11), (1, 71), (1, 156), (1, 196), (2, 4), (2, 
  6), (2, 12), (2, 43), (2, 169), (2, 177), (2, 197), (3, 4), (3, 
  79), (3, 80), (3, 110), (3, 122), (4, 53), (4, 70), (4, 80), (4, 
  110), (4, 111), (4, 123), (5, 19), (5, 42), (5, 73), (6, 18), (6, 
  38), (6, 43), (6, 63), (6, 72), (6, 74), (6, 157), (6, 175), (7, 
  52), (7, 83), (7, 208), (8, 12), (8, 64), (8, 76), (9, 17), (9, 
  39), (9, 71), (10, 16), (10, 39), (10, 72), (11, 7), (11, 14), (11, 
  17), (11, 19), (11, 38), (11, 39), (11, 40), (11, 42), (11, 
  48), (11, 75), (11, 112), (11, 158), (12, 8), (12, 15), (12, 
  20), (12, 39), (12, 41), (12, 43), (12, 45), (12, 49), (12, 
  75), (12, 76), (12, 159), (13, 1), (13, 7), (13, 8), (13, 12), (13, 
  19), (13, 20), (13, 38), (13, 39), (13, 41), (13, 43), (13, 
  49), (13, 73), (13, 75), (13, 76), (13, 108), (13, 109), (13, 
  110), (13, 111), (13, 113), (13, 166), (13, 195), (13, 196), (13, 
  201), (13, 207), (13, 248), (14, 11), (14, 48), (15, 49), (17, 
  9), (17, 40), (18, 6), (18, 10), (18, 38), (18, 39), (18, 51), (18, 
  72), (18, 76), (19, 5), (19, 11), (19, 44), (19, 71), (19, 73), (19,
   107), (19, 112), (19, 113), (19, 173), (19, 175), (19, 180), (20, 
  6), (20, 12), (20, 18), (20, 72), (20, 74), (20, 112), (20, 
  113), (20, 173), (20, 174), (20, 175), (20, 180), (21, 7), (22, 
  14), (22, 171), (22, 196), (22, 207), (23, 80), (24, 173), (24, 
  196), (25, 174), (25, 197), (26, 64), (26, 107), (26, 150), (26, 
  156), (26, 157), (26, 180), (27, 52), (27, 53), (27, 54), (27, 
  55), (27, 56), (27, 57), (27, 58), (27, 59), (27, 69), (27, 
  94), (27, 149), (27, 150), (28, 52), (28, 53), (28, 54), (28, 
  55), (28, 56), (28, 57), (28, 100), (29, 52), (29, 53), (29, 
  56), (29, 57), (29, 100), (29, 239), (30, 52), (30, 53), (30, 
  58), (30, 59), (30, 94), (30, 149), (30, 150), (31, 52), (31, 
  53), (31, 54), (31, 55), (31, 58), (31, 59), (31, 95), (31, 
  270), (31, 271), (32, 52), (32, 53), (32, 54), (32, 55), (32, 
  56), (32, 57), (32, 96), (33, 52), (33, 53), (33, 54), (33, 
  55), (33, 56), (33, 57), (33, 97), (33, 112), (33, 113), (34, 
  52), (34, 53), (34, 54), (34, 55), (34, 97), (35, 98), (36, 
  98), (37, 99), (38, 16), (38, 19), (38, 44), (38, 45), (38, 
  71), (38, 72), (39, 7), (39, 8), (39, 10), (39, 11), (39, 12), (39, 
  17), (39, 44), (39, 72), (40, 11), (40, 14), (40, 71), (41, 
  15), (41, 16), (41, 74), (41, 84), (42, 7), (42, 112), (42, 
  113), (43, 6), (43, 8), (43, 45), (43, 112), (43, 172), (43, 
  197), (44, 19), (46, 48), (46, 158), (47, 15), (47, 112), (48, 
  11), (48, 14), (48, 40), (48, 42), (48, 44), (48, 46), (48, 
  112), (48, 158), (48, 196), (49, 15), (49, 47), (49, 159), (50, 
  5), (50, 78), (50, 107), (50, 120), (50, 166), (50, 180), (50, 
  230), (51, 6), (51, 16), (51, 107), (51, 175), (51, 231), (52, 
  3), (52, 4), (52, 7), (52, 26), (52, 42), (52, 50), (52, 53), (52, 
  55), (52, 56), (52, 58), (52, 62), (52, 65), (52, 75), (52, 
  78), (52, 80), (52, 107), (52, 109), (52, 110), (52, 111), (52, 
  126), (52, 127), (52, 140), (52, 141), (52, 142), (52, 145), (52, 
  148), (52, 149), (52, 150), (52, 151), (52, 156), (52, 157), (52, 
  162), (52, 166), (52, 168), (52, 169), (52, 176), (52, 177), (52, 
  196), (52, 200), (52, 202), (52, 207), (52, 208), (52, 218), (52, 
  235), (53, 1), (53, 3), (53, 4), (53, 7), (53, 8), (53, 13), (53, 
  26), (53, 43), (53, 51), (53, 52), (53, 54), (53, 57), (53, 
  59), (53, 62), (53, 66), (53, 77), (53, 79), (53, 109), (53, 
  110), (53, 111), (53, 126), (53, 127), (53, 140), (53, 141), (53, 
  148), (53, 149), (53, 150), (53, 152), (53, 154), (53, 155), (53, 
  156), (53, 157), (53, 163), (53, 167), (53, 168), (53, 169), (53, 
  197), (53, 201), (53, 203), (53, 207), (53, 217), (54, 1), (54, 
  2), (54, 7), (54, 8), (54, 26), (54, 42), (54, 52), (54, 55), (54, 
  56), (54, 60), (54, 61), (54, 62), (54, 64), (54, 65), (54, 
  66), (54, 67), (54, 70), (54, 73), (54, 107), (54, 109), (54, 
  110), (54, 111), (54, 149), (54, 150), (54, 156), (54, 157), (54, 
  160), (54, 171), (54, 172), (54, 176), (54, 177), (54, 208), (54, 
  228), (54, 230), (54, 231), (55, 1), (55, 2), (55, 8), (55, 
  13), (55, 14), (55, 26), (55, 43), (55, 53), (55, 54), (55, 
  57), (55, 61), (55, 63), (55, 65), (55, 66), (55, 70), (55, 
  74), (55, 110), (55, 111), (55, 149), (55, 150), (55, 154), (55, 
  155), (55, 156), (55, 157), (55, 160), (55, 166), (55, 171), (55, 
  172), (55, 176), (55, 177), (55, 196), (55, 197), (55, 208), (55, 
  229), (55, 231), (55, 234), (56, 7), (56, 8), (56, 14), (56, 
  26), (56, 42), (56, 43), (56, 52), (56, 55), (56, 57), (56, 
  58), (56, 62), (56, 63), (56, 65), (56, 110), (56, 111), (56, 
  112), (56, 113), (56, 126), (56, 127), (56, 140), (56, 141), (56, 
  145), (56, 149), (56, 150), (56, 162), (56, 197), (57, 4), (57, 
  7), (57, 8), (57, 14), (57, 15), (57, 22), (57, 26), (57, 42), (57, 
  43), (57, 50), (57, 53), (57, 54), (57, 56), (57, 59), (57, 
  62), (57, 64), (57, 66), (57, 110), (57, 111), (57, 126), (57, 
  127), (57, 138), (57, 141), (57, 148), (57, 149), (57, 150), (57, 
  154), (57, 155), (57, 156), (57, 163), (57, 166), (58, 1), (58, 
  2), (58, 3), (58, 13), (58, 20), (58, 21), (58, 22), (58, 50), (58, 
  52), (58, 55), (58, 66), (58, 67), (58, 77), (58, 78), (58, 
  82), (58, 84), (58, 107), (58, 111), (58, 117), (58, 122), (58, 
  129), (58, 149), (58, 150), (58, 157), (58, 166), (58, 167), (58, 
  173), (58, 181), (58, 196), (58, 207), (58, 230), (58, 233), (58, 
  235), (59, 4), (59, 14), (59, 19), (59, 20), (59, 21), (59, 
  43), (59, 51), (59, 53), (59, 54), (59, 62), (59, 65), (59, 
  67), (59, 69), (59, 77), (59, 81), (59, 83), (59, 107), (59, 
  111), (59, 116), (59, 128), (59, 129), (59, 149), (59, 150), (59, 
  154), (59, 155), (59, 156), (59, 166), (59, 173), (59, 174), (59, 
  181), (59, 197), (59, 231), (59, 232), (59, 233), (59, 234), (60, 
  14), (60, 15), (60, 61), (60, 62), (60, 64), (60, 66), (60, 
  112), (60, 113), (60, 138), (60, 172), (60, 262), (60, 263), (61, 
  14), (61, 15), (61, 60), (61, 63), (61, 65), (61, 69), (61, 
  154), (61, 155), (61, 159), (61, 262), (61, 263), (62, 60), (62, 
  61), (62, 138), (62, 139), (62, 148), (62, 154), (62, 155), (63, 
  14), (63, 64), (63, 66), (63, 79), (63, 80), (63, 138), (63, 
  157), (63, 172), (64, 8), (64, 14), (64, 60), (64, 61), (64, 
  63), (64, 65), (64, 138), (64, 139), (64, 143), (64, 156), (64, 
  171), (65, 2), (65, 7), (65, 14), (65, 26), (65, 61), (65, 63), (65,
   64), (65, 66), (65, 80), (65, 112), (65, 113), (65, 126), (65, 
  149), (65, 154), (65, 155), (65, 160), (65, 163), (65, 172), (65, 
  177), (65, 197), (66, 1), (66, 4), (66, 7), (66, 8), (66, 15), (66, 
  60), (66, 62), (66, 63), (66, 64), (66, 70), (66, 79), (66, 
  127), (66, 154), (66, 155), (66, 160), (66, 162), (66, 171), (66, 
  172), (66, 230), (67, 108), (67, 109), (67, 136), (67, 153), (67, 
  173), (67, 174), (67, 177), (67, 181), (67, 187), (67, 194), (67, 
  195), (68, 4), (68, 108), (68, 109), (68, 137), (68, 160), (68, 
  174), (68, 181), (68, 194), (68, 195), (69, 54), (69, 55), (69, 
  60), (69, 61), (69, 108), (69, 149), (69, 150), (69, 154), (69, 
  155), (69, 156), (69, 157), (69, 158), (69, 159), (69, 181), (69, 
  261), (69, 264), (70, 66), (70, 67), (70, 153), (72, 12), (72, 
  18), (72, 39), (72, 49), (73, 7), (73, 71), (73, 112), (73, 
  113), (74, 6), (74, 63), (74, 72), (74, 112), (75, 38), (75, 
  39), (75, 44), (75, 45), (75, 76), (76, 8), (76, 11), (76, 12), (76,
   38), (76, 39), (76, 44), (76, 45), (77, 16), (77, 26), (78, 
  17), (78, 26), (78, 77), (78, 124), (78, 173), (78, 174), (78, 
  175), (78, 180), (79, 3), (79, 22), (79, 70), (79, 155), (80, 
  23), (80, 70), (80, 82), (80, 113), (80, 154), (80, 155), (81, 
  3), (81, 22), (81, 128), (81, 175), (81, 181), (81, 196), (81, 
  228), (82, 4), (82, 23), (82, 121), (82, 129), (82, 175), (82, 
  181), (82, 229), (83, 22), (83, 128), (83, 175), (83, 181), (84, 
  23), (84, 129), (84, 165), (84, 175), (84, 181), (85, 27), (85, 
  52), (85, 53), (85, 56), (85, 57), (85, 58), (85, 59), (85, 
  70), (85, 101), (86, 30), (86, 52), (86, 53), (86, 56), (86, 
  57), (86, 58), (86, 59), (86, 69), (86, 149), (86, 150), (87, 
  29), (87, 31), (87, 52), (87, 53), (87, 56), (87, 57), (87, 
  58), (87, 59), (87, 102), (88, 33), (88, 52), (88, 53), (88, 
  56), (88, 57), (88, 58), (88, 59), (88, 87), (88, 103), (89, 
  34), (89, 52), (89, 53), (89, 54), (89, 55), (89, 56), (89, 
  57), (89, 88), (89, 112), (89, 113), (90, 36), (90, 52), (90, 
  53), (90, 89), (90, 104), (90, 113), (91, 28), (91, 52), (91, 
  53), (91, 90), (91, 105), (92, 29), (92, 52), (92, 53), (92, 
  56), (92, 57), (92, 62), (92, 91), (92, 106), (92, 108), (92, 
  138), (92, 239), (93, 29), (93, 52), (93, 53), (93, 56), (93, 
  57), (93, 92), (93, 134), (93, 143), (93, 160), (93, 239), (95, 
  107), (95, 149), (95, 150), (95, 160), (96, 52), (96, 53), (96, 
  58), (96, 59), (96, 107), (96, 149), (96, 150), (96, 160), (97, 
  56), (97, 57), (97, 107), (97, 149), (97, 150), (98, 52), (98, 
  53), (98, 107), (98, 113), (98, 149), (98, 150), (100, 107), (100, 
  149), (100, 150), (100, 239), (101, 69), (101, 86), (101, 94), (101,
   95), (101, 154), (101, 155), (101, 158), (101, 159), (101, 
  236), (101, 240), (101, 241), (101, 248), (101, 251), (101, 
  259), (101, 261), (101, 265), (102, 87), (102, 95), (102, 96), (102,
   154), (102, 155), (102, 156), (102, 157), (102, 241), (102, 
  242), (102, 251), (102, 252), (102, 253), (102, 260), (102, 
  261), (102, 264), (103, 88), (103, 96), (103, 97), (103, 243), (103,
   244), (103, 253), (103, 254), (103, 255), (103, 261), (103, 
  264), (104, 89), (104, 90), (104, 97), (104, 98), (104, 245), (104, 
  246), (104, 255), (104, 256), (104, 257), (104, 261), (104, 
  262), (104, 264), (105, 98), (105, 99), (105, 237), (105, 
  247), (105, 249), (105, 257), (105, 258), (105, 264), (106, 
  69), (106, 91), (106, 92), (106, 93), (106, 99), (106, 100), (106, 
  108), (106, 134), (106, 135), (106, 170), (106, 238), (106, 
  239), (106, 249), (106, 250), (107, 19), (107, 20), (107, 26), (107,
   67), (107, 68), (107, 110), (107, 111), (107, 136), (107, 
  137), (107, 138), (107, 139), (107, 142), (107, 143), (107, 
  145), (107, 149), (107, 150), (107, 151), (107, 152), (107, 
  153), (107, 160), (107, 180), (107, 208), (108, 58), (108, 
  59), (108, 62), (108, 109), (108, 158), (108, 159), (108, 
  262), (108, 263), (109, 56), (109, 57), (109, 108), (109, 
  156), (109, 157), (109, 158), (109, 159), (109, 173), (109, 
  262), (109, 263), (110, 3), (110, 4), (110, 111), (110, 150), (110, 
  207), (111, 1), (111, 4), (111, 110), (112, 11), (112, 15), (112, 
  18), (112, 55), (112, 60), (112, 66), (112, 79), (112, 113), (112, 
  144), (112, 158), (112, 180), (113, 15), (113, 43), (113, 47), (113,
   54), (113, 61), (113, 65), (113, 80), (113, 112), (113, 145), (113,
   159), (113, 172), (113, 259), (113, 260), (113, 261), (113, 
  264), (114, 81), (114, 116), (114, 120), (114, 160), (114, 
  224), (115, 82), (115, 117), (115, 121), (115, 129), (115, 
  160), (116, 3), (116, 81), (116, 114), (116, 118), (116, 122), (116,
   228), (117, 82), (117, 119), (117, 123), (117, 165), (117, 
  227), (117, 229), (118, 83), (118, 124), (118, 128), (118, 
  132), (118, 160), (118, 234), (119, 84), (119, 125), (119, 
  129), (119, 133), (119, 160), (119, 235), (122, 3), (123, 
  129), (123, 175), (123, 229), (124, 132), (125, 84), (125, 
  119), (125, 133), (126, 52), (126, 56), (126, 142), (126, 
  148), (126, 150), (126, 239), (127, 53), (127, 57), (127, 
  143), (127, 149), (128, 3), (128, 81), (128, 83), (128, 201), (129, 
  4), (129, 8), (129, 82), (129, 84), (129, 123), (129, 181), (129, 
  186), (129, 202), (130, 81), (130, 120), (130, 122), (130, 
  175), (130, 178), (131, 82), (131, 123), (131, 175), (131, 
  179), (132, 5), (132, 7), (132, 83), (132, 122), (132, 124), (132, 
  175), (133, 84), (133, 123), (133, 125), (133, 175), (133, 
  231), (134, 108), (136, 52), (136, 60), (136, 68), (136, 137), (136,
   149), (136, 153), (137, 53), (137, 61), (137, 67), (137, 
  107), (137, 136), (137, 145), (137, 150), (137, 160), (138, 
  62), (138, 139), (139, 62), (139, 138), (140, 126), (140, 
  138), (140, 139), (140, 141), (141, 138), (141, 139), (141, 
  140), (142, 143), (146, 220), (147, 219), (148, 56), (148, 
  57), (148, 127), (148, 154), (148, 155), (149, 8), (149, 22), (149, 
  26), (149, 53), (149, 56), (149, 58), (149, 62), (149, 65), (149, 
  66), (149, 70), (149, 79), (149, 80), (149, 107), (149, 111), (149, 
  136), (149, 140), (149, 141), (149, 142), (149, 150), (149, 
  152), (149, 153), (149, 157), (149, 162), (149, 172), (149, 
  239), (150, 22), (150, 23), (150, 26), (150, 52), (150, 57), (150, 
  59), (150, 62), (150, 65), (150, 66), (150, 70), (150, 80), (150, 
  127), (150, 137), (150, 141), (150, 143), (150, 145), (150, 
  149), (150, 151), (150, 154), (150, 155), (150, 156), (150, 
  157), (150, 160), (150, 163), (150, 172), (150, 239), (151, 
  152), (152, 151), (153, 67), (153, 68), (153, 136), (153, 
  137), (154, 62), (154, 66), (154, 79), (154, 80), (154, 126), (154, 
  155), (155, 62), (155, 65), (155, 79), (155, 80), (155, 113), (155, 
  134), (155, 148), (155, 154), (156, 26), (156, 62), (156, 64), (156,
   68), (156, 171), (157, 6), (157, 43), (157, 62), (157, 63), (157, 
  69), (157, 108), (157, 172), (158, 14), (158, 46), (158, 60), (158, 
  61), (158, 62), (158, 64), (158, 66), (158, 68), (158, 138), (158, 
  139), (158, 157), (158, 264), (159, 47), (159, 62), (159, 63), (159,
   65), (159, 67), (159, 113), (159, 156), (159, 261), (160, 
  70), (160, 107), (160, 114), (160, 127), (160, 136), (160, 
  137), (160, 149), (160, 150), (160, 153), (161, 154), (161, 
  155), (161, 162), (161, 163), (161, 261), (162, 126), (162, 
  127), (162, 149), (162, 154), (162, 163), (163, 69), (163, 
  150), (163, 155), (163, 162), (164, 3), (164, 5), (164, 13), (164, 
  19), (164, 26), (164, 42), (164, 50), (164, 73), (164, 75), (164, 
  78), (164, 107), (164, 124), (164, 166), (164, 175), (164, 
  180), (164, 182), (164, 183), (164, 186), (164, 187), (164, 
  221), (164, 222), (164, 223), (164, 230), (164, 234), (165, 
  6), (165, 18), (165, 20), (165, 26), (165, 38), (165, 43), (165, 
  51), (165, 74), (165, 77), (165, 107), (165, 125), (165, 157), (165,
   164), (165, 167), (165, 175), (165, 180), (165, 182), (165, 
  183), (165, 186), (165, 187), (165, 188), (165, 221), (165, 
  222), (165, 223), (165, 231), (165, 235), (166, 13), (166, 
  16), (166, 17), (166, 50), (166, 78), (166, 81), (166, 109), (166, 
  120), (166, 128), (166, 173), (166, 175), (166, 176), (166, 
  181), (166, 190), (166, 232), (166, 234), (167, 16), (167, 
  18), (167, 51), (167, 77), (167, 82), (167, 129), (167, 174), (167, 
  175), (167, 177), (167, 181), (167, 190), (167, 233), (167, 
  235), (168, 8), (168, 81), (168, 82), (168, 83), (168, 84), (168, 
  122), (168, 131), (168, 132), (168, 230), (169, 8), (169, 81), (169,
   82), (169, 83), (169, 84), (169, 121), (169, 130), (169, 
  131), (169, 133), (169, 207), (169, 228), (169, 229), (169, 
  231), (170, 17), (170, 70), (170, 149), (170, 150), (171, 3), (171, 
  11), (171, 14), (171, 112), (172, 12), (172, 15), (172, 65), (172, 
  72), (172, 113), (172, 154), (172, 155), (172, 159), (173, 3), (173,
   4), (173, 53), (173, 64), (173, 77), (173, 78), (173, 108), (173, 
  109), (173, 156), (173, 230), (174, 3), (174, 4), (174, 6), (174, 
  77), (174, 108), (174, 109), (174, 157), (174, 231), (175, 3), (175,
   4), (175, 19), (175, 108), (175, 121), (175, 122), (175, 
  123), (175, 124), (175, 125), (175, 132), (175, 133), (175, 
  167), (175, 234), (176, 1), (176, 13), (176, 19), (176, 42), (176, 
  67), (176, 68), (176, 112), (176, 168), (176, 171), (176, 
  181), (176, 200), (176, 201), (176, 202), (176, 203), (176, 
  248), (177, 2), (177, 13), (177, 20), (177, 63), (177, 67), (177, 
  68), (177, 107), (177, 113), (177, 157), (177, 168), (177, 
  171), (177, 172), (177, 181), (177, 200), (177, 201), (177, 
  202), (177, 203), (178, 1), (178, 7), (178, 42), (178, 81), (178, 
  83), (178, 114), (178, 118), (178, 120), (178, 124), (178, 
  132), (178, 160), (178, 175), (178, 224), (178, 226), (179, 
  2), (179, 84), (179, 115), (179, 119), (179, 121), (179, 125), (179,
   133), (179, 160), (179, 172), (179, 175), (179, 225), (179, 
  227), (179, 231), (180, 5), (180, 6), (180, 42), (180, 63), (180, 
  64), (180, 72), (180, 74), (180, 107), (180, 173), (180, 174), (180,
   197), (181, 65), (181, 81), (181, 149), (181, 176), (181, 
  177), (181, 207), (181, 234), (182, 3), (182, 84), (182, 164), (182,
   165), (183, 2), (183, 3), (183, 164), (183, 168), (183, 223), (184,
   23), (184, 82), (184, 83), (184, 116), (184, 117), (184, 
  118), (184, 128), (184, 131), (184, 164), (184, 165), (184, 
  181), (184, 183), (184, 187), (184, 188), (184, 189), (184, 
  223), (184, 233), (184, 234), (184, 235), (185, 22), (185, 
  84), (185, 117), (185, 119), (185, 128), (185, 129), (185, 
  130), (185, 164), (185, 165), (185, 186), (185, 188), (185, 
  224), (185, 228), (185, 232), (185, 235), (186, 3), (186, 
  116), (186, 117), (186, 122), (186, 123), (186, 128), (186, 
  129), (186, 164), (186, 165), (186, 176), (186, 177), (186, 
  181), (186, 182), (186, 187), (186, 194), (186, 196), (186, 
  197), (186, 229), (187, 4), (187, 21), (187, 116), (187, 117), (187,
   122), (187, 129), (187, 164), (187, 165), (187, 176), (187, 
  177), (187, 181), (187, 183), (187, 186), (187, 194), (187, 
  195), (187, 196), (187, 197), (187, 198), (187, 229), (187, 
  231), (188, 81), (188, 114), (188, 116), (188, 117), (188, 
  128), (188, 133), (188, 164), (188, 165), (188, 182), (188, 
  185), (188, 196), (188, 197), (188, 227), (188, 232), (188, 
  235), (189, 82), (189, 115), (189, 116), (189, 117), (189, 
  129), (189, 132), (189, 164), (189, 165), (189, 183), (189, 
  184), (189, 197), (189, 225), (189, 233), (189, 234), (190, 
  121), (190, 170), (190, 217), (190, 218), (190, 225), (191, 
  117), (191, 120), (191, 121), (191, 123), (191, 124), (191, 
  125), (191, 128), (191, 224), (191, 226), (192, 116), (192, 
  120), (192, 121), (192, 122), (192, 124), (192, 125), (192, 
  129), (192, 133), (192, 175), (192, 199), (192, 225), (192, 
  226), (192, 227), (193, 108), (193, 122), (193, 123), (193, 
  124), (193, 125), (193, 175), (193, 183), (193, 219), (193, 
  220), (193, 226), (193, 227), (194, 108), (194, 109), (194, 
  173), (194, 186), (194, 201), (194, 207), (194, 248), (195, 
  108), (195, 109), (195, 168), (195, 176), (195, 177), (195, 
  202), (196, 3), (196, 22), (196, 81), (196, 158), (196, 199), (196, 
  200), (196, 201), (197, 4), (197, 15), (197, 43), (197, 82), (197, 
  113), (197, 194), (197, 229), (198, 3), (198, 82), (198, 83), (198, 
  174), (198, 208), (199, 25), (199, 81), (199, 84), (199, 131), (199,
   173), (199, 196), (199, 208), (200, 13), (200, 68), (200, 
  79), (200, 146), (200, 183), (200, 219), (200, 248), (201, 
  67), (201, 80), (201, 107), (201, 128), (201, 147), (201, 
  165), (201, 176), (201, 182), (201, 220), (201, 248), (202, 
  24), (202, 107), (202, 176), (202, 177), (202, 218), (203, 4), (203,
   25), (203, 107), (203, 176), (203, 177), (203, 217), (204, 
  52), (204, 53), (204, 56), (204, 57), (204, 58), (204, 59), (204, 
  69), (204, 112), (204, 113), (204, 160), (204, 248), (205, 
  53), (205, 56), (205, 58), (205, 66), (205, 112), (205, 113), (206, 
  52), (206, 57), (206, 59), (206, 65), (206, 69), (207, 22), (208, 
  80), (209, 23), (209, 82), (209, 164), (209, 165), (209, 229), (210,
   3), (210, 81), (210, 165), (211, 83), (211, 165), (211, 183), (211,
   196), (211, 228), (212, 67), (212, 84), (212, 182), (212, 
  229), (212, 231), (213, 132), (214, 3), (214, 133), (215, 70), (215,
   130), (215, 149), (215, 196), (215, 234), (215, 235), (216, 
  131), (216, 150), (216, 189), (216, 235), (217, 6), (217, 19), (217,
   25), (217, 64), (217, 81), (217, 107), (217, 168), (217, 
  229), (218, 3), (218, 20), (218, 24), (218, 63), (218, 68), (218, 
  73), (218, 82), (218, 107), (218, 108), (218, 169), (218, 
  228), (219, 5), (219, 14), (219, 19), (219, 64), (219, 107), (219, 
  146), (219, 196), (220, 6), (220, 20), (220, 63), (220, 74), (220, 
  107), (220, 147), (220, 182), (221, 7), (221, 13), (221, 68), (221, 
  128), (221, 129), (221, 164), (221, 165), (221, 167), (221, 
  168), (221, 169), (221, 177), (221, 181), (221, 183), (221, 
  203), (221, 223), (221, 232), (221, 233), (222, 25), (222, 
  68), (222, 128), (222, 129), (222, 164), (222, 165), (222, 
  168), (222, 169), (222, 176), (222, 177), (222, 181), (222, 
  182), (222, 193), (222, 202), (222, 232), (222, 233), (223, 
  2), (223, 68), (223, 128), (223, 129), (223, 164), (223, 165), (223,
   166), (223, 168), (223, 169), (223, 181), (223, 183), (223, 
  221), (223, 234), (224, 79), (224, 81), (224, 120), (225, 80), (225,
   82), (225, 121), (226, 83), (226, 124), (227, 84), (227, 
  123), (227, 125), (228, 3), (228, 81), (229, 82), (229, 123), (230, 
  26), (230, 122), (230, 180), (230, 196), (230, 228), (231, 6), (231,
   51), (231, 117), (231, 125), (231, 180), (231, 197), (231, 
  229), (232, 81), (232, 128), (233, 82), (233, 225), (234, 
  118), (235, 175), (235, 181), (236, 58), (236, 59), (236, 
  248), (236, 265), (237, 52), (237, 53), (237, 54), (237, 55), (237, 
  247), (238, 52), (238, 53), (238, 56), (238, 57), (238, 62), (238, 
  237), (238, 239), (239, 52), (239, 53), (239, 107), (239, 
  140), (239, 141), (239, 142), (239, 143), (239, 162), (239, 
  163), (239, 238), (239, 250), (239, 268), (239, 269), (240, 
  52), (240, 53), (240, 56), (240, 57), (240, 58), (240, 59), (240, 
  204), (240, 236), (240, 248), (240, 251), (241, 52), (241, 
  53), (241, 56), (241, 57), (241, 58), (241, 59), (241, 240), (241, 
  248), (242, 52), (242, 53), (242, 54), (242, 55), (242, 58), (242, 
  59), (242, 241), (243, 52), (243, 53), (243, 56), (243, 57), (243, 
  113), (243, 242), (244, 52), (244, 53), (244, 56), (244, 57), (244, 
  58), (244, 59), (244, 112), (244, 113), (244, 243), (245, 54), (245,
   55), (245, 244), (246, 245), (247, 136), (247, 137), (247, 
  246), (248, 13), (248, 60), (248, 107), (248, 111), (248, 
  236), (250, 107), (250, 149), (250, 150), (251, 270), (251, 
  271), (252, 149), (252, 150), (253, 149), (253, 150), (254, 
  149), (254, 150), (255, 149), (255, 150), (256, 149), (256, 
  150), (257, 149), (257, 150), (259, 261), (260, 112), (260, 
  113), (260, 154), (260, 155), (260, 251), (260, 259), (260, 
  261), (261, 113), (261, 154), (261, 155), (261, 263), (262, 
  261), (262, 263), (263, 112), (263, 113), (263, 262), (263, 
  264), (265, 27), (265, 63), (265, 64), (265, 85), (265, 86), (265, 
  94), (265, 101), (265, 158), (265, 159), (265, 236), (265, 
  240), (265, 248), (265, 259), (265, 260), (265, 261), (266, 
  28), (266, 29), (266, 91), (266, 100), (266, 105), (266, 238), (266,
   264), (267, 29), (267, 60), (267, 61), (267, 91), (267, 92), (267, 
  93), (267, 100), (267, 106), (267, 238), (267, 264), (268, 
  69), (268, 92), (268, 93), (268, 106), (268, 154), (268, 155), (268,
   239), (268, 264), (269, 52), (269, 53), (269, 239), (269, 
  264), (270, 30), (270, 31), (270, 58), (270, 59), (270, 85), (270, 
  86), (270, 94), (270, 95), (270, 101), (270, 240), (270, 241), (270,
   248), (270, 251), (270, 261), (271, 31), (271, 32), (271, 
  54), (271, 55), (271, 58), (271, 59), (271, 86), (271, 87), (271, 
  94), (271, 95), (271, 96), (271, 102), (271, 154), (271, 155), (271,
   241), (271, 251), (271, 261), (272, 32), (272, 33), (272, 
  87), (272, 88), (272, 94), (272, 95), (272, 96), (272, 97), (272, 
  102), (272, 154), (272, 155), (272, 242), (272, 243), (272, 
  260), (272, 261), (273, 33), (273, 34), (273, 88), (273, 95), (273, 
  96), (273, 97), (273, 98), (273, 103), (273, 243), (273, 261), (274,
   34), (274, 35), (274, 88), (274, 89), (274, 96), (274, 97), (274, 
  98), (274, 99), (274, 103), (274, 245), (274, 261), (275, 35), (275,
   36), (275, 89), (275, 97), (275, 98), (275, 99), (275, 104), (275, 
  245), (275, 261), (275, 264), (276, 36), (276, 37), (276, 90), (276,
   98), (276, 99), (276, 100), (276, 104), (276, 247), (276, 
  264), (277, 28), (277, 37), (277, 90), (277, 99), (277, 100), (277, 
  105), (277, 247), (277, 264)]


permutation =[247, 261, 134, 95, 37, 14, 268, 137, 41, 76, 169, 241, 226, 96, 240,58, 164, 199, 253, 151, 187, 119, 185, 46, 132, 176, 8, 165, 110, 273, 184, 154, 182, 145, 52, 200, 106, 160, 122, 216, 236, 127, 67, 206, 113, 40, 141, 168, 118, 159, 262, 202, 105, 188, 229, 198, 248, 26, 139, 276, 33, 24, 148, 4, 244, 19, 231, 215, 97, 51, 173, 71, 228, 156, 34, 147, 135, 227, 204, 92, 175, 260, 123, 243, 138, 232, 12, 107, 209, 158, 62, 5, 114, 230, 20, 192, 180, 214, 111, 128, 223, 72, 94, 21, 136, 81, 16, 140, 265, 254, 191, 7, 217, 82, 86, 258, 10, 205, 213, 60, 256, 83, 78, 130, 274, 194, 166, 85, 212, 87, 245, 263, 39, 102, 275, 91, 57, 63, 183, 99, 35, 129, 167, 246, 50, 100, 131, 181, 116, 195, 125, 179, 28, 49, 207, 115, 70, 38, 27, 150, 196, 235, 266, 29, 250, 177, 234, 54, 32, 172, 42, 80, 144, 17, 89, 237, 22, 152, 79, 269, 103, 121, 157, 149, 224, 186, 30, 242, 221, 18, 189, 77, 25, 252, 124, 155, 222, 259, 193, 98, 146, 171, 270, 225, 101, 93, 23, 218, 201, 44, 64, 255, 59, 108, 84, 56, 220, 90, 68, 117, 203, 233, 109, 74, 53, 133, 45, 3, 69, 61, 43, 178, 126, 239, 271, 219, 264, 162, 15, 47, 1, 210, 31, 73, 13, 251, 65, 9, 11, 238, 2, 170, 161, 143, 104, 66, 48, 277, 55, 6, 120, 267, 142, 36, 174, 211, 208, 190, 75, 163, 88, 153, 112, 197, 272, 249, 257]

Arat = [[0 for i in range(277)] for j in range(277)]

for (x,y) in celegans:
  Arat[permutation[x-1]-1][permutation[y-1]-1]=1










# USE METIS TO GENERATE GRAPH PARTITIONS





import networkx as nx
import metis
import numpy as np


# since weights should all be integers
G = nx.from_numpy_matrix(np.int32(Arat))  
# otherwise metis will not recognize you have a weighted graph
G.graph['edge_weight_attr']='weight'  


def Part(g,n):
  res=metis.part_graph(g, nparts=n)[1]
  with open("celegans"+str(n)+".txt", "w") as txt_file:
    txt_file.write(str(res)) 

[Part(G,x) for x in [8,25]]

