  Expander decompositions form the basis of one of the most flexible paradigms
for close-to-linear-time graph algorithms. Length-constrained expander
decompositions generalize this paradigm to better work for problems with
lengths, distances and costs. Roughly, an $(h,s)$-length $\phi$-expander
decomposition is a small collection of length increases to a graph so that
nodes within distance $h$ can route flow over paths of length $hs$ with
congestion at most $1/\phi$.
  In this work, we give a close-to-linear time algorithm for computing
length-constrained expander decompositions in graphs with general lengths and
capacities. Notably, and unlike previous works, our algorithm allows for one to
trade off off between the size of the decomposition and the length of routing
paths: for any $\epsilon > 0$ not too small, our algorithm computes in
close-to-linear time an $(h,s)$-length $\phi$-expander decomposition of size $m
\cdot \phi \cdot n^\epsilon$ where $s = \exp(\text{poly}(1/\epsilon))$. The key
foundations of our algorithm are: (1) a simple yet powerful structural theorem
which states that the union of a sequence of sparse length-constrained cuts is
itself sparse and (2) new algorithms for efficiently computing sparse
length-constrained flows.
