jmcilhinney's code may be short but I don't understand anything about it, nor would I remember it. In the end, my favorite people here are españolito and dunfiddlin.

@españolito Thank you for the explanation, you really helped me.
@dunfiddlin Thank you for the awesome code.