let is far more readable than def away everything :D