New active annotation implementation without class name switching