class org.apache.commons.collections.functors.FunctorUtils
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.commons.collections.functors.FunctorUtils
  super_class: java.lang.Object
{
  static final java.lang.String UNSAFE_SERIALIZABLE_PROPERTY;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "org.apache.commons.collections.enableUnsafeSerialization"

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.functors.FunctorUtils this
         0: .line 47
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 48
            return
        end local 0 // org.apache.commons.collections.functors.FunctorUtils this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/collections/functors/FunctorUtils;

  static org.apache.commons.collections.Predicate[] copy(org.apache.commons.collections.Predicate[]);
    descriptor: ([Lorg/apache/commons/collections/Predicate;)[Lorg/apache/commons/collections/Predicate;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.Predicate[] predicates
         0: .line 57
            aload 0 /* predicates */
            ifnonnull 2
         1: .line 58
            aconst_null
            areturn
         2: .line 60
      StackMap locals:
      StackMap stack:
            aload 0 /* predicates */
            invokevirtual org.apache.commons.collections.Predicate[].clone:()Ljava/lang/Object;
            checkcast org.apache.commons.collections.Predicate[]
            areturn
        end local 0 // org.apache.commons.collections.Predicate[] predicates
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  predicates  [Lorg/apache/commons/collections/Predicate;
    MethodParameters:
            Name  Flags
      predicates  

  static void validate(org.apache.commons.collections.Predicate[]);
    descriptor: ([Lorg/apache/commons/collections/Predicate;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.apache.commons.collections.Predicate[] predicates
         0: .line 69
            aload 0 /* predicates */
            ifnonnull 2
         1: .line 70
            new java.lang.IllegalArgumentException
            dup
            ldc "The predicate array must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 72
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         3: goto 7
         4: .line 73
      StackMap locals: int
      StackMap stack:
            aload 0 /* predicates */
            iload 1 /* i */
            aaload
            ifnonnull 6
         5: .line 74
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The predicate array must not contain a null predicate, index "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " was null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 72
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            aload 0 /* predicates */
            arraylength
            if_icmplt 4
        end local 1 // int i
         8: .line 77
            return
        end local 0 // org.apache.commons.collections.Predicate[] predicates
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  predicates  [Lorg/apache/commons/collections/Predicate;
            3    8     1           i  I
    MethodParameters:
            Name  Flags
      predicates  

  static org.apache.commons.collections.Predicate[] validate(java.util.Collection);
    descriptor: (Ljava/util/Collection;)[Lorg/apache/commons/collections/Predicate;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.util.Collection predicates
         0: .line 86
            aload 0 /* predicates */
            ifnonnull 2
         1: .line 87
            new java.lang.IllegalArgumentException
            dup
            ldc "The predicate collection must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 90
      StackMap locals:
      StackMap stack:
            aload 0 /* predicates */
            invokeinterface java.util.Collection.size:()I
            anewarray org.apache.commons.collections.Predicate
            astore 1 /* preds */
        start local 1 // org.apache.commons.collections.Predicate[] preds
         3: .line 91
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         4: .line 92
            aload 0 /* predicates */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3 /* it */
        start local 3 // java.util.Iterator it
         5: goto 10
         6: .line 93
      StackMap locals: org.apache.commons.collections.Predicate[] int java.util.Iterator
      StackMap stack:
            aload 1 /* preds */
            iload 2 /* i */
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.commons.collections.Predicate
            aastore
         7: .line 94
            aload 1 /* preds */
            iload 2 /* i */
            aaload
            ifnonnull 9
         8: .line 95
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The predicate collection must not contain a null predicate, index "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " was null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 97
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
        10: .line 92
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        end local 3 // java.util.Iterator it
        11: .line 99
            aload 1 /* preds */
            areturn
        end local 2 // int i
        end local 1 // org.apache.commons.collections.Predicate[] preds
        end local 0 // java.util.Collection predicates
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0  predicates  Ljava/util/Collection;
            3   12     1       preds  [Lorg/apache/commons/collections/Predicate;
            4   12     2           i  I
            5   11     3          it  Ljava/util/Iterator;
    MethodParameters:
            Name  Flags
      predicates  

  static org.apache.commons.collections.Closure[] copy(org.apache.commons.collections.Closure[]);
    descriptor: ([Lorg/apache/commons/collections/Closure;)[Lorg/apache/commons/collections/Closure;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.Closure[] closures
         0: .line 109
            aload 0 /* closures */
            ifnonnull 2
         1: .line 110
            aconst_null
            areturn
         2: .line 112
      StackMap locals:
      StackMap stack:
            aload 0 /* closures */
            invokevirtual org.apache.commons.collections.Closure[].clone:()Ljava/lang/Object;
            checkcast org.apache.commons.collections.Closure[]
            areturn
        end local 0 // org.apache.commons.collections.Closure[] closures
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  closures  [Lorg/apache/commons/collections/Closure;
    MethodParameters:
          Name  Flags
      closures  

  static void validate(org.apache.commons.collections.Closure[]);
    descriptor: ([Lorg/apache/commons/collections/Closure;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.apache.commons.collections.Closure[] closures
         0: .line 121
            aload 0 /* closures */
            ifnonnull 2
         1: .line 122
            new java.lang.IllegalArgumentException
            dup
            ldc "The closure array must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 124
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         3: goto 7
         4: .line 125
      StackMap locals: int
      StackMap stack:
            aload 0 /* closures */
            iload 1 /* i */
            aaload
            ifnonnull 6
         5: .line 126
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The closure array must not contain a null closure, index "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " was null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 124
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            aload 0 /* closures */
            arraylength
            if_icmplt 4
        end local 1 // int i
         8: .line 129
            return
        end local 0 // org.apache.commons.collections.Closure[] closures
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0  closures  [Lorg/apache/commons/collections/Closure;
            3    8     1         i  I
    MethodParameters:
          Name  Flags
      closures  

  static org.apache.commons.collections.Transformer[] copy(org.apache.commons.collections.Transformer[]);
    descriptor: ([Lorg/apache/commons/collections/Transformer;)[Lorg/apache/commons/collections/Transformer;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.Transformer[] transformers
         0: .line 138
            aload 0 /* transformers */
            ifnonnull 2
         1: .line 139
            aconst_null
            areturn
         2: .line 141
      StackMap locals:
      StackMap stack:
            aload 0 /* transformers */
            invokevirtual org.apache.commons.collections.Transformer[].clone:()Ljava/lang/Object;
            checkcast org.apache.commons.collections.Transformer[]
            areturn
        end local 0 // org.apache.commons.collections.Transformer[] transformers
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0  transformers  [Lorg/apache/commons/collections/Transformer;
    MethodParameters:
              Name  Flags
      transformers  

  static void validate(org.apache.commons.collections.Transformer[]);
    descriptor: ([Lorg/apache/commons/collections/Transformer;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.apache.commons.collections.Transformer[] transformers
         0: .line 150
            aload 0 /* transformers */
            ifnonnull 2
         1: .line 151
            new java.lang.IllegalArgumentException
            dup
            ldc "The transformer array must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 153
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         3: goto 9
         4: .line 154
      StackMap locals: int
      StackMap stack:
            aload 0 /* transformers */
            iload 1 /* i */
            aaload
            ifnonnull 8
         5: .line 155
            new java.lang.IllegalArgumentException
            dup
         6: .line 156
            new java.lang.StringBuilder
            dup
            ldc "The transformer array must not contain a null transformer, index "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " was null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 155
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 153
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 1 /* i */
            aload 0 /* transformers */
            arraylength
            if_icmplt 4
        end local 1 // int i
        10: .line 159
            return
        end local 0 // org.apache.commons.collections.Transformer[] transformers
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0  transformers  [Lorg/apache/commons/collections/Transformer;
            3   10     1             i  I
    MethodParameters:
              Name  Flags
      transformers  

  static void checkUnsafeSerialization(java.lang.Class);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.Class clazz
         0: .line 173
            new org.apache.commons.collections.functors.FunctorUtils$1
            dup
            invokespecial org.apache.commons.collections.functors.FunctorUtils$1.<init>:()V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
         1: .line 172
            astore 1 /* unsafeSerializableProperty */
        start local 1 // java.lang.String unsafeSerializableProperty
         2: .line 178
            goto 5
        end local 1 // java.lang.String unsafeSerializableProperty
      StackMap locals:
      StackMap stack: java.lang.SecurityException
         3: pop
         4: .line 179
            aconst_null
            astore 1 /* unsafeSerializableProperty */
        start local 1 // java.lang.String unsafeSerializableProperty
         5: .line 182
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "true"
            aload 1 /* unsafeSerializableProperty */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 12
         6: .line 183
            new java.lang.UnsupportedOperationException
            dup
         7: .line 184
            new java.lang.StringBuilder
            dup
            ldc "Serialization support for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " is disabled for security reasons. "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 185
            ldc "To enable it set system property '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "org.apache.commons.collections.enableUnsafeSerialization"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' to 'true', "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 186
            ldc "but you must ensure that your application does not de-serialize objects from untrusted sources."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 184
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 183
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 188
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String unsafeSerializableProperty
        end local 0 // java.lang.Class clazz
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   13     0                       clazz  Ljava/lang/Class;
            2    3     1  unsafeSerializableProperty  Ljava/lang/String;
            5   13     1  unsafeSerializableProperty  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.SecurityException
    MethodParameters:
       Name  Flags
      clazz  
}
SourceFile: "FunctorUtils.java"
NestMembers:
  org.apache.commons.collections.functors.FunctorUtils$1
InnerClasses:
  org.apache.commons.collections.functors.FunctorUtils$1