
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/large/TataNld.graphml'
seed = 938865070
reqs_simple_1 = [
    PathReq(Protocols.OSPF, "Rewa", ['Fatehpur', 'Allahabad', 'Rewa'], False),
]

edges_cost_simple_1 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

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

reqs_ecmp_1_2 = [
    ECMPPathsReq(Protocols.OSPF, 'Sivakasi', [PathReq(Protocols.OSPF, "Sivakasi", ['Bhopal', 'Rajgarh', 'Indore', 'Jabalpur', 'Raipur', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Nellore', 'Tirupati', 'Kolar', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore', 'Sivakasi'], False), PathReq(Protocols.OSPF, "Sivakasi", ['Bhopal', 'Ujjain', 'Dhar', 'Khandwa', 'Jalgaon', 'Aurangabad', 'Nanded', 'Sangareddy', 'Hyderabad', 'Raichur', 'Torangallu', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore', 'Sivakasi'], False)], False),
]

edges_cost_ecmp_1_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 2),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 2),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 2),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_kconnected_1_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'Sivakasi', [PathReq(Protocols.OSPF, "Sivakasi", ['Bhopal', 'Rajgarh', 'Indore', 'Jabalpur', 'Raipur', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Nellore', 'Tirupati', 'Kolar', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore', 'Sivakasi'], False), PathReq(Protocols.OSPF, "Sivakasi", ['Bhopal', 'Ujjain', 'Dhar', 'Khandwa', 'Jalgaon', 'Aurangabad', 'Nanded', 'Sangareddy', 'Hyderabad', 'Raichur', 'Torangallu', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore', 'Sivakasi'], False)], False),
]

edges_cost_kconnected_1_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 2),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 2),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 2),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_order_1_2 = [
    PathOrderReq(Protocols.OSPF, 'Jalgaon', [PathReq(Protocols.OSPF, "Jalgaon", ['Surat', 'Jalgaon'], False), PathReq(Protocols.OSPF, "Jalgaon", ['Surat', 'Valsad', 'Mumbai', 'Nasik', 'Dhulia', 'Jalgaon'], False)], False),
]

