It took few minutes for me to understand the concept but when I got it, it was very satisfying! Nice work, it shouldn't have been easy to code that!