code: function jenkinsHash(key) {
        var hash, i;
        for(hash = i = 0; i < key.length; ++i) {
          hash += key.charCodeAt(i);
          hash += (hash << 10);
          hash ^= (hash >> 6);
        }
        hash += (hash << 3);
        hash ^= (hash >> 11);
        hash += (hash << 15);
        return hash;
      }
docs: Bob Jenkins One-at-a-Time Hash algorithm is a non-cryptographic hash function used to get a different output when the key changes slighly. We use your return to sort the children randomly in a consistent way when used in conjunction with a seed