<html>
 <head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <link rel="stylesheet" href="../../coverage.css"/>  <title> the_great_game/merchants/merchant_utils.clj </title>
 </head>
 <body>
<span class="covered" title="1 out of 1 forms covered">
                001&nbsp;&nbsp;(ns&nbsp;the-great-game.merchants.merchant-utils
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                002&nbsp;&nbsp;&nbsp;&nbsp;&quot;Useful&nbsp;functions&nbsp;for&nbsp;doing&nbsp;low-level&nbsp;things&nbsp;with&nbsp;merchants.&quot;)
                </span><br/>
<span class="blank" title="0 out of 0 forms covered">
                003&nbsp;&nbsp;
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                004&nbsp;&nbsp;(defn&nbsp;expected-price
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                005&nbsp;&nbsp;&nbsp;&nbsp;&quot;Find&nbsp;the&nbsp;price&nbsp;anticipated,&nbsp;given&nbsp;this&nbsp;`world`,&nbsp;by&nbsp;this&nbsp;`merchant`&nbsp;for
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                006&nbsp;&nbsp;&nbsp;&nbsp;this&nbsp;`commodity`&nbsp;in&nbsp;this&nbsp;`city`.&nbsp;If&nbsp;no&nbsp;information,&nbsp;assume&nbsp;1.
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                007&nbsp;&nbsp;&nbsp;&nbsp;`merchant`&nbsp;should&nbsp;be&nbsp;passed&nbsp;as&nbsp;a&nbsp;map,&nbsp;`commodity`&nbsp;and&nbsp;`city`&nbsp;should&nbsp;be&nbsp;passed&nbsp;as&nbsp;keywords.&quot;
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                008&nbsp;&nbsp;&nbsp;&nbsp;[merchant&nbsp;commodity&nbsp;city]
                </span><br/>
<span class="covered" title="5 out of 5 forms covered">
                009&nbsp;&nbsp;&nbsp;&nbsp;(or
                </span><br/>
<span class="covered" title="2 out of 2 forms covered">
                010&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(:price
                </span><br/>
<span class="covered" title="2 out of 2 forms covered">
                011&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(last
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                012&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(sort-by
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                013&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:date
                </span><br/>
<span class="covered" title="7 out of 7 forms covered">
                014&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&gt;&nbsp;merchant&nbsp;:known-prices&nbsp;city&nbsp;commodity))))
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                015&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1))
                </span><br/>
<span class="blank" title="0 out of 0 forms covered">
                016&nbsp;&nbsp;
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                017&nbsp;&nbsp;(defn&nbsp;burden
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                018&nbsp;&nbsp;&nbsp;&nbsp;&quot;The&nbsp;total&nbsp;weight&nbsp;of&nbsp;the&nbsp;current&nbsp;cargo&nbsp;carried&nbsp;by&nbsp;this&nbsp;`merchant`&nbsp;in&nbsp;this
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                019&nbsp;&nbsp;&nbsp;&nbsp;`world`.&quot;
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                020&nbsp;&nbsp;&nbsp;&nbsp;[merchant&nbsp;world]
                </span><br/>
<span class="covered" title="4 out of 4 forms covered">
                021&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[m&nbsp;(cond
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                022&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(keyword?&nbsp;merchant)
                </span><br/>
<span class="covered" title="5 out of 5 forms covered">
                023&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&gt;&nbsp;world&nbsp;:merchants&nbsp;merchant)
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                024&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map?&nbsp;merchant)
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                025&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;merchant)
                </span><br/>
<span class="covered" title="8 out of 8 forms covered">
                026&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cargo&nbsp;(or&nbsp;(:stock&nbsp;m)&nbsp;{})]
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                027&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(reduce
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                028&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                029&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                030&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map
                </span><br/>
<span class="covered" title="11 out of 11 forms covered">
                031&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(*&nbsp;(cargo&nbsp;%)&nbsp;(-&gt;&nbsp;world&nbsp;:commodities&nbsp;%&nbsp;:weight))
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                032&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(keys&nbsp;cargo)))))
                </span><br/>
<span class="blank" title="0 out of 0 forms covered">
                033&nbsp;&nbsp;
                </span><br/>
