
from synet.utils.common import PathReq
from synet.utils.common import ECMPPathsReq
from synet.utils.common import PathOrderReq
from synet.utils.common import Protocols
from synet.utils.common import KConnectedPathsReq

topology_file = 'topos/mid/Columbus.graphml'
seed = 43502437
reqs_simple_1 = [
    PathReq(Protocols.OSPF, "CaymanTTIslands", ['ElTTSalvador', 'NodeID63', 'Guatemala', 'NodeID28', 'NodeID67', 'NodeID29', 'NodeID46', 'CaymanTTIslands'], False),
]

edges_cost_simple_1 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

####################

reqs_ecmp_1_2 = [
    ECMPPathsReq(Protocols.OSPF, 'Martinique', [PathReq(Protocols.OSPF, "Martinique", ['NodeID14', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID59', 'NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50', 'StTTCroix', 'NodeID22', 'Martinique'], False), PathReq(Protocols.OSPF, "Martinique", ['NodeID14', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID59', 'NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Martinique'], False)], False),
]

edges_cost_ecmp_1_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_kconnected_1_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'Martinique', [PathReq(Protocols.OSPF, "Martinique", ['NodeID14', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID59', 'NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50', 'StTTCroix', 'NodeID22', 'Martinique'], False), PathReq(Protocols.OSPF, "Martinique", ['NodeID14', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID59', 'NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Martinique'], False)], False),
]

edges_cost_kconnected_1_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_order_1_2 = [
    PathOrderReq(Protocols.OSPF, 'Martinique', [PathReq(Protocols.OSPF, "Martinique", ['Dominica', 'Martinique'], False), PathReq(Protocols.OSPF, "Martinique", ['Dominica', 'StTTKittsTT&TTNevis', 'StTTMartin', 'NodeID8', 'StTTCroix', 'NodeID22', 'Martinique'], False)], False),
]

edges_cost_order_1_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_simple_2 = [
    PathReq(Protocols.OSPF, "NodeID69", ['NodeID13', 'NodeID29', 'NodeID67', 'Honduras', 'NodeID60', 'NodeID69'], False),
    PathReq(Protocols.OSPF, "StTTCroix", ['NodeID13', 'NodeID31', 'NodeID44', 'NodeID59', 'NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50', 'StTTCroix'], False),
]

edges_cost_simple_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

####################

