public function sendKeys($value)
    {
        $local_file = $this->fileDetector->getLocalFile($value);
        if ($local_file === null) {
            $params = [
                'value' => WebDriverKeys::encode($value),
                ':id' => $this->id,
            ];
            $this->executor->execute(DriverCommand::SEND_KEYS_TO_ELEMENT, $params);
        } else {
            $remote_path = $this->upload($local_file);
            $params = [
                'value' => WebDriverKeys::encode($remote_path),
                ':id' => $this->id,
            ];
            $this->executor->execute(DriverCommand::SEND_KEYS_TO_ELEMENT, $params);
        }

        return $this;
    }