public function from($tables = [], $overwrite = false)
    {
        if (empty($tables)) {
            deprecationWarning('Using Query::from() to read state is deprecated. Use clause("from") instead.');

            return $this->_parts['from'];
        }

        $tables = (array)$tables;

        if ($overwrite) {
            $this->_parts['from'] = $tables;
        } else {
            $this->_parts['from'] = array_merge($this->_parts['from'], $tables);
        }

        $this->_dirty();

        return $this;
    }