case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:
        raw, err := strconv.ParseUint(num, base, typ.Bits())

        if err != nil {
            return reflect.Zero(typ), errors.Wrapf(err, "could not convert %s to %s", num, typ.Kind())