fixed numerical<T>::typecast