function __set($name, $value) { if ($name[0] === '_') { throw new \Exception("do not allow set {$name}"); } return $this->__send('set', $name, $value); }