public function with($data, $value = null)
    {
        if (is_string($data)) {
            $this->data = array_merge($this->data, [$data => $value]);
        } elseif (is_array($data)) {
            $this->data = array_merge($this->data, $data);
        }

        return $this;
    }