anchor.diff:  
   test(Iterations) ->
       eqc:quickcheck(eqc:numtests(Iterations, resolution_commutative())).
  +
  +only_one_active(Manifests) ->
  +    {_, FilteredManifests} = lists:foldl(fun only_one_active_helper/2, {not_found, []}, Manifests),
  +    FilteredManifests.
  +
  +only_one_active_helper(#lfs_manifest_v2{state=active}, {found, List}) ->
  +    {found, List};
  +only_one_active_helper(Manifest, {found, List}) ->
  +    {found, [Manifest | List]};
  +only_one_active_helper(Manifest=#lfs_manifest_v2{state=active}, {not_found, List}) ->
  +    {found, [Manifest | List]};
  +only_one_active_helper(Manifest, {not_found, List}) ->
  +    {not_found, [Manifest | List]}.
  +
  
positive.code: raw_manifest() ->
      #lfs_manifest_v2{uuid=moss_gen:bounded_uuid(),
                       bkey={<<"bucket">>, <<"key">>},
                       state=moss_gen:manifest_state(),
                       write_blocks_remaining=ordsets:new(),
                       delete_blocks_remaining=ordsets:new(),
                       last_block_written_time=erlang:now(),
                       last_block_deleted_time=erlang:now()}.
  
  manifest() ->
      raw_manifest().
      %?LET(Manifest, raw_manifest(), Manifests).
  
  manifests() ->
      eqc_gen:list(manifest()).
  
  %%====================================================================
  %% Helpers
  
negative.code:             MapFun = fun(Mani) ->
                  riak_moss_manifest:new(Mani#lfs_manifest_v2.uuid, Mani)
              end,
              Filtered = only_one_active(Manifests),
              WrappedManifests = lists:map(MapFun, Filtered),
              Resolved = riak_moss_manifest_resolution:resolve(WrappedManifests),
              ReversedResolved = riak_moss_manifest_resolution:resolve(lists:reverse(WrappedManifests)),
              Resolved == ReversedResolved
  