import java.lang.annotation.ElementType;
import java.lang.annotation.Target;
import java.util.List;
import java.util.Map;
public class TypeAnnotations {
	@Target({ElementType.TYPE_USE, ElementType.LOCAL_VARIABLE})
	@interface Foo {
	}
	@Target(ElementType.TYPE_USE)
	@interface Bar {
	}
	public List<@Foo String> test(@Foo String param) {
		@Bar
		String local = "bar";
		@Foo
		java.io.@Foo File[] array = {};
		return new java.util.@Foo ArrayList<java.lang.@Foo String>();
	}
	public <@Foo T extends java.lang.@Foo Number> T test2(@Bar String... varargs) {
		return null;
	}
}
