public static bool SetData<T>(this object o, string info, T data)
{
var field = o.GetType().GetField(info, ReflectionLibrary.INSTANCE_MEMBER_BINDING_FLAGS);
var valid = field != null && field.FieldType == typeof(T) && !field.IsInitOnly;
if (valid) field.SetValue(o, data);
return valid;
}