change cast to uniform initialization