public static Int16 UnboxInt16(object value) { if (value is Int16) return (Int16)value; if (value is IConvertible) return CheckNumericPromotion(value).ToInt16(null); return (Int16)value; }