anchor.diff:          [market_lib:random_symbol() || _ <- lists:seq(1, ?NUM_LISTINGS)]
       )),
   
  -    ticker(Listings).
  +    % Enumerate broker names
  +    Brokers = market_lib:atoms_sequence("broker", "_", 1, ?NUM_BROKERS),
  +
  +    ticker(Listings, Brokers).
   
   
   %%-----------------------------------------------------------------------------
  -%% Function : ticker/1
  +%% Function : ticker/2
   %% Purpose  : Announces current prices to brokers.
   %%-----------------------------------------------------------------------------
  -ticker(Listings) ->
  -    Brokers = market_lib:atoms_sequence("broker", "_", 1, ?NUM_BROKERS),
  -
  +ticker(Listings, Brokers) ->
       receive
           stop ->
               void;
   
           Other ->
               io:format("WARNING! Unexpected request: ~p~n", [Other]),
  -            ticker(Listings)
  +            ticker(Listings, Brokers)
   
       after ?TICKER_INTERVAL ->
           Prices = [{Symbol, market_lib:random_price()} || Symbol <- Listings],
  
positive.code:             Brokers
          ),
  
          ticker(Listings)
      end.
  
  
  %%-----------------------------------------------------------------------------
  %% Function : broker/0
  %% Purpose  : Initializes empty data containers and starts broker/2.
  %%-----------------------------------------------------------------------------
  broker() ->
      Portfolio = dict:new(),
      CashFlow = [],
      broker(Portfolio, CashFlow).
  
  
  %%-----------------------------------------------------------------------------
  %% Function : broker/2
  %% Purpose  : Receives current prices and either buys or sells.
  %%-----------------------------------------------------------------------------
  broker(Portfolio, CashFlow) ->
      {registered_name, ProcName} = erlang:process_info(self(), registered_name),
      CashBalance = lists:sum(CashFlow),
  
      receive
          {ticker, {prices, Prices}} ->
  
  
negative.code: 
              % Print accumulated values to stdout
              NewPortfolioList = dict:to_list(NewPortfolio),
              CashBalance = lists:sum(CashFlow),
              io:format("~p PORTFOLIO:~p~n", [ProcName, NewPortfolioList]),
              io:format("~p CASH BALANCE:~p~n", [ProcName, CashBalance]),
              io:format("~n"),
  
              % Now do it all over again! :)
              broker(ProcName, NewPortfolio, NewCashFlow);
  
          stop ->
              void;
  
          Other ->
              io:format("WARNING! Unexpected message: ~p~n", [Other]),
              broker(ProcName, Portfolio, CashFlow)
      end.
  
  
  