I "just" want to wrap all `\includegraphics` commands inside a `\centerline`, i.e.:

```
\includegraphics[width=3cm, keepaspectratio]{img}

```

automatically replaced by

```
\centerline{\includegraphics[width=3cm, keepaspectratio]{img}}

```

So I need a macro in the preamble, but I don't know how to pass *all* *arguments*, and *all options* *unchanged* using `renewcommand`:

```
\renewcommand{\includegraphics}[1]{\includegraphics[???]{#1}}

```

Do I have to go through the hassle of using `\ifnextchar[` myself? (example here <https://tex.stackexchange.com/a/314/95423>); or do I need a package? 

I stress out that the number of provided optional arguments is variable, and that even solutions with [xparse](https://tex.stackexchange.com/a/2925/95423) or [etoolbox](https://tex.stackexchange.com/a/63041/95423) require knowing the number of options...

---

P.S: why `\centerline`? Because it allows images to be larger than textwidth (see [this](https://tex.stackexchange.com/q/57702/95423)).
P.P.S: Thank you for highlighting potential drawbacks of rigidly centered includegraphics, although I am mostly interested in the general way to implement this redefinition.