  We consider the problem of building Distance Sensitivity Oracles (DSOs).
Given a directed graph $G=(V, E)$ with edge weights in $\{1, 2, \dots, M\}$, we
need to preprocess it into a data structure, and answer the following queries:
given vertices $u,v\in V$ and a failed vertex or edge $f\in (V\cup E)$, output
the length of the shortest path from $u$ to $v$ that does not go through $f$.
Our main result is a simple DSO with $\tilde{O}(n^{2.7233}M)$ preprocessing
time and $O(1)$ query time. Moreover, if the input graph is undirected, the
preprocessing time can be improved to $\tilde{O}(n^{2.6865}M)$. The
preprocessing algorithm is randomized with correct probability $\ge 1-1/n^C$,
for a constant $C$ that can be made arbitrarily large. Previously, there is a
DSO with $\tilde{O}(n^{2.8729}M)$ preprocessing time and
$\operatorname{polylog}(n)$ query time [Chechik and Cohen, STOC'20].
  At the core of our DSO is the following observation from [Bernstein and
Karger, STOC'09]: if there is a DSO with preprocessing time $P$ and query time
$Q$, then we can construct a DSO with preprocessing time $P+\tilde{O}(n^2)\cdot
Q$ and query time $O(1)$. (Here $\tilde{O}(\cdot)$ hides
$\operatorname{polylog}(n)$ factors.)