edges_cost_order_1_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_simple_2 = [
    PathReq(Protocols.OSPF, "Jhansi", ['Ramanathapuram', 'Sivakasi', 'Trichy', 'Palladam', 'Chidambaram', 'Pondicherry', 'Kanchipuram', 'Tirupati', 'Nellore', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Satna', 'Jhansi'], False),
    PathReq(Protocols.OSPF, "Tirupur", ['Ramanathapuram', 'Sivakasi', 'Coimbatore', 'Tirupur'], False),
]

edges_cost_simple_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 2),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

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

reqs_ecmp_2_2 = [
    ECMPPathsReq(Protocols.OSPF, 'Rohtak', [PathReq(Protocols.OSPF, "Rohtak", ['Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Indore', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak'], False), PathReq(Protocols.OSPF, "Rohtak", ['Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Indore', 'Ujjain', 'Ratlam', 'Bhilwara', 'Tonk', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Satara', [PathReq(Protocols.OSPF, "Satara", ['Ongole', 'Vijayavada', 'Hyderabad', 'Gulbarga', 'Solapur', 'Ahmednagar', 'Pune', 'Satara'], False), PathReq(Protocols.OSPF, "Satara", ['Ongole', 'Vijayavada', 'Hyderabad', 'Gulbarga', 'Solapur', 'Belgaum', 'Kolhapur', 'Satara'], False)], False),
]

edges_cost_ecmp_2_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 3),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 2),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 2),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 3),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 2),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_kconnected_2_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'Rohtak', [PathReq(Protocols.OSPF, "Rohtak", ['Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Indore', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak'], False), PathReq(Protocols.OSPF, "Rohtak", ['Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Indore', 'Ujjain', 'Ratlam', 'Bhilwara', 'Tonk', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Satara', [PathReq(Protocols.OSPF, "Satara", ['Ongole', 'Vijayavada', 'Hyderabad', 'Gulbarga', 'Solapur', 'Ahmednagar', 'Pune', 'Satara'], False), PathReq(Protocols.OSPF, "Satara", ['Ongole', 'Vijayavada', 'Hyderabad', 'Gulbarga', 'Solapur', 'Belgaum', 'Kolhapur', 'Satara'], False)], False),
]

edges_cost_kconnected_2_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 3),
    ("Rajgarh", "Kota", 3),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 3),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 2),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 3),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_order_2_2 = [
    PathOrderReq(Protocols.OSPF, 'Thirussur', [PathReq(Protocols.OSPF, "Thirussur", ['Allepey', 'Thirussur'], False), PathReq(Protocols.OSPF, "Thirussur", ['Allepey', 'Coimbatore', 'Tirupur', 'Erode', 'Bangalore', 'NodeID70', 'NodeID118', 'Mangalore', 'Cannonore', 'Kozhikode', 'Palghat', 'Thirussur'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Sagar', [PathReq(Protocols.OSPF, "Sagar", ['Vidisha', 'Sagar'], False), PathReq(Protocols.OSPF, "Sagar", ['Vidisha', 'Indore', 'Rajgarh', 'Sagar'], False)], False),
]

edges_cost_order_2_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 2),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_simple_4 = [
    PathReq(Protocols.OSPF, "Nellore", ['Ranchi', 'Kolkata', 'Kharagpur', 'Bhubaneshwar', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Nellore'], False),
    PathReq(Protocols.OSPF, "Wardha", ['Ranchi', 'Hazaribagh', 'Bokaro', 'Jamshedpur', 'Rourkela', 'Raipur', 'Bhandara', 'Nagpur', 'Wardha'], False),
    PathReq(Protocols.OSPF, "Mangalore", ['Ranchi', 'Kolkata', 'Kharagpur', 'Bhubaneshwar', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Nellore', 'Tirupati', 'Kolar', 'Bangalore', 'NodeID70', 'NodeID118', 'Mangalore'], False),
    PathReq(Protocols.OSPF, "Raichur", ['Ranchi', 'Kolkata', 'Kharagpur', 'Bhubaneshwar', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Vijayavada', 'Hyderabad', 'Raichur'], False),
]

edges_cost_simple_4 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 2),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 2),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

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

reqs_ecmp_4_2 = [
    ECMPPathsReq(Protocols.OSPF, 'Mysore', [PathReq(Protocols.OSPF, "Mysore", ['Hubli', 'Goa', 'Mangalore', 'Callicut', 'Mysore'], False), PathReq(Protocols.OSPF, "Mysore", ['Hubli', 'Hassan', 'NodeID70', 'Bangalore', 'Mysore'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Kottayem', [PathReq(Protocols.OSPF, "Kottayem", ['Hubli', 'Hassan', 'NodeID70', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore', 'Allepey', 'Kottayem'], False), PathReq(Protocols.OSPF, "Kottayem", ['Hubli', 'Goa', 'Mangalore', 'Cannonore', 'Kozhikode', 'Palghat', 'Thirussur', 'Allepey', 'Kottayem'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Dehradun', [PathReq(Protocols.OSPF, "Dehradun", ['Hubli', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Jabalpur', 'Satna', 'Rewa', 'Allahabad', 'Fatehpur', 'Kanpur', 'Lucknow', 'Dehradun'], False), PathReq(Protocols.OSPF, "Dehradun", ['Hubli', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Gwalior', 'Jhansi', 'Allahabad', 'Fatehpur', 'Kanpur', 'Lucknow', 'Dehradun'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Valsad', [PathReq(Protocols.OSPF, "Valsad", ['Hubli', 'Belgaum', 'Solapur', 'Ahmednagar', 'Nasik', 'Mumbai', 'Valsad'], False), PathReq(Protocols.OSPF, "Valsad", ['Hubli', 'Belgaum', 'Kolhapur', 'Satara', 'Pune', 'Mumbai', 'Valsad'], False)], False),
]

edges_cost_ecmp_4_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 2),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 2),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_kconnected_4_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'Mysore', [PathReq(Protocols.OSPF, "Mysore", ['Hubli', 'Goa', 'Mangalore', 'Callicut', 'Mysore'], False), PathReq(Protocols.OSPF, "Mysore", ['Hubli', 'Hassan', 'NodeID70', 'Bangalore', 'Mysore'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Kottayem', [PathReq(Protocols.OSPF, "Kottayem", ['Hubli', 'Hassan', 'NodeID70', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore', 'Allepey', 'Kottayem'], False), PathReq(Protocols.OSPF, "Kottayem", ['Hubli', 'Goa', 'Mangalore', 'Cannonore', 'Kozhikode', 'Palghat', 'Thirussur', 'Allepey', 'Kottayem'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Dehradun', [PathReq(Protocols.OSPF, "Dehradun", ['Hubli', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Jabalpur', 'Satna', 'Rewa', 'Allahabad', 'Fatehpur', 'Kanpur', 'Lucknow', 'Dehradun'], False), PathReq(Protocols.OSPF, "Dehradun", ['Hubli', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Gwalior', 'Jhansi', 'Allahabad', 'Fatehpur', 'Kanpur', 'Lucknow', 'Dehradun'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Valsad', [PathReq(Protocols.OSPF, "Valsad", ['Hubli', 'Belgaum', 'Solapur', 'Ahmednagar', 'Nasik', 'Mumbai', 'Valsad'], False), PathReq(Protocols.OSPF, "Valsad", ['Hubli', 'Belgaum', 'Kolhapur', 'Satara', 'Pune', 'Mumbai', 'Valsad'], False)], False),
]

edges_cost_kconnected_4_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 2),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 2),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_order_4_2 = [
    PathOrderReq(Protocols.OSPF, 'Hoshiarpur', [PathReq(Protocols.OSPF, "Hoshiarpur", ['Pathankot', 'Hoshiarpur'], False), PathReq(Protocols.OSPF, "Hoshiarpur", ['Pathankot', 'Amritsar', 'KotTTkapura', 'TalwandiTTBahi', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Surat', [PathReq(Protocols.OSPF, "Surat", ['Bharuch', 'Surat'], False), PathReq(Protocols.OSPF, "Surat", ['Bharuch', 'Baroda', 'Godhra', 'Ahmedabad', 'Ratlam', 'Ujjain', 'Dhar', 'Khandwa', 'Jalgaon', 'Surat'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Trichy', [PathReq(Protocols.OSPF, "Trichy", ['Palladam', 'Trichy'], False), PathReq(Protocols.OSPF, "Trichy", ['Palladam', 'Chidambaram', 'Pondicherry', 'Salem', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore', 'Trichy'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Panjim', [PathReq(Protocols.OSPF, "Panjim", ['Belgaum', 'Panjim'], False), PathReq(Protocols.OSPF, "Panjim", ['Belgaum', 'Hubli', 'Goa', 'Panjim'], False)], False),
]

edges_cost_order_4_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_simple_8 = [
    PathReq(Protocols.OSPF, "Udaipur", ['Raipur', 'Jabalpur', 'Indore', 'Ujjain', 'Ratlam', 'Ahmedabad', 'Udaipur'], False),
    PathReq(Protocols.OSPF, "Trivandrum", ['Raipur', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Nellore', 'Tirupati', 'Kanchipuram', 'Pondicherry', 'Chidambaram', 'Palladam', 'Trichy', 'Sivakasi', 'Tirunelveli', 'Kanyakumari', 'Trivandrum'], False),
    PathReq(Protocols.OSPF, "Damoh", ['Raipur', 'Jabalpur', 'Damoh'], False),
    PathReq(Protocols.OSPF, "Chitradurg", ['Raipur', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Nellore', 'Tirupati', 'Kolar', 'Bangalore', 'NodeID70', 'NodeID118', 'Mangalore', 'Chitradurg'], False),
    PathReq(Protocols.OSPF, "NodeID118", ['Raipur', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Nellore', 'Tirupati', 'Kolar', 'Bangalore', 'NodeID70', 'NodeID118'], False),
    PathReq(Protocols.OSPF, "Salem", ['Raipur', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Nellore', 'Tirupati', 'Kanchipuram', 'Pondicherry', 'Salem'], False),
    PathReq(Protocols.OSPF, "Dhulia", ['Raipur', 'Jabalpur', 'Indore', 'Dhar', 'Khandwa', 'Jalgaon', 'Dhulia'], False),
    PathReq(Protocols.OSPF, "Rewa", ['Raipur', 'Jabalpur', 'Satna', 'Rewa'], False),
]

edges_cost_simple_8 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 2),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 2),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 2),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 2),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 2),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

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

reqs_ecmp_8_2 = [
    ECMPPathsReq(Protocols.OSPF, 'Kanpur', [PathReq(Protocols.OSPF, "Kanpur", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Jabalpur', 'Satna', 'Jhansi', 'Allahabad', 'Fatehpur', 'Kanpur'], False), PathReq(Protocols.OSPF, "Kanpur", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Gwalior', 'Jhansi', 'Allahabad', 'Fatehpur', 'Kanpur'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Amritsar', [PathReq(Protocols.OSPF, "Amritsar", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'KotTTkapura', 'Amritsar'], False), PathReq(Protocols.OSPF, "Amritsar", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'KotTTkapura', 'Amritsar'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Bokaro', [PathReq(Protocols.OSPF, "Bokaro", ['Panjim', 'Belgaum', 'Solapur', 'Gulbarga', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro'], False), PathReq(Protocols.OSPF, "Bokaro", ['Panjim', 'Belgaum', 'Solapur', 'Gulbarga', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Anand', [PathReq(Protocols.OSPF, "Anand", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Surat', 'Bharuch', 'Baroda', 'Godhra', 'Ahmedabad', 'Anand'], False), PathReq(Protocols.OSPF, "Anand", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Ahmedabad', 'Anand'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Hoshiarpur', [PathReq(Protocols.OSPF, "Hoshiarpur", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False), PathReq(Protocols.OSPF, "Hoshiarpur", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Tonk', [PathReq(Protocols.OSPF, "Tonk", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Kota', 'Tonk'], False), PathReq(Protocols.OSPF, "Tonk", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Tonk'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Ludhiana', [PathReq(Protocols.OSPF, "Ludhiana", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana'], False), PathReq(Protocols.OSPF, "Ludhiana", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Raipur', [PathReq(Protocols.OSPF, "Raipur", ['Panjim', 'Belgaum', 'Solapur', 'Gulbarga', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur'], False), PathReq(Protocols.OSPF, "Raipur", ['Panjim', 'Belgaum', 'Solapur', 'Gulbarga', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur'], False)], False),
]

edges_cost_ecmp_8_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 2),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_kconnected_8_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'Kanpur', [PathReq(Protocols.OSPF, "Kanpur", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Jabalpur', 'Satna', 'Jhansi', 'Allahabad', 'Fatehpur', 'Kanpur'], False), PathReq(Protocols.OSPF, "Kanpur", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Gwalior', 'Jhansi', 'Allahabad', 'Fatehpur', 'Kanpur'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Amritsar', [PathReq(Protocols.OSPF, "Amritsar", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'KotTTkapura', 'Amritsar'], False), PathReq(Protocols.OSPF, "Amritsar", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'KotTTkapura', 'Amritsar'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Bokaro', [PathReq(Protocols.OSPF, "Bokaro", ['Panjim', 'Belgaum', 'Solapur', 'Gulbarga', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro'], False), PathReq(Protocols.OSPF, "Bokaro", ['Panjim', 'Belgaum', 'Solapur', 'Gulbarga', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Anand', [PathReq(Protocols.OSPF, "Anand", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Surat', 'Bharuch', 'Baroda', 'Godhra', 'Ahmedabad', 'Anand'], False), PathReq(Protocols.OSPF, "Anand", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Ahmedabad', 'Anand'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Hoshiarpur', [PathReq(Protocols.OSPF, "Hoshiarpur", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False), PathReq(Protocols.OSPF, "Hoshiarpur", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Tonk', [PathReq(Protocols.OSPF, "Tonk", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Kota', 'Tonk'], False), PathReq(Protocols.OSPF, "Tonk", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Tonk'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Ludhiana', [PathReq(Protocols.OSPF, "Ludhiana", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana'], False), PathReq(Protocols.OSPF, "Ludhiana", ['Panjim', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Raipur', [PathReq(Protocols.OSPF, "Raipur", ['Panjim', 'Belgaum', 'Solapur', 'Gulbarga', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur'], False), PathReq(Protocols.OSPF, "Raipur", ['Panjim', 'Belgaum', 'Solapur', 'Gulbarga', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur'], False)], False),
]

edges_cost_kconnected_8_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 2),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_order_8_2 = [
    PathOrderReq(Protocols.OSPF, 'KotTTkapura', [PathReq(Protocols.OSPF, "KotTTkapura", ['TalwandiTTBahi', 'KotTTkapura'], False), PathReq(Protocols.OSPF, "KotTTkapura", ['TalwandiTTBahi', 'Ludhiana', 'Jalandhar', 'Hoshiarpur', 'Pathankot', 'Amritsar', 'KotTTkapura'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Rohtak', [PathReq(Protocols.OSPF, "Rohtak", ['Gurgaon', 'Rohtak'], False), PathReq(Protocols.OSPF, "Rohtak", ['Gurgaon', 'Delhi', 'Sonipat', 'Rohtak'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Rourkela', [PathReq(Protocols.OSPF, "Rourkela", ['Raipur', 'Rourkela'], False), PathReq(Protocols.OSPF, "Rourkela", ['Raipur', 'Dhenkanal', 'Bhubaneshwar', 'Kharagpur', 'Kolkata', 'Ranchi', 'Hazaribagh', 'Bokaro', 'Jamshedpur', 'Rourkela'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Tirunelveli', [PathReq(Protocols.OSPF, "Tirunelveli", ['Tiruchendur', 'Tirunelveli'], False), PathReq(Protocols.OSPF, "Tirunelveli", ['Tiruchendur', 'Kanyakumari', 'Tirunelveli'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Hassan', [PathReq(Protocols.OSPF, "Hassan", ['Hubli', 'Hassan'], False), PathReq(Protocols.OSPF, "Hassan", ['Hubli', 'Goa', 'Mangalore', 'NodeID118', 'Hassan'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Bhandara', [PathReq(Protocols.OSPF, "Bhandara", ['Raipur', 'Bhandara'], False), PathReq(Protocols.OSPF, "Bhandara", ['Raipur', 'Jabalpur', 'Indore', 'Ujjain', 'Dhar', 'Khandwa', 'Jalgaon', 'Buldhana', 'Amravati', 'Nagpur', 'Bhandara'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Nanded', [PathReq(Protocols.OSPF, "Nanded", ['Sangareddy', 'Nanded'], False), PathReq(Protocols.OSPF, "Nanded", ['Sangareddy', 'Hyderabad', 'Gulbarga', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Nanded'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Vijayavada', [PathReq(Protocols.OSPF, "Vijayavada", ['Hyderabad', 'Vijayavada'], False), PathReq(Protocols.OSPF, "Vijayavada", ['Hyderabad', 'Raichur', 'Torangallu', 'Bangalore', 'Kolar', 'Tirupati', 'Nellore', 'Ongole', 'Vijayavada'], False)], False),
]

edges_cost_order_8_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 3),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 3),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_simple_16 = [
    PathReq(Protocols.OSPF, "Agra", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Gwalior', 'Agra'], False),
    PathReq(Protocols.OSPF, "Chandigarh", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Karnal', 'Ambala', 'Chandigarh'], False),
    PathReq(Protocols.OSPF, "Sagar", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Sagar'], False),
    PathReq(Protocols.OSPF, "Ratlam", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam'], False),
    PathReq(Protocols.OSPF, "Bhandara", ['Dhulia', 'Jalgaon', 'Buldhana', 'Amravati', 'Nagpur', 'Bhandara'], False),
    PathReq(Protocols.OSPF, "Pathankot", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur', 'Pathankot'], False),
    PathReq(Protocols.OSPF, "Gwalior", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Gwalior'], False),
    PathReq(Protocols.OSPF, "Hubli", ['Dhulia', 'Nasik', 'Ahmednagar', 'Solapur', 'Belgaum', 'Hubli'], False),
    PathReq(Protocols.OSPF, "Raipur", ['Dhulia', 'Jalgaon', 'Buldhana', 'Amravati', 'Nagpur', 'Bhandara', 'Raipur'], False),
    PathReq(Protocols.OSPF, "Hoshiarpur", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False),
    PathReq(Protocols.OSPF, "Chennai", ['Dhulia', 'Nasik', 'Ahmednagar', 'Solapur', 'Gulbarga', 'Hyderabad', 'Vijayavada', 'Ongole', 'Nellore', 'Tirupati', 'Chennai'], False),
    PathReq(Protocols.OSPF, "Jalgaon", ['Dhulia', 'Jalgaon'], False),
    PathReq(Protocols.OSPF, "Tonk", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Indore', 'Rajgarh', 'Kota', 'Tonk'], False),
    PathReq(Protocols.OSPF, "Coimbatore", ['Dhulia', 'Nasik', 'Ahmednagar', 'Solapur', 'Belgaum', 'Bellary', 'Torangallu', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore'], False),
    PathReq(Protocols.OSPF, "Bhopal", ['Dhulia', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Bhopal'], False),
    PathReq(Protocols.OSPF, "Anand", ['Dhulia', 'Jalgaon', 'Surat', 'Bharuch', 'Baroda', 'Godhra', 'Ahmedabad', 'Anand'], False),
]

edges_cost_simple_16 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 2),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 2),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 2),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 2),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 2),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 2),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 2),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

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

reqs_ecmp_16_2 = [
    ECMPPathsReq(Protocols.OSPF, 'Rourkela', [PathReq(Protocols.OSPF, "Rourkela", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela'], False), PathReq(Protocols.OSPF, "Rourkela", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Pathankot', [PathReq(Protocols.OSPF, "Pathankot", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur', 'Pathankot'], False), PathReq(Protocols.OSPF, "Pathankot", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur', 'Pathankot'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Anand', [PathReq(Protocols.OSPF, "Anand", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Surat', 'Bharuch', 'Baroda', 'Godhra', 'Ahmedabad', 'Anand'], False), PathReq(Protocols.OSPF, "Anand", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Ahmedabad', 'Anand'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'KotTTkapura', [PathReq(Protocols.OSPF, "KotTTkapura", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'KotTTkapura'], False), PathReq(Protocols.OSPF, "KotTTkapura", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'KotTTkapura'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Rohtak', [PathReq(Protocols.OSPF, "Rohtak", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak'], False), PathReq(Protocols.OSPF, "Rohtak", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Hoshiarpur', [PathReq(Protocols.OSPF, "Hoshiarpur", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False), PathReq(Protocols.OSPF, "Hoshiarpur", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Mangalore', [PathReq(Protocols.OSPF, "Mangalore", ['Bellary', 'Belgaum', 'Hubli', 'Goa', 'Mangalore'], False), PathReq(Protocols.OSPF, "Mangalore", ['Bellary', 'Belgaum', 'Panjim', 'Goa', 'Mangalore'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Mumbai', [PathReq(Protocols.OSPF, "Mumbai", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Nasik', 'Mumbai'], False), PathReq(Protocols.OSPF, "Mumbai", ['Bellary', 'Belgaum', 'Kolhapur', 'Satara', 'Pune', 'Mumbai'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Kanpur', [PathReq(Protocols.OSPF, "Kanpur", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Jabalpur', 'Satna', 'Rewa', 'Allahabad', 'Fatehpur', 'Kanpur'], False), PathReq(Protocols.OSPF, "Kanpur", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Satna', 'Rewa', 'Allahabad', 'Fatehpur', 'Kanpur'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Palghat', [PathReq(Protocols.OSPF, "Palghat", ['Bellary', 'Belgaum', 'Hubli', 'Goa', 'Mangalore', 'Cannonore', 'Kozhikode', 'Palghat'], False), PathReq(Protocols.OSPF, "Palghat", ['Bellary', 'Belgaum', 'Panjim', 'Goa', 'Mangalore', 'Cannonore', 'Kozhikode', 'Palghat'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Patiala', [PathReq(Protocols.OSPF, "Patiala", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala'], False), PathReq(Protocols.OSPF, "Patiala", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Bhatinda', [PathReq(Protocols.OSPF, "Bhatinda", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'Bhatinda'], False), PathReq(Protocols.OSPF, "Bhatinda", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'Bhatinda'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Damoh', [PathReq(Protocols.OSPF, "Damoh", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Damoh'], False), PathReq(Protocols.OSPF, "Damoh", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Jabalpur', 'Damoh'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Dhanbad', [PathReq(Protocols.OSPF, "Dhanbad", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro', 'Dhanbad'], False), PathReq(Protocols.OSPF, "Dhanbad", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro', 'Dhanbad'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Asansol', [PathReq(Protocols.OSPF, "Asansol", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro', 'Asansol'], False), PathReq(Protocols.OSPF, "Asansol", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro', 'Asansol'], False)], False),
    ECMPPathsReq(Protocols.OSPF, 'Bokaro', [PathReq(Protocols.OSPF, "Bokaro", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro'], False), PathReq(Protocols.OSPF, "Bokaro", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro'], False)], False),
]

edges_cost_ecmp_16_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 2),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 2),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 2),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_kconnected_16_2 = [
    KConnectedPathsReq(Protocols.OSPF, 'Rourkela', [PathReq(Protocols.OSPF, "Rourkela", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela'], False), PathReq(Protocols.OSPF, "Rourkela", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Pathankot', [PathReq(Protocols.OSPF, "Pathankot", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur', 'Pathankot'], False), PathReq(Protocols.OSPF, "Pathankot", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur', 'Pathankot'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Anand', [PathReq(Protocols.OSPF, "Anand", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Surat', 'Bharuch', 'Baroda', 'Godhra', 'Ahmedabad', 'Anand'], False), PathReq(Protocols.OSPF, "Anand", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Ahmedabad', 'Anand'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'KotTTkapura', [PathReq(Protocols.OSPF, "KotTTkapura", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'KotTTkapura'], False), PathReq(Protocols.OSPF, "KotTTkapura", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'KotTTkapura'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Rohtak', [PathReq(Protocols.OSPF, "Rohtak", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak'], False), PathReq(Protocols.OSPF, "Rohtak", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Hoshiarpur', [PathReq(Protocols.OSPF, "Hoshiarpur", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False), PathReq(Protocols.OSPF, "Hoshiarpur", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'Jalandhar', 'Hoshiarpur'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Mangalore', [PathReq(Protocols.OSPF, "Mangalore", ['Bellary', 'Belgaum', 'Hubli', 'Goa', 'Mangalore'], False), PathReq(Protocols.OSPF, "Mangalore", ['Bellary', 'Belgaum', 'Panjim', 'Goa', 'Mangalore'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Mumbai', [PathReq(Protocols.OSPF, "Mumbai", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Nasik', 'Mumbai'], False), PathReq(Protocols.OSPF, "Mumbai", ['Bellary', 'Belgaum', 'Kolhapur', 'Satara', 'Pune', 'Mumbai'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Kanpur', [PathReq(Protocols.OSPF, "Kanpur", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Jabalpur', 'Satna', 'Rewa', 'Allahabad', 'Fatehpur', 'Kanpur'], False), PathReq(Protocols.OSPF, "Kanpur", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Satna', 'Rewa', 'Allahabad', 'Fatehpur', 'Kanpur'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Palghat', [PathReq(Protocols.OSPF, "Palghat", ['Bellary', 'Belgaum', 'Hubli', 'Goa', 'Mangalore', 'Cannonore', 'Kozhikode', 'Palghat'], False), PathReq(Protocols.OSPF, "Palghat", ['Bellary', 'Belgaum', 'Panjim', 'Goa', 'Mangalore', 'Cannonore', 'Kozhikode', 'Palghat'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Patiala', [PathReq(Protocols.OSPF, "Patiala", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala'], False), PathReq(Protocols.OSPF, "Patiala", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Bhatinda', [PathReq(Protocols.OSPF, "Bhatinda", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Gurgaon', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'Bhatinda'], False), PathReq(Protocols.OSPF, "Bhatinda", ['Bellary', 'Belgaum', 'Solapur', 'Ahmednagar', 'Aurangabad', 'Jalgaon', 'Khandwa', 'Dhar', 'Ujjain', 'Ratlam', 'Bhilwara', 'Jaipur', 'Delhi', 'Sonipat', 'Rohtak', 'Patiala', 'Ludhiana', 'TalwandiTTBahi', 'Bhatinda'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Damoh', [PathReq(Protocols.OSPF, "Damoh", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Jabalpur', 'Damoh'], False), PathReq(Protocols.OSPF, "Damoh", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Jabalpur', 'Damoh'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Dhanbad', [PathReq(Protocols.OSPF, "Dhanbad", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro', 'Dhanbad'], False), PathReq(Protocols.OSPF, "Dhanbad", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro', 'Dhanbad'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Asansol', [PathReq(Protocols.OSPF, "Asansol", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro', 'Asansol'], False), PathReq(Protocols.OSPF, "Asansol", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro', 'Asansol'], False)], False),
    KConnectedPathsReq(Protocols.OSPF, 'Bokaro', [PathReq(Protocols.OSPF, "Bokaro", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Chandrapur', 'Wardha', 'Nagpur', 'Bhandara', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro'], False), PathReq(Protocols.OSPF, "Bokaro", ['Bellary', 'Torangallu', 'Raichur', 'Hyderabad', 'Vijayavada', 'Ongole', 'Visakhapatnam', 'Dhenkanal', 'Raipur', 'Rourkela', 'Jamshedpur', 'Bokaro'], False)], False),
]

edges_cost_kconnected_16_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 2),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 1),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 2),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 1),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 1),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 1),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 1),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 2),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 1),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 1),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 1),
]

reqs_order_16_2 = [
    PathOrderReq(Protocols.OSPF, 'Rourkela', [PathReq(Protocols.OSPF, "Rourkela", ['Raipur', 'Rourkela'], False), PathReq(Protocols.OSPF, "Rourkela", ['Raipur', 'Dhenkanal', 'Bhubaneshwar', 'Kharagpur', 'Kolkata', 'Ranchi', 'Hazaribagh', 'Bokaro', 'Jamshedpur', 'Rourkela'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Trichy', [PathReq(Protocols.OSPF, "Trichy", ['Palladam', 'Trichy'], False), PathReq(Protocols.OSPF, "Trichy", ['Palladam', 'Chidambaram', 'Pondicherry', 'Kanchipuram', 'Tirupati', 'Kolar', 'Bangalore', 'Erode', 'Tirupur', 'Coimbatore', 'Trichy'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Jalgaon', [PathReq(Protocols.OSPF, "Jalgaon", ['Surat', 'Jalgaon'], False), PathReq(Protocols.OSPF, "Jalgaon", ['Surat', 'Valsad', 'Mumbai', 'Nasik', 'Dhulia', 'Jalgaon'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Hyderabad', [PathReq(Protocols.OSPF, "Hyderabad", ['Vijayavada', 'Hyderabad'], False), PathReq(Protocols.OSPF, "Hyderabad", ['Vijayavada', 'Ongole', 'Nellore', 'Tirupati', 'Kolar', 'Bangalore', 'Torangallu', 'Raichur', 'Hyderabad'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Valsad', [PathReq(Protocols.OSPF, "Valsad", ['Mumbai', 'Valsad'], False), PathReq(Protocols.OSPF, "Valsad", ['Mumbai', 'Nasik', 'Dhulia', 'Jalgaon', 'Surat', 'Valsad'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Ahmednagar', [PathReq(Protocols.OSPF, "Ahmednagar", ['Aurangabad', 'Ahmednagar'], False), PathReq(Protocols.OSPF, "Ahmednagar", ['Aurangabad', 'Jalgaon', 'Dhulia', 'Nasik', 'Ahmednagar'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Kharagpur', [PathReq(Protocols.OSPF, "Kharagpur", ['Kolkata', 'Kharagpur'], False), PathReq(Protocols.OSPF, "Kharagpur", ['Kolkata', 'Ranchi', 'Hazaribagh', 'Bokaro', 'Jamshedpur', 'Rourkela', 'Raipur', 'Dhenkanal', 'Bhubaneshwar', 'Kharagpur'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Gwalior', [PathReq(Protocols.OSPF, "Gwalior", ['Agra', 'Gwalior'], False), PathReq(Protocols.OSPF, "Gwalior", ['Agra', 'Mathura', 'Delhi', 'Jaipur', 'Bhilwara', 'Ratlam', 'Ujjain', 'Indore', 'Rajgarh', 'Gwalior'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Trichy', [PathReq(Protocols.OSPF, "Trichy", ['Sivakasi', 'Trichy'], False), PathReq(Protocols.OSPF, "Trichy", ['Sivakasi', 'Coimbatore', 'Trichy'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Bangalore', [PathReq(Protocols.OSPF, "Bangalore", ['NodeID70', 'Bangalore'], False), PathReq(Protocols.OSPF, "Bangalore", ['NodeID70', 'Hassan', 'Hubli', 'Goa', 'Mangalore', 'Callicut', 'Mysore', 'Bangalore'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Ahmedabad', [PathReq(Protocols.OSPF, "Ahmedabad", ['Anand', 'Ahmedabad'], False), PathReq(Protocols.OSPF, "Ahmedabad", ['Anand', 'Gandhinagar', 'Himmatnagar', 'Ahmedabad'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Sangli', [PathReq(Protocols.OSPF, "Sangli", ['Kolhapur', 'Sangli'], False), PathReq(Protocols.OSPF, "Sangli", ['Kolhapur', 'Satara', 'Sangli'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Wardha', [PathReq(Protocols.OSPF, "Wardha", ['Nagpur', 'Wardha'], False), PathReq(Protocols.OSPF, "Wardha", ['Nagpur', 'Bhandara', 'Raipur', 'Dhenkanal', 'Visakhapatnam', 'Ongole', 'Vijayavada', 'Hyderabad', 'Chandrapur', 'Wardha'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Hyderabad', [PathReq(Protocols.OSPF, "Hyderabad", ['Sangareddy', 'Hyderabad'], False), PathReq(Protocols.OSPF, "Hyderabad", ['Sangareddy', 'Nanded', 'Aurangabad', 'Ahmednagar', 'Solapur', 'Gulbarga', 'Hyderabad'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Mumbai', [PathReq(Protocols.OSPF, "Mumbai", ['Pune', 'Mumbai'], False), PathReq(Protocols.OSPF, "Mumbai", ['Pune', 'Ahmednagar', 'Nasik', 'Mumbai'], False)], False),
    PathOrderReq(Protocols.OSPF, 'Coimbatore', [PathReq(Protocols.OSPF, "Coimbatore", ['Tirupur', 'Coimbatore'], False), PathReq(Protocols.OSPF, "Coimbatore", ['Tirupur', 'Erode', 'Bangalore', 'Salem', 'Pondicherry', 'Chidambaram', 'Palladam', 'Trichy', 'Coimbatore'], False)], False),
]

edges_cost_order_16_2 = [
    ("Satara", "Pune", 1),
    ("Satara", "Kolhapur", 1),
    ("Satara", "Sangli", 1),
    ("Pondicherry", "Chidambaram", 1),
    ("Pondicherry", "Salem", 1),
    ("Pondicherry", "Kanchipuram", 1),
    ("Himmatnagar", "Gandhinagar", 1),
    ("Himmatnagar", "Ahmedabad", 1),
    ("Mysore", "Bangalore", 1),
    ("Mysore", "Callicut", 1),
    ("Nasik", "Dhulia", 1),
    ("Nasik", "Ahmednagar", 1),
    ("Nasik", "Mumbai", 1),
    ("Rohtak", "Gurgaon", 1),
    ("Rohtak", "Patiala", 1),
    ("Rohtak", "Sonipat", 1),
    ("Nanded", "Aurangabad", 1),
    ("Nanded", "Sangareddy", 1),
    ("Jhansi", "Satna", 1),
    ("Jhansi", "Allahabad", 1),
    ("Jhansi", "Gwalior", 1),
    ("Jalandhar", "Hoshiarpur", 1),
    ("Jalandhar", "Ludhiana", 1),
    ("Bhopal", "Ujjain", 1),
    ("Bhopal", "Rajgarh", 2),
    ("Rourkela", "Jamshedpur", 1),
    ("Rourkela", "Raipur", 1),
    ("Rajgarh", "Sagar", 1),
    ("Rajgarh", "Indore", 1),
    ("Rajgarh", "Bhopal", 1),
    ("Rajgarh", "Gwalior", 1),
    ("Rajgarh", "Kota", 1),
    ("Chennai", "Tirupati", 1),
    ("Noida", "Delhi", 1),
    ("Bokaro", "Jamshedpur", 1),
    ("Bokaro", "Asansol", 1),
    ("Bokaro", "Hazaribagh", 1),
    ("Bokaro", "Dhanbad", 1),
    ("Varanasi", "Jaunpur", 1),
    ("Varanasi", "Patna", 1),
    ("Mathura", "Delhi", 1),
    ("Mathura", "Agra", 1),
    ("Chandrapur", "Wardha", 1),
    ("Chandrapur", "Hyderabad", 1),
    ("Amravati", "Buldhana", 1),
    ("Amravati", "Nagpur", 1),
    ("Trivandrum", "Kollam", 1),
    ("Trivandrum", "Kanyakumari", 1),
    ("Mangalore", "Cannonore", 1),
    ("Mangalore", "NodeID118", 1),
    ("Mangalore", "Callicut", 1),
    ("Mangalore", "Goa", 1),
    ("Mangalore", "Chitradurg", 1),
    ("Khandwa", "Dhar", 1),
    ("Khandwa", "Jalgaon", 1),
    ("Ahmedabad", "Himmatnagar", 1),
    ("Ahmedabad", "Udaipur", 1),
    ("Ahmedabad", "Ratlam", 1),
    ("Ahmedabad", "Anand", 1),
    ("Ahmedabad", "Godhra", 1),
    ("Bellary", "Belgaum", 1),
    ("Bellary", "Torangallu", 1),
    ("Ajmer", "Jaipur", 1),
    ("Vijayavada", "Hyderabad", 1),
    ("Vijayavada", "Ongole", 1),
    ("Kharagpur", "Kolkata", 1),
    ("Kharagpur", "Bhubaneshwar", 1),
    ("Nagpur", "Wardha", 1),
    ("Nagpur", "Amravati", 1),
    ("Nagpur", "Bhandara", 1),
    ("Gwalior", "Rajgarh", 1),
    ("Gwalior", "Jhansi", 1),
    ("Gwalior", "Agra", 1),
    ("Ahmednagar", "Aurangabad", 1),
    ("Ahmednagar", "Pune", 1),
    ("Ahmednagar", "Nasik", 1),
    ("Ahmednagar", "Solapur", 1),
    ("Sangli", "Satara", 1),
    ("Sangli", "Kolhapur", 1),
    ("Surat", "Jalgaon", 1),
    ("Surat", "Bharuch", 1),
    ("Surat", "Valsad", 1),
    ("Hoshiarpur", "Pathankot", 1),
    ("Hoshiarpur", "Jalandhar", 1),
    ("Bharuch", "Surat", 1),
    ("Bharuch", "Baroda", 1),
    ("Pathankot", "Hoshiarpur", 1),
    ("Pathankot", "Amritsar", 1),
    ("Kanpur", "Fatehpur", 1),
    ("Kanpur", "Lucknow", 1),
    ("Madural", "Sivakasi", 1),
    ("Madural", "Tirunelveli", 1),
    ("Ambala", "Chandigarh", 1),
    ("Ambala", "Karnal", 1),
    ("Ujjain", "Dhar", 1),
    ("Ujjain", "Indore", 1),
    ("Ujjain", "Bhopal", 1),
    ("Ujjain", "Ratlam", 1),
    ("Ghaziabad", "Delhi", 1),
    ("Ghaziabad", "Meerut", 1),
    ("Allepey", "Thirussur", 1),
    ("Allepey", "Coimbatore", 1),
    ("Allepey", "Kottayem", 1),
    ("Gandhinagar", "Himmatnagar", 1),
    ("Gandhinagar", "Anand", 1),
    ("Ongole", "Vijayavada", 1),
    ("Ongole", "Nellore", 1),
    ("Ongole", "Visakhapatnam", 1),
    ("Agra", "Gwalior", 1),
    ("Agra", "Mathura", 1),
    ("Kottayem", "Ernakulam", 1),
    ("Kottayem", "Allepey", 1),
    ("Sangareddy", "Nanded", 1),
    ("Sangareddy", "Hyderabad", 1),
    ("Sitapur", "Hadiagarh", 1),
    ("Sitapur", "Bareilly", 1),
    ("Ramanathapuram", "Sivakasi", 1),
    ("NodeID118", "Hassan", 1),
    ("NodeID118", "NodeID70", 1),
    ("NodeID118", "Mangalore", 4),
    ("Raichur", "Hyderabad", 1),
    ("Raichur", "Torangallu", 1),
    ("Kolkata", "Kharagpur", 1),
    ("Kolkata", "Ranchi", 1),
    ("Coimbatore", "Tirupur", 1),
    ("Coimbatore", "Sivakasi", 1),
    ("Coimbatore", "Trichy", 1),
    ("Coimbatore", "Allepey", 1),
    ("TalwandiTTBahi", "Bhatinda", 1),
    ("TalwandiTTBahi", "Ludhiana", 1),
    ("TalwandiTTBahi", "KotTTkapura", 1),
    ("Vidisha", "Sagar", 1),
    ("Vidisha", "Indore", 1),
    ("Panjim", "Belgaum", 1),
    ("Panjim", "Goa", 1),
    ("Satna", "Jabalpur", 1),
    ("Satna", "Jhansi", 1),
    ("Satna", "Rewa", 1),
    ("Karnal", "Ambala", 1),
    ("Karnal", "Sonipat", 1),
    ("Salem", "Pondicherry", 1),
    ("Salem", "Bangalore", 4),
    ("Meerut", "Ghaziabad", 1),
    ("Meerut", "Moradabad", 1),
    ("Bangalore", "Erode", 1),
    ("Bangalore", "Mysore", 1),
    ("Bangalore", "Kolar", 1),
    ("Bangalore", "Salem", 1),
    ("Bangalore", "NodeID70", 1),
    ("Bangalore", "Torangallu", 1),
    ("Kota", "Rajgarh", 1),
    ("Kota", "Tonk", 1),
    ("Palladam", "Chidambaram", 1),
    ("Palladam", "Trichy", 1),
    ("Lucknow", "Hadiagarh", 1),
    ("Lucknow", "Jaunpur", 1),
    ("Lucknow", "Dehradun", 1),
    ("Lucknow", "Kanpur", 1),
    ("Visakhapatnam", "Ongole", 1),
    ("Visakhapatnam", "Dhenkanal", 1),
    ("Godhra", "Baroda", 1),
    ("Godhra", "Ahmedabad", 1),
    ("Kolhapur", "Belgaum", 1),
    ("Kolhapur", "Satara", 1),
    ("Kolhapur", "Sangli", 1),
    ("Torangallu", "Bellary", 1),
    ("Torangallu", "Bangalore", 1),
    ("Torangallu", "Raichur", 1),
    ("Hyderabad", "Chandrapur", 1),
    ("Hyderabad", "Raichur", 1),
    ("Hyderabad", "Sangareddy", 1),
    ("Hyderabad", "Vijayavada", 1),
    ("Hyderabad", "Gulbarga", 1),
    ("Tirunelveli", "Sivakasi", 1),
    ("Tirunelveli", "Tiruchendur", 1),
    ("Tirunelveli", "Kanyakumari", 1),
    ("Tirunelveli", "Madural", 1),
    ("Hadiagarh", "Sitapur", 1),
    ("Hadiagarh", "Lucknow", 1),
    ("Anand", "Gandhinagar", 1),
    ("Anand", "Ahmedabad", 1),
    ("Sonipat", "Karnal", 1),
    ("Sonipat", "Delhi", 1),
    ("Sonipat", "Rohtak", 1),
    ("Trichy", "Palladam", 1),
    ("Trichy", "Coimbatore", 1),
    ("Trichy", "Sivakasi", 1),
    ("Ratlam", "Ujjain", 1),
    ("Ratlam", "Bhilwara", 1),
    ("Ratlam", "Ahmedabad", 1),
    ("Asansol", "Bokaro", 1),
    ("Asansol", "Dhanbad", 1),
    ("Delhi", "Gurgaon", 1),
    ("Delhi", "Noida", 1),
    ("Delhi", "Jaipur", 1),
    ("Delhi", "Ghaziabad", 1),
    ("Delhi", "Mathura", 1),
    ("Delhi", "Sonipat", 1),
    ("Solapur", "Belgaum", 1),
    ("Solapur", "Gulbarga", 1),
    ("Solapur", "Ahmednagar", 1),
    ("Bhilwara", "Udaipur", 1),
    ("Bhilwara", "Tonk", 3),
    ("Bhilwara", "Ratlam", 1),
    ("Bhilwara", "Jaipur", 1),
    ("Kanchipuram", "Pondicherry", 1),
    ("Kanchipuram", "Tirupati", 1),
    ("Patna", "Gaya", 1),
    ("Patna", "Varanasi", 1),
    ("Buldhana", "Jalgaon", 1),
    ("Buldhana", "Amravati", 1),
    ("Bareilly", "Moradabad", 1),
    ("Bareilly", "Sitapur", 1),
    ("Ranchi", "Kolkata", 1),
    ("Ranchi", "Hazaribagh", 1),
    ("Sivakasi", "Coimbatore", 1),
    ("Sivakasi", "Ramanathapuram", 1),
    ("Sivakasi", "Trichy", 1),
    ("Sivakasi", "Tirunelveli", 1),
    ("Sivakasi", "Madural", 1),
    ("Erode", "Tirupur", 1),
    ("Erode", "Bangalore", 1),
    ("Thiruvalla", "Ernakulam", 1),
    ("Mumbai", "Pune", 1),
    ("Mumbai", "Nasik", 1),
    ("Mumbai", "Valsad", 1),
    ("Bhubaneshwar", "Dhenkanal", 1),
    ("Bhubaneshwar", "Kharagpur", 1),
    ("Sagar", "Rajgarh", 1),
    ("Sagar", "Damoh", 1),
    ("Sagar", "Vidisha", 1),
    ("Allahabad", "Fatehpur", 1),
    ("Allahabad", "Jhansi", 1),
    ("Allahabad", "Rewa", 1),
    ("Aurangabad", "Nanded", 1),
    ("Aurangabad", "Jalgaon", 1),
    ("Aurangabad", "Ahmednagar", 1),
    ("Hazaribagh", "Gaya", 1),
    ("Hazaribagh", "Bokaro", 1),
    ("Hazaribagh", "Ranchi", 1),
    ("Tirupur", "Coimbatore", 1),
    ("Tirupur", "Erode", 1),
    ("Kanyakumari", "Trivandrum", 1),
    ("Kanyakumari", "Tiruchendur", 1),
    ("Kanyakumari", "Tirunelveli", 1),
    ("Fatehpur", "Allahabad", 1),
    ("Fatehpur", "Kanpur", 1),
    ("Rewa", "Satna", 1),
    ("Rewa", "Allahabad", 1),
    ("Cannonore", "Mangalore", 1),
    ("Cannonore", "Kozhikode", 1),
    ("Hassan", "NodeID118", 1),
    ("Hassan", "Hubli", 1),
    ("Hassan", "NodeID70", 1),
    ("Chidambaram", "Palladam", 1),
    ("Chidambaram", "Pondicherry", 1),
    ("Bhandara", "Nagpur", 1),
    ("Bhandara", "Raipur", 1),
    ("Nellore", "Ongole", 1),
    ("Nellore", "Tirupati", 1),
    ("Patiala", "Ludhiana", 1),
    ("Patiala", "Rohtak", 1),
    ("Tiruchendur", "Tirunelveli", 1),
    ("Tiruchendur", "Kanyakumari", 1),
    ("Hubli", "Belgaum", 3),
    ("Hubli", "Hassan", 1),
    ("Hubli", "Goa", 1),
    ("Wardha", "Chandrapur", 1),
    ("Wardha", "Nagpur", 1),
    ("Tonk", "Bhilwara", 1),
    ("Tonk", "Jaipur", 1),
    ("Tonk", "Kota", 1),
    ("Dehradun", "Lucknow", 1),
    ("Kozhikode", "Cannonore", 1),
    ("Kozhikode", "Palghat", 1),
    ("Amritsar", "Pathankot", 1),
    ("Amritsar", "KotTTkapura", 1),
    ("Thirussur", "Palghat", 1),
    ("Thirussur", "Allepey", 1),
    ("Kollam", "Ernakulam", 1),
    ("Kollam", "Trivandrum", 1),
    ("Indore", "Ujjain", 1),
    ("Indore", "Rajgarh", 1),
    ("Indore", "Vidisha", 1),
    ("Indore", "Jabalpur", 1),
    ("Indore", "Dhar", 1),
    ("Ernakulam", "Thiruvalla", 1),
    ("Ernakulam", "Kollam", 1),
    ("Ernakulam", "Kottayem", 1),
    ("Jaipur", "Delhi", 1),
    ("Jaipur", "Ajmer", 1),
    ("Jaipur", "Tonk", 4),
    ("Jaipur", "Bhilwara", 1),
    ("Goa", "Panjim", 1),
    ("Goa", "Mangalore", 1),
    ("Goa", "Hubli", 1),
    ("Pune", "Satara", 1),
    ("Pune", "Ahmednagar", 1),
    ("Pune", "Mumbai", 1),
    ("Raipur", "Rourkela", 1),
    ("Raipur", "Dhenkanal", 1),
    ("Raipur", "Bhandara", 1),
    ("Raipur", "Jabalpur", 1),
    ("Dhar", "Ujjain", 1),
    ("Dhar", "Indore", 1),
    ("Dhar", "Khandwa", 1),
    ("Udaipur", "Bhilwara", 1),
    ("Udaipur", "Ahmedabad", 1),
    ("NodeID70", "Hassan", 1),
    ("NodeID70", "NodeID118", 1),
    ("NodeID70", "Bangalore", 1),
    ("Dhenkanal", "Visakhapatnam", 1),
    ("Dhenkanal", "Bhubaneshwar", 1),
    ("Dhenkanal", "Raipur", 1),
    ("Damoh", "Sagar", 1),
    ("Damoh", "Jabalpur", 1),
    ("Chandigarh", "Ambala", 1),
    ("Chandigarh", "Ludhiana", 1),
    ("Callicut", "Mysore", 1),
    ("Callicut", "Mangalore", 1),
    ("Tirupati", "Chennai", 1),
    ("Tirupati", "Kanchipuram", 1),
    ("Tirupati", "Kolar", 1),
    ("Tirupati", "Nellore", 1),
    ("Chitradurg", "Mangalore", 1),
    ("Bhatinda", "TalwandiTTBahi", 1),
    ("Jabalpur", "Satna", 1),
    ("Jabalpur", "Indore", 1),
    ("Jabalpur", "Damoh", 1),
    ("Jabalpur", "Raipur", 1),
    ("Dhulia", "Jalgaon", 1),
    ("Dhulia", "Nasik", 1),
    ("Jalgaon", "Aurangabad", 2),
    ("Jalgaon", "Dhulia", 1),
    ("Jalgaon", "Khandwa", 1),
    ("Jalgaon", "Surat", 1),
    ("Jalgaon", "Buldhana", 1),
    ("Jalgaon", "Akola", 1),
    ("Gaya", "Patna", 1),
    ("Gaya", "Hazaribagh", 1),
    ("Gurgaon", "Delhi", 1),
    ("Gurgaon", "Rohtak", 1),
    ("Moradabad", "Bareilly", 1),
    ("Moradabad", "Meerut", 1),
    ("Ludhiana", "Chandigarh", 1),
    ("Ludhiana", "TalwandiTTBahi", 1),
    ("Ludhiana", "Jalandhar", 1),
    ("Ludhiana", "Patiala", 1),
    ("Gulbarga", "Hyderabad", 1),
    ("Gulbarga", "Solapur", 1),
    ("Valsad", "Surat", 1),
    ("Valsad", "Mumbai", 1),
    ("Akola", "Jalgaon", 1),
    ("Belgaum", "Bellary", 1),
    ("Belgaum", "Panjim", 1),
    ("Belgaum", "Kolhapur", 1),
    ("Belgaum", "Hubli", 1),
    ("Belgaum", "Solapur", 1),
    ("Palghat", "Thirussur", 1),
    ("Palghat", "Kozhikode", 1),
    ("Kolar", "Bangalore", 1),
    ("Kolar", "Tirupati", 1),
    ("Dhanbad", "Bokaro", 1),
    ("Dhanbad", "Asansol", 1),
    ("Jamshedpur", "Rourkela", 1),
    ("Jamshedpur", "Bokaro", 1),
    ("Baroda", "Bharuch", 1),
    ("Baroda", "Godhra", 1),
    ("KotTTkapura", "TalwandiTTBahi", 1),
    ("KotTTkapura", "Amritsar", 1),
    ("Jaunpur", "Lucknow", 1),
    ("Jaunpur", "Varanasi", 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]

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

