anchor.diff:  // TESTRESPONSE[s/"next_doc": 53876/"next_doc": $body.profile.shards.0.searches.0.query.0.breakdown.next_doc/]
   
   Timings are listed in wall-clock nanoseconds and are not normalized at all.  All caveats about the overall
  -`"time"` apply here.  The intention of the breakdown is to give you a feel for A) what machinery in Lucene is
  +`time` apply here.  The intention of the breakdown is to give you a feel for A) what machinery in Lucene is
   actually eating time, and B) the magnitude of differences in times between the various components.  Like the overall time,
   the breakdown is inclusive of all children times.
   
  
positive.code: From the profile structure we can see our `property_type` terms aggregation which is internally represented by the
  `GlobalOrdinalsStringTermsAggregator` class and the sub aggregator `avg_price` which is internally represented by the `AvgAggregator` class. The `type` field displays the class used internally to represent the aggregation. The `description` field displays the name of the aggregation.
  
  The `"time"` field shows that it took ~4 seconds for the entire aggregation to execute.  The recorded time is inclusive
  of all children.
  
  The `"breakdown"` field will give detailed stats about how the time was spent, we'll look at
  that in a moment.  Finally, the `"children"` array lists any sub-aggregations that may be present.  Because we have an `avg_price` aggregation as a sub-aggregation to the `property_type` aggregation we see it listed as a child of the `property_type` aggregation.  the two aggregation outputs have identical information (type, time,
  breakdown, etc).  Children are allowed to have their own children.
  
  ===== Timing Breakdown
  
  The `"breakdown"` component lists detailed timing statistics about low-level Lucene execution:
  
  [source,js]
  --------------------------------------------------
  
negative.code: // TESTRESPONSE[s/"time_in_nanos": "32273"/"time_in_nanos": $body.profile.shards.0.searches.0.collector.0.children.0.time_in_nanos/]
  
  We see a single collector named `SimpleTopScoreDocCollector` wrapped into `CancellableCollector`. `SimpleTopScoreDocCollector` is the default "scoring and sorting"
  `Collector` used by Elasticsearch.  The `reason` field attempts to give a plain english description of the class name.  The
  `time` is similar to the time in the Query tree: a wall-clock time inclusive of all children.  Similarly, `children` lists
  all sub-collectors. The `CancellableCollector` that wraps `SimpleTopScoreDocCollector` is used by elasticsearch to detect if the current
  search was cancelled and stop collecting documents as soon as it occurs.
  
  