<?xml version="1.0" encoding="utf-8"?>
<model version="NetLogo 7.0.4" snapToGrid="false">
  <code><![CDATA[globals
 [
   ; Model run parameters
   years-simulated
   business-failures

   ; Profit landscape parameters
   patch-mean-profit
   ; risk-min
   ; risk-max

   ; Investor parameters
   decision-time-horizon

   ; global variables used to speed up calculations
   g-mean-wealth
   g-max-wealth
   g-max-utility
   max-profit
  ]

patches-own
 [
  profit
  annual-risk
 ]

turtles-own
 [
  wealth
  current-utility
 ]

to setup
  clear-all
  reset-ticks

  ; Initialize global variables
  set years-simulated max-ticks

  ; set num-investors 25

  set business-failures 0

  set patch-mean-profit    5000
  ; set risk-min  0.01
  ; set risk-max  0.1

  set decision-time-horizon 5

  ; Initialize patch profit and risk characteristics
  ask patches [ initialize-patch ]

  ; Create the investors
  crt number-investors [ initialize-investor ]

  set max-profit max [profit] of patches
  set g-mean-wealth mean [wealth] of turtles
  set g-max-utility max [utility-for nobody] of patches

  output
  color-patches
  color-turtles
  draw-links
end

to initialize-patch
  ; Set the profitability
  set profit profit-multiplier * (min-profit + random-exponential patch-mean-profit)

  ; Set the risk
  set annual-risk risk-multiplier * (risk-min + random-float (risk-max - risk-min))
end

to initialize-investor
  set shape "circle"
  move-to one-of patches with [not any? turtles-here]
  set wealth 0.0
  create-links-to n-of number-of-links other turtles
end

to go

  tick

  if ticks > years-simulated [stop]

  ask turtles [move]

  ask turtles [do-accounting]

  output

  color-turtles
  color-patches
  draw-links

end

to move
  move-to best-patch
end

to-report best-patch
  ifelse objective = "Optimize"
  [
    report best-patch-utility
  ]
  [
    report best-patch-satisfice
  ]
end

to-report target-patches
  if vision-mode = "neighbors" [ report target-patches-neighbors ]
  if vision-mode = "radius" [ report target-patches-radius ]
  if vision-mode = "links" [ report target-patches-links ]
  if vision-mode = "links + radius" [ report target-patches-links-radius ]
end

to-report target-patches-neighbors
  let targets neighbors with [ not any? turtles-here ]
  set targets (patch-set targets patch-here)
  report targets
end

to-report target-patches-radius
  let targets patches in-radius sense-radius with [ not any? turtles-here ]
  set targets (patch-set targets patch-here)
  report targets
end

to-report target-patches-links
  let targets target-patches-neighbors
  set targets (patch-set
    targets
    ([neighbors with [not any? turtles-here]] of out-link-neighbors)
    )
  report targets
end

to-report target-patches-links-radius
  let targets target-patches-radius
  set targets (patch-set
    targets
    ([patches in-radius sense-radius with [not any? turtles-here]] of out-link-neighbors)
    )
  report targets
end


to-report best-patch-utility
  let potential-destinations target-patches

  ; Identify the best one of the destinations
  report max-one-of potential-destinations [utility-for myself]
end

to-report best-patch-satisfice
  if current-utility < income-threshold
  [
    let potential-destinations other target-patches
    if any? potential-destinations
      [ report one-of potential-destinations ]
  ]
  report patch-here
end

to do-accounting

  ; First, add this year's profits
  set wealth (wealth + profit)

  ; Now see if the investment failed
  if (wealth < 0) or (random-float 1.0 < annual-risk)
  [
    set business-failures business-failures + 1
    set wealth 0
  ]

  ; For output, update the utility of the investor
  set current-utility utility-for self

end

to-report utility-for [a-turtle]
  let turtles-wealth 0
  ifelse a-turtle = nobody
  [
    ; if no turtle is selected, report the utility for the wealth of the average turtle
    set turtles-wealth g-mean-wealth
  ]
  [
    ; For the simple microeconomic utility function, first calc. expected
    ; investor wealth over the time horizon
    set turtles-wealth [wealth] of a-turtle
  ]

  let utility turtles-wealth + (profit * decision-time-horizon)

    ; Then factor in risk of failure over time horizon
    set utility utility * ((1 - annual-risk) ^ decision-time-horizon)

    if utility < 0 [ set utility 0 ]

    report utility
end

to color-patches
  if color-patches-by = "black"
  [
    ask patches [ set pcolor black ]
  ]
  if color-patches-by = "profit"
  [
    ask patches with [profit >= 0]
    [
      set pcolor scale-color cyan profit 0 max-profit
    ]
    ask patches with [profit < 0 ]
    [
      set pcolor scale-color pink profit 0 (2 * min-profit)
    ]
  ]
  if color-patches-by = "risk"
  [
    ask patches
    [
      ifelse (risk-min < risk-max) and (risk-min > 0)
      [
        set pcolor scale-color red (ln annual-risk) (ln risk-max) (ln risk-min)
      ]
      [
        set pcolor scale-color red (annual-risk) 1 0
      ]
    ]
  ]
  if color-patches-by = "expected utility"
    [
      ask patches
      [
        set pcolor scale-color magenta (utility-for nobody) 0 g-max-utility
      ]
  ]
end

to color-turtle [max-wealth]
  if color-turtles-by = "wealth"
  [
    set color scale-color green wealth 0 (max-wealth * 1.2)
  ]
  if color-turtles-by = "red"
  [
    set color red
  ]
  if color-turtles-by = "yellow"
  [
    set color yellow
  ]
end

to color-turtles
  let max-wealth g-max-wealth
  if max-wealth = 0 [ set max-wealth 0.1 ]
  ask turtles
    [
      color-turtle max-wealth
    ]
end

to output

  set g-mean-wealth mean [wealth] of turtles
  set g-max-wealth max [wealth] of turtles
  set g-max-utility max [utility-for nobody] of patches

  set-current-plot "Utility Histogram"
  histogram [current-utility] of turtles

  let mean-wealth mean [wealth] of turtles

  set-current-plot "Mean Wealth (thousands)"
  plot mean-wealth / 1000

  set-current-plot "Mean Profit"
  plot mean [profit] of turtles

  set-current-plot "Mean Risk"
  plot mean [annual-risk] of turtles

  set-current-plot "Std. Dev. of Wealth (thousands)"
  plot standard-deviation [wealth] of turtles / 1000
end

to draw-links
  ifelse show-links?
  [ ask links [ show-link ]]
  [ ask links [ hide-link ]]
end]]></code>
  <widgets>
    <view x="724" wrappingAllowedX="false" y="14" frameRate="30.0" minPycor="-9" height="384" showTickCounter="true" patchSize="20.0" fontSize="8" wrappingAllowedY="false" width="384" tickCounterLabel="ticks" maxPycor="9" updateMode="1" maxPxcor="9" minPxcor="-9"></view>
    <button x="11" y="10" height="40" disableUntilTicks="false" forever="false" kind="Observer" width="63">setup</button>
    <button x="89" y="10" height="40" disableUntilTicks="false" forever="true" kind="Observer" width="63">go</button>
    <button x="165" y="11" height="40" disableUntilTicks="false" forever="false" kind="Observer" width="63" display="step">go</button>
    <plot x="250" autoPlotX="false" yMax="10.0" autoPlotY="false" yAxis="Number of investors" y="13" xMin="0.0" height="175" legend="false" xMax="3000000.0" yMin="0.0" width="230" xAxis="Utility" display="Utility Histogram">
      <setup></setup>
      <update></update>
      <pen interval="100000.0" mode="1" display="default" color="-16777216" legend="true">
        <setup></setup>
        <update></update>
      </pen>
    </plot>
    <plot x="486" autoPlotX="true" yMax="10.0" autoPlotY="true" yAxis="Profit" y="14" xMin="0.0" height="175" legend="false" xMax="10.0" yMin="0.0" width="230" xAxis="Year" display="Mean Profit">
      <setup></setup>
      <update></update>
      <pen interval="1.0" mode="0" display="default" color="-16777216" legend="true">
        <setup></setup>
        <update></update>
      </pen>
    </plot>
    <plot x="486" autoPlotX="true" yMax="0.1" autoPlotY="true" yAxis="Risk" y="194" xMin="0.0" height="175" legend="false" xMax="10.0" yMin="0.0" width="230" xAxis="Year" display="Mean Risk">
      <setup></setup>
      <update></update>
      <pen interval="1.0" mode="0" display="default" color="-16777216" legend="true">
        <setup></setup>
        <update></update>
      </pen>
    </plot>
    <plot x="237" autoPlotX="true" yMax="10.0" autoPlotY="true" yAxis="Wealth" y="193" xMin="0.0" height="175" legend="false" xMax="10.0" yMin="0.0" width="230" xAxis="Year" display="Mean Wealth (thousands)">
      <setup></setup>
      <update></update>
      <pen interval="1.0" mode="0" display="default" color="-16777216" legend="true">
        <setup></setup>
        <update></update>
      </pen>
    </plot>
    <plot x="472" autoPlotX="true" yMax="2.0" autoPlotY="true" yAxis="SD in wealth" y="376" xMin="0.0" height="175" legend="false" xMax="10.0" yMin="0.0" width="230" xAxis="Year" display="Std. Dev. of Wealth (thousands)">
      <setup></setup>
      <update></update>
      <pen interval="1.0" mode="0" display="default" color="-16777216" legend="true">
        <setup></setup>
        <update></update>
      </pen>
    </plot>
    <slider x="8" step="1" y="569" max="10" width="172" display="number-of-links" height="50" min="0" direction="Horizontal" default="2.0" variable="number-of-links"></slider>
    <monitor x="711" precision="3" y="437" height="60" fontSize="11" width="134" display="Mean wealth (thousands)">mean [wealth] of turtles / 1000</monitor>
    <monitor x="848" precision="3" y="414" height="60" fontSize="11" width="168" display="Std. Dev. of wealth (thousands)">standard-deviation [wealth] of turtles / 1000</monitor>
    <slider x="11" step="0.1" y="234" max="2" width="171" display="profit-multiplier" height="50" min="00.5" direction="Horizontal" default="1.0" variable="profit-multiplier"></slider>
    <slider x="11" step="0.1" y="289" max="2" width="172" display="risk-multiplier" height="50" min="0.5" direction="Horizontal" default="1.0" variable="risk-multiplier"></slider>
    <chooser x="116" y="115" height="60" variable="objective" current="0" width="100" display="objective">
      <choice type="string" value="Optimize"></choice>
      <choice type="string" value="Satisfice"></choice>
    </chooser>
    <slider x="10" step="100" y="344" max="20000" width="173" display="income-threshold" height="50" min="0" direction="Horizontal" default="5000.0" variable="income-threshold"></slider>
    <monitor x="711" precision="3" y="502" height="60" fontSize="11" width="134" display="mean utility (thousands)">mean [utility-for self] of turtles / 1000</monitor>
    <monitor x="850" precision="0" y="480" height="60" fontSize="11" width="104" display="Buisness failures">business-failures</monitor>
    <slider x="10" step="100" y="400" max="0" width="173" display="min-profit" height="50" min="-5000" direction="Horizontal" default="0.0" variable="min-profit"></slider>
    <slider x="12" step="1" y="56" max="100" width="172" display="number-investors" height="50" min="0" direction="Horizontal" default="25.0" variable="number-investors"></slider>
    <slider x="11" step="0.5" y="179" max="10" width="172" display="sense-radius" height="50" min="1" direction="Horizontal" default="1.0" variable="sense-radius"></slider>
    <chooser x="11" y="114" height="60" variable="vision-mode" current="0" width="100" display="vision-mode">
      <choice type="string" value="neighbors"></choice>
      <choice type="string" value="radius"></choice>
      <choice type="string" value="links"></choice>
      <choice type="string" value="links + radius"></choice>
    </chooser>
    <slider x="9" step="0.01" y="459" max="1" width="172" display="risk-min" height="50" min="0" direction="Horizontal" default="0.01" variable="risk-min"></slider>
    <slider x="9" step="0.01" y="514" max="1" width="172" display="risk-max" height="50" min="0" direction="Horizontal" default="0.1" variable="risk-max"></slider>
    <chooser x="9" y="625" height="60" variable="color-patches-by" current="2" width="138" display="color-patches-by">
      <choice type="string" value="profit"></choice>
      <choice type="string" value="risk"></choice>
      <choice type="string" value="expected utility"></choice>
      <choice type="string" value="black"></choice>
    </chooser>
    <chooser x="155" y="624" height="60" variable="color-turtles-by" current="2" width="138" display="color-turtles-by">
      <choice type="string" value="red"></choice>
      <choice type="string" value="yellow"></choice>
      <choice type="string" value="wealth"></choice>
    </chooser>
    <switch x="299" y="495" height="40" on="false" variable="show-links?" width="118" display="show-links?"></switch>
    <button x="11" y="696" height="40" disableUntilTicks="false" forever="false" kind="Observer" width="93" display="Do coloring">color-patches
