explicit transtyping to avoid mvc10 warning