<span class="blank" title="0 out of 0 forms covered">
                034&nbsp;&nbsp;
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                035&nbsp;&nbsp;(defn&nbsp;can-carry
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                036&nbsp;&nbsp;&nbsp;&nbsp;&quot;Return&nbsp;the&nbsp;number&nbsp;of&nbsp;units&nbsp;of&nbsp;this&nbsp;`commodity`&nbsp;which&nbsp;this&nbsp;`merchant`
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                037&nbsp;&nbsp;&nbsp;&nbsp;can&nbsp;carry&nbsp;in&nbsp;this&nbsp;`world`,&nbsp;given&nbsp;their&nbsp;current&nbsp;burden.&quot;
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                038&nbsp;&nbsp;&nbsp;&nbsp;[merchant&nbsp;world&nbsp;commodity]
                </span><br/>
<span class="partial" title="3 out of 4 forms covered">
                039&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[m&nbsp;(cond
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                040&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(keyword?&nbsp;merchant)
                </span><br/>
<span class="covered" title="5 out of 5 forms covered">
                041&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&gt;&nbsp;world&nbsp;:merchants&nbsp;merchant)
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                042&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map?&nbsp;merchant)
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                043&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;merchant)]
                </span><br/>
<span class="covered" title="2 out of 2 forms covered">
                044&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(max
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                045&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                046&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(quot
                </span><br/>
<span class="partial" title="12 out of 13 forms covered">
                047&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&nbsp;(or&nbsp;(:capacity&nbsp;m)&nbsp;0)&nbsp;(burden&nbsp;m&nbsp;world))
                </span><br/>
<span class="covered" title="7 out of 7 forms covered">
                048&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&gt;&nbsp;world&nbsp;:commodities&nbsp;commodity&nbsp;:weight)))))
                </span><br/>
<span class="blank" title="0 out of 0 forms covered">
                049&nbsp;&nbsp;
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                050&nbsp;&nbsp;(defn&nbsp;can-afford
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                051&nbsp;&nbsp;&nbsp;&nbsp;&quot;Return&nbsp;the&nbsp;number&nbsp;of&nbsp;units&nbsp;of&nbsp;this&nbsp;`commodity`&nbsp;which&nbsp;this&nbsp;`merchant`
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                052&nbsp;&nbsp;&nbsp;&nbsp;can&nbsp;afford&nbsp;to&nbsp;buy&nbsp;in&nbsp;this&nbsp;`world`.&quot;
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                053&nbsp;&nbsp;&nbsp;&nbsp;[merchant&nbsp;world&nbsp;commodity]
                </span><br/>
<span class="partial" title="3 out of 4 forms covered">
                054&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[m&nbsp;(cond
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                055&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(keyword?&nbsp;merchant)
                </span><br/>
<span class="covered" title="5 out of 5 forms covered">
                056&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&gt;&nbsp;world&nbsp;:merchants&nbsp;merchant)
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                057&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map?&nbsp;merchant)
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                058&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;merchant)
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                059&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;l&nbsp;(:location&nbsp;m)]
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                060&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(cond
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                061&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(nil?&nbsp;m)
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                062&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(throw&nbsp;(Exception.&nbsp;&quot;No&nbsp;merchant?&quot;))
                </span><br/>
<span class="covered" title="14 out of 14 forms covered">
                063&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(or&nbsp;(nil?&nbsp;l)&nbsp;(nil?&nbsp;(-&gt;&nbsp;world&nbsp;:cities&nbsp;l)))
                </span><br/>
<span class="covered" title="6 out of 6 forms covered">
                064&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(throw&nbsp;(Exception.&nbsp;(str&nbsp;&quot;No&nbsp;known&nbsp;location&nbsp;for&nbsp;merchant&nbsp;&quot;&nbsp;m)))
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                065&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                066&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(quot
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                067&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(:cash&nbsp;m)
                </span><br/>
<span class="covered" title="9 out of 9 forms covered">
                068&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&gt;&nbsp;world&nbsp;:cities&nbsp;l&nbsp;:prices&nbsp;commodity)))))
                </span><br/>
