public function set($field, $value = null)
    {
        if ($field === null) {
            throw new \InvalidArgumentException('Cannot access empty property');
        }

        $this->$field = $value;

        return $this;
    }