avoid narrowing conversions