anchor.diff:  -endif.
   
   %% API
  --export([start_link/3,
  +-export([start_link/4,
            prepare/2,
            deleting/2]).
   
  
positive.code: %% ===================================================================
  
  %% @doc Start a `riak_moss_delete_fsm'.
  start_link(Bucket, Key, Options) ->
      Args = [Bucket, Key, Options],
      gen_fsm:start_link(?MODULE, Args, []).
  
  %% ====================================================================
  
negative.code: -spec init([binary() | timeout()]) ->
                    {ok, initialize, state(), 0} |
                    {ok, write_root, state()}.
  init([Bucket, Key, UUID, _Options]) ->
      %% Set up our state record
      %% and try to register
      %% ourselves with gproc,
      %% failing if we can't
      {ok, prepare, #state{bucket=Bucket,
                           key=Key,
                           uuid=UUID}, 0}.
  
  prepare(timeout, State) ->
      %% Get the latest version
  