anchor.diff:          }
       }
   
  -    @Override
  -    public Set<Class<? extends OptimizationStrategy>> applyPrior() {
  -        return PRIORS;
  -    }
  -
       public static TinkerGraphStepStrategy instance() {
           return INSTANCE;
       }
   }
   ----
   
  -The traversal is redefined by simply taking a chain of `has()`-steps after `g.V()` (`TinkerGraphStep`) and providing them to `TinkerGraphStep`. Then its up to TinkerGraphStep to determine if an appropriate index exists. In the code below, review the `vertices()` method and note how if an index exists, for a particular `HasContainer`, then that index is first queried before the remaining `HasContainer` filters are serially applied.
  +The traversal is redefined by simply taking a chain of `has()`-steps after `g.V()` (`TinkerGraphStep`) and providing them to `TinkerGraphStep`. Then its up to TinkerGraphStep to determine if an appropriate index exists. In the code below, review the `vertices()` method and note how if an index exists, for a particular `HasContainer`, then that index is first queried before the remaining `HasContainer` filters are serially applied. Given that the strategy uses non-TinkerPop3 provided steps, it should go into the `VendorOptimizationStrategy` category to ensure the added step does not corrupt the `OptimizationStrategy` strategies.
   
   [gremlin-groovy,modern]
   ----
  
positive.code: image:traversal-strategy.png[width=125,float=right] A `TraversalStrategy` can analyze a `Traversal` and mutate the traversal as it deems fit. This is useful in multiple situations:
  
   * There is an application-level feature that can be embedded into the traversal logic (*decoration*).
   * There is a more efficient way to express the traversal at the TinkerPop3 or graph vendor level (*optimization*).
   * There are are some final adjustments required before executing the traversal (*finalization*).
   * There are certain traversals that are not legal for the application or traversal engine (*verification*).
  
  
negative.code: 
  [source,java]
  ----
  public final class TinkerGraphStepStrategy extends AbstractTraversalStrategy<TraversalStrategy.VendorOptimizationStrategy> implements TraversalStrategy.VendorOptimizationStrategy {
  
      private static final TinkerGraphStepStrategy INSTANCE = new TinkerGraphStepStrategy();
  
      private TinkerGraphStepStrategy() {
      }
  