public final class org.eclipse.collections.impl.block.factory.Functions
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.eclipse.collections.impl.block.factory.Functions
  super_class: java.lang.Object
{
  private static final org.eclipse.collections.api.block.function.Function<java.lang.Double, java.lang.Double> DOUBLE_PASS_THRU_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Double;Ljava/lang/Double;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Integer, java.lang.Integer> INTEGER_PASS_THRU_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Integer;Ljava/lang/Integer;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Long, java.lang.Long> LONG_PASS_THRU_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Long;Ljava/lang/Long;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.Boolean> TRUE_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/Boolean;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.Boolean> FALSE_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/Boolean;>;

  private static final org.eclipse.collections.api.block.function.Function<?, ?> PASS_THRU_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<**>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.String, java.lang.String> STRING_TRIM_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/String;Ljava/lang/String;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.Class<?>> CLASS_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/Class<*>;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Number, java.lang.Double> MATH_SIN_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Number;Ljava/lang/Double;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Integer, java.lang.Integer> SQUARED_INTEGER;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Integer;Ljava/lang/Integer;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.String> TO_STRING_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/String;>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.String, java.lang.Integer> STRING_TO_INTEGER_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/String;Ljava/lang/Integer;>;

  private static final org.eclipse.collections.api.block.function.Function<?, ?> MAP_KEY_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<**>;

  private static final org.eclipse.collections.api.block.function.Function<?, ?> MAP_VALUE_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<**>;

  private static final org.eclipse.collections.api.block.function.Function<java.lang.Iterable<?>, java.lang.Integer> SIZE_FUNCTION;
    descriptor: Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Iterable<*>;Ljava/lang/Integer;>;

  private static final org.eclipse.collections.impl.block.factory.Functions$FirstOfPairFunction<?> FIRST_OF_PAIR_FUNCTION;
    descriptor: Lorg/eclipse/collections/impl/block/factory/Functions$FirstOfPairFunction;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/impl/block/factory/Functions$FirstOfPairFunction<*>;

  private static final org.eclipse.collections.impl.block.factory.Functions$SecondOfPairFunction<?> SECOND_OF_PAIR_FUNCTION;
    descriptor: Lorg/eclipse/collections/impl/block/factory/Functions$SecondOfPairFunction;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/impl/block/factory/Functions$SecondOfPairFunction<*>;

  private static final org.eclipse.collections.impl.block.function.checked.CheckedFunction<java.lang.String, java.lang.Class<?>> CLASS_FOR_NAME;
    descriptor: Lorg/eclipse/collections/impl/block/function/checked/CheckedFunction;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/impl/block/function/checked/CheckedFunction<Ljava/lang/String;Ljava/lang/Class<*>;>;

  private static final org.eclipse.collections.impl.block.factory.Functions$SwappedPairFunction<?, ?> SWAPPED_PAIR_FUNCTION;
    descriptor: Lorg/eclipse/collections/impl/block/factory/Functions$SwappedPairFunction;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/impl/block/factory/Functions$SwappedPairFunction<**>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 50
            new org.eclipse.collections.impl.block.factory.Functions$DoublePassThruFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$DoublePassThruFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.DOUBLE_PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         1: .line 51
            new org.eclipse.collections.impl.block.factory.Functions$IntegerPassThruFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$IntegerPassThruFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.INTEGER_PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         2: .line 52
            new org.eclipse.collections.impl.block.factory.Functions$LongPassThruFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$LongPassThruFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.LONG_PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         3: .line 54
            new org.eclipse.collections.impl.block.factory.Functions$TrueFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$TrueFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.TRUE_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         4: .line 55
            new org.eclipse.collections.impl.block.factory.Functions$FalseFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$FalseFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.FALSE_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         5: .line 56
            new org.eclipse.collections.impl.block.factory.Functions$PassThruFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$PassThruFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         6: .line 57
            new org.eclipse.collections.impl.block.factory.Functions$StringTrimFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$StringTrimFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.STRING_TRIM_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         7: .line 58
            new org.eclipse.collections.impl.block.factory.Functions$ClassFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$ClassFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.CLASS_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         8: .line 59
            new org.eclipse.collections.impl.block.factory.Functions$MathSinFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$MathSinFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.MATH_SIN_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
         9: .line 60
            new org.eclipse.collections.impl.block.factory.Functions$SquaredIntegerFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$SquaredIntegerFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.SQUARED_INTEGER:Lorg/eclipse/collections/api/block/function/Function;
        10: .line 61
            new org.eclipse.collections.impl.block.factory.Functions$ToStringFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$ToStringFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.TO_STRING_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
        11: .line 62
            new org.eclipse.collections.impl.block.factory.Functions$StringToIntegerFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$StringToIntegerFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.STRING_TO_INTEGER_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
        12: .line 63
            new org.eclipse.collections.impl.block.factory.Functions$MapKeyFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$MapKeyFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.MAP_KEY_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
        13: .line 64
            new org.eclipse.collections.impl.block.factory.Functions$MapValueFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$MapValueFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.MAP_VALUE_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
        14: .line 65
            new org.eclipse.collections.impl.block.factory.Functions$SizeFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$SizeFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.SIZE_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
        15: .line 66
            new org.eclipse.collections.impl.block.factory.Functions$FirstOfPairFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$FirstOfPairFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.FIRST_OF_PAIR_FUNCTION:Lorg/eclipse/collections/impl/block/factory/Functions$FirstOfPairFunction;
        16: .line 67
            new org.eclipse.collections.impl.block.factory.Functions$SecondOfPairFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$SecondOfPairFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.SECOND_OF_PAIR_FUNCTION:Lorg/eclipse/collections/impl/block/factory/Functions$SecondOfPairFunction;
        17: .line 68
            new org.eclipse.collections.impl.block.factory.Functions$ClassForNameFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$ClassForNameFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.CLASS_FOR_NAME:Lorg/eclipse/collections/impl/block/function/checked/CheckedFunction;
        18: .line 69
            new org.eclipse.collections.impl.block.factory.Functions$SwappedPairFunction
            dup
            invokespecial org.eclipse.collections.impl.block.factory.Functions$SwappedPairFunction.<init>:()V
            putstatic org.eclipse.collections.impl.block.factory.Functions.SWAPPED_PAIR_FUNCTION:Lorg/eclipse/collections/impl/block/factory/Functions$SwappedPairFunction;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.impl.block.factory.Functions this
         0: .line 71
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 73
            new java.lang.AssertionError
            dup
            ldc "Suppress default constructor for noninstantiability"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 0 // org.eclipse.collections.impl.block.factory.Functions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/collections/impl/block/factory/Functions;

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> throwing(org.eclipse.collections.impl.block.function.checked.ThrowingFunction<T, V>);
    descriptor: (Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.impl.block.function.checked.ThrowingFunction throwingFunction
         0: .line 200
            new org.eclipse.collections.impl.block.factory.Functions$ThrowingFunctionAdapter
            dup
            aload 0 /* throwingFunction */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$ThrowingFunctionAdapter.<init>:(Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;)V
            areturn
        end local 0 // org.eclipse.collections.impl.block.function.checked.ThrowingFunction throwingFunction
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0  throwingFunction  Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction<TT;TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction<TT;TV;>;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
                  Name  Flags
      throwingFunction  

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> throwing(org.eclipse.collections.impl.block.function.checked.ThrowingFunction<T, V>, org.eclipse.collections.api.block.function.Function2<T, ? super java.lang.Throwable, ? extends java.lang.RuntimeException>);
    descriptor: (Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;Lorg/eclipse/collections/api/block/function/Function2;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.block.function.checked.ThrowingFunction throwingFunction
        start local 1 // org.eclipse.collections.api.block.function.Function2 rethrow
         0: .line 212
            aload 0 /* throwingFunction */
            aload 1 /* rethrow */
            invokedynamic valueOf(Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;Lorg/eclipse/collections/api/block/function/Function2;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/block/factory/Functions.lambda$0(Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;)Ljava/lang/Object; (6)
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  1
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function2 rethrow
        end local 0 // org.eclipse.collections.impl.block.function.checked.ThrowingFunction throwingFunction
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0  throwingFunction  Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction<TT;TV;>;
            0    1     1           rethrow  Lorg/eclipse/collections/api/block/function/Function2<TT;-Ljava/lang/Throwable;+Ljava/lang/RuntimeException;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction<TT;TV;>;Lorg/eclipse/collections/api/block/function/Function2<TT;-Ljava/lang/Throwable;+Ljava/lang/RuntimeException;>;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
                  Name  Flags
      throwingFunction  
      rethrow           

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> cast(org.eclipse.collections.api.block.function.Function<T, V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.Function function
         0: .line 235
            aload 0 /* function */
            areturn
        end local 0 // org.eclipse.collections.api.block.function.Function function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T> org.eclipse.collections.api.block.function.Function<T, T> getPassThru();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 245
            invokestatic org.eclipse.collections.impl.block.factory.Functions.identity:()Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Lorg/eclipse/collections/api/block/function/Function<TT;TT;>;

  public static <T> org.eclipse.collections.api.block.function.Function<T, T> identity();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 253
            getstatic org.eclipse.collections.impl.block.factory.Functions.PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Lorg/eclipse/collections/api/block/function/Function<TT;TT;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.Boolean> getTrue();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 261
            getstatic org.eclipse.collections.impl.block.factory.Functions.TRUE_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/Boolean;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.Boolean> getFalse();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 269
            getstatic org.eclipse.collections.impl.block.factory.Functions.FALSE_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/Boolean;>;

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> getFixedValue(V);
    descriptor: (Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object value
         0: .line 274
            new org.eclipse.collections.impl.block.factory.Functions$FixedValueFunction
            dup
            aload 0 /* value */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$FixedValueFunction.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  value  TV;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(TV;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
       Name  Flags
      value  

  public static org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.Class<?>> getToClass();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 279
            getstatic org.eclipse.collections.impl.block.factory.Functions.CLASS_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/Class<*>;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Number, java.lang.Double> getMathSinFunction();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 284
            getstatic org.eclipse.collections.impl.block.factory.Functions.MATH_SIN_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Number;Ljava/lang/Double;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Number, java.lang.Number> getNumberPassThru();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 289
            getstatic org.eclipse.collections.impl.block.factory.Functions.PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Number;Ljava/lang/Number;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Integer, java.lang.Integer> getIntegerPassThru();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 294
            getstatic org.eclipse.collections.impl.block.factory.Functions.INTEGER_PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Integer;Ljava/lang/Integer;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Long, java.lang.Long> getLongPassThru();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 299
            getstatic org.eclipse.collections.impl.block.factory.Functions.LONG_PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Long;Ljava/lang/Long;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Double, java.lang.Double> getDoublePassThru();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 304
            getstatic org.eclipse.collections.impl.block.factory.Functions.DOUBLE_PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Double;Ljava/lang/Double;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.String, java.lang.String> getStringPassThru();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 309
            getstatic org.eclipse.collections.impl.block.factory.Functions.PASS_THRU_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/String;Ljava/lang/String;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.String, java.lang.String> getStringTrim();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 314
            getstatic org.eclipse.collections.impl.block.factory.Functions.STRING_TRIM_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/String;Ljava/lang/String;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.String> getToString();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 319
            getstatic org.eclipse.collections.impl.block.factory.Functions.TO_STRING_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/String;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Object, java.lang.String> getNullSafeToString(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String defaultValue
         0: .line 324
            getstatic org.eclipse.collections.impl.block.factory.Functions.TO_STRING_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            aload 0 /* defaultValue */
            invokestatic org.eclipse.collections.impl.block.factory.Functions.nullSafe:(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
            areturn
        end local 0 // java.lang.String defaultValue
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0  defaultValue  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Object;Ljava/lang/String;>;
    MethodParameters:
              Name  Flags
      defaultValue  

  public static <T> org.eclipse.collections.api.block.SerializableComparator<T> toBooleanComparator(org.eclipse.collections.api.block.function.primitive.BooleanFunction<T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction;)Lorg/eclipse/collections/api/block/SerializableComparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.primitive.BooleanFunction function
         0: .line 329
            new org.eclipse.collections.impl.block.comparator.primitive.BooleanFunctionComparator
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.comparator.primitive.BooleanFunctionComparator.<init>:(Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.primitive.BooleanFunction function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<TT;>;)Lorg/eclipse/collections/api/block/SerializableComparator<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T> org.eclipse.collections.api.block.SerializableComparator<T> toByteComparator(org.eclipse.collections.api.block.function.primitive.ByteFunction<T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/ByteFunction;)Lorg/eclipse/collections/api/block/SerializableComparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.primitive.ByteFunction function
         0: .line 334
            new org.eclipse.collections.impl.block.comparator.primitive.ByteFunctionComparator
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.comparator.primitive.ByteFunctionComparator.<init>:(Lorg/eclipse/collections/api/block/function/primitive/ByteFunction;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.primitive.ByteFunction function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<TT;>;)Lorg/eclipse/collections/api/block/SerializableComparator<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T> org.eclipse.collections.api.block.SerializableComparator<T> toCharComparator(org.eclipse.collections.api.block.function.primitive.CharFunction<T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/CharFunction;)Lorg/eclipse/collections/api/block/SerializableComparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.primitive.CharFunction function
         0: .line 339
            new org.eclipse.collections.impl.block.comparator.primitive.CharFunctionComparator
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.comparator.primitive.CharFunctionComparator.<init>:(Lorg/eclipse/collections/api/block/function/primitive/CharFunction;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.primitive.CharFunction function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/primitive/CharFunction<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/primitive/CharFunction<TT;>;)Lorg/eclipse/collections/api/block/SerializableComparator<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T> org.eclipse.collections.api.block.SerializableComparator<T> toFloatComparator(org.eclipse.collections.api.block.function.primitive.FloatFunction<T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)Lorg/eclipse/collections/api/block/SerializableComparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
         0: .line 344
            new org.eclipse.collections.impl.block.comparator.primitive.FloatFunctionComparator
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.comparator.primitive.FloatFunctionComparator.<init>:(Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<TT;>;)Lorg/eclipse/collections/api/block/SerializableComparator<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T> org.eclipse.collections.api.block.SerializableComparator<T> toShortComparator(org.eclipse.collections.api.block.function.primitive.ShortFunction<T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/ShortFunction;)Lorg/eclipse/collections/api/block/SerializableComparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.primitive.ShortFunction function
         0: .line 349
            new org.eclipse.collections.impl.block.comparator.primitive.ShortFunctionComparator
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.comparator.primitive.ShortFunctionComparator.<init>:(Lorg/eclipse/collections/api/block/function/primitive/ShortFunction;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.primitive.ShortFunction function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<TT;>;)Lorg/eclipse/collections/api/block/SerializableComparator<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T> org.eclipse.collections.api.block.SerializableComparator<T> toIntComparator(org.eclipse.collections.api.block.function.primitive.IntFunction<T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)Lorg/eclipse/collections/api/block/SerializableComparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.primitive.IntFunction function
         0: .line 354
            new org.eclipse.collections.impl.block.comparator.primitive.IntFunctionComparator
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.comparator.primitive.IntFunctionComparator.<init>:(Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.primitive.IntFunction function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/primitive/IntFunction<TT;>;)Lorg/eclipse/collections/api/block/SerializableComparator<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T> org.eclipse.collections.api.block.SerializableComparator<T> toDoubleComparator(org.eclipse.collections.api.block.function.primitive.DoubleFunction<T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)Lorg/eclipse/collections/api/block/SerializableComparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
         0: .line 359
            new org.eclipse.collections.impl.block.comparator.primitive.DoubleFunctionComparator
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.comparator.primitive.DoubleFunctionComparator.<init>:(Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<TT;>;)Lorg/eclipse/collections/api/block/SerializableComparator<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T> org.eclipse.collections.api.block.SerializableComparator<T> toLongComparator(org.eclipse.collections.api.block.function.primitive.LongFunction<T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)Lorg/eclipse/collections/api/block/SerializableComparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.primitive.LongFunction function
         0: .line 364
            new org.eclipse.collections.impl.block.comparator.primitive.LongFunctionComparator
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.comparator.primitive.LongFunctionComparator.<init>:(Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.primitive.LongFunction function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/primitive/LongFunction<TT;>;)Lorg/eclipse/collections/api/block/SerializableComparator<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public static org.eclipse.collections.api.block.function.Function<java.lang.String, java.lang.Integer> getStringToInteger();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 369
            getstatic org.eclipse.collections.impl.block.factory.Functions.STRING_TO_INTEGER_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/String;Ljava/lang/Integer;>;

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> withDefault(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, V);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function
        start local 1 // java.lang.Object defaultValue
         0: .line 374
            new org.eclipse.collections.impl.block.factory.Functions$DefaultFunction
            dup
            aload 0 /* function */
            aload 1 /* defaultValue */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$DefaultFunction.<init>:(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object defaultValue
        end local 0 // org.eclipse.collections.api.block.function.Function function
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0      function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    1     1  defaultValue  TV;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TV;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
              Name  Flags
      function      
      defaultValue  

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> nullSafe(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.Function function
         0: .line 379
            new org.eclipse.collections.impl.block.factory.Functions$NullSafeFunction
            dup
            aload 0 /* function */
            aconst_null
            invokespecial org.eclipse.collections.impl.block.factory.Functions$NullSafeFunction.<init>:(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.Function function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
          Name  Flags
      function  

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> nullSafe(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, V);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function
        start local 1 // java.lang.Object nullValue
         0: .line 384
            new org.eclipse.collections.impl.block.factory.Functions$NullSafeFunction
            dup
            aload 0 /* function */
            aload 1 /* nullValue */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$NullSafeFunction.<init>:(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object nullValue
        end local 0 // org.eclipse.collections.api.block.function.Function function
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    1     1  nullValue  TV;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TV;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
           Name  Flags
      function   
      nullValue  

  public static <V1> org.eclipse.collections.api.block.function.Function<org.eclipse.collections.api.tuple.Pair<V1, ?>, V1> firstOfPair();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 389
            getstatic org.eclipse.collections.impl.block.factory.Functions.FIRST_OF_PAIR_FUNCTION:Lorg/eclipse/collections/impl/block/factory/Functions$FirstOfPairFunction;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <V1:Ljava/lang/Object;>()Lorg/eclipse/collections/api/block/function/Function<Lorg/eclipse/collections/api/tuple/Pair<TV1;*>;TV1;>;

  public static <V2> org.eclipse.collections.api.block.function.Function<org.eclipse.collections.api.tuple.Pair<?, V2>, V2> secondOfPair();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 394
            getstatic org.eclipse.collections.impl.block.factory.Functions.SECOND_OF_PAIR_FUNCTION:Lorg/eclipse/collections/impl/block/factory/Functions$SecondOfPairFunction;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <V2:Ljava/lang/Object;>()Lorg/eclipse/collections/api/block/function/Function<Lorg/eclipse/collections/api/tuple/Pair<*TV2;>;TV2;>;

  public static <S, T> org.eclipse.collections.api.block.function.Function<org.eclipse.collections.api.tuple.Pair<S, T>, org.eclipse.collections.api.tuple.Pair<T, S>> swappedPair();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 404
            getstatic org.eclipse.collections.impl.block.factory.Functions.SWAPPED_PAIR_FUNCTION:Lorg/eclipse/collections/impl/block/factory/Functions$SwappedPairFunction;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <S:Ljava/lang/Object;T:Ljava/lang/Object;>()Lorg/eclipse/collections/api/block/function/Function<Lorg/eclipse/collections/api/tuple/Pair<TS;TT;>;Lorg/eclipse/collections/api/tuple/Pair<TT;TS;>;>;

  public static <T, P, R> org.eclipse.collections.api.block.function.Function<T, R> bind(org.eclipse.collections.api.block.function.Function2<? super T, ? super P, ? extends R>, P);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function2 function
        start local 1 // java.lang.Object parameter
         0: .line 416
            new org.eclipse.collections.impl.block.factory.Functions$BindFunction2
            dup
            aload 0 /* function */
            aload 1 /* parameter */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$BindFunction2.<init>:(Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object parameter
        end local 0 // org.eclipse.collections.api.block.function.Function2 function
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   function  Lorg/eclipse/collections/api/block/function/Function2<-TT;-TP;+TR;>;
            0    1     1  parameter  TP;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;R:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function2<-TT;-TP;+TR;>;TP;)Lorg/eclipse/collections/api/block/function/Function<TT;TR;>;
    MethodParameters:
           Name  Flags
      function   
      parameter  

  public static <T1, T2> org.eclipse.collections.api.block.procedure.Procedure<T1> bind(org.eclipse.collections.api.block.procedure.Procedure<? super T2>, org.eclipse.collections.api.block.function.Function<? super T1, T2>);
    descriptor: (Lorg/eclipse/collections/api/block/procedure/Procedure;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/procedure/Procedure;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.procedure.Procedure delegate
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 430
            new org.eclipse.collections.impl.block.factory.Functions$BindProcedure
            dup
            aload 0 /* delegate */
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$BindProcedure.<init>:(Lorg/eclipse/collections/api/block/procedure/Procedure;Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.api.block.procedure.Procedure delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  delegate  Lorg/eclipse/collections/api/block/procedure/Procedure<-TT2;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT1;TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/procedure/Procedure<-TT2;>;Lorg/eclipse/collections/api/block/function/Function<-TT1;TT2;>;)Lorg/eclipse/collections/api/block/procedure/Procedure<TT1;>;
    MethodParameters:
          Name  Flags
      delegate  
      function  

  public static <T1, T2> org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure<T1> bind(org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure<? super T2>, org.eclipse.collections.api.block.function.Function<? super T1, T2>);
    descriptor: (Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure delegate
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 444
            new org.eclipse.collections.impl.block.factory.Functions$BindObjectIntProcedure
            dup
            aload 0 /* delegate */
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$BindObjectIntProcedure.<init>:(Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  delegate  Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT2;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT1;TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT2;>;Lorg/eclipse/collections/api/block/function/Function<-TT1;TT2;>;)Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<TT1;>;
    MethodParameters:
          Name  Flags
      delegate  
      function  

  public static <T1, T2, T3> org.eclipse.collections.api.block.procedure.Procedure2<T1, T3> bind(org.eclipse.collections.api.block.procedure.Procedure2<? super T2, T3>, org.eclipse.collections.api.block.function.Function<? super T1, T2>);
    descriptor: (Lorg/eclipse/collections/api/block/procedure/Procedure2;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/procedure/Procedure2;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.procedure.Procedure2 delegate
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 457
            new org.eclipse.collections.impl.block.factory.Functions$BindProcedure2
            dup
            aload 0 /* delegate */
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$BindProcedure2.<init>:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.api.block.procedure.Procedure2 delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  delegate  Lorg/eclipse/collections/api/block/procedure/Procedure2<-TT2;TT3;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT1;TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;T3:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/procedure/Procedure2<-TT2;TT3;>;Lorg/eclipse/collections/api/block/function/Function<-TT1;TT2;>;)Lorg/eclipse/collections/api/block/procedure/Procedure2<TT1;TT3;>;
    MethodParameters:
          Name  Flags
      delegate  
      function  

  public static org.eclipse.collections.api.block.function.Function<java.lang.Integer, java.lang.Integer> squaredInteger();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 462
            getstatic org.eclipse.collections.impl.block.factory.Functions.SQUARED_INTEGER:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Integer;Ljava/lang/Integer;>;

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> firstNotNullValue(org.eclipse.collections.api.block.function.Function<T, V>[]);
    descriptor: ([Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.Function[] functions
         0: .line 467
            new org.eclipse.collections.impl.block.factory.Functions$FirstNotNullFunction
            dup
            aload 0 /* functions */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$FirstNotNullFunction.<init>:([Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.Function[] functions
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  functions  [Lorg/eclipse/collections/api/block/function/Function;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>([Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
           Name  Flags
      functions  

  public static <T> org.eclipse.collections.api.block.function.Function<T, java.lang.String> firstNotEmptyStringValue(org.eclipse.collections.api.block.function.Function<T, java.lang.String>[]);
    descriptor: ([Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.Function[] functions
         0: .line 473
            new org.eclipse.collections.impl.block.factory.Functions$FirstNotEmptyStringFunction
            dup
            aload 0 /* functions */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$FirstNotEmptyStringFunction.<init>:([Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.Function[] functions
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  functions  [Lorg/eclipse/collections/api/block/function/Function;
    Signature: <T:Ljava/lang/Object;>([Lorg/eclipse/collections/api/block/function/Function<TT;Ljava/lang/String;>;)Lorg/eclipse/collections/api/block/function/Function<TT;Ljava/lang/String;>;
    MethodParameters:
           Name  Flags
      functions  

  public static <T1, T2, I extends java.lang.Iterable<T2>> org.eclipse.collections.api.block.function.Function<T1, I> firstNotEmptyCollectionValue(org.eclipse.collections.api.block.function.Function<T1, I>[]);
    descriptor: ([Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.Function[] functions
         0: .line 479
            new org.eclipse.collections.impl.block.factory.Functions$FirstNotEmptyCollectionFunction
            dup
            aload 0 /* functions */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$FirstNotEmptyCollectionFunction.<init>:([Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.Function[] functions
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  functions  [Lorg/eclipse/collections/api/block/function/Function;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;I::Ljava/lang/Iterable<TT2;>;>([Lorg/eclipse/collections/api/block/function/Function<TT1;TI;>;)Lorg/eclipse/collections/api/block/function/Function<TT1;TI;>;
    MethodParameters:
           Name  Flags
      functions  

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> ifTrue(org.eclipse.collections.api.block.predicate.Predicate<? super T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 486
            new org.eclipse.collections.impl.block.function.IfFunction
            dup
            aload 0 /* predicate */
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.function.IfFunction.<init>:(Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.api.block.predicate.Predicate predicate
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    1     1   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
           Name  Flags
      predicate  
      function   

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> ifElse(org.eclipse.collections.api.block.predicate.Predicate<? super T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 1 // org.eclipse.collections.api.block.function.Function trueFunction
        start local 2 // org.eclipse.collections.api.block.function.Function falseFunction
         0: .line 494
            new org.eclipse.collections.impl.block.function.IfFunction
            dup
            aload 0 /* predicate */
            aload 1 /* trueFunction */
            aload 2 /* falseFunction */
            invokespecial org.eclipse.collections.impl.block.function.IfFunction.<init>:(Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 2 // org.eclipse.collections.api.block.function.Function falseFunction
        end local 1 // org.eclipse.collections.api.block.function.Function trueFunction
        end local 0 // org.eclipse.collections.api.block.predicate.Predicate predicate
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0      predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    1     1   trueFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    1     2  falseFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
               Name  Flags
      predicate      
      trueFunction   
      falseFunction  

  public static <T extends java.lang.Comparable<? super T>, V> org.eclipse.collections.impl.block.function.CaseFunction<T, V> caseDefault(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/impl/block/function/CaseFunction;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.Function defaultFunction
         0: .line 500
            new org.eclipse.collections.impl.block.function.CaseFunction
            dup
            aload 0 /* defaultFunction */
            invokespecial org.eclipse.collections.impl.block.function.CaseFunction.<init>:(Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.Function defaultFunction
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0  defaultFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <T::Ljava/lang/Comparable<-TT;>;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/impl/block/function/CaseFunction<TT;TV;>;
    MethodParameters:
                 Name  Flags
      defaultFunction  

  public static <T extends java.lang.Comparable<? super T>, V> org.eclipse.collections.impl.block.function.CaseFunction<T, V> caseDefault(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/impl/block/function/CaseFunction;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.eclipse.collections.api.block.function.Function defaultFunction
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // org.eclipse.collections.api.block.function.Function function
         0: .line 508
            aload 0 /* defaultFunction */
            invokestatic org.eclipse.collections.impl.block.factory.Functions.caseDefault:(Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/impl/block/function/CaseFunction;
            astore 3 /* caseFunction */
        start local 3 // org.eclipse.collections.impl.block.function.CaseFunction caseFunction
         1: .line 509
            aload 3 /* caseFunction */
            aload 1 /* predicate */
            aload 2 /* function */
            invokevirtual org.eclipse.collections.impl.block.function.CaseFunction.addCase:(Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/impl/block/function/CaseFunction;
            areturn
        end local 3 // org.eclipse.collections.impl.block.function.CaseFunction caseFunction
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.api.block.function.Function defaultFunction
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0  defaultFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    2     1        predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    2     2         function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1    2     3     caseFunction  Lorg/eclipse/collections/impl/block/function/CaseFunction<TT;TV;>;
    Signature: <T::Ljava/lang/Comparable<-TT;>;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/impl/block/function/CaseFunction<TT;TV;>;
    MethodParameters:
                 Name  Flags
      defaultFunction  
      predicate        
      function         

  public static <T, V> org.eclipse.collections.api.block.function.Function<T, V> synchronizedEach(org.eclipse.collections.api.block.function.Function<T, V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.api.block.function.Function function
         0: .line 514
            new org.eclipse.collections.impl.block.factory.Functions$SynchronizedFunction
            dup
            aload 0 /* function */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$SynchronizedFunction.<init>:(Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 0 // org.eclipse.collections.api.block.function.Function function
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  function  Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;)Lorg/eclipse/collections/api/block/function/Function<TT;TV;>;
    MethodParameters:
          Name  Flags
      function  

  public static org.eclipse.collections.api.block.function.Function<java.lang.String, java.lang.Class<?>> classForName();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 519
            getstatic org.eclipse.collections.impl.block.factory.Functions.CLASS_FOR_NAME:Lorg/eclipse/collections/impl/block/function/checked/CheckedFunction;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/String;Ljava/lang/Class<*>;>;

  public static <T1, T2, T3> org.eclipse.collections.impl.block.factory.Functions$FunctionChain<T1, T2, T3> chain(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.Function<? super T2, T3>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/impl/block/factory/Functions$FunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.Function function2
         0: .line 623
            new org.eclipse.collections.impl.block.factory.Functions$FunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$FunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/Function<-TT2;TT3;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;T3:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/Function<-TT2;TT3;>;)Lorg/eclipse/collections/impl/block/factory/Functions$FunctionChain<TT1;TT2;TT3;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T1, T2> org.eclipse.collections.impl.block.factory.Functions$BooleanFunctionChain<T1, T2> chainBoolean(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.primitive.BooleanFunction<? super T2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction;)Lorg/eclipse/collections/impl/block/factory/Functions$BooleanFunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.primitive.BooleanFunction function2
         0: .line 628
            new org.eclipse.collections.impl.block.factory.Functions$BooleanFunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$BooleanFunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.primitive.BooleanFunction function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<-TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<-TT2;>;)Lorg/eclipse/collections/impl/block/factory/Functions$BooleanFunctionChain<TT1;TT2;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T1, T2> org.eclipse.collections.impl.block.factory.Functions$ByteFunctionChain<T1, T2> chainByte(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.primitive.ByteFunction<? super T2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/ByteFunction;)Lorg/eclipse/collections/impl/block/factory/Functions$ByteFunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.primitive.ByteFunction function2
         0: .line 633
            new org.eclipse.collections.impl.block.factory.Functions$ByteFunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$ByteFunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/ByteFunction;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.primitive.ByteFunction function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<-TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<-TT2;>;)Lorg/eclipse/collections/impl/block/factory/Functions$ByteFunctionChain<TT1;TT2;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T1, T2> org.eclipse.collections.impl.block.factory.Functions$CharFunctionChain<T1, T2> chainChar(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.primitive.CharFunction<? super T2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/CharFunction;)Lorg/eclipse/collections/impl/block/factory/Functions$CharFunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.primitive.CharFunction function2
         0: .line 638
            new org.eclipse.collections.impl.block.factory.Functions$CharFunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$CharFunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/CharFunction;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.primitive.CharFunction function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/primitive/CharFunction<-TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/primitive/CharFunction<-TT2;>;)Lorg/eclipse/collections/impl/block/factory/Functions$CharFunctionChain<TT1;TT2;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T1, T2> org.eclipse.collections.impl.block.factory.Functions$DoubleFunctionChain<T1, T2> chainDouble(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)Lorg/eclipse/collections/impl/block/factory/Functions$DoubleFunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function2
         0: .line 643
            new org.eclipse.collections.impl.block.factory.Functions$DoubleFunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$DoubleFunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT2;>;)Lorg/eclipse/collections/impl/block/factory/Functions$DoubleFunctionChain<TT1;TT2;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T1, T2> org.eclipse.collections.impl.block.factory.Functions$FloatFunctionChain<T1, T2> chainFloat(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)Lorg/eclipse/collections/impl/block/factory/Functions$FloatFunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction function2
         0: .line 648
            new org.eclipse.collections.impl.block.factory.Functions$FloatFunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$FloatFunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT2;>;)Lorg/eclipse/collections/impl/block/factory/Functions$FloatFunctionChain<TT1;TT2;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T1, T2> org.eclipse.collections.impl.block.factory.Functions$IntFunctionChain<T1, T2> chainInt(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.primitive.IntFunction<? super T2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)Lorg/eclipse/collections/impl/block/factory/Functions$IntFunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction function2
         0: .line 653
            new org.eclipse.collections.impl.block.factory.Functions$IntFunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$IntFunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT2;>;)Lorg/eclipse/collections/impl/block/factory/Functions$IntFunctionChain<TT1;TT2;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T1, T2> org.eclipse.collections.impl.block.factory.Functions$LongFunctionChain<T1, T2> chainLong(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.primitive.LongFunction<? super T2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)Lorg/eclipse/collections/impl/block/factory/Functions$LongFunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction function2
         0: .line 658
            new org.eclipse.collections.impl.block.factory.Functions$LongFunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$LongFunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT2;>;)Lorg/eclipse/collections/impl/block/factory/Functions$LongFunctionChain<TT1;TT2;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T1, T2> org.eclipse.collections.impl.block.factory.Functions$ShortFunctionChain<T1, T2> chainShort(org.eclipse.collections.api.block.function.Function<T1, T2>, org.eclipse.collections.api.block.function.primitive.ShortFunction<? super T2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/ShortFunction;)Lorg/eclipse/collections/impl/block/factory/Functions$ShortFunctionChain;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.primitive.ShortFunction function2
         0: .line 663
            new org.eclipse.collections.impl.block.factory.Functions$ShortFunctionChain
            dup
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokespecial org.eclipse.collections.impl.block.factory.Functions$ShortFunctionChain.<init>:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/ShortFunction;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.primitive.ShortFunction function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<-TT2;>;
    Signature: <T1:Ljava/lang/Object;T2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<TT1;TT2;>;Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<-TT2;>;)Lorg/eclipse/collections/impl/block/factory/Functions$ShortFunctionChain<TT1;TT2;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <T, V1, V2> org.eclipse.collections.api.block.function.Function<T, org.eclipse.collections.api.tuple.Pair<V1, V2>> pair(org.eclipse.collections.api.block.function.Function<? super T, V1>, org.eclipse.collections.api.block.function.Function<? super T, V2>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.api.block.function.Function function1
        start local 1 // org.eclipse.collections.api.block.function.Function function2
         0: .line 782
            aload 0 /* function1 */
            aload 1 /* function2 */
            invokedynamic valueOf(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/block/factory/Functions.lambda$1(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair; (6)
                  (Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair;
                  1
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function2
        end local 0 // org.eclipse.collections.api.block.function.Function function1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  function1  Lorg/eclipse/collections/api/block/function/Function<-TT;TV1;>;
            0    1     1  function2  Lorg/eclipse/collections/api/block/function/Function<-TT;TV2;>;
    Signature: <T:Ljava/lang/Object;V1:Ljava/lang/Object;V2:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;TV1;>;Lorg/eclipse/collections/api/block/function/Function<-TT;TV2;>;)Lorg/eclipse/collections/api/block/function/Function<TT;Lorg/eclipse/collections/api/tuple/Pair<TV1;TV2;>;>;
    MethodParameters:
           Name  Flags
      function1  
      function2  

  public static <K> org.eclipse.collections.api.block.function.Function<java.util.Map$Entry<K, ?>, K> getKeyFunction();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 791
            getstatic org.eclipse.collections.impl.block.factory.Functions.MAP_KEY_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <K:Ljava/lang/Object;>()Lorg/eclipse/collections/api/block/function/Function<Ljava/util/Map$Entry<TK;*>;TK;>;

  public static <V> org.eclipse.collections.api.block.function.Function<java.util.Map$Entry<?, V>, V> getValueFunction();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 800
            getstatic org.eclipse.collections.impl.block.factory.Functions.MAP_VALUE_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <V:Ljava/lang/Object;>()Lorg/eclipse/collections/api/block/function/Function<Ljava/util/Map$Entry<*TV;>;TV;>;

  public static org.eclipse.collections.api.block.function.Function<java.lang.Iterable<?>, java.lang.Integer> getSizeOf();
    descriptor: ()Lorg/eclipse/collections/api/block/function/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 830
            getstatic org.eclipse.collections.impl.block.factory.Functions.SIZE_FUNCTION:Lorg/eclipse/collections/api/block/function/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lorg/eclipse/collections/api/block/function/Function<Ljava/lang/Iterable<*>;Ljava/lang/Integer;>;

  private static java.lang.Object lambda$0(org.eclipse.collections.impl.block.function.checked.ThrowingFunction, org.eclipse.collections.api.block.function.Function2, java.lang.Object);
    descriptor: (Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=3
        start local 2 // java.lang.Object each
         0: .line 216
            aload 0
            aload 2 /* each */
            invokeinterface org.eclipse.collections.impl.block.function.checked.ThrowingFunction.safeValueOf:(Ljava/lang/Object;)Ljava/lang/Object;
         1: areturn
         2: .line 218
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 3 /* e */
        start local 3 // java.lang.RuntimeException e
         3: .line 220
            aload 3 /* e */
            athrow
        end local 3 // java.lang.RuntimeException e
         4: .line 222
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* t */
        start local 3 // java.lang.Throwable t
         5: .line 224
            aload 1
            aload 2 /* each */
            aload 3 /* t */
            invokeinterface org.eclipse.collections.api.block.function.Function2.value:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.RuntimeException
            athrow
        end local 3 // java.lang.Throwable t
        end local 2 // java.lang.Object each
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     2  each  TT;
            3    4     3     e  Ljava/lang/RuntimeException;
            5    6     3     t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.RuntimeException
           0     1       4  Class java.lang.Throwable

  private static org.eclipse.collections.api.tuple.Pair lambda$1(org.eclipse.collections.api.block.function.Function, org.eclipse.collections.api.block.function.Function, java.lang.Object);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // java.lang.Object t
         0: .line 782
            aload 0
            aload 2 /* t */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 1
            aload 2 /* t */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic org.eclipse.collections.impl.tuple.Tuples.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair;
            areturn
        end local 2 // java.lang.Object t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     2     t  TT;

  private static java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
    descriptor: (Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=7, locals=3, args_size=1
         0: .line 1
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodName:()Ljava/lang/String;
            astore 1
            iconst_m1
            istore 2
            aload 1
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
          -1647345005: 1
          -1647345004: 2
              default: 3
          }
      StackMap locals: java.lang.String int
      StackMap stack:
         1: aload 1
            ldc "lambda$0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_0
            istore 2
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 1
            ldc "lambda$1"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_1
            istore 2
      StackMap locals:
      StackMap stack:
         3: iload 2
            lookupswitch { // 2
                    0: 4
                    1: 5
              default: 6
          }
      StackMap locals:
      StackMap stack:
         4: aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodKind:()I
            bipush 6
            if_icmpne 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceClass:()Ljava/lang/String;
            ldc "org/eclipse/collections/api/block/function/Function"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodName:()Ljava/lang/String;
            ldc "valueOf"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodSignature:()Ljava/lang/String;
            ldc "(Ljava/lang/Object;)Ljava/lang/Object;"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplClass:()Ljava/lang/String;
            ldc "org/eclipse/collections/impl/block/factory/Functions"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodSignature:()Ljava/lang/String;
            ldc "(Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;)Ljava/lang/Object;"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            iconst_0
            invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
            checkcast org.eclipse.collections.impl.block.function.checked.ThrowingFunction
            aload 0
            iconst_1
            invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
            checkcast org.eclipse.collections.api.block.function.Function2
            invokedynamic valueOf(Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;Lorg/eclipse/collections/api/block/function/Function2;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/block/factory/Functions.lambda$0(Lorg/eclipse/collections/impl/block/function/checked/ThrowingFunction;Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;)Ljava/lang/Object; (6)
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  1
            areturn
      StackMap locals:
      StackMap stack:
         5: aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodKind:()I
            bipush 6
            if_icmpne 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceClass:()Ljava/lang/String;
            ldc "org/eclipse/collections/api/block/function/Function"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodName:()Ljava/lang/String;
            ldc "valueOf"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodSignature:()Ljava/lang/String;
            ldc "(Ljava/lang/Object;)Ljava/lang/Object;"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplClass:()Ljava/lang/String;
            ldc "org/eclipse/collections/impl/block/factory/Functions"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodSignature:()Ljava/lang/String;
            ldc "(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair;"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            iconst_0
            invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
            checkcast org.eclipse.collections.api.block.function.Function
            aload 0
            iconst_1
            invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
            checkcast org.eclipse.collections.api.block.function.Function
            invokedynamic valueOf(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/block/factory/Functions.lambda$1(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair; (6)
                  (Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair;
                  1
            areturn
      StackMap locals:
      StackMap stack:
         6: new java.lang.IllegalArgumentException
            dup
            ldc "Invalid lambda deserialization"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "Functions.java"
NestMembers:
  org.eclipse.collections.impl.block.factory.Functions$BindFunction2  org.eclipse.collections.impl.block.factory.Functions$BindObjectIntProcedure  org.eclipse.collections.impl.block.factory.Functions$BindProcedure  org.eclipse.collections.impl.block.factory.Functions$BindProcedure2  org.eclipse.collections.impl.block.factory.Functions$BooleanFunctionChain  org.eclipse.collections.impl.block.factory.Functions$ByteFunctionChain  org.eclipse.collections.impl.block.factory.Functions$CharFunctionChain  org.eclipse.collections.impl.block.factory.Functions$ClassForNameFunction  org.eclipse.collections.impl.block.factory.Functions$ClassFunction  org.eclipse.collections.impl.block.factory.Functions$DefaultFunction  org.eclipse.collections.impl.block.factory.Functions$DoubleFunctionChain  org.eclipse.collections.impl.block.factory.Functions$DoublePassThruFunction  org.eclipse.collections.impl.block.factory.Functions$FalseFunction  org.eclipse.collections.impl.block.factory.Functions$FirstNotEmptyCollectionFunction  org.eclipse.collections.impl.block.factory.Functions$FirstNotEmptyStringFunction  org.eclipse.collections.impl.block.factory.Functions$FirstNotNullFunction  org.eclipse.collections.impl.block.factory.Functions$FirstOfPairFunction  org.eclipse.collections.impl.block.factory.Functions$FixedValueFunction  org.eclipse.collections.impl.block.factory.Functions$FloatFunctionChain  org.eclipse.collections.impl.block.factory.Functions$FunctionChain  org.eclipse.collections.impl.block.factory.Functions$IntFunctionChain  org.eclipse.collections.impl.block.factory.Functions$IntegerPassThruFunction  org.eclipse.collections.impl.block.factory.Functions$LongFunctionChain  org.eclipse.collections.impl.block.factory.Functions$LongPassThruFunction  org.eclipse.collections.impl.block.factory.Functions$MapKeyFunction  org.eclipse.collections.impl.block.factory.Functions$MapValueFunction  org.eclipse.collections.impl.block.factory.Functions$MathSinFunction  org.eclipse.collections.impl.block.factory.Functions$NullSafeFunction  org.eclipse.collections.impl.block.factory.Functions$PassThruFunction  org.eclipse.collections.impl.block.factory.Functions$SecondOfPairFunction  org.eclipse.collections.impl.block.factory.Functions$ShortFunctionChain  org.eclipse.collections.impl.block.factory.Functions$SizeFunction  org.eclipse.collections.impl.block.factory.Functions$SquaredIntegerFunction  org.eclipse.collections.impl.block.factory.Functions$StringToIntegerFunction  org.eclipse.collections.impl.block.factory.Functions$StringTrimFunction  org.eclipse.collections.impl.block.factory.Functions$SwappedPairFunction  org.eclipse.collections.impl.block.factory.Functions$SynchronizedFunction  org.eclipse.collections.impl.block.factory.Functions$ThrowingFunctionAdapter  org.eclipse.collections.impl.block.factory.Functions$ToStringFunction  org.eclipse.collections.impl.block.factory.Functions$TrueFunction
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map
  private final BindFunction2 = org.eclipse.collections.impl.block.factory.Functions$BindFunction2 of org.eclipse.collections.impl.block.factory.Functions
  private final BindObjectIntProcedure = org.eclipse.collections.impl.block.factory.Functions$BindObjectIntProcedure of org.eclipse.collections.impl.block.factory.Functions
  private final BindProcedure = org.eclipse.collections.impl.block.factory.Functions$BindProcedure of org.eclipse.collections.impl.block.factory.Functions
  private final BindProcedure2 = org.eclipse.collections.impl.block.factory.Functions$BindProcedure2 of org.eclipse.collections.impl.block.factory.Functions
  public final BooleanFunctionChain = org.eclipse.collections.impl.block.factory.Functions$BooleanFunctionChain of org.eclipse.collections.impl.block.factory.Functions
  public final ByteFunctionChain = org.eclipse.collections.impl.block.factory.Functions$ByteFunctionChain of org.eclipse.collections.impl.block.factory.Functions
  public final CharFunctionChain = org.eclipse.collections.impl.block.factory.Functions$CharFunctionChain of org.eclipse.collections.impl.block.factory.Functions
  private ClassForNameFunction = org.eclipse.collections.impl.block.factory.Functions$ClassForNameFunction of org.eclipse.collections.impl.block.factory.Functions
  private final ClassFunction = org.eclipse.collections.impl.block.factory.Functions$ClassFunction of org.eclipse.collections.impl.block.factory.Functions
  private final DefaultFunction = org.eclipse.collections.impl.block.factory.Functions$DefaultFunction of org.eclipse.collections.impl.block.factory.Functions
  public final DoubleFunctionChain = org.eclipse.collections.impl.block.factory.Functions$DoubleFunctionChain of org.eclipse.collections.impl.block.factory.Functions
  private DoublePassThruFunction = org.eclipse.collections.impl.block.factory.Functions$DoublePassThruFunction of org.eclipse.collections.impl.block.factory.Functions
  private FalseFunction = org.eclipse.collections.impl.block.factory.Functions$FalseFunction of org.eclipse.collections.impl.block.factory.Functions
  private final FirstNotEmptyCollectionFunction = org.eclipse.collections.impl.block.factory.Functions$FirstNotEmptyCollectionFunction of org.eclipse.collections.impl.block.factory.Functions
  private final FirstNotEmptyStringFunction = org.eclipse.collections.impl.block.factory.Functions$FirstNotEmptyStringFunction of org.eclipse.collections.impl.block.factory.Functions
  private final FirstNotNullFunction = org.eclipse.collections.impl.block.factory.Functions$FirstNotNullFunction of org.eclipse.collections.impl.block.factory.Functions
  private FirstOfPairFunction = org.eclipse.collections.impl.block.factory.Functions$FirstOfPairFunction of org.eclipse.collections.impl.block.factory.Functions
  private final FixedValueFunction = org.eclipse.collections.impl.block.factory.Functions$FixedValueFunction of org.eclipse.collections.impl.block.factory.Functions
  public final FloatFunctionChain = org.eclipse.collections.impl.block.factory.Functions$FloatFunctionChain of org.eclipse.collections.impl.block.factory.Functions
  public final FunctionChain = org.eclipse.collections.impl.block.factory.Functions$FunctionChain of org.eclipse.collections.impl.block.factory.Functions
  public final IntFunctionChain = org.eclipse.collections.impl.block.factory.Functions$IntFunctionChain of org.eclipse.collections.impl.block.factory.Functions
  private IntegerPassThruFunction = org.eclipse.collections.impl.block.factory.Functions$IntegerPassThruFunction of org.eclipse.collections.impl.block.factory.Functions
  public final LongFunctionChain = org.eclipse.collections.impl.block.factory.Functions$LongFunctionChain of org.eclipse.collections.impl.block.factory.Functions
  private LongPassThruFunction = org.eclipse.collections.impl.block.factory.Functions$LongPassThruFunction of org.eclipse.collections.impl.block.factory.Functions
  private MapKeyFunction = org.eclipse.collections.impl.block.factory.Functions$MapKeyFunction of org.eclipse.collections.impl.block.factory.Functions
  private MapValueFunction = org.eclipse.collections.impl.block.factory.Functions$MapValueFunction of org.eclipse.collections.impl.block.factory.Functions
  private final MathSinFunction = org.eclipse.collections.impl.block.factory.Functions$MathSinFunction of org.eclipse.collections.impl.block.factory.Functions
  private final NullSafeFunction = org.eclipse.collections.impl.block.factory.Functions$NullSafeFunction of org.eclipse.collections.impl.block.factory.Functions
  private PassThruFunction = org.eclipse.collections.impl.block.factory.Functions$PassThruFunction of org.eclipse.collections.impl.block.factory.Functions
  private SecondOfPairFunction = org.eclipse.collections.impl.block.factory.Functions$SecondOfPairFunction of org.eclipse.collections.impl.block.factory.Functions
  public final ShortFunctionChain = org.eclipse.collections.impl.block.factory.Functions$ShortFunctionChain of org.eclipse.collections.impl.block.factory.Functions
  public SizeFunction = org.eclipse.collections.impl.block.factory.Functions$SizeFunction of org.eclipse.collections.impl.block.factory.Functions
  private final SquaredIntegerFunction = org.eclipse.collections.impl.block.factory.Functions$SquaredIntegerFunction of org.eclipse.collections.impl.block.factory.Functions
  private final StringToIntegerFunction = org.eclipse.collections.impl.block.factory.Functions$StringToIntegerFunction of org.eclipse.collections.impl.block.factory.Functions
  private StringTrimFunction = org.eclipse.collections.impl.block.factory.Functions$StringTrimFunction of org.eclipse.collections.impl.block.factory.Functions
  private SwappedPairFunction = org.eclipse.collections.impl.block.factory.Functions$SwappedPairFunction of org.eclipse.collections.impl.block.factory.Functions
  private final SynchronizedFunction = org.eclipse.collections.impl.block.factory.Functions$SynchronizedFunction of org.eclipse.collections.impl.block.factory.Functions
  private final ThrowingFunctionAdapter = org.eclipse.collections.impl.block.factory.Functions$ThrowingFunctionAdapter of org.eclipse.collections.impl.block.factory.Functions
  private final ToStringFunction = org.eclipse.collections.impl.block.factory.Functions$ToStringFunction of org.eclipse.collections.impl.block.factory.Functions
  private TrueFunction = org.eclipse.collections.impl.block.factory.Functions$TrueFunction of org.eclipse.collections.impl.block.factory.Functions