auto-identify result type