pull down to refresh

Guys all answers are amazing. But I must give the bounty to only one person. I'm gonna go to the answer provided by @02dc6a50c1 as it fulfills all the requirements.
Will also give another round of zaps cuz all answers are great.
@dieselbaby answer is also quite comprehensive and I'd like to continue asking questions to this user. Zaps will flow in that direction as well!
This whole bounty business is hard!