no more static_cast