color-turtles
draw-links</button>
    <slider x="196" step="1" y="439" max="500" width="172" display="max-ticks" height="50" min="0" direction="Horizontal" default="50.0" variable="max-ticks"></slider>
  </widgets>
  <info><![CDATA[# THE BUSINESS INVESTOR MODEL

This file is provided as instructor materials for Chapter 10 of _Agent-based and Individual-based Modeling, 2nd edition_, by Railsback and Grimm (2019). Please do not copy or distribute this file. It is available upon request from www.railsback-grimm-abm-book.com.

This file is copyrighted 2019 by Steven F. Railsback and Volker Grimm.

This file implements the first version of the Business Investor model, as described in Section 10.4.3.

## 1. Purpose and patterns

The primary purpose of this model is to explore effects of “sensing”—what information agents have and how they obtain it—on emergent outcomes of a model in which agents make adap- tive decisions using sensed information. The model uses investment decisions as an example, but is not intended to represent any real investment approach or business sector. 

This model could be thought of as approximately representing people who buy and operate local businesses: it assumes investors are familiar with businesses they could buy within a limited range of their own experience. The investment “environment” assumes  that there is no cost of entering or switching businesses (e.g., as if capital to buy a business is borrowed and the repayment is included in the annual profit calculation), that high profits are rarer than low profits, and that risk of failure is unrelated to profit. We can use the model to address questions such as how the average wealth of the investors, and how evenly wealth is distributed among individuals, depends on how much information the investors can sense.

Because this model is conceptual and not intended to represent a specific real system, we can only use general patterns as criteria for its usefulness. These patterns are that investor decisions depend on the profit and risk “landscape”, and that the decisions change with investor wealth.


## 2. State variables and scales

The entities in this model are investor agents (turtles) and business alternatives (patches) that vary in profit and risk. The investors have state variables for their location in the space and for their current wealth ( _W_, in money units).

The landscape is a grid of business patches, which each have two static variables: the annual net profit that a business there would provide ( _P_; in money units such as dollars per year), and the annual risk of that business failing and the investor losing all its wealth ( _F_; probability per year). This landscape is 19 by 19 patches in size with no wrapping at its edges. 

The model time step is one year, and simulations run for 50 years.

## 3. Process overview and scheduling

The model includes the following actions that are executed in this order each time step.

**Investment repositioning:** The investors decide whether any similar business (adjacent patch) offers a better tradeoff of profit and risk; if so, they "reposition" and transfer their investment to that patch, by moving there. Only one investor can occupy a patch at a time. The agents execute this action in randomized order.

**Accounting:** The investors update their wealth state variable. _W_ is set equal to the previous wealth plus the profit of the agent’s current patch. However, unexpected failure of the business is also included in the accounting action. This event is a stochastic function of _F_ at the investor's patch. If a uniform random number between zero and one is less than _F_, then the business fails: the investor's wealth is set to zero, but the investor stays in the model and continues to behave in the same way.

**Output:** The View, plots, and an output file are updated. 

## 4. Design concepts

Basic principles: The basic topic of this model is how agents make decisions involving tradeoffs between several objectives—here, increasing profit and decreasing risk.

Emergence: The model's primary output is the mean investor value, over time. Important secondary outputs are the mean profit and risk chosen by investors over time, and the number of investors who have suffered a failure. These outputs emerge from how individual investors make their tradeoff decisions, but also from the "business climate": the ranges of _P_ and _F_ values among patches and the number of investors competing for locations on the landscape.

Adaptive behavior: The adaptive behavior of investor agents is repositioning: the decision of which neighboring patch to move to (or whether to stay put), considering the profit and risk of these alternatives. Each time step, investors can reposition themselves to occupy any unoccupied one of the eight adjacent patches in the business landscape, or retain their current position. In this version of the model, investors use a simplified microeconomic analysis to make their decision, moving to the patch providing highest value of an objective function. 

Objective: (In economics, the term "utility" is used for the objective that agents seek.) Investors rate alternative investment positions by a utility measure that represents their expected future investment value at the end of a time horizon ( _T_, a number of future years; we use 5) if they buy and operate the business. This expected future wealth is a function of their current investment value, the profit offered by the patch, and the risk of failure at the patch:

  _U_ = ( _W_ + _T_ _P_) (1 - _F_)<sup> _T_</sup>

where _U_ is expected utility for the patch, _W_ is the investor's current value, and _P_ and _F_ are defined above. The term ( _W_ + _T_ _P_) estimates the investment value at the end of the time horizon. The term (1 - _F_)<sup> _T_</sup> is the probability of surviving failure over the time horizon; it reduces utility more as failure risk increases. (Economists might expect to use a utility measure such as present value that includes a discount rate to reduce the value of future profit. We ignore discounting to keep this model simple.) 

Prediction: The fitness measure includes an explicit forecast of utility over a time horizon that uses the assumption that _P_ and _F_ do not change over time. This assumption is accurate here because the patches' _P_ and _F_ values are static. 

Sensing: The investor agents are assumed to know the profit and risk at their own patch and the adjacent neighbor patches, without error. 

Interaction: The investors interact with each other only indirectly via competition for patches: an investor cannot reposition itself into a patch that is already occupied by another investor. Investors execute their repositioning action in randomized order, so there is no hierarchy in this competition: investors with higher investment value have no advantage over others in competing for locations. 

Stochasticity: The initial state of the model is stochastic: the values of _P_ and _F_ of each patch, and initial investor locations, are set randomly. Stochasticity is thus used to simulate an investment environment where alternatives are highly variable and risk is not correlated with profit. The values of _P_ are drawn from an exponential distribution, which produces many patches with low profits and a few patches with high profits. The random exponential distribution of _P_ makes the results of this model especially variable, even among model runs with the same parameter values.

Whether each investor fails each year is also stochastic, a simple way to represent risk. The investor reposition action uses stochasticity only in the very unlikely event that more than one potential destination patch offers the same highest utility; when there is such a tie the agent randomly chooses one of the tied patches to move to. 

Observation: The View shows the location of each agent on the investment landscape. Having the investors put their pen down lets us observe how many patches each has used. Graphs show the mean risk and mean profit of patches occupied by investors, and mean investor wealth over time. The standard deviation in wealth is also graphed as a simple and appropriate measure of how evenly wealth is distributed among investors.

Learning and collectives are not represented. 

## 5. Initialization

The value of _P_ for each patch is drawn from a random exponential distribution, which produces more patches with low profits and fewer patches with high profits. The mean of this exponential distribution is 5000. The value of _F_ for each patch is drawn randomly from a uniform real number distribution with minimum of 0.01 and maximum of 0.1.

Twenty five investor agents are initialized and put in random patches, but investors cannot be placed in a patch already occupied by another investor. Their wealth state variable _W_ is initialized to zero. 

## 6. Input data

No time-series inputs are used.

## 7. Submodels

**Investor repositioning:** An investor identifies all the businesses that it could invest in: any of the neighboring eight (or fewer if on the edge of the space) patches that are unoccupied, plus its current patch. The investor then determines which of these alternatives provides the highest value of the utility function, and moves (or stays) there.

**Accounting:** This action is fully described above ("Process overview and scheduling").




This file provided as instructor materials for Railsback & Grimm 2018.]]></info>
  <turtleShapes>
    <shape name="default" rotatable="true" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="5"></point>
        <point x="40" y="250"></point>
        <point x="150" y="205"></point>
        <point x="260" y="250"></point>
      </polygon>
    </shape>
    <shape name="airplane" rotatable="true" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="0"></point>
        <point x="135" y="15"></point>
        <point x="120" y="60"></point>
        <point x="120" y="105"></point>
        <point x="15" y="165"></point>
        <point x="15" y="195"></point>
        <point x="120" y="180"></point>
        <point x="135" y="240"></point>
        <point x="105" y="270"></point>
        <point x="120" y="285"></point>
        <point x="150" y="270"></point>
        <point x="180" y="285"></point>
        <point x="210" y="270"></point>
        <point x="165" y="240"></point>
        <point x="180" y="180"></point>
        <point x="285" y="195"></point>
        <point x="285" y="165"></point>
        <point x="180" y="105"></point>
        <point x="180" y="60"></point>
        <point x="165" y="15"></point>
      </polygon>
    </shape>
    <shape name="arrow" rotatable="true" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="0"></point>
        <point x="0" y="150"></point>
        <point x="105" y="150"></point>
        <point x="105" y="293"></point>
        <point x="195" y="293"></point>
        <point x="195" y="150"></point>
        <point x="300" y="150"></point>
      </polygon>
    </shape>
    <shape name="box" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="285"></point>
        <point x="285" y="225"></point>
        <point x="285" y="75"></point>
        <point x="150" y="135"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="135"></point>
        <point x="15" y="75"></point>
        <point x="150" y="15"></point>
        <point x="285" y="75"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="15" y="75"></point>
        <point x="15" y="225"></point>
        <point x="150" y="285"></point>
        <point x="150" y="135"></point>
      </polygon>
      <line endX="150" startY="285" marked="false" color="255" endY="135" startX="150"></line>
      <line endX="15" startY="135" marked="false" color="255" endY="75" startX="150"></line>
      <line endX="285" startY="135" marked="false" color="255" endY="75" startX="150"></line>
    </shape>
    <shape name="bug" rotatable="true" editableColorIndex="0">
      <circle x="96" y="182" marked="true" color="-1920102913" diameter="108" filled="true"></circle>
      <circle x="110" y="127" marked="true" color="-1920102913" diameter="80" filled="true"></circle>
      <circle x="110" y="75" marked="true" color="-1920102913" diameter="80" filled="true"></circle>
      <line endX="80" startY="100" marked="true" color="-1920102913" endY="30" startX="150"></line>
      <line endX="220" startY="100" marked="true" color="-1920102913" endY="30" startX="150"></line>
    </shape>
    <shape name="butterfly" rotatable="true" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="165"></point>
        <point x="209" y="199"></point>
        <point x="225" y="225"></point>
        <point x="225" y="255"></point>
        <point x="195" y="270"></point>
        <point x="165" y="255"></point>
        <point x="150" y="240"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="165"></point>
        <point x="89" y="198"></point>
        <point x="75" y="225"></point>
        <point x="75" y="255"></point>
        <point x="105" y="270"></point>
        <point x="135" y="255"></point>
        <point x="150" y="240"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="139" y="148"></point>
        <point x="100" y="105"></point>
        <point x="55" y="90"></point>
        <point x="25" y="90"></point>
        <point x="10" y="105"></point>
        <point x="10" y="135"></point>
        <point x="25" y="180"></point>
        <point x="40" y="195"></point>
        <point x="85" y="194"></point>
        <point x="139" y="163"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="162" y="150"></point>
        <point x="200" y="105"></point>
        <point x="245" y="90"></point>
        <point x="275" y="90"></point>
        <point x="290" y="105"></point>
        <point x="290" y="135"></point>
        <point x="275" y="180"></point>
        <point x="260" y="195"></point>
        <point x="215" y="195"></point>
        <point x="162" y="165"></point>
      </polygon>
      <polygon color="255" filled="true" marked="false">
        <point x="150" y="255"></point>
        <point x="135" y="225"></point>
        <point x="120" y="150"></point>
        <point x="135" y="120"></point>
        <point x="150" y="105"></point>
        <point x="165" y="120"></point>
        <point x="180" y="150"></point>
        <point x="165" y="225"></point>
      </polygon>
      <circle x="135" y="90" marked="false" color="255" diameter="30" filled="true"></circle>
      <line endX="195" startY="105" marked="false" color="255" endY="60" startX="150"></line>
      <line endX="105" startY="105" marked="false" color="255" endY="60" startX="150"></line>
    </shape>
    <shape name="car" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="300" y="180"></point>
        <point x="279" y="164"></point>
        <point x="261" y="144"></point>
        <point x="240" y="135"></point>
        <point x="226" y="132"></point>
        <point x="213" y="106"></point>
        <point x="203" y="84"></point>
        <point x="185" y="63"></point>
        <point x="159" y="50"></point>
        <point x="135" y="50"></point>
        <point x="75" y="60"></point>
        <point x="0" y="150"></point>
        <point x="0" y="165"></point>
        <point x="0" y="225"></point>
        <point x="300" y="225"></point>
        <point x="300" y="180"></point>
      </polygon>
      <circle x="180" y="180" marked="false" color="255" diameter="90" filled="true"></circle>
      <circle x="30" y="180" marked="false" color="255" diameter="90" filled="true"></circle>
      <polygon color="255" filled="true" marked="false">
        <point x="162" y="80"></point>
        <point x="132" y="78"></point>
        <point x="134" y="135"></point>
        <point x="209" y="135"></point>
        <point x="194" y="105"></point>
        <point x="189" y="96"></point>
        <point x="180" y="89"></point>
      </polygon>
      <circle x="47" y="195" marked="true" color="-1920102913" diameter="58" filled="true"></circle>
      <circle x="195" y="195" marked="true" color="-1920102913" diameter="58" filled="true"></circle>
    </shape>
    <shape name="circle" rotatable="false" editableColorIndex="0">
      <circle x="0" y="0" marked="true" color="-1920102913" diameter="300" filled="true"></circle>
    </shape>
    <shape name="circle 2" rotatable="false" editableColorIndex="0">
      <circle x="0" y="0" marked="true" color="-1920102913" diameter="300" filled="true"></circle>
      <circle x="30" y="30" marked="false" color="255" diameter="240" filled="true"></circle>
    </shape>
    <shape name="cow" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="200" y="193"></point>
        <point x="197" y="249"></point>
        <point x="179" y="249"></point>
        <point x="177" y="196"></point>
        <point x="166" y="187"></point>
        <point x="140" y="189"></point>
        <point x="93" y="191"></point>
        <point x="78" y="179"></point>
        <point x="72" y="211"></point>
        <point x="49" y="209"></point>
        <point x="48" y="181"></point>
        <point x="37" y="149"></point>
        <point x="25" y="120"></point>
        <point x="25" y="89"></point>
        <point x="45" y="72"></point>
        <point x="103" y="84"></point>
        <point x="179" y="75"></point>
        <point x="198" y="76"></point>
        <point x="252" y="64"></point>
        <point x="272" y="81"></point>
        <point x="293" y="103"></point>
        <point x="285" y="121"></point>
        <point x="255" y="121"></point>
        <point x="242" y="118"></point>
        <point x="224" y="167"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="73" y="210"></point>
        <point x="86" y="251"></point>
        <point x="62" y="249"></point>
        <point x="48" y="208"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="25" y="114"></point>
        <point x="16" y="195"></point>
        <point x="9" y="204"></point>
        <point x="23" y="213"></point>
        <point x="25" y="200"></point>
        <point x="39" y="123"></point>
      </polygon>
    </shape>
    <shape name="cylinder" rotatable="false" editableColorIndex="0">
      <circle x="0" y="0" marked="true" color="-1920102913" diameter="300" filled="true"></circle>
    </shape>
    <shape name="dot" rotatable="false" editableColorIndex="0">
      <circle x="90" y="90" marked="true" color="-1920102913" diameter="120" filled="true"></circle>
    </shape>
    <shape name="face happy" rotatable="false" editableColorIndex="0">
      <circle x="8" y="8" marked="true" color="-1920102913" diameter="285" filled="true"></circle>
      <circle x="60" y="75" marked="false" color="255" diameter="60" filled="true"></circle>
      <circle x="180" y="75" marked="false" color="255" diameter="60" filled="true"></circle>
      <polygon color="255" filled="true" marked="false">
        <point x="150" y="255"></point>
        <point x="90" y="239"></point>
        <point x="62" y="213"></point>
        <point x="47" y="191"></point>
        <point x="67" y="179"></point>
        <point x="90" y="203"></point>
        <point x="109" y="218"></point>
        <point x="150" y="225"></point>
        <point x="192" y="218"></point>
        <point x="210" y="203"></point>
        <point x="227" y="181"></point>
        <point x="251" y="194"></point>
        <point x="236" y="217"></point>
        <point x="212" y="240"></point>
      </polygon>
    </shape>
    <shape name="face neutral" rotatable="false" editableColorIndex="0">
      <circle x="8" y="7" marked="true" color="-1920102913" diameter="285" filled="true"></circle>
      <circle x="60" y="75" marked="false" color="255" diameter="60" filled="true"></circle>
      <circle x="180" y="75" marked="false" color="255" diameter="60" filled="true"></circle>
      <rectangle endX="240" startY="195" marked="false" color="255" endY="225" startX="60" filled="true"></rectangle>
    </shape>
    <shape name="face sad" rotatable="false" editableColorIndex="0">
      <circle x="8" y="8" marked="true" color="-1920102913" diameter="285" filled="true"></circle>
      <circle x="60" y="75" marked="false" color="255" diameter="60" filled="true"></circle>
      <circle x="180" y="75" marked="false" color="255" diameter="60" filled="true"></circle>
      <polygon color="255" filled="true" marked="false">
        <point x="150" y="168"></point>
        <point x="90" y="184"></point>
        <point x="62" y="210"></point>
        <point x="47" y="232"></point>
        <point x="67" y="244"></point>
        <point x="90" y="220"></point>
        <point x="109" y="205"></point>
        <point x="150" y="198"></point>
        <point x="192" y="205"></point>
        <point x="210" y="220"></point>
        <point x="227" y="242"></point>
        <point x="251" y="229"></point>
        <point x="236" y="206"></point>
        <point x="212" y="183"></point>
      </polygon>
    </shape>
    <shape name="fish" rotatable="false" editableColorIndex="0">
      <polygon color="-1" filled="true" marked="false">
        <point x="44" y="131"></point>
        <point x="21" y="87"></point>
        <point x="15" y="86"></point>
        <point x="0" y="120"></point>
        <point x="15" y="150"></point>
        <point x="0" y="180"></point>
        <point x="13" y="214"></point>
        <point x="20" y="212"></point>
        <point x="45" y="166"></point>
      </polygon>
      <polygon color="-1" filled="true" marked="false">
        <point x="135" y="195"></point>
        <point x="119" y="235"></point>
        <point x="95" y="218"></point>
        <point x="76" y="210"></point>
        <point x="46" y="204"></point>
        <point x="60" y="165"></point>
      </polygon>
      <polygon color="-1" filled="true" marked="false">
        <point x="75" y="45"></point>
        <point x="83" y="77"></point>
        <point x="71" y="103"></point>
        <point x="86" y="114"></point>
        <point x="166" y="78"></point>
        <point x="135" y="60"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="30" y="136"></point>
        <point x="151" y="77"></point>
        <point x="226" y="81"></point>
        <point x="280" y="119"></point>
        <point x="292" y="146"></point>
        <point x="292" y="160"></point>
        <point x="287" y="170"></point>
        <point x="270" y="195"></point>
        <point x="195" y="210"></point>
        <point x="151" y="212"></point>
        <point x="30" y="166"></point>
      </polygon>
      <circle x="215" y="106" marked="false" color="255" diameter="30" filled="true"></circle>
    </shape>
    <shape name="flag" rotatable="false" editableColorIndex="0">
      <rectangle endX="75" startY="15" marked="true" color="-1920102913" endY="300" startX="60" filled="true"></rectangle>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="90" y="150"></point>
        <point x="270" y="90"></point>
        <point x="90" y="30"></point>
      </polygon>
      <line endX="90" startY="135" marked="true" color="-1920102913" endY="135" startX="75"></line>
      <line endX="90" startY="45" marked="true" color="-1920102913" endY="45" startX="75"></line>
    </shape>
    <shape name="flower" rotatable="false" editableColorIndex="0">
      <polygon color="1504722175" filled="true" marked="false">
        <point x="135" y="120"></point>
        <point x="165" y="165"></point>
        <point x="180" y="210"></point>
        <point x="180" y="240"></point>
        <point x="150" y="300"></point>
        <point x="165" y="300"></point>
        <point x="195" y="240"></point>
        <point x="195" y="195"></point>
        <point x="165" y="135"></point>
      </polygon>
      <circle x="85" y="132" marked="true" color="-1920102913" diameter="38" filled="true"></circle>
      <circle x="130" y="147" marked="true" color="-1920102913" diameter="38" filled="true"></circle>
      <circle x="192" y="85" marked="true" color="-1920102913" diameter="38" filled="true"></circle>
      <circle x="85" y="40" marked="true" color="-1920102913" diameter="38" filled="true"></circle>
      <circle x="177" y="40" marked="true" color="-1920102913" diameter="38" filled="true"></circle>
      <circle x="177" y="132" marked="true" color="-1920102913" diameter="38" filled="true"></circle>
      <circle x="70" y="85" marked="true" color="-1920102913" diameter="38" filled="true"></circle>
      <circle x="130" y="25" marked="true" color="-1920102913" diameter="38" filled="true"></circle>
      <circle x="96" y="51" marked="true" color="-1920102913" diameter="108" filled="true"></circle>
      <circle x="113" y="68" marked="false" color="255" diameter="74" filled="true"></circle>
      <polygon color="1504722175" filled="true" marked="false">
        <point x="189" y="233"></point>
        <point x="219" y="188"></point>
        <point x="249" y="173"></point>
        <point x="279" y="188"></point>
        <point x="234" y="218"></point>
      </polygon>
      <polygon color="1504722175" filled="true" marked="false">
        <point x="180" y="255"></point>
        <point x="150" y="210"></point>
        <point x="105" y="210"></point>
        <point x="75" y="240"></point>
        <point x="135" y="240"></point>
      </polygon>
    </shape>
    <shape name="house" rotatable="false" editableColorIndex="0">
      <rectangle endX="255" startY="120" marked="true" color="-1920102913" endY="285" startX="45" filled="true"></rectangle>
      <rectangle endX="180" startY="210" marked="false" color="255" endY="285" startX="120" filled="true"></rectangle>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="15" y="120"></point>
        <point x="150" y="15"></point>
        <point x="285" y="120"></point>
      </polygon>
      <line endX="270" startY="120" marked="false" color="255" endY="120" startX="30"></line>
    </shape>
    <shape name="leaf" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="210"></point>
        <point x="135" y="195"></point>
        <point x="120" y="210"></point>
        <point x="60" y="210"></point>
        <point x="30" y="195"></point>
        <point x="60" y="180"></point>
        <point x="60" y="165"></point>
        <point x="15" y="135"></point>
        <point x="30" y="120"></point>
        <point x="15" y="105"></point>
        <point x="40" y="104"></point>
        <point x="45" y="90"></point>
        <point x="60" y="90"></point>
        <point x="90" y="105"></point>
        <point x="105" y="120"></point>
        <point x="120" y="120"></point>
        <point x="105" y="60"></point>
        <point x="120" y="60"></point>
        <point x="135" y="30"></point>
        <point x="150" y="15"></point>
        <point x="165" y="30"></point>
        <point x="180" y="60"></point>
        <point x="195" y="60"></point>
        <point x="180" y="120"></point>
        <point x="195" y="120"></point>
        <point x="210" y="105"></point>
        <point x="240" y="90"></point>
        <point x="255" y="90"></point>
        <point x="263" y="104"></point>
        <point x="285" y="105"></point>
        <point x="270" y="120"></point>
        <point x="285" y="135"></point>
        <point x="240" y="165"></point>
        <point x="240" y="180"></point>
        <point x="270" y="195"></point>
        <point x="240" y="210"></point>
        <point x="180" y="210"></point>
        <point x="165" y="195"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="135" y="195"></point>
        <point x="135" y="240"></point>
        <point x="120" y="255"></point>
        <point x="105" y="255"></point>
        <point x="105" y="285"></point>
        <point x="135" y="285"></point>
        <point x="165" y="240"></point>
        <point x="165" y="195"></point>
      </polygon>
    </shape>
    <shape name="line" rotatable="true" editableColorIndex="0">
      <line endX="150" startY="0" marked="true" color="-1920102913" endY="300" startX="150"></line>
    </shape>
    <shape name="line half" rotatable="true" editableColorIndex="0">
      <line endX="150" startY="0" marked="true" color="-1920102913" endY="150" startX="150"></line>
    </shape>
    <shape name="pentagon" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="15"></point>
        <point x="15" y="120"></point>
        <point x="60" y="285"></point>
        <point x="240" y="285"></point>
        <point x="285" y="120"></point>
      </polygon>
    </shape>
    <shape name="person" rotatable="false" editableColorIndex="0">
      <circle x="110" y="5" marked="true" color="-1920102913" diameter="80" filled="true"></circle>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="105" y="90"></point>
        <point x="120" y="195"></point>
        <point x="90" y="285"></point>
        <point x="105" y="300"></point>
        <point x="135" y="300"></point>
        <point x="150" y="225"></point>
        <point x="165" y="300"></point>
        <point x="195" y="300"></point>
        <point x="210" y="285"></point>
        <point x="180" y="195"></point>
        <point x="195" y="90"></point>
      </polygon>
      <rectangle endX="172" startY="79" marked="true" color="-1920102913" endY="94" startX="127" filled="true"></rectangle>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="195" y="90"></point>
        <point x="240" y="150"></point>
        <point x="225" y="180"></point>
        <point x="165" y="105"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="105" y="90"></point>
        <point x="60" y="150"></point>
        <point x="75" y="180"></point>
        <point x="135" y="105"></point>
      </polygon>
    </shape>
    <shape name="plant" rotatable="false" editableColorIndex="0">
      <rectangle endX="165" startY="90" marked="true" color="-1920102913" endY="300" startX="135" filled="true"></rectangle>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="135" y="255"></point>
        <point x="90" y="210"></point>
        <point x="45" y="195"></point>
        <point x="75" y="255"></point>
        <point x="135" y="285"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="165" y="255"></point>
        <point x="210" y="210"></point>
        <point x="255" y="195"></point>
        <point x="225" y="255"></point>
        <point x="165" y="285"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="135" y="180"></point>
        <point x="90" y="135"></point>
        <point x="45" y="120"></point>
        <point x="75" y="180"></point>
        <point x="135" y="210"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="165" y="180"></point>
        <point x="165" y="210"></point>
        <point x="225" y="180"></point>
        <point x="255" y="120"></point>
        <point x="210" y="135"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="135" y="105"></point>
        <point x="90" y="60"></point>
        <point x="45" y="45"></point>
        <point x="75" y="105"></point>
        <point x="135" y="135"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="165" y="105"></point>
        <point x="165" y="135"></point>
        <point x="225" y="105"></point>
        <point x="255" y="45"></point>
        <point x="210" y="60"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="135" y="90"></point>
        <point x="120" y="45"></point>
        <point x="150" y="15"></point>
        <point x="180" y="45"></point>
        <point x="165" y="90"></point>
      </polygon>
    </shape>
    <shape name="square" rotatable="false" editableColorIndex="0">
      <rectangle endX="270" startY="30" marked="true" color="-1920102913" endY="270" startX="30" filled="true"></rectangle>
    </shape>
    <shape name="square 2" rotatable="false" editableColorIndex="0">
      <rectangle endX="270" startY="30" marked="true" color="-1920102913" endY="270" startX="30" filled="true"></rectangle>
      <rectangle endX="240" startY="60" marked="false" color="255" endY="240" startX="60" filled="true"></rectangle>
    </shape>
    <shape name="star" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="151" y="1"></point>
        <point x="185" y="108"></point>
        <point x="298" y="108"></point>
        <point x="207" y="175"></point>
        <point x="242" y="282"></point>
        <point x="151" y="216"></point>
        <point x="59" y="282"></point>
        <point x="94" y="175"></point>
        <point x="3" y="108"></point>
        <point x="116" y="108"></point>
      </polygon>
    </shape>
    <shape name="target" rotatable="false" editableColorIndex="0">
      <circle x="0" y="0" marked="true" color="-1920102913" diameter="300" filled="true"></circle>
      <circle x="30" y="30" marked="false" color="255" diameter="240" filled="true"></circle>
      <circle x="60" y="60" marked="true" color="-1920102913" diameter="180" filled="true"></circle>
      <circle x="90" y="90" marked="false" color="255" diameter="120" filled="true"></circle>
      <circle x="120" y="120" marked="true" color="-1920102913" diameter="60" filled="true"></circle>
    </shape>
    <shape name="tree" rotatable="false" editableColorIndex="0">
      <circle x="118" y="3" marked="true" color="-1920102913" diameter="94" filled="true"></circle>
      <rectangle endX="180" startY="195" marked="false" color="-1653716737" endY="300" startX="120" filled="true"></rectangle>
      <circle x="65" y="21" marked="true" color="-1920102913" diameter="108" filled="true"></circle>
      <circle x="116" y="41" marked="true" color="-1920102913" diameter="127" filled="true"></circle>
      <circle x="45" y="90" marked="true" color="-1920102913" diameter="120" filled="true"></circle>
      <circle x="104" y="74" marked="true" color="-1920102913" diameter="152" filled="true"></circle>
    </shape>
    <shape name="triangle" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="30"></point>
        <point x="15" y="255"></point>
        <point x="285" y="255"></point>
      </polygon>
    </shape>
    <shape name="triangle 2" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="150" y="30"></point>
        <point x="15" y="255"></point>
        <point x="285" y="255"></point>
      </polygon>
      <polygon color="255" filled="true" marked="false">
        <point x="151" y="99"></point>
        <point x="225" y="223"></point>
        <point x="75" y="224"></point>
      </polygon>
    </shape>
    <shape name="truck" rotatable="false" editableColorIndex="0">
      <rectangle endX="195" startY="45" marked="true" color="-1920102913" endY="187" startX="4" filled="true"></rectangle>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="296" y="193"></point>
        <point x="296" y="150"></point>
        <point x="259" y="134"></point>
        <point x="244" y="104"></point>
        <point x="208" y="104"></point>
        <point x="207" y="194"></point>
      </polygon>
      <rectangle endX="195" startY="60" marked="false" color="-1" endY="105" startX="195" filled="true"></rectangle>
      <polygon color="255" filled="true" marked="false">
        <point x="238" y="112"></point>
        <point x="252" y="141"></point>
        <point x="219" y="141"></point>
        <point x="218" y="112"></point>
      </polygon>
      <circle x="234" y="174" marked="false" color="255" diameter="42" filled="true"></circle>
      <rectangle endX="214" startY="185" marked="true" color="-1920102913" endY="194" startX="181" filled="true"></rectangle>
      <circle x="144" y="174" marked="false" color="255" diameter="42" filled="true"></circle>
      <circle x="24" y="174" marked="false" color="255" diameter="42" filled="true"></circle>
      <circle x="24" y="174" marked="true" color="-1920102913" diameter="42" filled="false"></circle>
      <circle x="144" y="174" marked="true" color="-1920102913" diameter="42" filled="false"></circle>
      <circle x="234" y="174" marked="true" color="-1920102913" diameter="42" filled="false"></circle>
    </shape>
    <shape name="turtle" rotatable="true" editableColorIndex="0">
      <polygon color="1504722175" filled="true" marked="false">
        <point x="215" y="204"></point>
        <point x="240" y="233"></point>
        <point x="246" y="254"></point>
        <point x="228" y="266"></point>
        <point x="215" y="252"></point>
        <point x="193" y="210"></point>
      </polygon>
      <polygon color="1504722175" filled="true" marked="false">
        <point x="195" y="90"></point>
        <point x="225" y="75"></point>
        <point x="245" y="75"></point>
        <point x="260" y="89"></point>
        <point x="269" y="108"></point>
        <point x="261" y="124"></point>
        <point x="240" y="105"></point>
        <point x="225" y="105"></point>
        <point x="210" y="105"></point>
      </polygon>
      <polygon color="1504722175" filled="true" marked="false">
        <point x="105" y="90"></point>
        <point x="75" y="75"></point>
        <point x="55" y="75"></point>
        <point x="40" y="89"></point>
        <point x="31" y="108"></point>
        <point x="39" y="124"></point>
        <point x="60" y="105"></point>
        <point x="75" y="105"></point>
        <point x="90" y="105"></point>
      </polygon>
      <polygon color="1504722175" filled="true" marked="false">
        <point x="132" y="85"></point>
        <point x="134" y="64"></point>
        <point x="107" y="51"></point>
        <point x="108" y="17"></point>
        <point x="150" y="2"></point>
        <point x="192" y="18"></point>
        <point x="192" y="52"></point>
        <point x="169" y="65"></point>
        <point x="172" y="87"></point>
      </polygon>
      <polygon color="1504722175" filled="true" marked="false">
        <point x="85" y="204"></point>
        <point x="60" y="233"></point>
        <point x="54" y="254"></point>
        <point x="72" y="266"></point>
        <point x="85" y="252"></point>
        <point x="107" y="210"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="119" y="75"></point>
        <point x="179" y="75"></point>
        <point x="209" y="101"></point>
        <point x="224" y="135"></point>
        <point x="220" y="225"></point>
        <point x="175" y="261"></point>
        <point x="128" y="261"></point>
        <point x="81" y="224"></point>
        <point x="74" y="135"></point>
        <point x="88" y="99"></point>
      </polygon>
    </shape>
    <shape name="wheel" rotatable="false" editableColorIndex="0">
      <circle x="3" y="3" marked="true" color="-1920102913" diameter="294" filled="true"></circle>
      <circle x="30" y="30" marked="false" color="255" diameter="240" filled="true"></circle>
      <line endX="150" startY="285" marked="true" color="-1920102913" endY="15" startX="150"></line>
      <line endX="285" startY="150" marked="true" color="-1920102913" endY="150" startX="15"></line>
      <circle x="120" y="120" marked="true" color="-1920102913" diameter="60" filled="true"></circle>
      <line endX="79" startY="40" marked="true" color="-1920102913" endY="269" startX="216"></line>
      <line endX="269" startY="84" marked="true" color="-1920102913" endY="221" startX="40"></line>
      <line endX="269" startY="216" marked="true" color="-1920102913" endY="79" startX="40"></line>
      <line endX="221" startY="40" marked="true" color="-1920102913" endY="269" startX="84"></line>
    </shape>
    <shape name="x" rotatable="false" editableColorIndex="0">
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="270" y="75"></point>
        <point x="225" y="30"></point>
        <point x="30" y="225"></point>
        <point x="75" y="270"></point>
      </polygon>
      <polygon color="-1920102913" filled="true" marked="true">
        <point x="30" y="75"></point>
        <point x="75" y="30"></point>
        <point x="270" y="225"></point>
        <point x="225" y="270"></point>
      </polygon>
    </shape>
  </turtleShapes>
  <linkShapes>
    <shape name="default" curviness="0.0">
      <lines>
        <line x="-0.2" visible="false">
          <dash value="0.0"></dash>
          <dash value="1.0"></dash>
        </line>
        <line x="0.0" visible="true">
          <dash value="1.0"></dash>
          <dash value="0.0"></dash>
        </line>
        <line x="0.2" visible="false">
          <dash value="0.0"></dash>
          <dash value="1.0"></dash>
        </line>
      </lines>
      <indicator>
        <shape name="link direction" rotatable="true" editableColorIndex="0">
          <line endX="90" startY="150" marked="true" color="-1920102913" endY="180" startX="150"></line>
          <line endX="210" startY="150" marked="true" color="-1920102913" endY="180" startX="150"></line>
        </shape>
      </indicator>
    </shape>
  </linkShapes>
  <previewCommands>setup repeat 75 [ go ]</previewCommands>
  <experiments>
    <experiment name="Number-of-Links" repetitions="50" sequentialRunOrder="false" runMetricsEveryStep="true">
      <setup>setup</setup>
      <go>go</go>
      <metrics>
        <metric>mean [wealth] of turtles</metric>
        <metric>standard-deviation [wealth] of turtles</metric>
      </metrics>
      <constants>
        <steppedValueSet variable="number-of-links" first="0" step="1" last="10"></steppedValueSet>
        <enumeratedValueSet variable="profit-multiplier">
          <value value="1"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="risk-multiplier">
          <value value="1"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="vision-mode">
          <value value="&quot;links&quot;"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="objective">
          <value value="&quot;Optimize&quot;"></value>
        </enumeratedValueSet>
      </constants>
    </experiment>
    <experiment name="vary risk" repetitions="50" sequentialRunOrder="true" runMetricsEveryStep="true">
      <setup>setup</setup>
      <go>go</go>
      <metrics>
        <metric>mean [wealth] of turtles</metric>
        <metric>standard-deviation [wealth] of turtles</metric>
        <metric>mean [profit] of patches with [any? turtles-here]</metric>
        <metric>mean [annual-risk] of patches with [any? turtles-here]</metric>
      </metrics>
      <constants>
        <enumeratedValueSet variable="number-of-links">
          <value value="0"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="profit-multiplier">
          <value value="1"></value>
        </enumeratedValueSet>
        <steppedValueSet variable="risk-multiplier" first="1" step="0.1" last="2"></steppedValueSet>
        <enumeratedValueSet variable="vision-mode">
          <value value="&quot;neighbors&quot;"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="objective">
          <value value="&quot;Optimize&quot;"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="number-investors">
          <value value="25"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="max-ticks">
          <value value="50"></value>
        </enumeratedValueSet>
      </constants>
    </experiment>
    <experiment name="vary profit" repetitions="50" sequentialRunOrder="true" runMetricsEveryStep="true">
      <setup>setup</setup>
      <go>go</go>
      <metrics>
        <metric>mean [wealth] of turtles</metric>
        <metric>standard-deviation [wealth] of turtles</metric>
        <metric>mean [profit] of patches with [any? turtles-here]</metric>
        <metric>mean [annual-risk] of patches with [any? turtles-here]</metric>
      </metrics>
      <constants>
        <enumeratedValueSet variable="number-of-links">
          <value value="0"></value>
        </enumeratedValueSet>
        <steppedValueSet variable="profit-multiplier" first="0.5" step="0.05" last="1"></steppedValueSet>
        <enumeratedValueSet variable="risk-multiplier">
          <value value="1"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="vision-mode">
          <value value="&quot;neighbors&quot;"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="objective">
          <value value="&quot;Optimize&quot;"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="number-investors">
          <value value="25"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="max-ticks">
          <value value="50"></value>
        </enumeratedValueSet>
      </constants>
    </experiment>
    <experiment name="vary risk and profit" repetitions="50" sequentialRunOrder="true" runMetricsEveryStep="true">
      <setup>setup</setup>
      <go>go</go>
      <metrics>
        <metric>mean [wealth] of turtles</metric>
        <metric>standard-deviation [wealth] of turtles</metric>
        <metric>mean [profit] of patches with [any? turtles-here]</metric>
        <metric>mean [annual-risk] of patches with [any? turtles-here]</metric>
      </metrics>
      <constants>
        <enumeratedValueSet variable="number-of-links">
          <value value="0"></value>
        </enumeratedValueSet>
        <steppedValueSet variable="profit-multiplier" first="0.5" step="0.1" last="1"></steppedValueSet>
        <steppedValueSet variable="risk-multiplier" first="1" step="0.2" last="2"></steppedValueSet>
        <enumeratedValueSet variable="vision-mode">
          <value value="&quot;neighbors&quot;"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="objective">
          <value value="&quot;Optimize&quot;"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="number-investors">
          <value value="25"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="max-ticks">
          <value value="50"></value>
        </enumeratedValueSet>
      </constants>
    </experiment>
    <experiment name="vision-mode" repetitions="50" sequentialRunOrder="true" runMetricsEveryStep="true">
      <setup>setup</setup>
      <go>go</go>
      <metrics>
        <metric>mean [profit] of turtles</metric>
        <metric>mean [annual-risk] of turtles</metric>
        <metric>mean [wealth] of turtles</metric>
        <metric>standard-deviation [wealth] of turtles</metric>
      </metrics>
      <constants>
        <enumeratedValueSet variable="vision-mode">
          <value value="&quot;neighbors&quot;"></value>
          <value value="&quot;radius&quot;"></value>
          <value value="&quot;links&quot;"></value>
          <value value="&quot;links + radius&quot;"></value>
        </enumeratedValueSet>
        <steppedValueSet variable="sense-radius" first="1" step="1" last="10"></steppedValueSet>
        <enumeratedValueSet variable="risk-min">
          <value value="0.01"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="risk-max">
          <value value="0.1"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="max-ticks">
          <value value="50"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="min-profit">
          <value value="0"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="number-investors">
          <value value="25"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="profit-multiplier">
          <value value="1"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="number-of-links">
          <value value="2"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="risk-multiplier">
          <value value="1"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="income-threshold">
          <value value="5000"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="objective">
          <value value="&quot;Optimize&quot;"></value>
        </enumeratedValueSet>
        <enumeratedValueSet variable="show-links?">
          <value value="false"></value>
        </enumeratedValueSet>
      </constants>
    </experiment>
  </experiments>
</model>
