static cast is allowed here