public < TYPE_1 > TYPE_1 METHOD_1 ( java.lang.Class < TYPE_1 > VAR_1 ) { if ( VAR_2 . getClass ( ) . METHOD_2 ( VAR_1 ) ) { return ( ( TYPE_1 ) ( VAR_2 ) ) ; } throw new TYPE_2 ( ) ; } 

public < TYPE_1 > TYPE_1 METHOD_1 ( java.lang.Class < TYPE_1 > VAR_1 ) { if ( VAR_1 . METHOD_2 ( VAR_2 . getClass ( ) ) ) { return ( ( TYPE_1 ) ( VAR_2 ) ) ; } throw new TYPE_2 ( ) ; } 
