anchor.diff:  -export([constraints/1]).
   -export([store/1, all/0, retrieve/1]).
   
  -
  +%% Trail specification
   -opaque trail() ::
     #{ path_match  => cowboy_router:route_match()
      , constraints => cowboy_router:constraints()
  
positive.code:       throw({not_started, trails})
    end.
  
  
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% Private API.
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
negative.code:       throw({not_started, trails})
    end.
  
  %% @doc Fetch the trail that match with the given path.
  -spec retrieve(route_match()) -> trail().
  retrieve(Path) ->
    case application:get_application(trails) of
  