improved typesafety of annotations