}
if(!tnsShareAStaticLock || tn == otherTn) // if tns don't share any static lock, or if tns are the same one
{
// add these orderings to tn's visible order
MutableDirectedGraph orderings = lockOrder.getEdgesForLabel(otherTn);
for(Object node1 : orderings.getNodes())
{
if(!visibleOrder.containsNode(node1))
visibleOrder.addNode(node1);
for(Object node2 : orderings.getSuccsOf(node1))
{
if(!visibleOrder.containsNode(node2))
visibleOrder.addNode(node2);
visibleOrder.addEdge(node1, node2);
}