class com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder
  super_class: java.lang.Object
{
  static final java.lang.String REEXPORTS;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: ""

  static final java.lang.String REQUIRES;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "style=\"dashed\""

  static final java.util.Set<java.lang.String> JAVA_SE_SUBGRAPH;
    descriptor: Ljava/util/Set;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  static final java.util.Set<java.lang.String> JDK_SUBGRAPH;
    descriptor: Ljava/util/Set;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private final java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.jdeps.Graph<java.lang.String> graph;
    descriptor: Lcom/sun/tools/jdeps/Graph;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lcom/sun/tools/jdeps/Graph<Ljava/lang/String;>;

  private final java.util.Set<java.lang.module.ModuleDescriptor> descriptors;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/module/ModuleDescriptor;>;

  private final java.util.List<com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph> subgraphs;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder$SubGraph;>;

  private final com.sun.tools.jdeps.ModuleDotGraph$Attributes attributes;
    descriptor: Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 258
            invokestatic com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.javaSE:()Ljava/util/Set;
            putstatic com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.JAVA_SE_SUBGRAPH:Ljava/util/Set;
         1: .line 259
            invokestatic com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.jdk:()Ljava/util/Set;
            putstatic com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.JDK_SUBGRAPH:Ljava/util/Set;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.util.Set<java.lang.String> javaSE();
    descriptor: ()Ljava/util/Set;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=0
         0: .line 262
            ldc "java.se.ee"
            astore 0 /* root */
        start local 0 // java.lang.String root
         1: .line 263
            invokestatic java.lang.module.ModuleFinder.ofSystem:()Ljava/lang/module/ModuleFinder;
            astore 1 /* system */
        start local 1 // java.lang.module.ModuleFinder system
         2: .line 264
            aload 1 /* system */
            aload 0 /* root */
            invokeinterface java.lang.module.ModuleFinder.find:(Ljava/lang/String;)Ljava/util/Optional;
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 14
         3: .line 265
            aload 0 /* root */
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
         4: .line 266
            invokestatic java.lang.module.Configuration.empty:()Ljava/lang/module/Configuration;
            aload 1 /* system */
            iconst_0
            anewarray java.nio.file.Path
         5: .line 267
            invokestatic java.lang.module.ModuleFinder.of:([Ljava/nio/file/Path;)Ljava/lang/module/ModuleFinder;
         6: .line 268
            aload 0 /* root */
            invokestatic java.util.Set.of:(Ljava/lang/Object;)Ljava/util/Set;
         7: .line 266
            invokevirtual java.lang.module.Configuration.resolve:(Ljava/lang/module/ModuleFinder;Ljava/lang/module/ModuleFinder;Ljava/util/Collection;)Ljava/lang/module/Configuration;
         8: .line 269
            aload 0 /* root */
            invokevirtual java.lang.module.Configuration.findModule:(Ljava/lang/String;)Ljava/util/Optional;
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast java.lang.module.ResolvedModule
         9: .line 270
            invokevirtual java.lang.module.ResolvedModule.reads:()Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
        10: .line 271
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/module/ResolvedModule.name()Ljava/lang/String; (5)
                  (Ljava/lang/module/ResolvedModule;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        11: .line 265
            invokestatic java.util.stream.Stream.concat:(Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Ljava/util/stream/Stream;
        12: .line 272
            invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Set
        13: .line 265
            areturn
        14: .line 275
      StackMap locals: java.lang.String java.lang.module.ModuleFinder
      StackMap stack:
            aload 1 /* system */
            invokeinterface java.lang.module.ModuleFinder.findAll:()Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
        15: .line 276
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/module/ModuleReference.descriptor()Ljava/lang/module/ModuleDescriptor; (5)
                  (Ljava/lang/module/ModuleReference;)Ljava/lang/module/ModuleDescriptor;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        16: .line 277
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/module/ModuleDescriptor.name()Ljava/lang/String; (5)
                  (Ljava/lang/module/ModuleDescriptor;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        17: .line 278
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$3(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        18: .line 280
            invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Set
        19: .line 275
            areturn
        end local 1 // java.lang.module.ModuleFinder system
        end local 0 // java.lang.String root
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1   20     0    root  Ljava/lang/String;
            2   20     1  system  Ljava/lang/module/ModuleFinder;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  private static java.util.Set<java.lang.String> jdk();
    descriptor: ()Ljava/util/Set;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 285
            invokestatic java.lang.module.ModuleFinder.ofSystem:()Ljava/lang/module/ModuleFinder;
            invokeinterface java.lang.module.ModuleFinder.findAll:()Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         1: .line 286
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/module/ModuleReference.descriptor()Ljava/lang/module/ModuleDescriptor; (5)
                  (Ljava/lang/module/ModuleReference;)Ljava/lang/module/ModuleDescriptor;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         2: .line 287
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/module/ModuleDescriptor.name()Ljava/lang/String; (5)
                  (Ljava/lang/module/ModuleDescriptor;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 288
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$6(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         4: .line 292
            invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Set
         5: .line 285
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public void <init>(java.lang.String, com.sun.tools.jdeps.Graph<java.lang.String>, com.sun.tools.jdeps.ModuleDotGraph$Attributes);
    descriptor: (Ljava/lang/String;Lcom/sun/tools/jdeps/Graph;Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 1 // java.lang.String name
        start local 2 // com.sun.tools.jdeps.Graph graph
        start local 3 // com.sun.tools.jdeps.ModuleDotGraph$Attributes attributes
         0: .line 313
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 310
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.descriptors:Ljava/util/Set;
         2: .line 311
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.subgraphs:Ljava/util/List;
         3: .line 316
            aload 0 /* this */
            aload 1 /* name */
            putfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.name:Ljava/lang/String;
         4: .line 317
            aload 0 /* this */
            aload 2 /* graph */
            putfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.graph:Lcom/sun/tools/jdeps/Graph;
         5: .line 318
            aload 0 /* this */
            aload 3 /* attributes */
            putfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
         6: .line 319
            return
        end local 3 // com.sun.tools.jdeps.ModuleDotGraph$Attributes attributes
        end local 2 // com.sun.tools.jdeps.Graph graph
        end local 1 // java.lang.String name
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    7     1        name  Ljava/lang/String;
            0    7     2       graph  Lcom/sun/tools/jdeps/Graph<Ljava/lang/String;>;
            0    7     3  attributes  Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
    Signature: (Ljava/lang/String;Lcom/sun/tools/jdeps/Graph<Ljava/lang/String;>;Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;)V
    MethodParameters:
            Name  Flags
      name        
      graph       
      attributes  

  public com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder modules(java.util.stream.Stream<java.lang.module.ModuleDescriptor>);
    descriptor: (Ljava/util/stream/Stream;)Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 1 // java.util.stream.Stream descriptors
         0: .line 322
            aload 1 /* descriptors */
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.descriptors:Ljava/util/Set;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/util/Set;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  java/util/Set.add(Ljava/lang/Object;)Z (9 itf)
                  (Ljava/lang/module/ModuleDescriptor;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         1: .line 323
            aload 0 /* this */
            areturn
        end local 1 // java.util.stream.Stream descriptors
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    2     1  descriptors  Ljava/util/stream/Stream<Ljava/lang/module/ModuleDescriptor;>;
    Signature: (Ljava/util/stream/Stream<Ljava/lang/module/ModuleDescriptor;>;)Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
    MethodParameters:
             Name  Flags
      descriptors  

  public void build(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 1 // java.nio.file.Path filename
         0: .line 327
            aconst_null
            astore 2
            aconst_null
            astore 3
         1: aload 1 /* filename */
            iconst_0
            anewarray java.nio.file.OpenOption
            invokestatic java.nio.file.Files.newBufferedWriter:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/BufferedWriter;
            astore 4 /* writer */
        start local 4 // java.io.BufferedWriter writer
         2: .line 328
            new java.io.PrintWriter
            dup
            aload 4 /* writer */
            invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;)V
            astore 5 /* out */
        start local 5 // java.io.PrintWriter out
         3: .line 330
            aload 5 /* out */
            ldc "digraph \"%s\" {%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.name:Ljava/lang/String;
            aastore
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
         4: .line 331
            aload 5 /* out */
            ldc "  nodesep=.5;%n"
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
         5: .line 332
            aload 5 /* out */
            ldc "  ranksep=%f;%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.rankSep:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
         6: .line 333
            aload 5 /* out */
            ldc "  pencolor=transparent;%n"
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
         7: .line 334
            aload 5 /* out */
            ldc "  node [shape=plaintext, fontcolor=\"%s\", fontname=\"%s\", fontsize=%d, margin=\".2,.2\"];%n"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
         8: .line 336
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.fontColor:()Ljava/lang/String;
            aastore
            dup
            iconst_1
         9: .line 337
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.fontName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
        10: .line 338
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.fontSize:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        11: .line 334
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        12: .line 339
            aload 5 /* out */
            ldc "  edge [penwidth=%d, color=\"%s\", arrowhead=open, arrowsize=%d];%n"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        13: .line 340
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.arrowWidth:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
        14: .line 341
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.arrowColor:()Ljava/lang/String;
            aastore
            dup
            iconst_2
        15: .line 342
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.arrowSize:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        16: .line 339
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        17: .line 345
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.ranks:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        18: .line 346
            aload 0 /* this */
            invokedynamic apply(Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$8(Ljava/util/Set;)Ljava/lang/String; (7)
                  (Ljava/util/Set;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        19: .line 351
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$12(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        20: .line 352
            aload 5 /* out */
            invokedynamic accept(Ljava/io/PrintWriter;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$13(Ljava/io/PrintWriter;Ljava/lang/String;)V (6)
                  (Ljava/lang/String;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        21: .line 354
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.subgraphs:Ljava/util/List;
            aload 0 /* this */
            aload 5 /* out */
            invokedynamic accept(Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;Ljava/io/PrintWriter;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$14(Ljava/io/PrintWriter;Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder$SubGraph;)V (7)
                  (Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder$SubGraph;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
        22: .line 363
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.descriptors:Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
        23: .line 364
            aload 0 /* this */
            invokedynamic test(Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$18(Ljava/lang/module/ModuleDescriptor;)Z (7)
                  (Ljava/lang/module/ModuleDescriptor;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        24: .line 366
            aload 0 /* this */
            aload 5 /* out */
            invokedynamic accept(Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;Ljava/io/PrintWriter;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$19(Ljava/io/PrintWriter;Ljava/lang/module/ModuleDescriptor;)V (7)
                  (Ljava/lang/module/ModuleDescriptor;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        25: .line 368
            aload 5 /* out */
            ldc "}"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        26: .line 369
            aload 5 /* out */
            ifnull 29
            aload 5 /* out */
            invokevirtual java.io.PrintWriter.close:()V
            goto 29
      StackMap locals: com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder java.nio.file.Path java.lang.Throwable java.lang.Throwable java.io.BufferedWriter java.io.PrintWriter
      StackMap stack: java.lang.Throwable
        27: astore 2
            aload 5 /* out */
            ifnull 28
            aload 5 /* out */
            invokevirtual java.io.PrintWriter.close:()V
        end local 5 // java.io.PrintWriter out
      StackMap locals:
      StackMap stack:
        28: aload 2
            athrow
      StackMap locals:
      StackMap stack:
        29: aload 4 /* writer */
            ifnull 37
            aload 4 /* writer */
            invokevirtual java.io.BufferedWriter.close:()V
            goto 37
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: astore 3
            aload 2
            ifnonnull 31
            aload 3
            astore 2
            goto 32
      StackMap locals:
      StackMap stack:
        31: aload 2
            aload 3
            if_acmpeq 32
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        32: aload 4 /* writer */
            ifnull 33
            aload 4 /* writer */
            invokevirtual java.io.BufferedWriter.close:()V
        end local 4 // java.io.BufferedWriter writer
      StackMap locals:
      StackMap stack:
        33: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 3
            aload 2
            ifnonnull 35
            aload 3
            astore 2
            goto 36
      StackMap locals:
      StackMap stack:
        35: aload 2
            aload 3
            if_acmpeq 36
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        36: aload 2
            athrow
        37: .line 370
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.nio.file.Path filename
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   38     0      this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0   38     1  filename  Ljava/nio/file/Path;
            2   33     4    writer  Ljava/io/BufferedWriter;
            3   28     5       out  Ljava/io/PrintWriter;
      Exception table:
        from    to  target  type
           3    26      27  any
           2    29      30  any
           1    34      34  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      filename  

  public com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder subgraph(java.lang.String, java.lang.String, java.lang.String, java.util.Set<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String group
        start local 3 // java.lang.String color
        start local 4 // java.util.Set nodes
         0: .line 374
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.subgraphs:Ljava/util/List;
            new com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph
            dup
            aload 1 /* name */
            aload 2 /* group */
            aload 3 /* color */
            aload 4 /* nodes */
            invokespecial com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 375
            aload 0 /* this */
            areturn
        end local 4 // java.util.Set nodes
        end local 3 // java.lang.String color
        end local 2 // java.lang.String group
        end local 1 // java.lang.String name
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    2     1   name  Ljava/lang/String;
            0    2     2  group  Ljava/lang/String;
            0    2     3  color  Ljava/lang/String;
            0    2     4  nodes  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;)Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
    MethodParameters:
       Name  Flags
      name   
      group  
      color  
      nodes  

  public void printNode(java.io.PrintWriter, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/io/PrintWriter;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 1 // java.io.PrintWriter out
        start local 2 // java.lang.String node
        start local 3 // java.lang.String color
        start local 4 // java.lang.String group
         0: .line 379
            aload 1 /* out */
            ldc "  \"%s\" [fontcolor=\"%s\", group=%s];%n"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 380
            aload 2 /* node */
            aastore
            dup
            iconst_1
            aload 3 /* color */
            aastore
            dup
            iconst_2
            aload 4 /* group */
            aastore
         2: .line 379
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
         3: .line 381
            return
        end local 4 // java.lang.String group
        end local 3 // java.lang.String color
        end local 2 // java.lang.String node
        end local 1 // java.io.PrintWriter out
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    4     1    out  Ljava/io/PrintWriter;
            0    4     2   node  Ljava/lang/String;
            0    4     3  color  Ljava/lang/String;
            0    4     4  group  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      out    
      node   
      color  
      group  

  public void printNode(java.io.PrintWriter, java.lang.module.ModuleDescriptor, java.util.Set<java.lang.String>);
    descriptor: (Ljava/io/PrintWriter;Ljava/lang/module/ModuleDescriptor;Ljava/util/Set;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 1 // java.io.PrintWriter out
        start local 2 // java.lang.module.ModuleDescriptor md
        start local 3 // java.util.Set edges
         0: .line 384
            aload 2 /* md */
            invokevirtual java.lang.module.ModuleDescriptor.requires:()Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         1: .line 385
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$20(Ljava/lang/module/ModuleDescriptor$Requires;)Z (6)
                  (Ljava/lang/module/ModuleDescriptor$Requires;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 386
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$21(Ljava/lang/module/ModuleDescriptor$Requires;)Ljava/lang/String; (6)
                  (Ljava/lang/module/ModuleDescriptor$Requires;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 387
            invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Set
         4: .line 384
            astore 4 /* requiresTransitive */
        start local 4 // java.util.Set requiresTransitive
         5: .line 389
            aload 2 /* md */
            invokevirtual java.lang.module.ModuleDescriptor.name:()Ljava/lang/String;
            astore 5 /* mn */
        start local 5 // java.lang.String mn
         6: .line 390
            aload 3 /* edges */
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
            aload 0 /* this */
            aload 4 /* requiresTransitive */
            aload 5 /* mn */
            aload 1 /* out */
            invokedynamic accept(Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;Ljava/util/Set;Ljava/lang/String;Ljava/io/PrintWriter;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$22(Ljava/util/Set;Ljava/lang/String;Ljava/io/PrintWriter;Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         7: .line 407
            return
        end local 5 // java.lang.String mn
        end local 4 // java.util.Set requiresTransitive
        end local 3 // java.util.Set edges
        end local 2 // java.lang.module.ModuleDescriptor md
        end local 1 // java.io.PrintWriter out
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    8     0                this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    8     1                 out  Ljava/io/PrintWriter;
            0    8     2                  md  Ljava/lang/module/ModuleDescriptor;
            0    8     3               edges  Ljava/util/Set<Ljava/lang/String;>;
            5    8     4  requiresTransitive  Ljava/util/Set<Ljava/lang/String;>;
            6    8     5                  mn  Ljava/lang/String;
    Signature: (Ljava/io/PrintWriter;Ljava/lang/module/ModuleDescriptor;Ljava/util/Set<Ljava/lang/String;>;)V
    MethodParameters:
       Name  Flags
      out    
      md     
      edges  

  private static boolean lambda$3(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 278
            aload 0 /* name */
            ldc "java."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 279
            aload 0 /* name */
            ldc "java.smartcardio"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  name  Ljava/lang/String;

  private static boolean lambda$6(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 288
            getstatic com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.JAVA_SE_SUBGRAPH:Ljava/util/Set;
            aload 0 /* name */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 5
         1: .line 289
            aload 0 /* name */
            ldc "java."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 4
         2: .line 290
            aload 0 /* name */
            ldc "jdk."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 4
         3: .line 291
            aload 0 /* name */
            ldc "javafx."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  name  Ljava/lang/String;

  private java.lang.String lambda$8(java.util.Set);
    descriptor: (Ljava/util/Set;)Ljava/lang/String;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 1 // java.util.Set nodes
         0: .line 346
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.descriptors:Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         1: .line 347
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/module/ModuleDescriptor.name()Ljava/lang/String; (5)
                  (Ljava/lang/module/ModuleDescriptor;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         2: .line 348
            aload 1 /* nodes */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic test(Ljava/util/Set;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  java/util/Set.contains(Ljava/lang/Object;)Z (9 itf)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         3: .line 349
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$11(Ljava/lang/String;)Ljava/lang/String; (6)
                  (Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         4: .line 350
            ldc ","
            invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        end local 1 // java.util.Set nodes
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    5     1  nodes  Ljava/util/Set<Ljava/lang/String;>;

  private static boolean lambda$12(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String group
         0: .line 351
            aload 0 /* group */
            invokevirtual java.lang.String.length:()I
            ifle 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.lang.String group
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  group  Ljava/lang/String;

  private static void lambda$13(java.io.PrintWriter, java.lang.String);
    descriptor: (Ljava/io/PrintWriter;Ljava/lang/String;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 1 // java.lang.String group
         0: .line 352
            aload 0
            ldc "  {rank=same %s}%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* group */
            aastore
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            return
        end local 1 // java.lang.String group
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     1  group  Ljava/lang/String;

  private void lambda$14(java.io.PrintWriter, com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph);
    descriptor: (Ljava/io/PrintWriter;Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder$SubGraph;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 2 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph subgraph
         0: .line 355
            aload 1
            ldc "  subgraph %s {%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* subgraph */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph.name:Ljava/lang/String;
            aastore
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
         1: .line 356
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.descriptors:Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         2: .line 357
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/module/ModuleDescriptor.name()Ljava/lang/String; (5)
                  (Ljava/lang/module/ModuleDescriptor;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 358
            aload 2 /* subgraph */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph.nodes:Ljava/util/Set;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic test(Ljava/util/Set;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  java/util/Set.contains(Ljava/lang/Object;)Z (9 itf)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         4: .line 359
            aload 0 /* this */
            aload 1
            aload 2 /* subgraph */
            invokedynamic accept(Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;Ljava/io/PrintWriter;Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder$SubGraph;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder.lambda$17(Ljava/io/PrintWriter;Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder$SubGraph;Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         5: .line 360
            aload 1
            ldc "  }%n"
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
         6: .line 361
            return
        end local 2 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph subgraph
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    7     2  subgraph  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder$SubGraph;

  private boolean lambda$18(java.lang.module.ModuleDescriptor);
    descriptor: (Ljava/lang/module/ModuleDescriptor;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 1 // java.lang.module.ModuleDescriptor md
         0: .line 364
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.graph:Lcom/sun/tools/jdeps/Graph;
            aload 1 /* md */
            invokevirtual java.lang.module.ModuleDescriptor.name:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdeps.Graph.contains:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 365
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.graph:Lcom/sun/tools/jdeps/Graph;
            aload 1 /* md */
            invokevirtual java.lang.module.ModuleDescriptor.name:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdeps.Graph.adjacentNodes:(Ljava/lang/Object;)Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 1 // java.lang.module.ModuleDescriptor md
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    4     1    md  Ljava/lang/module/ModuleDescriptor;

  private void lambda$19(java.io.PrintWriter, java.lang.module.ModuleDescriptor);
    descriptor: (Ljava/io/PrintWriter;Ljava/lang/module/ModuleDescriptor;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 2 // java.lang.module.ModuleDescriptor md
         0: .line 366
            aload 0 /* this */
            aload 1
            aload 2 /* md */
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.graph:Lcom/sun/tools/jdeps/Graph;
            aload 2 /* md */
            invokevirtual java.lang.module.ModuleDescriptor.name:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdeps.Graph.adjacentNodes:(Ljava/lang/Object;)Ljava/util/Set;
            invokevirtual com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.printNode:(Ljava/io/PrintWriter;Ljava/lang/module/ModuleDescriptor;Ljava/util/Set;)V
            return
        end local 2 // java.lang.module.ModuleDescriptor md
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    1     2    md  Ljava/lang/module/ModuleDescriptor;

  private static boolean lambda$20(java.lang.module.ModuleDescriptor$Requires);
    descriptor: (Ljava/lang/module/ModuleDescriptor$Requires;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.module.ModuleDescriptor$Requires d
         0: .line 385
            aload 0 /* d */
            invokevirtual java.lang.module.ModuleDescriptor$Requires.modifiers:()Ljava/util/Set;
            getstatic java.lang.module.ModuleDescriptor$Requires$Modifier.TRANSITIVE:Ljava/lang/module/ModuleDescriptor$Requires$Modifier;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // java.lang.module.ModuleDescriptor$Requires d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     d  Ljava/lang/module/ModuleDescriptor$Requires;

  private static java.lang.String lambda$21(java.lang.module.ModuleDescriptor$Requires);
    descriptor: (Ljava/lang/module/ModuleDescriptor$Requires;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.module.ModuleDescriptor$Requires d
         0: .line 386
            aload 0 /* d */
            invokevirtual java.lang.module.ModuleDescriptor$Requires.name:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.module.ModuleDescriptor$Requires d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     d  Ljava/lang/module/ModuleDescriptor$Requires;

  private void lambda$22(java.util.Set, java.lang.String, java.io.PrintWriter, java.lang.String);
    descriptor: (Ljava/util/Set;Ljava/lang/String;Ljava/io/PrintWriter;Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 4 // java.lang.String dn
         0: .line 392
            aload 4 /* dn */
            ldc "java.base"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 393
            new java.lang.StringBuilder
            dup
            ldc "color=\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.requiresMandatedColor:()Ljava/lang/String;
            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;
            astore 5 /* attr */
        start local 5 // java.lang.String attr
         2: .line 394
            goto 6
        end local 5 // java.lang.String attr
         3: .line 395
      StackMap locals:
      StackMap stack:
            aload 1
            aload 4 /* dn */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 4
            ldc ""
            goto 5
      StackMap locals:
      StackMap stack:
         4: ldc "style=\"dashed\""
      StackMap locals:
      StackMap stack: java.lang.String
         5: astore 5 /* attr */
        start local 5 // java.lang.String attr
         6: .line 398
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.attributes:Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
            aload 2
            aload 4 /* dn */
            invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.weightOf:(Ljava/lang/String;Ljava/lang/String;)I
            istore 6 /* w */
        start local 6 // int w
         7: .line 399
            iload 6 /* w */
            iconst_1
            if_icmple 11
         8: .line 400
            aload 5 /* attr */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 10
         9: .line 401
            new java.lang.StringBuilder
            dup
            aload 5 /* attr */
            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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* attr */
        10: .line 403
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 5 /* attr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "weight="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 6 /* w */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* attr */
        11: .line 405
      StackMap locals:
      StackMap stack:
            aload 3
            ldc "  \"%s\" -> \"%s\" [%s];%n"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2
            aastore
            dup
            iconst_1
            aload 4 /* dn */
            aastore
            dup
            iconst_2
            aload 5 /* attr */
            aastore
            invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        end local 6 // int w
        end local 5 // java.lang.String attr
        12: .line 406
            return
        end local 4 // java.lang.String dn
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0   13     4    dn  Ljava/lang/String;
            2    3     5  attr  Ljava/lang/String;
            6   12     5  attr  Ljava/lang/String;
            7   12     6     w  I

  private static java.lang.String lambda$11(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String mn
         0: .line 349
            new java.lang.StringBuilder
            dup
            ldc "\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* mn */
            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;
            areturn
        end local 0 // java.lang.String mn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    mn  Ljava/lang/String;

  private void lambda$17(java.io.PrintWriter, com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph, java.lang.String);
    descriptor: (Ljava/io/PrintWriter;Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder$SubGraph;Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
        start local 3 // java.lang.String mn
         0: .line 359
            aload 0 /* this */
            aload 1
            aload 3 /* mn */
            aload 2
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph.color:Ljava/lang/String;
            aload 2
            getfield com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph.group:Ljava/lang/String;
            invokevirtual com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.printNode:(Ljava/io/PrintWriter;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
            return
        end local 3 // java.lang.String mn
        end local 0 // com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
            0    1     3    mn  Ljava/lang/String;
}
SourceFile: "ModuleDotGraph.java"
NestHost: com.sun.tools.jdeps.ModuleDotGraph
InnerClasses:
  public abstract Attributes = com.sun.tools.jdeps.ModuleDotGraph$Attributes of com.sun.tools.jdeps.ModuleDotGraph
  private DotGraphBuilder = com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder of com.sun.tools.jdeps.ModuleDotGraph
  SubGraph = com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph of com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final Requires = java.lang.module.ModuleDescriptor$Requires of java.lang.module.ModuleDescriptor
  public final Modifier = java.lang.module.ModuleDescriptor$Requires$Modifier of java.lang.module.ModuleDescriptor$Requires