public object set(object val)
{
Validate(getValidator(), val);
TBox b = getThreadBinding();
if (b != null)
{
if (Thread.CurrentThread != b.Thread)
throw new InvalidOperationException(String.Format("Can't set!: {0} from non-binding thread", sym));
return (b.Val = val);
}
throw new InvalidOperationException(String.Format("Can't change/establish root binding of: {0} with set", _sym));
}