ckt_object = interface_object.get_circuit_object(model1)
print(ckt_object)
print()

# Fail a node
print("Fail Node('D')")
model1.fail_node('D')
model1.update_simulation()
print()
print("Here is Node('D')'s failure status:",
      model1.get_node_object('D').failed)
print()

# Get Node('D')'s interfaces
print("Here are Node('D')'s interfaces:")
pprint(model1.get_node_interfaces('D'))
model1.update_simulation()
print()
print("Here is the network traffic after Node('D') failed:")
print(model1.display_interfaces_traffic())
print()

# Get unrouted demands
print("Here are the unrouted demands:")
for demand in model1.get_unrouted_demand_objects():
    pprint(demand)
print()

# Unfail Node('D')
print("Now unfail Node('D')")
model1.unfail_node('D')
print("The circuit for Interface(Node('A'), 'A-to-B') is")
ckt_object = interface_object.get_circuit_object(model1)
print(ckt_object)
print()

# Fail a node
print("Fail Node('D')")
model1.fail_node("D")
model1.update_simulation()
print()
print("Here is Node('D')'s failure status:", model1.get_node_object("D").failed)
print()

# Get Node('D')'s interfaces
print("Here are Node('D')'s interfaces:")
pprint(model1.get_node_interfaces("D"))
model1.update_simulation()
print()
print("Here is the network traffic after Node('D') failed:")
print(model1.display_interfaces_traffic())
print()

# Get unrouted demands
print("Here are the unrouted demands:")
for demand in model1.get_unrouted_demand_objects():
    pprint(demand)
print()

# Unfail Node('D')
print("Now unfail Node('D')")
model1.unfail_node("D")