code: function (callback, ctx) {
              var _walk = function (depth, node, ctx) {
                  if (typeof callback === "function")
                      ctx = callback(depth, node, ctx, false);
                  var children = node.children();
                  for (var i = 0; i < children.length; i++)
                      ctx = _walk(depth + 1, children[i], ctx);
                  if (typeof callback === "function")
                      ctx = callback(depth, node, ctx, true);
                  return ctx;
              };
              ctx = _walk(0, this, ctx);
              return ctx;
          }
docs: /*  method: walk tree downward