public < TYPE_1 extends TYPE_2 > TYPE_1 METHOD_1 ( java.lang.Class VAR_1 , java.lang.Class < TYPE_1 > VAR_2 ) { TYPE_3 VAR_3 = METHOD_2 ( VAR_1 ) ; if ( VAR_2 . METHOD_3 ( VAR_3 . getClass ( ) ) ) { return ( ( TYPE_1 ) ( VAR_3 ) ) ; } else { throw new TYPE_4 ( VAR_4 , VAR_1 , VAR_3 . getName ( ) , VAR_2 . METHOD_4 ( ) ) ; } }

public < TYPE_1 extends TYPE_2 > TYPE_1 METHOD_1 ( java.lang.Class VAR_1 , java.lang.Class < TYPE_1 > VAR_2 ) { TYPE_3 VAR_3 = METHOD_2 ( VAR_1 ) ; if ( VAR_2 . METHOD_3 ( VAR_3 . getClass ( ) ) ) { return ( ( TYPE_1 ) ( VAR_3 ) ) ; } else { throw new TYPE_4 ( VAR_4 , VAR_1 , VAR_3 . getClass ( ) . METHOD_4 ( ) , VAR_2 . METHOD_4 ( ) ) ; } }
