aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Readme.textile21
-rw-r--r--monopoly.bottom.dat40
-rwxr-xr-xmonopoly.bottom.plot10
-rw-r--r--monopoly.bottom.svg208
-rw-r--r--monopoly.discard.dat40
-rwxr-xr-xmonopoly.discard.plot10
-rw-r--r--monopoly.discard.svg208
-rwxr-xr-xmonopoly.rb129
8 files changed, 666 insertions, 0 deletions
diff --git a/Readme.textile b/Readme.textile
new file mode 100644
index 0000000..4e1c33b
--- /dev/null
+++ b/Readme.textile
@@ -0,0 +1,21 @@
+h1. Monopoly Landings
+
+This experimentally tests landing frequencies for squares on a monopoly board.
+
+h1. Requirements
+
+* Ruby
+* Gnuplot
+
+h1. Deck strateies
+
+There are two deck strategies available:
+
+* Put card back on bottom of deck (@bottom@)
+* Form a discard pile and shuffle it when the draw runs out (@discard@)
+
+h1. Running
+
+# ./monopoly <strategy> <rolls> > monopoly.<strategy>.dat
+# ./monopoly.<strategy>.plot
+# see monopoly.<strategy>.svg
diff --git a/monopoly.bottom.dat b/monopoly.bottom.dat
new file mode 100644
index 0000000..1ba0ebe
--- /dev/null
+++ b/monopoly.bottom.dat
@@ -0,0 +1,40 @@
+0 2056672
+1 2035295
+2 2133768
+3 2220406
+4 2315543
+5 2423412
+6 2554524
+7 2693143
+8 2638163
+9 2569634
+10 2876766
+11 2420811
+12 2421525
+13 2413601
+14 2498800
+15 2651458
+16 2773959
+17 2896894
+18 2853827
+19 2830049
+20 2795982
+21 2760713
+22 2724420
+23 2689202
+24 2676457
+25 2670255
+26 2646872
+27 2603607
+28 2547940
+29 2488636
+30 2516624
+31 2531628
+32 2488149
+33 2427072
+34 2378673
+35 2317250
+36 2208126
+37 2093793
+38 2087411
+39 2068940
diff --git a/monopoly.bottom.plot b/monopoly.bottom.plot
new file mode 100755
index 0000000..bb1bc60
--- /dev/null
+++ b/monopoly.bottom.plot
@@ -0,0 +1,10 @@
+#!/usr/bin/gnuplot
+
+reset
+
+set terminal svg size 350,262 fname 'Verdana, Helvetica, Arial, sans-serif' fsize '10'
+set output 'monopoly.bottom.svg'
+
+unset key
+
+plot 'monopoly.bottom.dat' with linespoints ls 1
diff --git a/monopoly.bottom.svg b/monopoly.bottom.svg
new file mode 100644
index 0000000..bc1ac69
--- /dev/null
+++ b/monopoly.bottom.svg
@@ -0,0 +1,208 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+ width="350" height="262"
+ viewBox="0 0 350 262"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+>
+
+<title>Gnuplot</title>
+<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
+
+<g id="gnuplot_canvas">
+
+<rect x="0" y="0" width="350" height="262" fill="none"/>
+<defs>
+
+ <circle id='gpDot' r='0.5' stroke-width='0.5'/>
+ <path id='gpPt0' stroke-width='0.267' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
+ <path id='gpPt1' stroke-width='0.267' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
+ <path id='gpPt2' stroke-width='0.267' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
+ <rect id='gpPt3' stroke-width='0.267' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
+ <rect id='gpPt4' stroke-width='0.267' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
+ <circle id='gpPt5' stroke-width='0.267' stroke='currentColor' cx='0' cy='0' r='1'/>
+ <use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
+ <path id='gpPt7' stroke-width='0.267' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
+ <use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
+ <use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
+ <use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
+ <use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
+ <use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
+ <path id='gpPt13' stroke-width='0.267' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
+ <use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
+ <filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
+ <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
+ <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
+ </filter>
+ <filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
+ <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
+ <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
+ </filter>
+</defs>
+<g fill="none" color="white" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,232.0 L74.0,232.0 M328.9,232.0 L321.4,232.0 '/> <g transform="translate(59.5,235.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,207.8 L74.0,207.8 M328.9,207.8 L321.4,207.8 '/> <g transform="translate(59.5,211.5)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.1x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,183.6 L74.0,183.6 M328.9,183.6 L321.4,183.6 '/> <g transform="translate(59.5,187.3)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.2x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,159.4 L74.0,159.4 M328.9,159.4 L321.4,159.4 '/> <g transform="translate(59.5,163.1)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.3x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,135.2 L74.0,135.2 M328.9,135.2 L321.4,135.2 '/> <g transform="translate(59.5,138.9)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.4x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,110.9 L74.0,110.9 M328.9,110.9 L321.4,110.9 '/> <g transform="translate(59.5,114.6)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.5x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,86.7 L74.0,86.7 M328.9,86.7 L321.4,86.7 '/> <g transform="translate(59.5,90.4)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.6x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,62.5 L74.0,62.5 M328.9,62.5 L321.4,62.5 '/> <g transform="translate(59.5,66.2)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.7x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,38.3 L74.0,38.3 M328.9,38.3 L321.4,38.3 '/> <g transform="translate(59.5,42.0)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.8x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,14.1 L74.0,14.1 M328.9,14.1 L321.4,14.1 '/> <g transform="translate(59.5,17.8)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.9x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,232.0 L66.5,224.5 M66.5,14.1 L66.5,21.6 '/> <g transform="translate(66.5,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 0</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M99.3,232.0 L99.3,224.5 M99.3,14.1 L99.3,21.6 '/> <g transform="translate(99.3,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 5</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M132.1,232.0 L132.1,224.5 M132.1,14.1 L132.1,21.6 '/> <g transform="translate(132.1,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 10</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M164.9,232.0 L164.9,224.5 M164.9,14.1 L164.9,21.6 '/> <g transform="translate(164.9,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 15</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M197.7,232.0 L197.7,224.5 M197.7,14.1 L197.7,21.6 '/> <g transform="translate(197.7,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 20</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M230.5,232.0 L230.5,224.5 M230.5,14.1 L230.5,21.6 '/> <g transform="translate(230.5,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 25</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M263.3,232.0 L263.3,224.5 M263.3,14.1 L263.3,21.6 '/> <g transform="translate(263.3,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 30</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M296.1,232.0 L296.1,224.5 M296.1,14.1 L296.1,21.6 '/> <g transform="translate(296.1,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 35</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M328.9,232.0 L328.9,224.5 M328.9,14.1 L328.9,21.6 '/> <g transform="translate(328.9,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 40</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,14.1 L66.5,232.0 L328.9,232.0 L328.9,14.1 L66.5,14.1 Z '/></g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+ <g id="gnuplot_plot_1" ><title>'monopoly.bottom.dat'</title>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='rgb(148, 0, 211)' d='M66.5,218.3 L73.1,223.5 L79.6,199.6 L86.2,178.6 L92.7,155.6 L99.3,129.5 L105.9,97.7 L112.4,64.2
+ L119.0,77.5 L125.5,94.1 L132.1,19.7 L138.7,130.1 L145.2,129.9 L151.8,131.9 L158.3,111.2 L164.9,74.3
+ L171.5,44.6 L178.0,14.9 L184.6,25.3 L191.1,31.0 L197.7,39.3 L204.3,47.8 L210.8,56.6 L217.4,65.1
+ L223.9,68.2 L230.5,69.7 L237.1,75.4 L243.6,85.9 L250.2,99.3 L256.7,113.7 L263.3,106.9 L269.9,103.3
+ L276.4,113.8 L283.0,128.6 L289.5,140.3 L296.1,155.2 L302.7,181.6 L309.2,209.3 L315.8,210.8 L322.3,215.3
+ '/> <use xlink:href='#gpPt0' transform='translate(66.5,218.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(73.1,223.5) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(79.6,199.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(86.2,178.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(92.7,155.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(99.3,129.5) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(105.9,97.7) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(112.4,64.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(119.0,77.5) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(125.5,94.1) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(132.1,19.7) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(138.7,130.1) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(145.2,129.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(151.8,131.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(158.3,111.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(164.9,74.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(171.5,44.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(178.0,14.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(184.6,25.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(191.1,31.0) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(197.7,39.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(204.3,47.8) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(210.8,56.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(217.4,65.1) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(223.9,68.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(230.5,69.7) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(237.1,75.4) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(243.6,85.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(250.2,99.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(256.7,113.7) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(263.3,106.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(269.9,103.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(276.4,113.8) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(283.0,128.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(289.5,140.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(296.1,155.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(302.7,181.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(309.2,209.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(315.8,210.8) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(322.3,215.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+</g>
+ </g>
+<g fill="none" color="white" stroke="rgb(148, 0, 211)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,14.1 L66.5,232.0 L328.9,232.0 L328.9,14.1 L66.5,14.1 Z '/></g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+</g>
+</svg>
+
diff --git a/monopoly.discard.dat b/monopoly.discard.dat
new file mode 100644
index 0000000..fa2af6a
--- /dev/null
+++ b/monopoly.discard.dat
@@ -0,0 +1,40 @@
+0 2054907
+1 2035470
+2 2131962
+3 2223948
+4 2315474
+5 2422870
+6 2553760
+7 2698018
+8 2642567
+9 2571248
+10 2877528
+11 2424713
+12 2419076
+13 2417959
+14 2500926
+15 2651781
+16 2767257
+17 2895492
+18 2851747
+19 2826312
+20 2797420
+21 2758991
+22 2721143
+23 2690382
+24 2675196
+25 2669472
+26 2646083
+27 2603111
+28 2543992
+29 2491120
+30 2514633
+31 2536961
+32 2484118
+33 2431014
+34 2378539
+35 2315314
+36 2209503
+37 2093443
+38 2087070
+39 2069480
diff --git a/monopoly.discard.plot b/monopoly.discard.plot
new file mode 100755
index 0000000..ea85f99
--- /dev/null
+++ b/monopoly.discard.plot
@@ -0,0 +1,10 @@
+#!/usr/bin/gnuplot
+
+reset
+
+set terminal svg size 350,262 fname 'Verdana, Helvetica, Arial, sans-serif' fsize '10'
+set output 'monopoly.discard.svg'
+
+unset key
+
+plot 'monopoly.discard.dat' with linespoints ls 1
diff --git a/monopoly.discard.svg b/monopoly.discard.svg
new file mode 100644
index 0000000..f1ba2f1
--- /dev/null
+++ b/monopoly.discard.svg
@@ -0,0 +1,208 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+ width="350" height="262"
+ viewBox="0 0 350 262"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+>
+
+<title>Gnuplot</title>
+<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
+
+<g id="gnuplot_canvas">
+
+<rect x="0" y="0" width="350" height="262" fill="none"/>
+<defs>
+
+ <circle id='gpDot' r='0.5' stroke-width='0.5'/>
+ <path id='gpPt0' stroke-width='0.267' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
+ <path id='gpPt1' stroke-width='0.267' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
+ <path id='gpPt2' stroke-width='0.267' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
+ <rect id='gpPt3' stroke-width='0.267' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
+ <rect id='gpPt4' stroke-width='0.267' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
+ <circle id='gpPt5' stroke-width='0.267' stroke='currentColor' cx='0' cy='0' r='1'/>
+ <use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
+ <path id='gpPt7' stroke-width='0.267' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
+ <use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
+ <use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
+ <use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
+ <use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
+ <use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
+ <path id='gpPt13' stroke-width='0.267' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
+ <use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
+ <filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
+ <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
+ <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
+ </filter>
+ <filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
+ <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
+ <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
+ </filter>
+</defs>
+<g fill="none" color="white" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,232.0 L74.0,232.0 M328.9,232.0 L321.4,232.0 '/> <g transform="translate(59.5,235.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,207.8 L74.0,207.8 M328.9,207.8 L321.4,207.8 '/> <g transform="translate(59.5,211.5)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.1x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,183.6 L74.0,183.6 M328.9,183.6 L321.4,183.6 '/> <g transform="translate(59.5,187.3)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.2x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,159.4 L74.0,159.4 M328.9,159.4 L321.4,159.4 '/> <g transform="translate(59.5,163.1)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.3x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,135.2 L74.0,135.2 M328.9,135.2 L321.4,135.2 '/> <g transform="translate(59.5,138.9)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.4x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,110.9 L74.0,110.9 M328.9,110.9 L321.4,110.9 '/> <g transform="translate(59.5,114.6)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.5x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,86.7 L74.0,86.7 M328.9,86.7 L321.4,86.7 '/> <g transform="translate(59.5,90.4)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.6x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,62.5 L74.0,62.5 M328.9,62.5 L321.4,62.5 '/> <g transform="translate(59.5,66.2)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.7x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,38.3 L74.0,38.3 M328.9,38.3 L321.4,38.3 '/> <g transform="translate(59.5,42.0)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.8x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,14.1 L74.0,14.1 M328.9,14.1 L321.4,14.1 '/> <g transform="translate(59.5,17.8)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="end">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 2.9x10</tspan><tspan font-family="Verdana, Helvetica, Arial, sans-serif" font-size="8.0" dy="-5.00px">6</tspan><tspan font-size="10.0" dy="5.00"></tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,232.0 L66.5,224.5 M66.5,14.1 L66.5,21.6 '/> <g transform="translate(66.5,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 0</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M99.3,232.0 L99.3,224.5 M99.3,14.1 L99.3,21.6 '/> <g transform="translate(99.3,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 5</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M132.1,232.0 L132.1,224.5 M132.1,14.1 L132.1,21.6 '/> <g transform="translate(132.1,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 10</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M164.9,232.0 L164.9,224.5 M164.9,14.1 L164.9,21.6 '/> <g transform="translate(164.9,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 15</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M197.7,232.0 L197.7,224.5 M197.7,14.1 L197.7,21.6 '/> <g transform="translate(197.7,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 20</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M230.5,232.0 L230.5,224.5 M230.5,14.1 L230.5,21.6 '/> <g transform="translate(230.5,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 25</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M263.3,232.0 L263.3,224.5 M263.3,14.1 L263.3,21.6 '/> <g transform="translate(263.3,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 30</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M296.1,232.0 L296.1,224.5 M296.1,14.1 L296.1,21.6 '/> <g transform="translate(296.1,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 35</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M328.9,232.0 L328.9,224.5 M328.9,14.1 L328.9,21.6 '/> <g transform="translate(328.9,250.7)" stroke="none" fill="black" font-family="Verdana, Helvetica, Arial, sans-serif" font-size="10.00" text-anchor="middle">
+ <text><tspan font-family="Verdana, Helvetica, Arial, sans-serif" > 40</tspan></text>
+ </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,14.1 L66.5,232.0 L328.9,232.0 L328.9,14.1 L66.5,14.1 Z '/></g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+ <g id="gnuplot_plot_1" ><title>'monopoly.discard.dat'</title>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='rgb(148, 0, 211)' d='M66.5,218.7 L73.1,223.4 L79.6,200.1 L86.2,177.8 L92.7,155.6 L99.3,129.6 L105.9,97.9 L112.4,63.0
+ L119.0,76.4 L125.5,93.7 L132.1,19.5 L138.7,129.2 L145.2,130.5 L151.8,130.8 L158.3,110.7 L164.9,74.2
+ L171.5,46.2 L178.0,15.2 L184.6,25.8 L191.1,31.9 L197.7,38.9 L204.3,48.2 L210.8,57.4 L217.4,64.9
+ L223.9,68.5 L230.5,69.9 L237.1,75.6 L243.6,86.0 L250.2,100.3 L256.7,113.1 L263.3,107.4 L269.9,102.0
+ L276.4,114.8 L283.0,127.6 L289.5,140.4 L296.1,155.7 L302.7,181.3 L309.2,209.4 L315.8,210.9 L322.3,215.2
+ '/> <use xlink:href='#gpPt0' transform='translate(66.5,218.7) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(73.1,223.4) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(79.6,200.1) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(86.2,177.8) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(92.7,155.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(99.3,129.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(105.9,97.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(112.4,63.0) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(119.0,76.4) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(125.5,93.7) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(132.1,19.5) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(138.7,129.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(145.2,130.5) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(151.8,130.8) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(158.3,110.7) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(164.9,74.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(171.5,46.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(178.0,15.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(184.6,25.8) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(191.1,31.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(197.7,38.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(204.3,48.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(210.8,57.4) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(217.4,64.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(223.9,68.5) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(230.5,69.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(237.1,75.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(243.6,86.0) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(250.2,100.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(256.7,113.1) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(263.3,107.4) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(269.9,102.0) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(276.4,114.8) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(283.0,127.6) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(289.5,140.4) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(296.1,155.7) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(302.7,181.3) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(309.2,209.4) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(315.8,210.9) scale(3.75)' color='rgb(148, 0, 211)'/>
+ <use xlink:href='#gpPt0' transform='translate(322.3,215.2) scale(3.75)' color='rgb(148, 0, 211)'/>
+</g>
+ </g>
+<g fill="none" color="white" stroke="rgb(148, 0, 211)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+ <path stroke='black' d='M66.5,14.1 L66.5,232.0 L328.9,232.0 L328.9,14.1 L66.5,14.1 Z '/></g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+</g>
+</svg>
+
diff --git a/monopoly.rb b/monopoly.rb
new file mode 100755
index 0000000..db8f01b
--- /dev/null
+++ b/monopoly.rb
@@ -0,0 +1,129 @@
+#!/usr/bin/env ruby
+
+require 'pp'
+
+class Roll
+ attr_reader :d1, :d2
+
+ def initialize
+ @d1 = rand(6) + 1
+ @d2 = rand(6) + 1
+ end
+
+ def sum
+ return @d1 + @d2
+ end
+
+ def double?
+ return @d1 == @d2
+ end
+end
+
+class Deck
+ def initialize(cards, strategy)
+ @draw = cards.shuffle
+ @size = cards.length
+ @strategy = strategy
+ @discard = [] if strategy == :discard
+ end
+
+ def take
+ this = @draw.shift
+
+ case @strategy
+ when :bottom
+ @draw << this
+ when :discard
+ @discard << this
+ if @draw.empty? then
+ @draw = @discard.shuffle
+ @discard = []
+ end
+ end
+
+ return this
+ end
+end
+
+class Chance < Deck
+ def initialize(strategy)
+ super([0, 24, 11, [12,28], [5,15,25,35], nil, nil, -3, 10, nil, nil, 5, 39, nil, nil, nil], strategy)
+ end
+end
+
+class CommunityChest < Deck
+ def initialize(strategy)
+ super([0, nil, nil, nil, nil, 10, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil], strategy)
+ end
+end
+
+space = 0
+doubles = 0
+stats = (0..39).map{|i|[i, 0]}.to_h
+
+strat = (ARGV.shift || 'bottom').chomp.intern
+
+chance = Chance.new(strat)
+chest = CommunityChest.new(strat)
+
+(ARGV.shift || "10000000").chomp.to_i.times do
+ r = Roll.new
+
+ if r.double? then
+ doubles += 1
+ else
+ doubles = 0
+ end
+
+ if doubles == 3 then
+ space = 10
+ else
+ space = (space + r.sum) % 40
+ end
+
+ stats[space] += 1
+
+ if space == 30 then
+ space = 10
+ end
+
+ if [7,22,36].include?(space) then
+ c = chance.take
+ if c.is_a?(Integer) then
+ if c >= 0 then
+ space = 0
+ else
+ space = (space + c) % 40
+ end
+ elsif c.is_a?(Array) then
+ try = c.drop_while{|x|x <= space}[0]
+ if try.nil? then
+ space = 0
+ else
+ space = try
+ end
+ end
+ end
+
+ if [2,17,33].include?(space) then
+ c = chest.take
+ if c.is_a?(Integer) then
+ if c >= 0 then
+ space = 0
+ else
+ space = (space + c) % 40
+ end
+ elsif c.is_a?(Array) then
+ try = c.drop_while{|x|x <= space}[0]
+ if try.nil? then
+ space = 0
+ else
+ space = try
+ end
+ end
+ end
+end
+
+stats.each do |k, v|
+ puts "#{k}\t#{v}"
+end