  Fillmore Theorem says that if $A$ is a nonscalar matrix of order $n$ over a
field $\mathbb{F}$ and $\gamma_1,\ldots,\gamma_n\in \mathbb{F}$ are such that
$\gamma_1+\cdots+\gamma_n=\text{tr} \, A$, then there is a matrix $B$ similar
to $A$ with diagonal $(\gamma_1,\ldots,\gamma_n)$. Fillmore proof works by
induction on the size of $A$ and implicitly provides an algorithm to construct
$B$. We develop an explicit and extremely simple algorithm that finish in two
steps (two similarities), and with its help we extend Fillmore Theorem to
integers (if $A$ is integer then we can require to $B$ to be integer).
