fixed method call type inference