public class com.microsoft.azure.management.resources.fluentcore.dag.Graph<DataT, NodeT extends com.microsoft.azure.management.resources.fluentcore.dag.Node<DataT, NodeT>>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.microsoft.azure.management.resources.fluentcore.dag.Graph
  super_class: java.lang.Object
{
  protected java.util.Map<java.lang.String, NodeT> nodeTable;
    descriptor: Ljava/util/Map;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/Map<Ljava/lang/String;TNodeT;>;

  private java.util.Set<java.lang.String> visited;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private java.lang.Integer time;
    descriptor: Ljava/lang/Integer;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Map<java.lang.String, java.lang.Integer> entryTime;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;

  private java.util.Map<java.lang.String, java.lang.Integer> exitTime;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;

  private java.util.Map<java.lang.String, java.lang.String> parent;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  private java.util.Set<java.lang.String> processed;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
         0: .line 57
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 58
            aload 0 /* this */
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.nodeTable:Ljava/util/Map;
         2: .line 59
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.visited:Ljava/util/Set;
         3: .line 60
            aload 0 /* this */
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.time:Ljava/lang/Integer;
         4: .line 61
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
         5: .line 62
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.exitTime:Ljava/util/Map;
         6: .line 63
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.parent:Ljava/util/Map;
         7: .line 64
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.processed:Ljava/util/Set;
         8: .line 65
            return
        end local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph<TDataT;TNodeT;>;

  public java.util.Collection<NodeT> getNodes();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
         0: .line 71
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.nodeTable:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            areturn
        end local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph<TDataT;TNodeT;>;
    Signature: ()Ljava/util/Collection<TNodeT;>;

  public void addNode();
    descriptor: (Lcom/microsoft/azure/management/resources/fluentcore/dag/Node;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
        start local 1 // com.microsoft.azure.management.resources.fluentcore.dag.Node node
         0: .line 80
            aload 1 /* node */
            aload 0 /* this */
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Node.setOwner:(Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph;)V
         1: .line 81
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.nodeTable:Ljava/util/Map;
            aload 1 /* node */
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Node.key:()Ljava/lang/String;
            aload 1 /* node */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 82
            return
        end local 1 // com.microsoft.azure.management.resources.fluentcore.dag.Node node
        end local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph<TDataT;TNodeT;>;
            0    3     1  node  TNodeT;
    Signature: (TNodeT;)V
    MethodParameters:
      Name  Flags
      node  

  public void visit(com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor);
    descriptor: (Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$Visitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
        start local 1 // com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor visitor
         0: .line 93
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.nodeTable:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: com.microsoft.azure.management.resources.fluentcore.dag.Graph com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 2 /* item */
        start local 2 // java.util.Map$Entry item
         2: .line 94
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.visited:Ljava/util/Set;
            aload 2 /* item */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 95
            aload 0 /* this */
            aload 1 /* visitor */
            aload 2 /* item */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.microsoft.azure.management.resources.fluentcore.dag.Node
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Graph.dfs:(Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$Visitor;Lcom/microsoft/azure/management/resources/fluentcore/dag/Node;)V
        end local 2 // java.util.Map$Entry item
         4: .line 93
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 98
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.visited:Ljava/util/Set;
            invokeinterface java.util.Set.clear:()V
         6: .line 99
            aload 0 /* this */
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.time:Ljava/lang/Integer;
         7: .line 100
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
         8: .line 101
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.exitTime:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
         9: .line 102
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.parent:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
        10: .line 103
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.processed:Ljava/util/Set;
            invokeinterface java.util.Set.clear:()V
        11: .line 104
            return
        end local 1 // com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor visitor
        end local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph<TDataT;TNodeT;>;
            0   12     1  visitor  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$Visitor;
            2    4     2     item  Ljava/util/Map$Entry<Ljava/lang/String;TNodeT;>;
    MethodParameters:
         Name  Flags
      visitor  

  private void dfs(com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor, com.microsoft.azure.management.resources.fluentcore.dag.Node<DataT, NodeT>);
    descriptor: (Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$Visitor;Lcom/microsoft/azure/management/resources/fluentcore/dag/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
        start local 1 // com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor visitor
        start local 2 // com.microsoft.azure.management.resources.fluentcore.dag.Node node
         0: .line 107
            aload 1 /* visitor */
            aload 2 /* node */
            invokeinterface com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor.visitNode:(Ljava/lang/Object;)V
         1: .line 109
            aload 2 /* node */
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Node.key:()Ljava/lang/String;
            astore 3 /* fromKey */
        start local 3 // java.lang.String fromKey
         2: .line 110
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.visited:Ljava/util/Set;
            aload 3 /* fromKey */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         3: .line 111
            aload 0 /* this */
            dup
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.time:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.time:Ljava/lang/Integer;
         4: .line 112
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
            aload 3 /* fromKey */
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.time:Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 113
            aload 2 /* node */
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Node.children:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 13
      StackMap locals: com.microsoft.azure.management.resources.fluentcore.dag.Graph com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor com.microsoft.azure.management.resources.fluentcore.dag.Node java.lang.String top java.util.Iterator
      StackMap stack:
         6: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* toKey */
        start local 4 // java.lang.String toKey
         7: .line 114
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.visited:Ljava/util/Set;
            aload 4 /* toKey */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 12
         8: .line 115
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.parent:Ljava/util/Map;
            aload 4 /* toKey */
            aload 3 /* fromKey */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 116
            aload 1 /* visitor */
            aload 3 /* fromKey */
            aload 4 /* toKey */
            aload 0 /* this */
            aload 3 /* fromKey */
            aload 4 /* toKey */
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Graph.edgeType:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;
            invokeinterface com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor.visitEdge:(Ljava/lang/String;Ljava/lang/String;Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;)V
        10: .line 117
            aload 0 /* this */
            aload 1 /* visitor */
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.nodeTable:Ljava/util/Map;
            aload 4 /* toKey */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.microsoft.azure.management.resources.fluentcore.dag.Node
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Graph.dfs:(Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$Visitor;Lcom/microsoft/azure/management/resources/fluentcore/dag/Node;)V
        11: .line 118
            goto 13
        12: .line 119
      StackMap locals: com.microsoft.azure.management.resources.fluentcore.dag.Graph com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor com.microsoft.azure.management.resources.fluentcore.dag.Node java.lang.String java.lang.String java.util.Iterator
      StackMap stack:
            aload 1 /* visitor */
            aload 3 /* fromKey */
            aload 4 /* toKey */
            aload 0 /* this */
            aload 3 /* fromKey */
            aload 4 /* toKey */
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Graph.edgeType:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;
            invokeinterface com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor.visitEdge:(Ljava/lang/String;Ljava/lang/String;Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;)V
        end local 4 // java.lang.String toKey
        13: .line 113
      StackMap locals: com.microsoft.azure.management.resources.fluentcore.dag.Graph com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor com.microsoft.azure.management.resources.fluentcore.dag.Node java.lang.String top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        14: .line 122
            aload 0 /* this */
            dup
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.time:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.time:Ljava/lang/Integer;
        15: .line 123
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.exitTime:Ljava/util/Map;
            aload 3 /* fromKey */
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.time:Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 124
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.processed:Ljava/util/Set;
            aload 3 /* fromKey */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        17: .line 125
            return
        end local 3 // java.lang.String fromKey
        end local 2 // com.microsoft.azure.management.resources.fluentcore.dag.Node node
        end local 1 // com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor visitor
        end local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph<TDataT;TNodeT;>;
            0   18     1  visitor  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$Visitor;
            0   18     2     node  Lcom/microsoft/azure/management/resources/fluentcore/dag/Node<TDataT;TNodeT;>;
            2   18     3  fromKey  Ljava/lang/String;
            7   13     4    toKey  Ljava/lang/String;
    Signature: (Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$Visitor;Lcom/microsoft/azure/management/resources/fluentcore/dag/Node<TDataT;TNodeT;>;)V
    MethodParameters:
         Name  Flags
      visitor  
      node     

  private com.microsoft.azure.management.resources.fluentcore.dag.Graph$EdgeType edgeType(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
        start local 1 // java.lang.String fromKey
        start local 2 // java.lang.String toKey
         0: .line 128
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.parent:Ljava/util/Map;
            aload 2 /* toKey */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 2
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.parent:Ljava/util/Map;
            aload 2 /* toKey */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            aload 1 /* fromKey */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 129
            getstatic com.microsoft.azure.management.resources.fluentcore.dag.Graph$EdgeType.TREE:Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;
            areturn
         2: .line 132
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.visited:Ljava/util/Set;
            aload 2 /* toKey */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 4
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.processed:Ljava/util/Set;
            aload 2 /* toKey */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 133
            getstatic com.microsoft.azure.management.resources.fluentcore.dag.Graph$EdgeType.BACK:Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;
            areturn
         4: .line 136
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.processed:Ljava/util/Set;
            aload 2 /* toKey */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 9
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
            aload 2 /* toKey */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 9
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
            aload 1 /* fromKey */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 9
         5: .line 137
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
            aload 2 /* toKey */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
            aload 1 /* fromKey */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            if_icmple 7
         6: .line 138
            getstatic com.microsoft.azure.management.resources.fluentcore.dag.Graph$EdgeType.FORWARD:Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;
            areturn
         7: .line 141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
            aload 2 /* toKey */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.entryTime:Ljava/util/Map;
            aload 1 /* fromKey */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            if_icmpge 9
         8: .line 142
            getstatic com.microsoft.azure.management.resources.fluentcore.dag.Graph$EdgeType.CROSS:Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;
            areturn
         9: .line 146
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Internal Error: Unable to locate the edge type {"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fromKey */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* toKey */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "}"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String toKey
        end local 1 // java.lang.String fromKey
        end local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph<TDataT;TNodeT;>;
            0   10     1  fromKey  Ljava/lang/String;
            0   10     2    toKey  Ljava/lang/String;
    Signature: (Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph$EdgeType;
    MethodParameters:
         Name  Flags
      fromKey  
      toKey    

  protected java.lang.String findPath(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
        start local 1 // java.lang.String start
        start local 2 // java.lang.String end
         0: .line 157
            aload 1 /* start */
            aload 2 /* end */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 158
            aload 1 /* start */
            areturn
         2: .line 160
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            aload 1 /* start */
            aload 0 /* this */
            getfield com.microsoft.azure.management.resources.fluentcore.dag.Graph.parent:Ljava/util/Map;
            aload 2 /* end */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual com.microsoft.azure.management.resources.fluentcore.dag.Graph.findPath:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " -> "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* end */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.String end
        end local 1 // java.lang.String start
        end local 0 // com.microsoft.azure.management.resources.fluentcore.dag.Graph this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/microsoft/azure/management/resources/fluentcore/dag/Graph<TDataT;TNodeT;>;
            0    3     1  start  Ljava/lang/String;
            0    3     2    end  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      start  
      end    
}
Signature: <DataT:Ljava/lang/Object;NodeT:Lcom/microsoft/azure/management/resources/fluentcore/dag/Node<TDataT;TNodeT;>;>Ljava/lang/Object;
SourceFile: "Graph.java"
NestMembers:
  com.microsoft.azure.management.resources.fluentcore.dag.Graph$EdgeType  com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor
InnerClasses:
  final EdgeType = com.microsoft.azure.management.resources.fluentcore.dag.Graph$EdgeType of com.microsoft.azure.management.resources.fluentcore.dag.Graph
  abstract Visitor = com.microsoft.azure.management.resources.fluentcore.dag.Graph$Visitor of com.microsoft.azure.management.resources.fluentcore.dag.Graph
  public abstract Entry = java.util.Map$Entry of java.util.Map