<span class="blank" title="0 out of 0 forms covered">
                069&nbsp;&nbsp;
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                070&nbsp;&nbsp;(defn&nbsp;add-stock
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                071&nbsp;&nbsp;&nbsp;&nbsp;&quot;Where&nbsp;`a`&nbsp;and&nbsp;`b`&nbsp;are&nbsp;both&nbsp;maps&nbsp;all&nbsp;of&nbsp;whose&nbsp;values&nbsp;are&nbsp;numbers,&nbsp;return
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                072&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;map&nbsp;whose&nbsp;keys&nbsp;are&nbsp;a&nbsp;union&nbsp;of&nbsp;the&nbsp;keys&nbsp;of&nbsp;`a`&nbsp;and&nbsp;`b`&nbsp;and&nbsp;whose&nbsp;values
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                073&nbsp;&nbsp;&nbsp;&nbsp;are&nbsp;the&nbsp;sums&nbsp;of&nbsp;their&nbsp;respective&nbsp;values.&quot;
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                074&nbsp;&nbsp;&nbsp;&nbsp;[a&nbsp;b]
                </span><br/>
<span class="covered" title="2 out of 2 forms covered">
                075&nbsp;&nbsp;&nbsp;&nbsp;(reduce
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                076&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;merge
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                077&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                078&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map
                </span><br/>
<span class="partial" title="19 out of 20 forms covered">
                079&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(hash-map&nbsp;%&nbsp;(+&nbsp;(or&nbsp;(a&nbsp;%)&nbsp;0)&nbsp;(or&nbsp;(b&nbsp;%)&nbsp;0)))
                </span><br/>
<span class="covered" title="3 out of 3 forms covered">
                080&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(keys&nbsp;b))))
                </span><br/>
<span class="blank" title="0 out of 0 forms covered">
                081&nbsp;&nbsp;
                </span><br/>
<span class="covered" title="1 out of 1 forms covered">
                082&nbsp;&nbsp;(defn&nbsp;add-known-prices
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                083&nbsp;&nbsp;&nbsp;&nbsp;&quot;Add&nbsp;the&nbsp;current&nbsp;prices&nbsp;at&nbsp;this&nbsp;`merchant`&#x27;s&nbsp;location&nbsp;in&nbsp;the&nbsp;`world`
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                084&nbsp;&nbsp;&nbsp;&nbsp;to&nbsp;a&nbsp;new&nbsp;cache&nbsp;of&nbsp;known&nbsp;prices,&nbsp;and&nbsp;return&nbsp;it.&quot;
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                085&nbsp;&nbsp;&nbsp;&nbsp;[merchant&nbsp;world]
                </span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
                086&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[m&nbsp;(cond
                </span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
                087&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(keyword?&nbsp;merchant)
                </span><br/>
<span class="not-covered" title="0 out of 5 forms covered">
                088&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&gt;&nbsp;world&nbsp;:merchants&nbsp;merchant)
                </span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
                089&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map?&nbsp;merchant)
                </span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
                090&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;merchant)
                </span><br/>
<span class="not-covered" title="0 out of 8 forms covered">
                091&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k&nbsp;(or&nbsp;(:known-prices&nbsp;m)&nbsp;{})
                </span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
                092&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;l&nbsp;(:location&nbsp;m)
                </span><br/>
<span class="not-covered" title="0 out of 8 forms covered">
                093&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;d&nbsp;(or&nbsp;(:date&nbsp;world)&nbsp;0)
                </span><br/>
<span class="not-covered" title="0 out of 7 forms covered">
                094&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p&nbsp;(-&gt;&nbsp;world&nbsp;:cities&nbsp;l&nbsp;:prices)]
                </span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
                095&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(cond
                </span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
                096&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(nil?&nbsp;m)
                </span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
                097&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(throw&nbsp;(Exception.&nbsp;&quot;No&nbsp;merchant?&quot;))
                </span><br/>
<span class="not-covered" title="0 out of 14 forms covered">
                098&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(or&nbsp;(nil?&nbsp;l)&nbsp;(nil?&nbsp;(-&gt;&nbsp;world&nbsp;:cities&nbsp;l)))
                </span><br/>
<span class="not-covered" title="0 out of 6 forms covered">
                099&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(throw&nbsp;(Exception.&nbsp;(str&nbsp;&quot;No&nbsp;known&nbsp;location&nbsp;for&nbsp;merchant&nbsp;&quot;&nbsp;m)))
                </span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
                100&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else
                </span><br/>
<span class="not-covered" title="0 out of 2 forms covered">
                101&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(reduce
                </span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
                102&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;merge
                </span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
                103&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k
                </span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
                104&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map
                </span><br/>
<span class="not-covered" title="0 out of 17 forms covered">
                105&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(hash-map&nbsp;%&nbsp;(apply&nbsp;vector&nbsp;cons&nbsp;{:price&nbsp;(p&nbsp;%)&nbsp;:date&nbsp;d}&nbsp;(k&nbsp;%)))
                </span><br/>
<span class="not-covered" title="0 out of 5 forms covered">
                106&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-&gt;&nbsp;world&nbsp;:commodities&nbsp;keys))))))
                </span><br/>
 </body>
</html>