static < TYPE_1 extends TYPE_2 < TYPE_1 > > TYPE_3 < TYPE_1 > METHOD_1 ( TYPE_4 < TYPE_1 > set ) { switch ( set . size ( ) ) { case 0 : return TYPE_3 . METHOD_2 ( ) ; case 1 : return TYPE_3 . METHOD_2 ( TYPE_5 . METHOD_3 ( set ) ) ; default : return new TYPE_6 < TYPE_1 > ( set ) ; } }

static TYPE_3 METHOD_1 ( TYPE_4 set ) { switch ( set . size ( ) ) { case 0 : return TYPE_3 . METHOD_2 ( ) ; case 1 : return TYPE_3 . METHOD_2 ( TYPE_5 . METHOD_3 ( set ) ) ; default : return new TYPE_6 ( set ) ; } }
