public static < TYPE_1 > java.util.ArrayList < TYPE_1 > METHOD_1 ( java.util.List < ? extends TYPE_1 > VAR_1 , TYPE_2 < ? super TYPE_1 > VAR_2 ) { if ( VAR_1 == null ) { return null ; } java.util.ArrayList < TYPE_1 > VAR_3 = new java.util.ArrayList ( ) ; for ( TYPE_1 item : VAR_1 ) { if ( VAR_2 . METHOD_2 ( item ) ) { VAR_3 . add ( item ) ; } } return ( ( java.util.ArrayList ) ( VAR_3 . METHOD_3 ( ) ) ) ; }

public static < TYPE_1 > java.util.List < TYPE_1 > METHOD_1 ( java.util.List < ? extends TYPE_1 > VAR_1 , TYPE_2 < ? super TYPE_1 > VAR_2 ) { if ( VAR_1 == null ) { return new java.util.ArrayList < TYPE_1 > ( ) ; } java.util.List < TYPE_1 > VAR_3 = new java.util.ArrayList ( ) ; for ( TYPE_1 item : VAR_1 ) { if ( VAR_2 . METHOD_2 ( item ) ) { VAR_3 . add ( item ) ; } } return VAR_3 ; }
