public class org.jruby.ext.etc.RubyEtc
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.ext.etc.RubyEtc
  super_class: java.lang.Object
{
  private static final java.util.concurrent.atomic.AtomicBoolean iteratingPasswd;
    descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 478
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            putstatic org.jruby.ext.etc.RubyEtc.iteratingPasswd:Ljava/util/concurrent/atomic/AtomicBoolean;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.etc.RubyEtc this
         0: .line 31
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.jruby.ext.etc.RubyEtc this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/etc/RubyEtc;

  public static org.jruby.RubyModule createEtcModule(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyModule;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 33
            aload 0 /* runtime */
            ldc "Etc"
            invokevirtual org.jruby.Ruby.defineModule:(Ljava/lang/String;)Lorg/jruby/RubyModule;
            astore 1 /* etcModule */
        start local 1 // org.jruby.RubyModule etcModule
         1: .line 35
            aload 0 /* runtime */
            aload 1 /* etcModule */
            invokevirtual org.jruby.Ruby.setEtc:(Lorg/jruby/RubyModule;)V
         2: .line 37
            aload 1 /* etcModule */
            ldc Lorg/jruby/ext/etc/RubyEtc;
            invokevirtual org.jruby.RubyModule.defineAnnotatedMethods:(Ljava/lang/Class;)V
         3: .line 39
            aload 0 /* runtime */
            invokestatic org.jruby.ext.etc.RubyEtc.definePasswdStruct:(Lorg/jruby/Ruby;)V
         4: .line 40
            aload 0 /* runtime */
            invokestatic org.jruby.ext.etc.RubyEtc.defineGroupStruct:(Lorg/jruby/Ruby;)V
         5: .line 42
            aload 1 /* etcModule */
            areturn
        end local 1 // org.jruby.RubyModule etcModule
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0    runtime  Lorg/jruby/Ruby;
            1    6     1  etcModule  Lorg/jruby/RubyModule;
    MethodParameters:
         Name  Flags
      runtime  

  private static void definePasswdStruct(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 46
            bipush 11
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
         1: .line 47
            aload 0 /* runtime */
            ldc "Passwd"
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            iconst_1
         2: .line 48
            aload 0 /* runtime */
            ldc "name"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            iconst_2
         3: .line 49
            aload 0 /* runtime */
            ldc "passwd"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            iconst_3
         4: .line 50
            aload 0 /* runtime */
            ldc "uid"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            iconst_4
         5: .line 51
            aload 0 /* runtime */
            ldc "gid"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            iconst_5
         6: .line 52
            aload 0 /* runtime */
            ldc "gecos"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            bipush 6
         7: .line 53
            aload 0 /* runtime */
            ldc "dir"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            bipush 7
         8: .line 54
            aload 0 /* runtime */
            ldc "shell"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            bipush 8
         9: .line 55
            aload 0 /* runtime */
            ldc "change"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            bipush 9
        10: .line 56
            aload 0 /* runtime */
            ldc "uclass"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            bipush 10
        11: .line 57
            aload 0 /* runtime */
            ldc "expire"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
        12: .line 46
            astore 1 /* args */
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        13: .line 60
            aload 0 /* runtime */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getStructClass:()Lorg/jruby/RubyClass;
            aload 1 /* args */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokestatic org.jruby.RubyStruct.newInstance:(Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyClass;
            invokevirtual org.jruby.Ruby.setPasswdStruct:(Lorg/jruby/RubyClass;)V
        14: .line 61
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getEtc:()Lorg/jruby/RubyModule;
            ldc "Passwd"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getPasswdStruct:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyModule.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
        15: .line 62
            return
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0  runtime  Lorg/jruby/Ruby;
           13   16     1     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      runtime  

  private static void defineGroupStruct(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 65
            iconst_5
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
         1: .line 66
            aload 0 /* runtime */
            ldc "Group"
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            iconst_1
         2: .line 67
            aload 0 /* runtime */
            ldc "name"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            iconst_2
         3: .line 68
            aload 0 /* runtime */
            ldc "passwd"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            iconst_3
         4: .line 69
            aload 0 /* runtime */
            ldc "gid"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
            dup
            iconst_4
         5: .line 70
            aload 0 /* runtime */
            ldc "mem"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aastore
         6: .line 65
            astore 1 /* args */
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
         7: .line 73
            aload 0 /* runtime */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getStructClass:()Lorg/jruby/RubyClass;
            aload 1 /* args */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokestatic org.jruby.RubyStruct.newInstance:(Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyClass;
            invokevirtual org.jruby.Ruby.setGroupStruct:(Lorg/jruby/RubyClass;)V
         8: .line 74
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getEtc:()Lorg/jruby/RubyModule;
            ldc "Group"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getGroupStruct:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyModule.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
         9: .line 75
            return
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0  runtime  Lorg/jruby/Ruby;
            7   10     1     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      runtime  

  private static org.jruby.runtime.builtin.IRubyObject setupPasswd(org.jruby.Ruby, jnr.posix.Passwd);
    descriptor: (Lorg/jruby/Ruby;Ljnr/posix/Passwd;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // jnr.posix.Passwd passwd
         0: .line 78
            bipush 10
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
         1: .line 79
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getLoginName:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            iconst_1
         2: .line 80
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getPassword:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            iconst_2
         3: .line 81
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getUID:()J
            invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
            aastore
            dup
            iconst_3
         4: .line 82
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getGID:()J
            invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
            aastore
            dup
            iconst_4
         5: .line 83
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getGECOS:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            iconst_5
         6: .line 84
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getHome:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            bipush 6
         7: .line 85
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getShell:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            bipush 7
         8: .line 86
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getPasswdChangeTime:()I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            aastore
            dup
            bipush 8
         9: .line 87
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getAccessClass:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            bipush 9
        10: .line 88
            aload 0 /* runtime */
            aload 1 /* passwd */
            invokeinterface jnr.posix.Passwd.getExpire:()I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            aastore
        11: .line 78
            astore 2 /* args */
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        12: .line 92
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getPasswdStruct:()Lorg/jruby/runtime/builtin/IRubyObject;
            aload 2 /* args */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokestatic org.jruby.RubyStruct.newStruct:(Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyStruct;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // jnr.posix.Passwd passwd
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0  runtime  Lorg/jruby/Ruby;
            0   13     1   passwd  Ljnr/posix/Passwd;
           12   13     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      runtime  
      passwd   

  private static org.jruby.runtime.builtin.IRubyObject setupGroup(org.jruby.Ruby, jnr.posix.Group);
    descriptor: (Lorg/jruby/Ruby;Ljnr/posix/Group;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // jnr.posix.Group group
         0: .line 97
            iconst_4
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
         1: .line 98
            aload 0 /* runtime */
            aload 1 /* group */
            invokeinterface jnr.posix.Group.getName:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            iconst_1
         2: .line 99
            aload 0 /* runtime */
            aload 1 /* group */
            invokeinterface jnr.posix.Group.getPassword:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
            dup
            iconst_2
         3: .line 100
            aload 0 /* runtime */
            aload 1 /* group */
            invokeinterface jnr.posix.Group.getGID:()J
            invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
            aastore
            dup
            iconst_3
         4: .line 101
            aload 0 /* runtime */
            aload 1 /* group */
            invokeinterface jnr.posix.Group.getMembers:()[Ljava/lang/String;
            invokestatic org.jruby.ext.etc.RubyEtc.intoStringArray:(Lorg/jruby/Ruby;[Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            aastore
         5: .line 97
            astore 2 /* args */
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         6: .line 104
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getGroupStruct:()Lorg/jruby/runtime/builtin/IRubyObject;
            aload 2 /* args */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokestatic org.jruby.RubyStruct.newStruct:(Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyStruct;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // jnr.posix.Group group
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  runtime  Lorg/jruby/Ruby;
            0    7     1    group  Ljnr/posix/Group;
            6    7     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      runtime  
      group    

  private static org.jruby.runtime.builtin.IRubyObject intoStringArray(org.jruby.Ruby, java.lang.String[]);
    descriptor: (Lorg/jruby/Ruby;[Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String[] members
         0: .line 108
            aload 1 /* members */
            arraylength
            anewarray org.jruby.runtime.builtin.IRubyObject
            astore 2 /* arr */
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] arr
         1: .line 109
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 110
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[] int
      StackMap stack:
            aload 2 /* arr */
            iload 3 /* i */
            aload 0 /* runtime */
            aload 1 /* members */
            iload 3 /* i */
            aaload
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aastore
         4: .line 109
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 2 /* arr */
            arraylength
            if_icmplt 3
        end local 3 // int i
         6: .line 112
            aload 0 /* runtime */
            aload 2 /* arr */
            invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] arr
        end local 1 // java.lang.String[] members
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  runtime  Lorg/jruby/Ruby;
            0    7     1  members  [Ljava/lang/String;
            1    7     2      arr  [Lorg/jruby/runtime/builtin/IRubyObject;
            2    6     3        i  I
    MethodParameters:
         Name  Flags
      runtime  
      members  

  public static synchronized org.jruby.runtime.builtin.IRubyObject getpwuid(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 118
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 119
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            astore 3 /* posix */
        start local 3 // jnr.posix.POSIX posix
         2: .line 120
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            ldc "$!"
            invokevirtual org.jruby.internal.runtime.GlobalVariables.get:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* oldExc */
        start local 4 // org.jruby.runtime.builtin.IRubyObject oldExc
         3: .line 122
            aload 1 /* args */
            arraylength
            ifne 4
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.getuid:()I
            goto 5
      StackMap locals: org.jruby.Ruby jnr.posix.POSIX org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         4: aload 1 /* args */
            iconst_0
            aaload
            invokestatic org.jruby.RubyNumeric.fix2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
      StackMap locals:
      StackMap stack: int
         5: istore 5 /* uid */
        start local 5 // int uid
         6: .line 123
            aload 3 /* posix */
            iload 5 /* uid */
            invokeinterface jnr.posix.POSIX.getpwuid:(I)Ljnr/posix/Passwd;
            astore 6 /* pwd */
        start local 6 // jnr.posix.Passwd pwd
         7: .line 124
            aload 6 /* pwd */
            ifnonnull 12
         8: .line 125
            getstatic jnr.posix.util.Platform.IS_WINDOWS:Z
            ifeq 11
         9: .line 126
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
        10: areturn
        11: .line 128
      StackMap locals: int jnr.posix.Passwd
      StackMap stack:
            aload 2 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "can't find user for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* uid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        12: .line 130
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            aload 6 /* pwd */
            invokestatic org.jruby.ext.etc.RubyEtc.setupPasswd:(Lorg/jruby/Ruby;Ljnr/posix/Passwd;)Lorg/jruby/runtime/builtin/IRubyObject;
        13: areturn
        end local 6 // jnr.posix.Passwd pwd
        end local 5 // int uid
        14: .line 131
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby jnr.posix.POSIX org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.exceptions.RaiseException
            astore 5 /* re */
        start local 5 // org.jruby.exceptions.RaiseException re
        15: .line 132
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNotImplementedError:()Lorg/jruby/RubyClass;
            aload 5 /* re */
            invokevirtual org.jruby.exceptions.RaiseException.getException:()Lorg/jruby/RubyException;
            invokevirtual org.jruby.RubyClass.isInstance:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 18
        16: .line 133
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            ldc "$!"
            aload 4 /* oldExc */
            invokevirtual org.jruby.internal.runtime.GlobalVariables.set:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        17: .line 134
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        18: .line 136
      StackMap locals: org.jruby.exceptions.RaiseException
      StackMap stack:
            aload 5 /* re */
            athrow
        end local 5 // org.jruby.exceptions.RaiseException re
        19: .line 137
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby jnr.posix.POSIX org.jruby.runtime.builtin.IRubyObject
      StackMap stack: java.lang.Exception
            pop
        20: .line 138
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 22
        21: .line 139
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.getpwuid is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
        22: .line 141
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject oldExc
        end local 3 // jnr.posix.POSIX posix
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   23     1     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1   23     2  runtime  Lorg/jruby/Ruby;
            2   23     3    posix  Ljnr/posix/POSIX;
            3   23     4   oldExc  Lorg/jruby/runtime/builtin/IRubyObject;
            6   14     5      uid  I
            7   14     6      pwd  Ljnr/posix/Passwd;
           15   19     5       re  Lorg/jruby/exceptions/RaiseException;
      Exception table:
        from    to  target  type
           3    10      14  Class org.jruby.exceptions.RaiseException
          11    13      14  Class org.jruby.exceptions.RaiseException
           3    10      19  Class java.lang.Exception
          11    13      19  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(optional = 1, module = true)
    MethodParameters:
      Name  Flags
      recv  
      args  

  public static synchronized org.jruby.runtime.builtin.IRubyObject getpwnam(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject name
         0: .line 147
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 148
            aload 1 /* name */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.toString:()Ljava/lang/String;
            astore 3 /* nam */
        start local 3 // java.lang.String nam
         2: .line 150
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            aload 3 /* nam */
            invokeinterface jnr.posix.POSIX.getpwnam:(Ljava/lang/String;)Ljnr/posix/Passwd;
            astore 4 /* pwd */
        start local 4 // jnr.posix.Passwd pwd
         3: .line 151
            aload 4 /* pwd */
            ifnonnull 8
         4: .line 152
            getstatic jnr.posix.util.Platform.IS_WINDOWS:Z
            ifeq 7
         5: .line 153
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
         6: areturn
         7: .line 155
      StackMap locals: org.jruby.Ruby java.lang.String jnr.posix.Passwd
      StackMap stack:
            aload 2 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "can't find user for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* nam */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         8: .line 157
      StackMap locals:
      StackMap stack:
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            aload 4 /* pwd */
            invokestatic org.jruby.ext.etc.RubyEtc.setupPasswd:(Lorg/jruby/Ruby;Ljnr/posix/Passwd;)Lorg/jruby/runtime/builtin/IRubyObject;
         9: areturn
        end local 4 // jnr.posix.Passwd pwd
        10: .line 158
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby java.lang.String
      StackMap stack: org.jruby.exceptions.RaiseException
            astore 4 /* e */
        start local 4 // org.jruby.exceptions.RaiseException e
        11: .line 159
            aload 4 /* e */
            athrow
        end local 4 // org.jruby.exceptions.RaiseException e
        12: .line 160
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
        13: .line 161
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 15
        14: .line 162
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.getpwnam is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
        15: .line 164
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // java.lang.String nam
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject name
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   16     1     name  Lorg/jruby/runtime/builtin/IRubyObject;
            1   16     2  runtime  Lorg/jruby/Ruby;
            2   16     3      nam  Ljava/lang/String;
            3   10     4      pwd  Ljnr/posix/Passwd;
           11   12     4        e  Lorg/jruby/exceptions/RaiseException;
      Exception table:
        from    to  target  type
           2     6      10  Class org.jruby.exceptions.RaiseException
           7     9      10  Class org.jruby.exceptions.RaiseException
           2     6      12  Class java.lang.Exception
           7     9      12  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(required = 1, module = true)
    MethodParameters:
      Name  Flags
      recv  
      name  

  public static synchronized org.jruby.runtime.builtin.IRubyObject passwd(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.Block block
         0: .line 170
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 171
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            astore 3 /* posix */
        start local 3 // jnr.posix.POSIX posix
         2: .line 174
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.getpwent:()Ljnr/posix/Passwd;
            pop
         3: .line 175
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 19
         4: .line 176
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            astore 4 /* context */
        start local 4 // org.jruby.runtime.ThreadContext context
         5: .line 178
            getstatic org.jruby.ext.etc.RubyEtc.iteratingPasswd:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_0
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.compareAndSet:(ZZ)Z
            ifne 7
         6: .line 179
            aload 2 /* runtime */
            ldc "parallel passwd iteration"
            invokevirtual org.jruby.Ruby.newRuntimeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         7: .line 182
      StackMap locals: org.jruby.Ruby jnr.posix.POSIX org.jruby.runtime.ThreadContext
      StackMap stack:
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.setpwent:()I
            pop
         8: .line 185
            goto 10
        start local 5 // jnr.posix.Passwd pw
         9: .line 186
      StackMap locals: jnr.posix.Passwd
      StackMap stack:
            aload 1 /* block */
            aload 4 /* context */
            aload 2 /* runtime */
            aload 5 /* pw */
            invokestatic org.jruby.ext.etc.RubyEtc.setupPasswd:(Lorg/jruby/Ruby;Ljnr/posix/Passwd;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 5 // jnr.posix.Passwd pw
        10: .line 185
      StackMap locals:
      StackMap stack:
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.getpwent:()Ljnr/posix/Passwd;
            dup
            astore 5 /* pw */
        start local 5 // jnr.posix.Passwd pw
        11: ifnonnull 9
        end local 5 // jnr.posix.Passwd pw
        12: .line 188
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 6
        14: .line 189
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.endpwent:()I
            pop
        15: .line 190
            getstatic org.jruby.ext.etc.RubyEtc.iteratingPasswd:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_0
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
        16: .line 191
            aload 6
            athrow
        17: .line 189
      StackMap locals:
      StackMap stack:
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.endpwent:()I
            pop
        18: .line 190
            getstatic org.jruby.ext.etc.RubyEtc.iteratingPasswd:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_0
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
        end local 4 // org.jruby.runtime.ThreadContext context
        19: .line 194
      StackMap locals:
      StackMap stack:
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.getpwent:()Ljnr/posix/Passwd;
            astore 4 /* pw */
        start local 4 // jnr.posix.Passwd pw
        20: .line 195
            aload 4 /* pw */
            ifnull 23
        21: .line 196
            aload 2 /* runtime */
            aload 4 /* pw */
            invokestatic org.jruby.ext.etc.RubyEtc.setupPasswd:(Lorg/jruby/Ruby;Ljnr/posix/Passwd;)Lorg/jruby/runtime/builtin/IRubyObject;
        22: areturn
        23: .line 198
      StackMap locals: jnr.posix.Passwd
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
        24: areturn
        end local 4 // jnr.posix.Passwd pw
        25: .line 200
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.Block org.jruby.Ruby jnr.posix.POSIX
      StackMap stack: java.lang.Exception
            pop
        26: .line 201
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 28
        27: .line 202
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.passwd is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
        28: .line 204
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // jnr.posix.POSIX posix
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   29     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   29     1    block  Lorg/jruby/runtime/Block;
            1   29     2  runtime  Lorg/jruby/Ruby;
            2   29     3    posix  Ljnr/posix/POSIX;
            5   19     4  context  Lorg/jruby/runtime/ThreadContext;
            9   10     5       pw  Ljnr/posix/Passwd;
           11   12     5       pw  Ljnr/posix/Passwd;
           20   25     4       pw  Ljnr/posix/Passwd;
      Exception table:
        from    to  target  type
           8    13      13  any
           2    22      25  Class java.lang.Exception
          23    24      25  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
       Name  Flags
      recv   
      block  

  public static synchronized org.jruby.runtime.builtin.IRubyObject getlogin(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 210
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 213
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            invokeinterface jnr.posix.POSIX.getlogin:()Ljava/lang/String;
            astore 2 /* login */
        start local 2 // java.lang.String login
         2: .line 214
            aload 2 /* login */
            ifnull 5
         3: .line 215
            aload 1 /* runtime */
            aload 2 /* login */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
         4: areturn
         5: .line 218
      StackMap locals: org.jruby.Ruby java.lang.String
      StackMap stack:
            ldc "USER"
            invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* login */
         6: .line 219
            aload 2 /* login */
            ifnull 9
         7: .line 220
            aload 1 /* runtime */
            aload 2 /* login */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
         8: areturn
         9: .line 223
      StackMap locals:
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
        10: areturn
        end local 2 // java.lang.String login
        11: .line 224
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby
      StackMap stack: java.lang.Exception
            pop
        12: .line 226
            aload 1 /* runtime */
            ldc "user.name"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1   13     1  runtime  Lorg/jruby/Ruby;
            2   11     2    login  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     4      11  Class java.lang.Exception
           5     8      11  Class java.lang.Exception
           9    10      11  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
      Name  Flags
      recv  

  public static synchronized org.jruby.runtime.builtin.IRubyObject endpwent(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 232
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 234
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            invokeinterface jnr.posix.POSIX.endpwent:()I
            pop
         2: .line 235
            goto 6
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby
      StackMap stack: java.lang.Exception
         3: pop
         4: .line 236
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 6
         5: .line 237
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.endpwent is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         6: .line 240
      StackMap locals:
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     1  runtime  Lorg/jruby/Ruby;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
      Name  Flags
      recv  

  public static synchronized org.jruby.runtime.builtin.IRubyObject setpwent(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 245
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 247
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            invokeinterface jnr.posix.POSIX.setpwent:()I
            pop
         2: .line 248
            goto 6
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby
      StackMap stack: java.lang.Exception
         3: pop
         4: .line 249
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 6
         5: .line 250
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.setpwent is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         6: .line 253
      StackMap locals:
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     1  runtime  Lorg/jruby/Ruby;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
      Name  Flags
      recv  

  public static synchronized org.jruby.runtime.builtin.IRubyObject getpwent(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 258
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 260
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            invokeinterface jnr.posix.POSIX.getpwent:()Ljnr/posix/Passwd;
            astore 2 /* passwd */
        start local 2 // jnr.posix.Passwd passwd
         2: .line 261
            aload 2 /* passwd */
            ifnull 5
         3: .line 262
            aload 1 /* runtime */
            aload 2 /* passwd */
            invokestatic org.jruby.ext.etc.RubyEtc.setupPasswd:(Lorg/jruby/Ruby;Ljnr/posix/Passwd;)Lorg/jruby/runtime/builtin/IRubyObject;
         4: areturn
         5: .line 264
      StackMap locals: org.jruby.Ruby jnr.posix.Passwd
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
         6: areturn
        end local 2 // jnr.posix.Passwd passwd
         7: .line 266
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby
      StackMap stack: java.lang.Exception
            pop
         8: .line 267
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 10
         9: .line 268
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.getpwent is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
        10: .line 270
      StackMap locals:
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1   11     1  runtime  Lorg/jruby/Ruby;
            2    7     2   passwd  Ljnr/posix/Passwd;
      Exception table:
        from    to  target  type
           1     4       7  Class java.lang.Exception
           5     6       7  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
      Name  Flags
      recv  

  public static synchronized org.jruby.runtime.builtin.IRubyObject getgrnam(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject name
         0: .line 276
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 277
            aload 1 /* name */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.toString:()Ljava/lang/String;
            astore 3 /* nam */
        start local 3 // java.lang.String nam
         2: .line 279
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            aload 3 /* nam */
            invokeinterface jnr.posix.POSIX.getgrnam:(Ljava/lang/String;)Ljnr/posix/Group;
            astore 4 /* grp */
        start local 4 // jnr.posix.Group grp
         3: .line 280
            aload 4 /* grp */
            ifnonnull 8
         4: .line 281
            getstatic jnr.posix.util.Platform.IS_WINDOWS:Z
            ifeq 7
         5: .line 282
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
         6: areturn
         7: .line 284
      StackMap locals: org.jruby.Ruby java.lang.String jnr.posix.Group
      StackMap stack:
            aload 2 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "can't find group for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* nam */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         8: .line 286
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            aload 4 /* grp */
            invokestatic org.jruby.ext.etc.RubyEtc.setupGroup:(Lorg/jruby/Ruby;Ljnr/posix/Group;)Lorg/jruby/runtime/builtin/IRubyObject;
         9: areturn
        end local 4 // jnr.posix.Group grp
        10: .line 287
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby java.lang.String
      StackMap stack: org.jruby.exceptions.RaiseException
            astore 4 /* e */
        start local 4 // org.jruby.exceptions.RaiseException e
        11: .line 288
            aload 4 /* e */
            athrow
        end local 4 // org.jruby.exceptions.RaiseException e
        12: .line 289
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
        13: .line 290
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 15
        14: .line 291
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.getgrnam is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
        15: .line 293
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // java.lang.String nam
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject name
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   16     1     name  Lorg/jruby/runtime/builtin/IRubyObject;
            1   16     2  runtime  Lorg/jruby/Ruby;
            2   16     3      nam  Ljava/lang/String;
            3   10     4      grp  Ljnr/posix/Group;
           11   12     4        e  Lorg/jruby/exceptions/RaiseException;
      Exception table:
        from    to  target  type
           2     6      10  Class org.jruby.exceptions.RaiseException
           7     9      10  Class org.jruby.exceptions.RaiseException
           2     6      12  Class java.lang.Exception
           7     9      12  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(required = 1, module = true)
    MethodParameters:
      Name  Flags
      recv  
      name  

  public static synchronized org.jruby.runtime.builtin.IRubyObject getgrgid(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 299
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 300
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            astore 3 /* posix */
        start local 3 // jnr.posix.POSIX posix
         2: .line 303
            aload 1 /* args */
            arraylength
            ifne 3
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.getgid:()I
            goto 4
      StackMap locals: org.jruby.Ruby jnr.posix.POSIX
      StackMap stack:
         3: aload 1 /* args */
            iconst_0
            aaload
            invokestatic org.jruby.RubyNumeric.fix2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
      StackMap locals:
      StackMap stack: int
         4: istore 4 /* gid */
        start local 4 // int gid
         5: .line 304
            aload 3 /* posix */
            iload 4 /* gid */
            invokeinterface jnr.posix.POSIX.getgrgid:(I)Ljnr/posix/Group;
            astore 5 /* gr */
        start local 5 // jnr.posix.Group gr
         6: .line 305
            aload 5 /* gr */
            ifnonnull 11
         7: .line 306
            getstatic jnr.posix.util.Platform.IS_WINDOWS:Z
            ifeq 10
         8: .line 307
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
         9: areturn
        10: .line 309
      StackMap locals: int jnr.posix.Group
      StackMap stack:
            aload 2 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "can't find group for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* gid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        11: .line 311
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            aload 5 /* gr */
            invokestatic org.jruby.ext.etc.RubyEtc.setupGroup:(Lorg/jruby/Ruby;Ljnr/posix/Group;)Lorg/jruby/runtime/builtin/IRubyObject;
        12: areturn
        end local 5 // jnr.posix.Group gr
        end local 4 // int gid
        13: .line 312
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby jnr.posix.POSIX
      StackMap stack: org.jruby.exceptions.RaiseException
            astore 4 /* re */
        start local 4 // org.jruby.exceptions.RaiseException re
        14: .line 313
            aload 4 /* re */
            athrow
        end local 4 // org.jruby.exceptions.RaiseException re
        15: .line 314
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
        16: .line 315
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 18
        17: .line 316
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.getgrgid is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
        18: .line 318
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // jnr.posix.POSIX posix
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   19     1     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1   19     2  runtime  Lorg/jruby/Ruby;
            2   19     3    posix  Ljnr/posix/POSIX;
            5   13     4      gid  I
            6   13     5       gr  Ljnr/posix/Group;
           14   15     4       re  Lorg/jruby/exceptions/RaiseException;
      Exception table:
        from    to  target  type
           2     9      13  Class org.jruby.exceptions.RaiseException
          10    12      13  Class org.jruby.exceptions.RaiseException
           2     9      15  Class java.lang.Exception
          10    12      15  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(optional = 1, module = true)
    MethodParameters:
      Name  Flags
      recv  
      args  

  public static synchronized org.jruby.runtime.builtin.IRubyObject endgrent(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 324
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 326
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            invokeinterface jnr.posix.POSIX.endgrent:()I
            pop
         2: .line 327
            goto 6
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby
      StackMap stack: java.lang.Exception
         3: pop
         4: .line 328
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 6
         5: .line 329
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.engrent is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         6: .line 332
      StackMap locals:
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     1  runtime  Lorg/jruby/Ruby;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
      Name  Flags
      recv  

  public static synchronized org.jruby.runtime.builtin.IRubyObject setgrent(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 337
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 339
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            invokeinterface jnr.posix.POSIX.setgrent:()I
            pop
         2: .line 340
            goto 6
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby
      StackMap stack: java.lang.Exception
         3: pop
         4: .line 341
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 6
         5: .line 342
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.setgrent is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         6: .line 345
      StackMap locals:
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     1  runtime  Lorg/jruby/Ruby;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
      Name  Flags
      recv  

  public static synchronized org.jruby.runtime.builtin.IRubyObject group(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.Block block
         0: .line 350
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 351
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            astore 3 /* posix */
        start local 3 // jnr.posix.POSIX posix
         2: .line 355
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.getgrent:()Ljnr/posix/Group;
            pop
         3: .line 356
            goto 7
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.Block org.jruby.Ruby jnr.posix.POSIX
      StackMap stack: java.lang.Exception
         4: pop
         5: .line 357
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 7
         6: .line 358
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.group is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         7: .line 362
      StackMap locals:
      StackMap stack:
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 26
         8: .line 363
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getInternalVariables:()Lorg/jruby/runtime/builtin/InternalVariables;
            ldc "group_blocking"
            invokeinterface org.jruby.runtime.builtin.InternalVariables.getInternalVariable:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            astore 4 /* blocking */
        start local 4 // java.lang.Boolean blocking
         9: .line 364
            aload 4 /* blocking */
            ifnull 11
            aload 4 /* blocking */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 11
        10: .line 365
            aload 2 /* runtime */
            ldc "parallel group iteration"
            invokevirtual org.jruby.Ruby.newRuntimeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        11: .line 368
      StackMap locals: java.lang.Boolean
      StackMap stack:
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getInternalVariables:()Lorg/jruby/runtime/builtin/InternalVariables;
            ldc "group_blocking"
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface org.jruby.runtime.builtin.InternalVariables.setInternalVariable:(Ljava/lang/String;Ljava/lang/Object;)V
        12: .line 370
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            astore 5 /* context */
        start local 5 // org.jruby.runtime.ThreadContext context
        13: .line 372
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.setgrent:()I
            pop
        14: .line 374
            goto 16
        start local 6 // jnr.posix.Group gr
        15: .line 375
      StackMap locals: org.jruby.runtime.ThreadContext jnr.posix.Group
      StackMap stack:
            aload 1 /* block */
            aload 5 /* context */
            aload 2 /* runtime */
            aload 6 /* gr */
            invokestatic org.jruby.ext.etc.RubyEtc.setupGroup:(Lorg/jruby/Ruby;Ljnr/posix/Group;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 6 // jnr.posix.Group gr
        16: .line 374
      StackMap locals:
      StackMap stack:
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.getgrent:()Ljnr/posix/Group;
            dup
            astore 6 /* gr */
        start local 6 // jnr.posix.Group gr
        17: ifnonnull 15
        end local 6 // jnr.posix.Group gr
        end local 5 // org.jruby.runtime.ThreadContext context
        18: .line 377
            goto 23
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.Block org.jruby.Ruby jnr.posix.POSIX java.lang.Boolean
      StackMap stack: java.lang.Throwable
        19: astore 7
        20: .line 378
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.endgrent:()I
            pop
        21: .line 379
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getInternalVariables:()Lorg/jruby/runtime/builtin/InternalVariables;
            ldc "group_blocking"
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface org.jruby.runtime.builtin.InternalVariables.setInternalVariable:(Ljava/lang/String;Ljava/lang/Object;)V
        22: .line 380
            aload 7
            athrow
        23: .line 378
      StackMap locals:
      StackMap stack:
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.endgrent:()I
            pop
        24: .line 379
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getInternalVariables:()Lorg/jruby/runtime/builtin/InternalVariables;
            ldc "group_blocking"
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface org.jruby.runtime.builtin.InternalVariables.setInternalVariable:(Ljava/lang/String;Ljava/lang/Object;)V
        end local 4 // java.lang.Boolean blocking
        25: .line 381
            goto 30
        26: .line 382
      StackMap locals:
      StackMap stack:
            aload 3 /* posix */
            invokeinterface jnr.posix.POSIX.getgrent:()Ljnr/posix/Group;
            astore 4 /* gr */
        start local 4 // jnr.posix.Group gr
        27: .line 383
            aload 4 /* gr */
            ifnull 29
        28: .line 384
            aload 2 /* runtime */
            aload 4 /* gr */
            invokestatic org.jruby.ext.etc.RubyEtc.setupGroup:(Lorg/jruby/Ruby;Ljnr/posix/Group;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        29: .line 386
      StackMap locals: jnr.posix.Group
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // jnr.posix.Group gr
        30: .line 390
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // jnr.posix.POSIX posix
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   31     0      recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   31     1     block  Lorg/jruby/runtime/Block;
            1   31     2   runtime  Lorg/jruby/Ruby;
            2   31     3     posix  Ljnr/posix/POSIX;
            9   25     4  blocking  Ljava/lang/Boolean;
           13   18     5   context  Lorg/jruby/runtime/ThreadContext;
           15   16     6        gr  Ljnr/posix/Group;
           17   18     6        gr  Ljnr/posix/Group;
           27   30     4        gr  Ljnr/posix/Group;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
          11    19      19  any
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
       Name  Flags
      recv   
      block  

  public static synchronized org.jruby.runtime.builtin.IRubyObject getgrent(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 395
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 401
            ldc Lorg/jruby/ext/etc/RubyEtc;
            dup
            astore 3
            monitorenter
         2: .line 402
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            invokeinterface jnr.posix.POSIX.getgrent:()Ljnr/posix/Group;
            astore 2 /* gr */
        start local 2 // jnr.posix.Group gr
         3: .line 401
            aload 3
            monitorexit
         4: goto 7
        end local 2 // jnr.posix.Group gr
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby top java.lang.Class
      StackMap stack: java.lang.Throwable
         5: aload 3
            monitorexit
         6: athrow
        start local 2 // jnr.posix.Group gr
         7: .line 405
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby jnr.posix.Group
      StackMap stack:
            aload 2 /* gr */
            ifnull 10
         8: .line 406
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            aload 2 /* gr */
            invokestatic org.jruby.ext.etc.RubyEtc.setupGroup:(Lorg/jruby/Ruby;Ljnr/posix/Group;)Lorg/jruby/runtime/builtin/IRubyObject;
         9: areturn
        10: .line 408
      StackMap locals:
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
        11: areturn
        end local 2 // jnr.posix.Group gr
        12: .line 410
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby
      StackMap stack: java.lang.Exception
            pop
        13: .line 411
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 15
        14: .line 412
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.NOT_IMPLEMENTED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Etc.getgrent is not supported by JRuby on this platform"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
        15: .line 414
      StackMap locals:
      StackMap stack:
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1   16     1  runtime  Lorg/jruby/Ruby;
            3    5     2       gr  Ljnr/posix/Group;
            7   12     2       gr  Ljnr/posix/Group;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
           1     9      12  Class java.lang.Exception
          10    11      12  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
      Name  Flags
      recv  

  public static synchronized org.jruby.runtime.builtin.IRubyObject systmpdir(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 420
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 421
            ldc "java.io.tmpdir"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.jruby.util.ByteList.create:(Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
            astore 3 /* tmp */
        start local 3 // org.jruby.util.ByteList tmp
         2: .line 422
            getstatic jnr.posix.util.Platform.IS_WINDOWS:Z
            ifeq 5
         3: .line 423
            ldc "CSIDL_COMMON_APPDATA"
            invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* commonAppData */
        start local 4 // java.lang.String commonAppData
         4: .line 424
            aload 4 /* commonAppData */
            ifnull 5
            aload 4 /* commonAppData */
            invokestatic org.jruby.util.ByteList.create:(Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
            astore 3 /* tmp */
        end local 4 // java.lang.String commonAppData
         5: .line 426
      StackMap locals: org.jruby.Ruby org.jruby.util.ByteList
      StackMap stack:
            aload 2 /* runtime */
            aload 3 /* tmp */
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultExternalEncoding:()Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            astore 4 /* ret */
        start local 4 // org.jruby.RubyString ret
         6: .line 427
            aload 4 /* ret */
            aload 0 /* context */
            invokevirtual org.jruby.RubyString.untaint:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         7: .line 429
            aload 4 /* ret */
            areturn
        end local 4 // org.jruby.RubyString ret
        end local 3 // org.jruby.util.ByteList tmp
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0        context  Lorg/jruby/runtime/ThreadContext;
            0    8     1           recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    8     2        runtime  Lorg/jruby/Ruby;
            2    8     3            tmp  Lorg/jruby/util/ByteList;
            4    5     4  commonAppData  Ljava/lang/String;
            6    8     4            ret  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static synchronized org.jruby.runtime.builtin.IRubyObject sysconfdir(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 434
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 435
            aload 2 /* runtime */
            invokestatic org.jruby.ext.rbconfig.RbConfigLibrary.getSysConfDir:(Lorg/jruby/Ruby;)Ljava/lang/String;
            invokestatic org.jruby.util.ByteList.create:(Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
            astore 3 /* tmp */
        start local 3 // org.jruby.util.ByteList tmp
         2: .line 437
            getstatic jnr.posix.util.Platform.IS_WINDOWS:Z
            ifeq 5
         3: .line 438
            ldc "CSIDL_LOCAL_APPDATA"
            invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* localAppData */
        start local 4 // java.lang.String localAppData
         4: .line 440
            aload 4 /* localAppData */
            ifnull 5
            aload 4 /* localAppData */
            invokestatic org.jruby.util.ByteList.create:(Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
            astore 3 /* tmp */
        end local 4 // java.lang.String localAppData
         5: .line 442
      StackMap locals: org.jruby.Ruby org.jruby.util.ByteList
      StackMap stack:
            aload 2 /* runtime */
            aload 3 /* tmp */
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultExternalEncoding:()Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            astore 4 /* ret */
        start local 4 // org.jruby.RubyString ret
         6: .line 443
            aload 4 /* ret */
            aload 0 /* context */
            invokevirtual org.jruby.RubyString.untaint:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         7: .line 445
            aload 4 /* ret */
            areturn
        end local 4 // org.jruby.RubyString ret
        end local 3 // org.jruby.util.ByteList tmp
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0       context  Lorg/jruby/runtime/ThreadContext;
            0    8     1          recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    8     2       runtime  Lorg/jruby/Ruby;
            2    8     3           tmp  Lorg/jruby/util/ByteList;
            4    5     4  localAppData  Ljava/lang/String;
            6    8     4           ret  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static synchronized org.jruby.runtime.builtin.IRubyObject nprocessors(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 450
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            invokevirtual java.lang.Runtime.availableProcessors:()I
            istore 2 /* nprocs */
        start local 2 // int nprocs
         1: .line 451
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getRuntime:()Lorg/jruby/Ruby;
            iload 2 /* nprocs */
            i2l
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            areturn
        end local 2 // int nprocs
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    2     2   nprocs  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static synchronized org.jruby.runtime.builtin.IRubyObject uname(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 456
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 457
            aload 2 /* runtime */
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 3 /* uname */
        start local 3 // org.jruby.RubyHash uname
         2: .line 459
            aload 3 /* uname */
            aload 0 /* context */
         3: .line 460
            aload 2 /* runtime */
            ldc "sysname"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
         4: .line 461
            aload 2 /* runtime */
            ldc "os.name"
            ldc "unknown"
            invokestatic org.jruby.util.SafePropertyAccessor.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
         5: .line 459
            invokevirtual org.jruby.RubyHash.op_aset:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         6: .line 463
            aload 3 /* uname */
            aload 0 /* context */
         7: .line 464
            aload 2 /* runtime */
            ldc "nodename"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
         8: .line 465
            aload 2 /* runtime */
            invokestatic java.net.InetAddress.getLocalHost:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.getHostName:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
         9: .line 463
            invokevirtual org.jruby.RubyHash.op_aset:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        10: .line 466
            goto 16
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.RubyHash
      StackMap stack: java.net.UnknownHostException
        11: pop
        12: .line 467
            aload 3 /* uname */
            aload 0 /* context */
        13: .line 468
            aload 2 /* runtime */
            ldc "nodename"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
        14: .line 469
            aload 2 /* runtime */
            ldc "unknown"
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
        15: .line 467
            invokevirtual org.jruby.RubyHash.op_aset:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        16: .line 471
      StackMap locals:
      StackMap stack:
            aload 3 /* uname */
            aload 2 /* runtime */
            ldc "release"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 2 /* runtime */
            ldc "unknown"
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyHash.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 472
            aload 3 /* uname */
            aload 2 /* runtime */
            ldc "version"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 2 /* runtime */
            ldc "os.version"
            invokestatic org.jruby.util.SafePropertyAccessor.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyHash.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 473
            aload 3 /* uname */
            aload 2 /* runtime */
            ldc "machine"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 2 /* runtime */
            ldc "os.arch"
            invokestatic org.jruby.util.SafePropertyAccessor.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyHash.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 475
            aload 3 /* uname */
            areturn
        end local 3 // org.jruby.RubyHash uname
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0  context  Lorg/jruby/runtime/ThreadContext;
            0   20     1     self  Lorg/jruby/runtime/builtin/IRubyObject;
            1   20     2  runtime  Lorg/jruby/Ruby;
            2   20     3    uname  Lorg/jruby/RubyHash;
      Exception table:
        from    to  target  type
           6    10      11  Class java.net.UnknownHostException
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(module = true)
    MethodParameters:
         Name  Flags
      context  
      self     
}
SourceFile: "RubyEtc.java"
InnerClasses:
  public final ID = org.jruby.common.IRubyWarnings$ID of org.jruby.common.IRubyWarnings
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyModule(name = {"Etc"})