implicit cast can work as explicit