new annotation mechanism impl