slightly more compact using doto