public function __unset($name)
{
if (in_array($name, $this->_properties) && isset($this->propertiesData[$name])) {
unset($this->propertiesData[$name]);
} else {
throw new \InvalidArgumentException(sprintf('Unknown property "%s" for the object %s', $name, get_class($this)));
}
}