docs: function (cb, scope, order) {
              if (typeof cb !== "function") {
                  throw new TypeError("cb must be a function");
              }
  
              order = order || Tree.IN_ORDER;
              scope = scope || this;
              var ret = new this._static();
              this.traverse(this.__root, order, function (node) {
                  ret.insert(cb.call(scope, node, this));
              });
              return ret;
          }