Thank you for sharing. However you may want to add more explanation for people new to this. I could see this becoming a tutorial...