reqs_ecmp_2_2 = [
    ECMPPathsReq(Protocols.OSPF, 'Honduras', [PathReq(Protocols.OSPF, "Honduras", ['Bonaire', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'NodeID0', 'NodeID27', 'NodeID9', 'NodeID46', 'NodeID29', 'NodeID67', 'Honduras'], False), PathReq(Protocols.OSPF, "Honduras", ['Bonaire', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'NodeID34', 'Panama', 'CostaTTRica', 'Nicaragua', 'NodeID69', 'NodeID60', 'Honduras'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID15', [PathReq(Protocols.OSPF, "NodeID15", ['Bonaire', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'Columbia', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID26', 'NodeID15'], False), PathReq(Protocols.OSPF, "NodeID15", ['Bonaire', 'Curacao', 'PuertoTTRico', 'NodeID56', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26', 'NodeID15'], False)], False),
]

edges_cost_ecmp_2_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_kconnected_2_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'Honduras', [PathReq(Protocols.OSPF, "Honduras", ['Bonaire', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'NodeID0', 'NodeID27', 'NodeID9', 'NodeID46', 'NodeID29', 'NodeID67', 'Honduras'], False), PathReq(Protocols.OSPF, "Honduras", ['Bonaire', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'NodeID34', 'Panama', 'CostaTTRica', 'Nicaragua', 'NodeID69', 'NodeID60', 'Honduras'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID15', [PathReq(Protocols.OSPF, "NodeID15", ['Bonaire', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'Columbia', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID26', 'NodeID15'], False), PathReq(Protocols.OSPF, "NodeID15", ['Bonaire', 'Curacao', 'PuertoTTRico', 'NodeID56', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26', 'NodeID15'], False)], False),
]

edges_cost_kconnected_2_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_order_2_2 = [
    PathOrderReq(Protocols.OSPF, 'Grenada', [PathReq(Protocols.OSPF, "Grenada", ['TrinidadTTandTTTobago', 'Grenada'], False), PathReq(Protocols.OSPF, "Grenada", ['TrinidadTTandTTTobago', 'StTTVincent', 'Curacao', 'PuertoTTRico', 'NodeID50', 'StTTCroix', 'NodeID22', 'NodeID24', 'Grenada'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID49', [PathReq(Protocols.OSPF, "NodeID49", ['NodeID45', 'NodeID49'], False), PathReq(Protocols.OSPF, "NodeID49", ['NodeID45', 'NodeID33', 'NodeID49'], False)], False),
]

edges_cost_order_2_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_simple_4 = [
    PathReq(Protocols.OSPF, "NodeID60", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'Honduras', 'NodeID60'], False),
    PathReq(Protocols.OSPF, "CostaTTRica", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID46', 'NodeID9', 'CostaTTRica'], False),
    PathReq(Protocols.OSPF, "Bonaire", ['NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'Curacao', 'Bonaire'], False),
    PathReq(Protocols.OSPF, "StTTCroix", ['NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50', 'StTTCroix'], False),
]

edges_cost_simple_4 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

####################

reqs_ecmp_4_2 = [
    ECMPPathsReq(Protocols.OSPF, 'CostaTTRica', [PathReq(Protocols.OSPF, "CostaTTRica", ['Martinique', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'NodeID34', 'Panama', 'CostaTTRica'], False), PathReq(Protocols.OSPF, "CostaTTRica", ['Martinique', 'Dominica', 'StTTKittsTT&TTNevis', 'StTTMartin', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'NodeID34', 'Panama', 'CostaTTRica'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Antigua', [PathReq(Protocols.OSPF, "Antigua", ['Martinique', 'Dominica', 'StTTKittsTT&TTNevis', 'Antigua'], False), PathReq(Protocols.OSPF, "Antigua", ['Martinique', 'Dominica', 'Guadeloupe', 'Antigua'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Curacao', [PathReq(Protocols.OSPF, "Curacao", ['Martinique', 'Dominica', 'StTTKittsTT&TTNevis', 'StTTMartin', 'PuertoTTRico', 'Curacao'], False), PathReq(Protocols.OSPF, "Curacao", ['Martinique', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'Curacao'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID7', [PathReq(Protocols.OSPF, "NodeID7", ['Martinique', 'Dominica', 'StTTKittsTT&TTNevis', 'StTTMartin', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7'], False), PathReq(Protocols.OSPF, "NodeID7", ['Martinique', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7'], False)], False),
]

edges_cost_ecmp_4_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_kconnected_4_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'CostaTTRica', [PathReq(Protocols.OSPF, "CostaTTRica", ['Martinique', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'NodeID34', 'Panama', 'CostaTTRica'], False), PathReq(Protocols.OSPF, "CostaTTRica", ['Martinique', 'Dominica', 'StTTKittsTT&TTNevis', 'StTTMartin', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'NodeID34', 'Panama', 'CostaTTRica'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Antigua', [PathReq(Protocols.OSPF, "Antigua", ['Martinique', 'Dominica', 'StTTKittsTT&TTNevis', 'Antigua'], False), PathReq(Protocols.OSPF, "Antigua", ['Martinique', 'Dominica', 'Guadeloupe', 'Antigua'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Curacao', [PathReq(Protocols.OSPF, "Curacao", ['Martinique', 'Dominica', 'StTTKittsTT&TTNevis', 'StTTMartin', 'PuertoTTRico', 'Curacao'], False), PathReq(Protocols.OSPF, "Curacao", ['Martinique', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'Curacao'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID7', [PathReq(Protocols.OSPF, "NodeID7", ['Martinique', 'Dominica', 'StTTKittsTT&TTNevis', 'StTTMartin', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7'], False), PathReq(Protocols.OSPF, "NodeID7", ['Martinique', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7'], False)], False),
]

edges_cost_kconnected_4_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_order_4_2 = [
    PathOrderReq(Protocols.OSPF, 'TrinidadTTandTTTobago', [PathReq(Protocols.OSPF, "TrinidadTTandTTTobago", ['StTTVincent', 'TrinidadTTandTTTobago'], False), PathReq(Protocols.OSPF, "TrinidadTTandTTTobago", ['StTTVincent', 'Curacao', 'PuertoTTRico', 'NodeID50', 'StTTCroix', 'NodeID22', 'NodeID24', 'Grenada', 'TrinidadTTandTTTobago'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Grenada', [PathReq(Protocols.OSPF, "Grenada", ['NodeID24', 'Grenada'], False), PathReq(Protocols.OSPF, "Grenada", ['NodeID24', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'Curacao', 'StTTVincent', 'TrinidadTTandTTTobago', 'Grenada'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID22', [PathReq(Protocols.OSPF, "NodeID22", ['StTTCroix', 'NodeID22'], False), PathReq(Protocols.OSPF, "NodeID22", ['StTTCroix', 'NodeID8', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Martinique', 'NodeID22'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID9', [PathReq(Protocols.OSPF, "NodeID9", ['NodeID46', 'NodeID9'], False), PathReq(Protocols.OSPF, "NodeID9", ['NodeID46', 'NodeID29', 'NodeID67', 'Honduras', 'NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'NodeID9'], False)], False),
]

edges_cost_order_4_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_simple_8 = [
    PathReq(Protocols.OSPF, "NodeID39", ['NodeID27', 'NodeID0', 'NodeID1', 'Columbia', 'NodeID38', 'NodeID41', 'Jamaica', 'NodeID39'], False),
    PathReq(Protocols.OSPF, "NodeID29", ['NodeID27', 'NodeID9', 'NodeID46', 'NodeID29'], False),
    PathReq(Protocols.OSPF, "NodeID60", ['NodeID27', 'Panama', 'CostaTTRica', 'Nicaragua', 'NodeID69', 'NodeID60'], False),
    PathReq(Protocols.OSPF, "Venezuela", ['NodeID27', 'NodeID0', 'NodeID1', 'NodeID7', 'Venezuela'], False),
    PathReq(Protocols.OSPF, "Bonaire", ['NodeID27', 'NodeID0', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'Bonaire'], False),
    PathReq(Protocols.OSPF, "Martinique", ['NodeID27', 'NodeID0', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Martinique'], False),
    PathReq(Protocols.OSPF, "NodeID33", ['NodeID27', 'NodeID0', 'NodeID1', 'Columbia', 'NodeID38', 'USA', 'NodeID33'], False),
    PathReq(Protocols.OSPF, "TrinidadTTandTTTobago", ['NodeID27', 'NodeID0', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'StTTVincent', 'TrinidadTTandTTTobago'], False),
]

edges_cost_simple_8 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 2),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 2),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

####################

reqs_ecmp_8_2 = [
    ECMPPathsReq(Protocols.OSPF, 'NodeID27', [PathReq(Protocols.OSPF, "NodeID27", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID27'], False), PathReq(Protocols.OSPF, "NodeID27", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'NodeID9', 'NodeID27'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID8', [PathReq(Protocols.OSPF, "NodeID8", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID50', 'NodeID8'], False), PathReq(Protocols.OSPF, "NodeID8", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'NodeID8'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID0', [PathReq(Protocols.OSPF, "NodeID0", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'NodeID9', 'NodeID27', 'NodeID0'], False), PathReq(Protocols.OSPF, "NodeID0", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID27', 'NodeID0'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Martinique', [PathReq(Protocols.OSPF, "Martinique", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID50', 'StTTCroix', 'NodeID22', 'Martinique'], False), PathReq(Protocols.OSPF, "Martinique", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Martinique'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID45', [PathReq(Protocols.OSPF, "NodeID45", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID49', 'NodeID45'], False), PathReq(Protocols.OSPF, "NodeID45", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID45'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID56', [PathReq(Protocols.OSPF, "NodeID56", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID59', 'NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56'], False), PathReq(Protocols.OSPF, "NodeID56", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID56'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Bahamas', [PathReq(Protocols.OSPF, "Bahamas", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID45', 'Bahamas'], False), PathReq(Protocols.OSPF, "Bahamas", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID49', 'NodeID45', 'Bahamas'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Guadeloupe', [PathReq(Protocols.OSPF, "Guadeloupe", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Antigua', 'Guadeloupe'], False), PathReq(Protocols.OSPF, "Guadeloupe", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Guadeloupe'], False)], False),
]

edges_cost_ecmp_8_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 2),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 2),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_kconnected_8_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'NodeID27', [PathReq(Protocols.OSPF, "NodeID27", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID27'], False), PathReq(Protocols.OSPF, "NodeID27", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'NodeID9', 'NodeID27'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID8', [PathReq(Protocols.OSPF, "NodeID8", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID50', 'NodeID8'], False), PathReq(Protocols.OSPF, "NodeID8", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'NodeID8'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID0', [PathReq(Protocols.OSPF, "NodeID0", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'NodeID9', 'NodeID27', 'NodeID0'], False), PathReq(Protocols.OSPF, "NodeID0", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID27', 'NodeID0'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Martinique', [PathReq(Protocols.OSPF, "Martinique", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID50', 'StTTCroix', 'NodeID22', 'Martinique'], False), PathReq(Protocols.OSPF, "Martinique", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Martinique'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID45', [PathReq(Protocols.OSPF, "NodeID45", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID49', 'NodeID45'], False), PathReq(Protocols.OSPF, "NodeID45", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID45'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID56', [PathReq(Protocols.OSPF, "NodeID56", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID59', 'NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56'], False), PathReq(Protocols.OSPF, "NodeID56", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID56'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Bahamas', [PathReq(Protocols.OSPF, "Bahamas", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID44', 'NodeID45', 'Bahamas'], False), PathReq(Protocols.OSPF, "Bahamas", ['NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31', 'NodeID49', 'NodeID45', 'Bahamas'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Guadeloupe', [PathReq(Protocols.OSPF, "Guadeloupe", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Antigua', 'Guadeloupe'], False), PathReq(Protocols.OSPF, "Guadeloupe", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'Panama', 'NodeID34', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Guadeloupe'], False)], False),
]

edges_cost_kconnected_8_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 2),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 2),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_order_8_2 = [
    PathOrderReq(Protocols.OSPF, 'NodeID17', [PathReq(Protocols.OSPF, "NodeID17", ['TurksTTandTTCaicos', 'NodeID17'], False), PathReq(Protocols.OSPF, "NodeID17", ['TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7', 'NodeID1', 'Columbia', 'NodeID38', 'USA', 'NodeID33', 'NodeID45', 'NodeID44', 'NodeID59', 'NodeID58', 'NodeID17'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID38', [PathReq(Protocols.OSPF, "NodeID38", ['Columbia', 'NodeID38'], False), PathReq(Protocols.OSPF, "NodeID38", ['Columbia', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID56', 'DominicanTTRepublic', 'NodeID39', 'Jamaica', 'NodeID41', 'NodeID38'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Honduras', [PathReq(Protocols.OSPF, "Honduras", ['NodeID60', 'Honduras'], False), PathReq(Protocols.OSPF, "Honduras", ['NodeID60', 'NodeID69', 'Nicaragua', 'CostaTTRica', 'NodeID9', 'NodeID46', 'NodeID29', 'NodeID67', 'Honduras'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID8', [PathReq(Protocols.OSPF, "NodeID8", ['StTTMartin', 'NodeID8'], False), PathReq(Protocols.OSPF, "NodeID8", ['StTTMartin', 'PuertoTTRico', 'NodeID50', 'NodeID8'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID50', [PathReq(Protocols.OSPF, "NodeID50", ['NodeID8', 'NodeID50'], False), PathReq(Protocols.OSPF, "NodeID50", ['NodeID8', 'StTTCroix', 'NodeID50'], False)], False),
    PathOrderReq(Protocols.OSPF, 'StTTMartin', [PathReq(Protocols.OSPF, "StTTMartin", ['StTTKittsTT&TTNevis', 'StTTMartin'], False), PathReq(Protocols.OSPF, "StTTMartin", ['StTTKittsTT&TTNevis', 'Dominica', 'Martinique', 'NodeID22', 'StTTCroix', 'NodeID50', 'NodeID8', 'StTTMartin'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Martinique', [PathReq(Protocols.OSPF, "Martinique", ['Dominica', 'Martinique'], False), PathReq(Protocols.OSPF, "Martinique", ['Dominica', 'StTTKittsTT&TTNevis', 'StTTMartin', 'NodeID8', 'NodeID50', 'StTTCroix', 'NodeID22', 'Martinique'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID46', [PathReq(Protocols.OSPF, "NodeID46", ['NodeID9', 'NodeID46'], False), PathReq(Protocols.OSPF, "NodeID46", ['NodeID9', 'CostaTTRica', 'Nicaragua', 'NodeID69', 'NodeID60', 'Honduras', 'NodeID67', 'NodeID29', 'NodeID46'], False)], False),
]

edges_cost_order_8_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 6),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 5),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 2),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 2),
    ("Bahamas", "NodeID59", 2),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 3),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 3),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 2),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 5),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 6),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 2),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 2),
    ("NodeID8", "StTTCroix", 3),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_simple_16 = [
    PathReq(Protocols.OSPF, "NodeID45", ['NodeID58', 'NodeID59', 'Bahamas', 'NodeID45'], False),
    PathReq(Protocols.OSPF, "NodeID31", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31'], False),
    PathReq(Protocols.OSPF, "NodeID69", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'Honduras', 'NodeID60', 'NodeID69'], False),
    PathReq(Protocols.OSPF, "ElTTSalvador", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63', 'ElTTSalvador'], False),
    PathReq(Protocols.OSPF, "Honduras", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'Honduras'], False),
    PathReq(Protocols.OSPF, "Mexico", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26', 'NodeID15', 'Mexico'], False),
    PathReq(Protocols.OSPF, "NodeID17", ['NodeID58', 'NodeID17'], False),
    PathReq(Protocols.OSPF, "NodeID27", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID46', 'NodeID9', 'NodeID27'], False),
    PathReq(Protocols.OSPF, "NodeID50", ['NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50'], False),
    PathReq(Protocols.OSPF, "NodeID7", ['NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7'], False),
    PathReq(Protocols.OSPF, "StTTKittsTT&TTNevis", ['NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis'], False),
    PathReq(Protocols.OSPF, "Dominica", ['NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica'], False),
    PathReq(Protocols.OSPF, "CaymanTTIslands", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID46', 'CaymanTTIslands'], False),
    PathReq(Protocols.OSPF, "NodeID28", ['NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28'], False),
    PathReq(Protocols.OSPF, "Suriname", ['NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'Curacao', 'StTTVincent', 'TrinidadTTandTTTobago', 'NodeID35', 'Suriname'], False),
    PathReq(Protocols.OSPF, "PuertoTTRico", ['NodeID58', 'NodeID17', 'TurksTTandTTCaicos', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico'], False),
]

edges_cost_simple_16 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 2),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

####################

reqs_ecmp_16_2 = [
    ECMPPathsReq(Protocols.OSPF, 'NodeID31', [PathReq(Protocols.OSPF, "NodeID31", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31'], False), PathReq(Protocols.OSPF, "NodeID31", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID67', [PathReq(Protocols.OSPF, "NodeID67", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67'], False), PathReq(Protocols.OSPF, "NodeID67", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'ElTTSalvador', [PathReq(Protocols.OSPF, "ElTTSalvador", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63', 'ElTTSalvador'], False), PathReq(Protocols.OSPF, "ElTTSalvador", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63', 'ElTTSalvador'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID14', [PathReq(Protocols.OSPF, "NodeID14", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID14'], False), PathReq(Protocols.OSPF, "NodeID14", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID14'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Belize', [PathReq(Protocols.OSPF, "Belize", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26', 'NodeID15', 'Mexico', 'Belize'], False), PathReq(Protocols.OSPF, "Belize", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID26', 'NodeID15', 'Mexico', 'Belize'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID15', [PathReq(Protocols.OSPF, "NodeID15", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26', 'NodeID15'], False), PathReq(Protocols.OSPF, "NodeID15", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID26', 'NodeID15'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID63', [PathReq(Protocols.OSPF, "NodeID63", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63'], False), PathReq(Protocols.OSPF, "NodeID63", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Guatemala', [PathReq(Protocols.OSPF, "Guatemala", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala'], False), PathReq(Protocols.OSPF, "Guatemala", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID26', [PathReq(Protocols.OSPF, "NodeID26", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID26'], False), PathReq(Protocols.OSPF, "NodeID26", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Honduras', [PathReq(Protocols.OSPF, "Honduras", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'Honduras'], False), PathReq(Protocols.OSPF, "Honduras", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'Honduras'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID8', [PathReq(Protocols.OSPF, "NodeID8", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50', 'NodeID8'], False), PathReq(Protocols.OSPF, "NodeID8", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'NodeID8'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Guadeloupe', [PathReq(Protocols.OSPF, "Guadeloupe", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Guadeloupe'], False), PathReq(Protocols.OSPF, "Guadeloupe", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Antigua', 'Guadeloupe'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID7', [PathReq(Protocols.OSPF, "NodeID7", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'Columbia', 'NodeID1', 'NodeID7'], False), PathReq(Protocols.OSPF, "NodeID7", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID29', [PathReq(Protocols.OSPF, "NodeID29", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29'], False), PathReq(Protocols.OSPF, "NodeID29", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Martinique', [PathReq(Protocols.OSPF, "Martinique", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50', 'StTTCroix', 'NodeID22', 'Martinique'], False), PathReq(Protocols.OSPF, "Martinique", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Martinique'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'NodeID28', [PathReq(Protocols.OSPF, "NodeID28", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28'], False), PathReq(Protocols.OSPF, "NodeID28", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28'], False)], False),
]

edges_cost_ecmp_16_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_kconnected_16_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'NodeID31', [PathReq(Protocols.OSPF, "NodeID31", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31'], False), PathReq(Protocols.OSPF, "NodeID31", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID67', [PathReq(Protocols.OSPF, "NodeID67", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67'], False), PathReq(Protocols.OSPF, "NodeID67", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'ElTTSalvador', [PathReq(Protocols.OSPF, "ElTTSalvador", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63', 'ElTTSalvador'], False), PathReq(Protocols.OSPF, "ElTTSalvador", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63', 'ElTTSalvador'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID14', [PathReq(Protocols.OSPF, "NodeID14", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID14'], False), PathReq(Protocols.OSPF, "NodeID14", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID14'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Belize', [PathReq(Protocols.OSPF, "Belize", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26', 'NodeID15', 'Mexico', 'Belize'], False), PathReq(Protocols.OSPF, "Belize", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID26', 'NodeID15', 'Mexico', 'Belize'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID15', [PathReq(Protocols.OSPF, "NodeID15", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26', 'NodeID15'], False), PathReq(Protocols.OSPF, "NodeID15", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID26', 'NodeID15'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID63', [PathReq(Protocols.OSPF, "NodeID63", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63'], False), PathReq(Protocols.OSPF, "NodeID63", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala', 'NodeID63'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Guatemala', [PathReq(Protocols.OSPF, "Guatemala", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala'], False), PathReq(Protocols.OSPF, "Guatemala", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28', 'Guatemala'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID26', [PathReq(Protocols.OSPF, "NodeID26", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID26'], False), PathReq(Protocols.OSPF, "NodeID26", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID26'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Honduras', [PathReq(Protocols.OSPF, "Honduras", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'Honduras'], False), PathReq(Protocols.OSPF, "Honduras", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'Honduras'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID8', [PathReq(Protocols.OSPF, "NodeID8", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50', 'NodeID8'], False), PathReq(Protocols.OSPF, "NodeID8", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'NodeID8'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Guadeloupe', [PathReq(Protocols.OSPF, "Guadeloupe", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Guadeloupe'], False), PathReq(Protocols.OSPF, "Guadeloupe", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Antigua', 'Guadeloupe'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID7', [PathReq(Protocols.OSPF, "NodeID7", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'Columbia', 'NodeID1', 'NodeID7'], False), PathReq(Protocols.OSPF, "NodeID7", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'Curacao', 'Venezuela', 'NodeID7'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID29', [PathReq(Protocols.OSPF, "NodeID29", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29'], False), PathReq(Protocols.OSPF, "NodeID29", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Martinique', [PathReq(Protocols.OSPF, "Martinique", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'NodeID50', 'StTTCroix', 'NodeID22', 'Martinique'], False), PathReq(Protocols.OSPF, "Martinique", ['NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'StTTMartin', 'StTTKittsTT&TTNevis', 'Dominica', 'Martinique'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'NodeID28', [PathReq(Protocols.OSPF, "NodeID28", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'USA', 'NodeID33', 'NodeID49', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28'], False), PathReq(Protocols.OSPF, "NodeID28", ['NodeID39', 'DominicanTTRepublic', 'TurksTTandTTCaicos', 'NodeID17', 'NodeID58', 'NodeID59', 'NodeID44', 'NodeID31', 'NodeID13', 'NodeID29', 'NodeID67', 'NodeID28'], False)], False),
]

edges_cost_kconnected_16_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 1),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 1),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 1),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 1),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

reqs_order_16_2 = [
    PathOrderReq(Protocols.OSPF, 'NodeID39', [PathReq(Protocols.OSPF, "NodeID39", ['Jamaica', 'NodeID39'], False), PathReq(Protocols.OSPF, "NodeID39", ['Jamaica', 'NodeID41', 'NodeID38', 'Columbia', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID56', 'DominicanTTRepublic', 'NodeID39'], False)], False),
    PathOrderReq(Protocols.OSPF, 'StTTMartin', [PathReq(Protocols.OSPF, "StTTMartin", ['StTTKittsTT&TTNevis', 'StTTMartin'], False), PathReq(Protocols.OSPF, "StTTMartin", ['StTTKittsTT&TTNevis', 'Dominica', 'Martinique', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'StTTMartin'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID45', [PathReq(Protocols.OSPF, "NodeID45", ['NodeID49', 'NodeID45'], False), PathReq(Protocols.OSPF, "NodeID45", ['NodeID49', 'NodeID33', 'NodeID45'], False)], False),
    PathOrderReq(Protocols.OSPF, 'DominicanTTRepublic', [PathReq(Protocols.OSPF, "DominicanTTRepublic", ['NodeID39', 'DominicanTTRepublic'], False), PathReq(Protocols.OSPF, "DominicanTTRepublic", ['NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'Columbia', 'NodeID1', 'NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID56', 'DominicanTTRepublic'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Curacao', [PathReq(Protocols.OSPF, "Curacao", ['Venezuela', 'Curacao'], False), PathReq(Protocols.OSPF, "Curacao", ['Venezuela', 'NodeID7', 'NodeID1', 'Columbia', 'NodeID38', 'NodeID41', 'Jamaica', 'NodeID39', 'DominicanTTRepublic', 'NodeID56', 'PuertoTTRico', 'Curacao'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID46', [PathReq(Protocols.OSPF, "NodeID46", ['NodeID29', 'NodeID46'], False), PathReq(Protocols.OSPF, "NodeID46", ['NodeID29', 'NodeID13', 'NodeID31', 'NodeID49', 'NodeID33', 'USA', 'NodeID38', 'Columbia', 'NodeID1', 'NodeID0', 'NodeID27', 'NodeID9', 'NodeID46'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID13', [PathReq(Protocols.OSPF, "NodeID13", ['NodeID31', 'NodeID13'], False), PathReq(Protocols.OSPF, "NodeID13", ['NodeID31', 'NodeID26', 'NodeID15', 'Mexico', 'Belize', 'NodeID28', 'NodeID67', 'NodeID29', 'NodeID13'], False)], False),
    PathOrderReq(Protocols.OSPF, 'StTTCroix', [PathReq(Protocols.OSPF, "StTTCroix", ['NodeID50', 'StTTCroix'], False), PathReq(Protocols.OSPF, "StTTCroix", ['NodeID50', 'NodeID8', 'StTTCroix'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID1', [PathReq(Protocols.OSPF, "NodeID1", ['NodeID7', 'NodeID1'], False), PathReq(Protocols.OSPF, "NodeID1", ['NodeID7', 'Venezuela', 'Curacao', 'PuertoTTRico', 'NodeID56', 'DominicanTTRepublic', 'NodeID39', 'Jamaica', 'NodeID41', 'NodeID38', 'Columbia', 'NodeID1'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID69', [PathReq(Protocols.OSPF, "NodeID69", ['Nicaragua', 'NodeID69'], False), PathReq(Protocols.OSPF, "NodeID69", ['Nicaragua', 'CostaTTRica', 'NodeID9', 'NodeID46', 'NodeID29', 'NodeID67', 'Honduras', 'NodeID60', 'NodeID69'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID13', [PathReq(Protocols.OSPF, "NodeID13", ['NodeID29', 'NodeID13'], False), PathReq(Protocols.OSPF, "NodeID13", ['NodeID29', 'NodeID67', 'NodeID28', 'Belize', 'Mexico', 'NodeID15', 'NodeID26', 'NodeID31', 'NodeID13'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID1', [PathReq(Protocols.OSPF, "NodeID1", ['NodeID34', 'NodeID1'], False), PathReq(Protocols.OSPF, "NodeID1", ['NodeID34', 'Panama', 'NodeID27', 'NodeID0', 'NodeID1'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Panama', [PathReq(Protocols.OSPF, "Panama", ['CostaTTRica', 'Panama'], False), PathReq(Protocols.OSPF, "Panama", ['CostaTTRica', 'NodeID9', 'NodeID27', 'Panama'], False)], False),
    PathOrderReq(Protocols.OSPF, 'StTTVincent', [PathReq(Protocols.OSPF, "StTTVincent", ['TrinidadTTandTTTobago', 'StTTVincent'], False), PathReq(Protocols.OSPF, "StTTVincent", ['TrinidadTTandTTTobago', 'Grenada', 'NodeID24', 'NodeID22', 'StTTCroix', 'NodeID50', 'PuertoTTRico', 'Curacao', 'StTTVincent'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID31', [PathReq(Protocols.OSPF, "NodeID31", ['NodeID26', 'NodeID31'], False), PathReq(Protocols.OSPF, "NodeID31", ['NodeID26', 'NodeID15', 'Mexico', 'Belize', 'NodeID28', 'NodeID67', 'NodeID29', 'NodeID13', 'NodeID31'], False)], False),
    PathOrderReq(Protocols.OSPF, 'NodeID44', [PathReq(Protocols.OSPF, "NodeID44", ['NodeID32', 'NodeID44'], False), PathReq(Protocols.OSPF, "NodeID44", ['NodeID32', 'NodeID59', 'NodeID44'], False)], False),
]

edges_cost_order_16_2 = [
    ("NodeID13", "NodeID29", 1),
    ("NodeID13", "NodeID14", 1),
    ("NodeID13", "NodeID31", 1),
    ("NodeID41", "Jamaica", 1),
    ("NodeID41", "NodeID38", 1),
    ("USA", "NodeID33", 1),
    ("USA", "NodeID38", 1),
    ("NodeID22", "StTTCroix", 1),
    ("NodeID22", "NodeID24", 1),
    ("NodeID22", "Barbados", 1),
    ("NodeID22", "Martinique", 1),
    ("NodeID58", "NodeID59", 1),
    ("NodeID58", "NodeID17", 1),
    ("Panama", "NodeID34", 1),
    ("Panama", "CostaTTRica", 1),
    ("Panama", "NodeID27", 1),
    ("Guyana", "NodeID35", 1),
    ("NodeID59", "Bahamas", 1),
    ("NodeID59", "NodeID58", 1),
    ("NodeID59", "NodeID44", 1),
    ("NodeID59", "NodeID32", 1),
    ("Bahamas", "NodeID45", 1),
    ("Bahamas", "NodeID59", 1),
    ("DominicanTTRepublic", "NodeID56", 1),
    ("DominicanTTRepublic", "TurksTTandTTCaicos", 1),
    ("DominicanTTRepublic", "NodeID39", 1),
    ("StTTCroix", "NodeID22", 1),
    ("StTTCroix", "NodeID50", 1),
    ("StTTCroix", "NodeID8", 3),
    ("Suriname", "NodeID35", 1),
    ("PuertoTTRico", "StTTMartin", 1),
    ("PuertoTTRico", "NodeID56", 1),
    ("PuertoTTRico", "NodeID50", 1),
    ("PuertoTTRico", "Curacao", 1),
    ("NodeID31", "NodeID13", 1),
    ("NodeID31", "NodeID44", 1),
    ("NodeID31", "NodeID49", 1),
    ("NodeID31", "NodeID26", 1),
    ("CostaTTRica", "Panama", 1),
    ("CostaTTRica", "Nicaragua", 1),
    ("CostaTTRica", "NodeID9", 1),
    ("Ecuador", "NodeID37", 1),
    ("Curacao", "StTTVincent", 1),
    ("Curacao", "Bonaire", 1),
    ("Curacao", "Venezuela", 1),
    ("Curacao", "PuertoTTRico", 1),
    ("StTTVincent", "TrinidadTTandTTTobago", 1),
    ("StTTVincent", "Curacao", 1),
    ("NodeID56", "DominicanTTRepublic", 1),
    ("NodeID56", "PuertoTTRico", 1),
    ("Columbia", "NodeID38", 3),
    ("Columbia", "NodeID1", 1),
    ("NodeID38", "Columbia", 1),
    ("NodeID38", "NodeID41", 1),
    ("NodeID38", "USA", 1),
    ("NodeID39", "Jamaica", 1),
    ("NodeID39", "DominicanTTRepublic", 1),
    ("Venezuela", "NodeID7", 1),
    ("Venezuela", "Curacao", 1),
    ("NodeID34", "Panama", 1),
    ("NodeID34", "NodeID1", 1),
    ("NodeID35", "TrinidadTTandTTTobago", 1),
    ("NodeID35", "Suriname", 1),
    ("NodeID35", "Guyana", 1),
    ("NodeID32", "NodeID44", 1),
    ("NodeID32", "NodeID59", 1),
    ("NodeID15", "Mexico", 1),
    ("NodeID15", "NodeID26", 1),
    ("NodeID17", "NodeID58", 1),
    ("NodeID17", "TurksTTandTTCaicos", 1),
    ("NodeID7", "Venezuela", 1),
    ("NodeID7", "NodeID1", 1),
    ("Guatemala", "NodeID28", 1),
    ("Guatemala", "NodeID63", 1),
    ("NodeID0", "NodeID27", 1),
    ("NodeID0", "NodeID1", 1),
    ("Martinique", "NodeID22", 1),
    ("Martinique", "Dominica", 1),
    ("Belize", "NodeID28", 1),
    ("Belize", "Mexico", 1),
    ("Dominica", "Guadeloupe", 1),
    ("Dominica", "StTTKittsTT&TTNevis", 1),
    ("Dominica", "Martinique", 1),
    ("NodeID9", "NodeID46", 1),
    ("NodeID9", "CostaTTRica", 1),
    ("NodeID9", "NodeID27", 1),
    ("NodeID50", "StTTCroix", 1),
    ("NodeID50", "PuertoTTRico", 1),
    ("NodeID50", "NodeID8", 2),
    ("NodeID46", "NodeID29", 1),
    ("NodeID46", "CaymanTTIslands", 1),
    ("NodeID46", "NodeID9", 1),
    ("CaymanTTIslands", "NodeID46", 1),
    ("NodeID1", "NodeID37", 1),
    ("NodeID1", "NodeID34", 1),
    ("NodeID1", "Columbia", 1),
    ("NodeID1", "NodeID0", 1),
    ("NodeID1", "NodeID7", 1),
    ("NodeID45", "Bahamas", 1),
    ("NodeID45", "NodeID44", 1),
    ("NodeID45", "NodeID33", 1),
    ("NodeID45", "NodeID49", 1),
    ("TrinidadTTandTTTobago", "Grenada", 1),
    ("TrinidadTTandTTTobago", "NodeID35", 1),
    ("TrinidadTTandTTTobago", "StTTVincent", 1),
    ("Bonaire", "Curacao", 1),
    ("NodeID69", "Nicaragua", 1),
    ("NodeID69", "NodeID60", 1),
    ("Antigua", "Guadeloupe", 1),
    ("Antigua", "StTTKittsTT&TTNevis", 1),
    ("Jamaica", "NodeID41", 1),
    ("Jamaica", "NodeID39", 1),
    ("Grenada", "TrinidadTTandTTTobago", 1),
    ("Grenada", "NodeID24", 1),
    ("NodeID67", "NodeID29", 1),
    ("NodeID67", "NodeID28", 1),
    ("NodeID67", "Honduras", 1),
    ("Guadeloupe", "Antigua", 1),
    ("Guadeloupe", "Dominica", 1),
    ("NodeID33", "NodeID45", 1),
    ("NodeID33", "USA", 1),
    ("NodeID33", "NodeID49", 1),
    ("NodeID60", "NodeID69", 1),
    ("NodeID60", "Honduras", 1),
    ("NodeID63", "ElTTSalvador", 1),
    ("NodeID63", "Guatemala", 1),
    ("NodeID63", "NodeID62", 1),
    ("NodeID62", "NodeID63", 1),
    ("ElTTSalvador", "NodeID63", 1),
    ("StTTMartin", "PuertoTTRico", 1),
    ("StTTMartin", "NodeID8", 1),
    ("StTTMartin", "StTTKittsTT&TTNevis", 1),
    ("NodeID44", "NodeID45", 1),
    ("NodeID44", "NodeID32", 1),
    ("NodeID44", "NodeID59", 1),
    ("NodeID44", "NodeID31", 1),
    ("Honduras", "NodeID67", 1),
    ("Honduras", "NodeID60", 1),
    ("NodeID24", "Grenada", 1),
    ("NodeID24", "NodeID22", 1),
    ("NodeID27", "Panama", 1),
    ("NodeID27", "NodeID0", 1),
    ("NodeID27", "NodeID9", 1),
    ("NodeID26", "NodeID15", 1),
    ("NodeID26", "NodeID31", 1),
    ("NodeID29", "NodeID46", 1),
    ("NodeID29", "NodeID67", 6),
    ("NodeID29", "NodeID13", 1),
    ("NodeID28", "Guatemala", 1),
    ("NodeID28", "Belize", 1),
    ("NodeID28", "NodeID67", 1),
    ("Mexico", "Belize", 1),
    ("Mexico", "NodeID15", 1),
    ("NodeID49", "NodeID45", 1),
    ("NodeID49", "NodeID33", 1),
    ("NodeID49", "NodeID31", 1),
    ("NodeID14", "NodeID13", 1),
    ("TurksTTandTTCaicos", "DominicanTTRepublic", 1),
    ("TurksTTandTTCaicos", "NodeID17", 1),
    ("NodeID8", "StTTMartin", 1),
    ("NodeID8", "StTTCroix", 1),
    ("NodeID8", "NodeID50", 1),
    ("NodeID37", "Ecuador", 1),
    ("NodeID37", "NodeID1", 1),
    ("Nicaragua", "CostaTTRica", 1),
    ("Nicaragua", "NodeID69", 1),
    ("StTTKittsTT&TTNevis", "StTTMartin", 1),
    ("StTTKittsTT&TTNevis", "Antigua", 1),
    ("StTTKittsTT&TTNevis", "Dominica", 1),
    ("Barbados", "NodeID22", 1),
]

####################

reqs_simple = [reqs_simple_1,reqs_simple_2,reqs_simple_4,reqs_simple_8,reqs_simple_16]

reqs_simple_vals = [edges_cost_simple_1,edges_cost_simple_2,edges_cost_simple_4,edges_cost_simple_8,edges_cost_simple_16]

####################

reqs_ecmp = [reqs_ecmp_1_2,reqs_ecmp_2_2,reqs_ecmp_4_2,reqs_ecmp_8_2,reqs_ecmp_16_2]

reqs_ecmp_vals = [edges_cost_ecmp_1_2,edges_cost_ecmp_2_2,edges_cost_ecmp_4_2,edges_cost_ecmp_8_2,edges_cost_ecmp_16_2]

####################

reqs_kconnected = [reqs_kconnected_1_2,reqs_kconnected_2_2,reqs_kconnected_4_2,reqs_kconnected_8_2,reqs_kconnected_16_2]

reqs_kconnected_vals = [edges_cost_kconnected_1_2,edges_cost_kconnected_2_2,edges_cost_kconnected_4_2,edges_cost_kconnected_8_2,edges_cost_kconnected_16_2]

####################

reqs_order = [reqs_order_1_2, reqs_order_2_2, reqs_order_4_2, reqs_order_8_2, reqs_order_16_2]

reqs_order_vals = [edges_cost_order_1_2, edges_cost_order_2_2, edges_cost_order_4_2, edges_cost_order_8_2, edges_cost_order_16_2]

####################

