anchor.diff:                           impressions=Impressions0,
                            triggers=Triggers0}=State) ->
       %% Get current value of the list of advertisements.
  -    {ok, Ads} = lasp:query(?ADS_WITH_CONTRACTS),
  +    {ok, Ads0} = lasp:query(?ADS_WITH_CONTRACTS),
   
       %% Make sure we have ads...
  -    {Impressions1, Triggers1} = case sets:size(Ads) of
  +    {Impressions1, Triggers1} = case sets:size(Ads0) of
           0 ->
               %% Do nothing.
               {Impressions0, Triggers0};
  
positive.code:             {Impressions0 + 1, Triggers}
      end,
  
      %% - If I did nothing (`Impressions0 == Impressions1`),
      %% and the `Impressions1 > 0` (meaning I did something before)
      %% then all ads are disabled and simulation has ended
      %%      (If we don't check for `Impressions1 > 0` it might mean that
      %%      the experiment hasn't started yet)
      %% - Else, keep doing impressions
      case Impressions0 == Impressions1 andalso Impressions1 > 0 of
          true ->
              lager:info("All ads are disabled. Node: ~p", [node()]),
  
  
negative.code:             Random = lasp_support:puniform(Size),
  
              {#ad{counter=Counter} = Ad, _Contract} =
                  lists:nth(Random, sets:to_list(Ads0)),
  
              %% Spawn a process to disable the advertisement if it goes
              %% above the maximum number of impressions.
  