Sort:  

thanks @kevinwong! I intend to try to explain in detail, but I think it was very long, describes three applications at once. I'll explain it in the next post, more detail on each application. :)