Data Structures and Common Algorithms for Javascript