bl4ckscor3's suggestion and more detail at the end