more specific type annotation