Improve Docs for Decentralized Exchange (#1357)

* Decentralized Exchange concept article

1st draft

* DEX: example trade diagram, offers rewording

* Offers: more rewriting/updates

* OfferCreate: Add error cases + other updates

* Known Amendments: fix tecEXPIRED, DepositPreauth

- tecEXPIRED was initially attached to the Checks amendment but got
  moved to DepositPreauth before either became released. The docs weren't
  previously updated to reflect this change
- A change to the snippets caused the DepositPreauth amendment reference
  link to get overwritten so the table links to the feature page rather than the
  amendment description. Special cases this one link.

* OfferCreate error cases: switch to table

* DEX/Offers: edits per review
This commit is contained in:
Rome Reginelli
2022-03-21 08:11:13 -07:00
committed by GitHub
parent 2945394335
commit 79b4e54a6a
7 changed files with 1391 additions and 61 deletions

View File

@@ -0,0 +1,543 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.0//EN'
'http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd'>
<svg fill-opacity="1" xmlns:xlink="http://www.w3.org/1999/xlink" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" width="1420" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" viewBox="20 20 1420 650" height="650" xmlns="http://www.w3.org/2000/svg" font-family="'Dialog'" font-style="normal" stroke-linejoin="miter" font-size="12px" stroke-dashoffset="0" image-rendering="auto"
><!--Generated by the Batik Graphics2D SVG Generator--><defs id="genericDefs"
/><g
><defs id="defs1"
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath1"
><path d="M0 0 L2147483647 0 L2147483647 2147483647 L0 2147483647 L0 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath2"
><path d="M0 0 L0 80 L140 80 L140 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath3"
><path d="M0 0 L0 60 L270 60 L270 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath4"
><path d="M0 0 L0 30 L210 30 L210 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath5"
><path d="M0 0 L0 30 L120 30 L120 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath6"
><path d="M0 0 L0 30 L160 30 L160 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath7"
><path d="M0 0 L0 30 L70 30 L70 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath8"
><path d="M0 0 L0 30 L80 30 L80 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath9"
><path d="M0 0 L0 120 L490 120 L490 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath10"
><path d="M0 0 L0 90 L180 90 L180 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath11"
><path d="M0 0 L0 110 L60 110 L60 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath12"
><path d="M0 0 L0 210 L490 210 L490 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath13"
><path d="M0 0 L0 90 L200 90 L200 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath14"
><path d="M0 0 L0 80 L150 80 L150 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath15"
><path d="M0 0 L0 90 L130 90 L130 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath16"
><path d="M0 0 L0 120 L220 120 L220 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath17"
><path d="M0 0 L0 170 L470 170 L470 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath18"
><path d="M0 0 L0 30 L180 30 L180 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath19"
><path d="M0 0 L0 100 L30 100 L30 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath20"
><path d="M0 0 L0 210 L410 210 L410 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath21"
><path d="M0 0 L0 30 L110 30 L110 0 Z"
/></clipPath
><clipPath clipPathUnits="userSpaceOnUse" id="clipPath22"
><path d="M0 0 L0 120 L40 120 L40 0 Z"
/></clipPath
></defs
><g font-family="sans-serif" font-size="14px" transform="translate(760,280)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath2)" stroke="none"
>Consumed Offers</text
><text x="5" xml:space="preserve" y="34.2188" clip-path="url(#clipPath2)" stroke="none"
>are removed</text
><text x="5" xml:space="preserve" y="50.3281" clip-path="url(#clipPath2)" stroke="none"
>from the order</text
><text x="5" xml:space="preserve" y="66.4375" clip-path="url(#clipPath2)" stroke="none"
>book.</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(90,40)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath3)" stroke="none"
>Tran places an Offer to buy 100</text
><text x="5" xml:space="preserve" y="34.2188" clip-path="url(#clipPath3)" stroke="none"
>FOO issued by WayGate, by</text
><text x="5" xml:space="preserve" y="50.3281" clip-path="url(#clipPath3)" stroke="none"
>spending up to 1000 XRP.</text
></g
><g fill="lime" transform="translate(610,590)" stroke="lime"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/><rect x="0.5" y="0.5" clip-path="url(#clipPath4)" fill="none" width="208.5" height="28.5" stroke="black"
/></g
><g font-family="sans-serif" font-size="14px" transform="translate(610,590)"
><text x="35" xml:space="preserve" y="18.1094" clip-path="url(#clipPath4)" stroke="none"
>78 FOO for 780 XRP</text
></g
><g fill="lime" transform="translate(820,590)" stroke="lime"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/><rect x="0.5" y="0.5" clip-path="url(#clipPath5)" fill="none" width="118.5" height="28.5" stroke="black"
/></g
><g font-family="sans-serif" font-size="14px" transform="translate(820,590)"
><text x="48" xml:space="preserve" y="18.1094" clip-path="url(#clipPath5)" stroke="none"
>0.1</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(820,620)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/></g
><g transform="translate(820,620)"
><rect fill="none" x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)"
/><text x="53" font-size="14px" y="18.1094" clip-path="url(#clipPath5)" font-family="sans-serif" stroke="none" xml:space="preserve"
>...</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(940,620)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/></g
><g transform="translate(940,620)"
><rect fill="none" x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)"
/><text x="73" font-size="14px" y="18.1094" clip-path="url(#clipPath6)" font-family="sans-serif" stroke="none" xml:space="preserve"
>...</text
></g
><g fill="lime" transform="translate(940,590)" stroke="lime"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/><rect x="0.5" y="0.5" clip-path="url(#clipPath6)" fill="none" width="158.5" height="28.5" stroke="black"
/></g
><g font-family="sans-serif" font-size="14px" transform="translate(940,590)"
><text x="64" xml:space="preserve" y="18.1094" clip-path="url(#clipPath6)" stroke="none"
>Tran</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(940,560)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath7)" stroke="none"
>Owner</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(660,560)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath8)" stroke="none"
>Amount</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,530)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="488.5" height="118.5" y="0.5" clip-path="url(#clipPath9)" stroke="none"
/></g
><g transform="translate(610,530)"
><rect fill="none" x="0.5" width="488.5" height="118.5" y="0.5" clip-path="url(#clipPath9)"
/><text x="135" font-size="14px" y="18.1094" clip-path="url(#clipPath9)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Order Book: FOO.WayGate:XRP</text
><path fill="none" d="M1 24.1094 L489 24.1094" clip-path="url(#clipPath9)"
/></g
><g font-family="sans-serif" font-size="14px" transform="translate(820,560)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath5)" stroke="none"
>Exchange Rate</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,620)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/></g
><g transform="translate(610,620)"
><rect fill="none" x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)"
/><text x="98" font-size="14px" y="18.1094" clip-path="url(#clipPath4)" font-family="sans-serif" stroke="none" xml:space="preserve"
>...</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(820,430)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/></g
><g transform="translate(820,430)"
><rect fill="none" x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)"
/><text x="44" font-size="14px" y="18.1094" clip-path="url(#clipPath5)" font-family="sans-serif" stroke="none" xml:space="preserve"
>20.0</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(820,460)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/></g
><g transform="translate(820,460)"
><rect fill="none" x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)"
/><text x="45" font-size="14px" y="18.1094" clip-path="url(#clipPath5)" font-family="sans-serif" stroke="none" xml:space="preserve"
>≥20</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(940,460)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/></g
><g transform="translate(940,460)"
><rect fill="none" x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)"
/><text x="73" font-size="14px" y="18.1094" clip-path="url(#clipPath6)" font-family="sans-serif" stroke="none" xml:space="preserve"
>...</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(940,430)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/></g
><g transform="translate(940,430)"
><rect fill="none" x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)"
/><text x="59" font-size="14px" y="18.1094" clip-path="url(#clipPath6)" font-family="sans-serif" stroke="none" xml:space="preserve"
>David</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(990,400)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath7)" stroke="none"
>Owner</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(680,400)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath8)" stroke="none"
>Amount</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,370)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="488.5" height="118.5" y="0.5" clip-path="url(#clipPath9)" stroke="none"
/></g
><g transform="translate(610,370)"
><rect fill="none" x="0.5" width="488.5" height="118.5" y="0.5" clip-path="url(#clipPath9)"
/><text x="135" font-size="14px" y="18.1094" clip-path="url(#clipPath9)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Order Book: XRP:FOO.WayGate</text
><path fill="none" d="M1 24.1094 L489 24.1094" clip-path="url(#clipPath9)"
/></g
><g font-family="sans-serif" font-size="14px" transform="translate(820,400)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath5)" stroke="none"
>Exchange Rate</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,460)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/></g
><g transform="translate(610,460)"
><rect fill="none" x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)"
/><text x="98" font-size="14px" y="18.1094" clip-path="url(#clipPath4)" font-family="sans-serif" stroke="none" xml:space="preserve"
>...</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,430)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/></g
><g transform="translate(610,430)"
><rect fill="none" x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)"
/><text x="17" font-size="14px" y="18.1094" clip-path="url(#clipPath4)" font-family="sans-serif" stroke="none" xml:space="preserve"
>20000 XRP for 1000 FOO</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(1120,180)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath10)" stroke="none"
>The owners of the</text
><text x="5" xml:space="preserve" y="34.2188" clip-path="url(#clipPath10)" stroke="none"
>matching Offers</text
><text x="5" xml:space="preserve" y="50.3281" clip-path="url(#clipPath10)" stroke="none"
>receive a total of 31</text
><text x="5" xml:space="preserve" y="66.4375" clip-path="url(#clipPath10)" stroke="none"
>XRP from Tran.</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(820,120)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/></g
><g transform="translate(820,120)"
><rect fill="none" x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)"
/><text x="48" font-size="14px" y="18.1094" clip-path="url(#clipPath5)" font-family="sans-serif" stroke="none" xml:space="preserve"
>0.5</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(820,150)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/></g
><g transform="translate(820,150)"
><rect fill="none" x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)"
/><text x="39" font-size="14px" y="18.1094" clip-path="url(#clipPath5)" font-family="sans-serif" stroke="none" xml:space="preserve"
>0.667</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(820,180)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/></g
><g transform="translate(820,180)"
><rect fill="none" x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)"
/><text x="48" font-size="14px" y="18.1094" clip-path="url(#clipPath5)" font-family="sans-serif" stroke="none" xml:space="preserve"
>4.0</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(820,210)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/></g
><g transform="translate(820,210)"
><rect fill="none" x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)"
/><text x="44" font-size="14px" y="18.1094" clip-path="url(#clipPath5)" font-family="sans-serif" stroke="none" xml:space="preserve"
>20.0</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(820,240)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)" stroke="none"
/></g
><g transform="translate(820,240)"
><rect fill="none" x="0.5" width="118.5" height="28.5" y="0.5" clip-path="url(#clipPath5)"
/><text x="45" font-size="14px" y="18.1094" clip-path="url(#clipPath5)" font-family="sans-serif" stroke="none" xml:space="preserve"
>≥20</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(940,240)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/></g
><g transform="translate(940,240)"
><rect fill="none" x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)"
/><text x="73" font-size="14px" y="18.1094" clip-path="url(#clipPath6)" font-family="sans-serif" stroke="none" xml:space="preserve"
>...</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(1360,170)" stroke-opacity="0" stroke="rgb(255,255,255)"
><circle r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5" stroke="none"
/></g
><g transform="translate(1360,170)"
><circle fill="none" r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5"
/><path fill="none" d="M9.5 21.5 L51.5 21.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 14.5 L30.5 42.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L16.5 70.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L44.5 70.5" clip-path="url(#clipPath11)"
/><text x="10" font-size="14px" y="93.1094" clip-path="url(#clipPath11)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Omar</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(940,210)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/></g
><g transform="translate(940,210)"
><rect fill="none" x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)"
/><text x="59" font-size="14px" y="18.1094" clip-path="url(#clipPath6)" font-family="sans-serif" stroke="none" xml:space="preserve"
>David</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(940,180)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/></g
><g transform="translate(940,180)"
><rect fill="none" x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)"
/><text x="60" font-size="14px" y="18.1094" clip-path="url(#clipPath6)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Omar</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(940,150)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/></g
><g transform="translate(940,150)"
><rect fill="none" x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)"
/><text x="63" font-size="14px" y="18.1094" clip-path="url(#clipPath6)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Brad</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(940,120)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)" stroke="none"
/></g
><g transform="translate(940,120)"
><rect fill="none" x="0.5" width="158.5" height="28.5" y="0.5" clip-path="url(#clipPath6)"
/><text x="64" font-size="14px" y="18.1094" clip-path="url(#clipPath6)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Amy</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(1300,220)" stroke-opacity="0" stroke="rgb(255,255,255)"
><circle r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5" stroke="none"
/></g
><g transform="translate(1300,220)"
><circle fill="none" r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5"
/><path fill="none" d="M9.5 21.5 L51.5 21.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 14.5 L30.5 42.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L16.5 70.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L44.5 70.5" clip-path="url(#clipPath11)"
/><text x="9" font-size="14px" y="93.1094" clip-path="url(#clipPath11)" font-family="sans-serif" stroke="none" xml:space="preserve"
>David</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(1350,60)" stroke-opacity="0" stroke="rgb(255,255,255)"
><circle r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5" stroke="none"
/></g
><g transform="translate(1350,60)"
><circle fill="none" r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5"
/><path fill="none" d="M9.5 21.5 L51.5 21.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 14.5 L30.5 42.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L16.5 70.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L44.5 70.5" clip-path="url(#clipPath11)"
/><text x="14" font-size="14px" y="93.1094" clip-path="url(#clipPath11)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Amy</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(1290,110)" stroke-opacity="0" stroke="rgb(255,255,255)"
><circle r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5" stroke="none"
/></g
><g transform="translate(1290,110)"
><circle fill="none" r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5"
/><path fill="none" d="M9.5 21.5 L51.5 21.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 14.5 L30.5 42.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L16.5 70.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L44.5 70.5" clip-path="url(#clipPath11)"
/><text x="13" font-size="14px" y="93.1094" clip-path="url(#clipPath11)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Brad</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(990,90)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath7)" stroke="none"
>Owner</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(680,90)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath8)" stroke="none"
>Amount</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,60)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="488.5" height="208.5" y="0.5" clip-path="url(#clipPath12)" stroke="none"
/></g
><g transform="translate(610,60)"
><rect fill="none" x="0.5" width="488.5" height="208.5" y="0.5" clip-path="url(#clipPath12)"
/><text x="135" font-size="14px" y="18.1094" clip-path="url(#clipPath12)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Order Book: XRP:FOO.WayGate</text
><path fill="none" d="M1 24.1094 L489 24.1094" clip-path="url(#clipPath12)"
/></g
><g font-family="sans-serif" font-size="14px" transform="translate(210,500)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath13)" stroke="none"
>The remainder of Tran's</text
><text x="5" xml:space="preserve" y="34.2188" clip-path="url(#clipPath13)" stroke="none"
>Offer is added to the</text
><text x="5" xml:space="preserve" y="50.3281" clip-path="url(#clipPath13)" stroke="none"
>opposite order book at its</text
><text x="5" xml:space="preserve" y="66.4375" clip-path="url(#clipPath13)" stroke="none"
>original exchange rate.</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(300,300)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath14)" stroke="none"
>Tran receives a</text
><text x="5" xml:space="preserve" y="34.2188" clip-path="url(#clipPath14)" stroke="none"
>total of 22</text
><text x="5" xml:space="preserve" y="50.3281" clip-path="url(#clipPath14)" stroke="none"
>FOO.WayGate from</text
><text x="5" xml:space="preserve" y="66.4375" clip-path="url(#clipPath14)" stroke="none"
>the other traders.</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(60,340)" stroke-opacity="0" stroke="rgb(255,255,255)"
><circle r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5" stroke="none"
/></g
><g transform="translate(60,340)"
><circle fill="none" r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5"
/><path fill="none" d="M9.5 21.5 L51.5 21.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 14.5 L30.5 42.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L16.5 70.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L44.5 70.5" clip-path="url(#clipPath11)"
/><text x="14" font-size="14px" y="93.1094" clip-path="url(#clipPath11)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Tran</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(40,110)" stroke-opacity="0" stroke="rgb(255,255,255)"
><circle r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5" stroke="none"
/></g
><g transform="translate(40,110)"
><circle fill="none" r="7" clip-path="url(#clipPath11)" cx="30.5" cy="7.5"
/><path fill="none" d="M9.5 21.5 L51.5 21.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 14.5 L30.5 42.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L16.5 70.5" clip-path="url(#clipPath11)"
/><path fill="none" d="M30.5 42.5 L44.5 70.5" clip-path="url(#clipPath11)"
/><text x="14" font-size="14px" y="93.1094" clip-path="url(#clipPath11)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Tran</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(820,90)"
><text x="5" xml:space="preserve" y="18.1094" clip-path="url(#clipPath5)" stroke="none"
>Exchange Rate</text
></g
><g font-family="sans-serif" font-size="14px" transform="translate(460,120)"
><text x="36" xml:space="preserve" y="18.1094" clip-path="url(#clipPath15)" stroke="none"
>These Offers</text
><text x="17" xml:space="preserve" y="34.2188" clip-path="url(#clipPath15)" stroke="none"
>match because</text
><text x="19" xml:space="preserve" y="50.3281" clip-path="url(#clipPath15)" stroke="none"
>their exchange</text
><text x="18" xml:space="preserve" y="66.4375" clip-path="url(#clipPath15)" stroke="none"
>rates are equal</text
><text x="58" xml:space="preserve" y="82.5469" clip-path="url(#clipPath15)" stroke="none"
>or better.</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,240)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/></g
><g transform="translate(610,240)"
><rect fill="none" x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)"
/><text x="98" font-size="14px" y="18.1094" clip-path="url(#clipPath4)" font-family="sans-serif" stroke="none" xml:space="preserve"
>...</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,180)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/></g
><g transform="translate(610,180)"
><rect fill="none" x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)"
/><text x="44" font-size="14px" y="18.1094" clip-path="url(#clipPath4)" font-family="sans-serif" stroke="none" xml:space="preserve"
>20 XRP for 5 FOO</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,210)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/></g
><g transform="translate(610,210)"
><rect fill="none" x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)"
/><text x="17" font-size="14px" y="18.1094" clip-path="url(#clipPath4)" font-family="sans-serif" stroke="none" xml:space="preserve"
>20000 XRP for 1000 FOO</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,150)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/></g
><g transform="translate(610,150)"
><rect fill="none" x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)"
/><text x="39" font-size="14px" y="18.1094" clip-path="url(#clipPath4)" font-family="sans-serif" stroke="none" xml:space="preserve"
>10 XRP for 15 FOO</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(610,120)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)" stroke="none"
/></g
><g transform="translate(610,120)"
><rect fill="none" x="0.5" width="208.5" height="28.5" y="0.5" clip-path="url(#clipPath4)"
/><text x="48" font-size="14px" y="18.1094" clip-path="url(#clipPath4)" font-family="sans-serif" stroke="none" xml:space="preserve"
>1 XRP for 2 FOO</text
></g
><g fill="rgb(255,255,255)" fill-opacity="0" transform="translate(140,110)" stroke-opacity="0" stroke="rgb(255,255,255)"
><rect x="0.5" width="218.5" height="118.5" y="0.5" clip-path="url(#clipPath16)" stroke="none"
/></g
><g transform="translate(140,110)"
><rect fill="none" x="0.5" width="218.5" height="118.5" y="0.5" clip-path="url(#clipPath16)"
/><text x="92" font-size="14px" y="18.1094" clip-path="url(#clipPath16)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Offer</text
><path fill="none" d="M1 24.1094 L219 24.1094" clip-path="url(#clipPath16)"
/><text x="5" font-size="14px" y="39.2188" clip-path="url(#clipPath16)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Buy: 100 FOO.WayGate</text
><text x="5" font-size="14px" y="55.3281" clip-path="url(#clipPath16)" font-family="sans-serif" stroke="none" xml:space="preserve"
>Spend: 1000 XRP</text
></g
><g stroke-miterlimit="5" font-size="14px" stroke-dasharray="1,2" font-family="sans-serif" transform="translate(140,110)" stroke-linecap="butt"
><path fill="none" d="M1 77.4375 L219 77.4375" clip-path="url(#clipPath16)"
/><text x="5" xml:space="preserve" y="92.5469" clip-path="url(#clipPath16)" stroke="none"
>(Exchange rate: </text
><text x="5" xml:space="preserve" y="108.6562" clip-path="url(#clipPath16)" stroke="none"
>10.0 XRP/FOO.WayGate)</text
></g
><g transform="translate(130,410)"
><path fill="none" d="M10.5 10.5 L449.5471 150.1968" clip-path="url(#clipPath17)"
/><path d="M437.3244 153.1288 L450.0235 150.3484 L441.266 140.7408 Z" clip-path="url(#clipPath17)" stroke="none"
/><path fill="none" d="M437.3244 153.1288 L450.0235 150.3484 L441.266 140.7408 Z" clip-path="url(#clipPath17)"
/></g
><g transform="translate(1110,160)"
><path fill="none" d="M10.5 10.5 L159.5 10.5" clip-path="url(#clipPath18)"
/><path d="M148.7417 17 L160 10.5 L148.7417 4 Z" clip-path="url(#clipPath18)" stroke="none"
/><path fill="none" d="M148.7417 17 L160 10.5 L148.7417 4 Z" clip-path="url(#clipPath18)"
/></g
><g transform="translate(710,270)"
><path fill="none" d="M10.5 10.5 L10.5 79.5" clip-path="url(#clipPath19)"
/><path d="M4 68.7417 L10.5 80 L17 68.7417 Z" clip-path="url(#clipPath19)" stroke="none"
/><path fill="none" d="M4 68.7417 L10.5 80 L17 68.7417 Z" clip-path="url(#clipPath19)"
/></g
><g transform="translate(110,190)"
><path fill="none" d="M390.5 10.5 L11.4037 190.0719" clip-path="url(#clipPath20)"
/><path d="M18.3439 179.5921 L10.9519 190.2859 L23.909 191.3407 Z" clip-path="url(#clipPath20)" stroke="none"
/><path fill="none" d="M18.3439 179.5921 L10.9519 190.2859 L23.909 191.3407 Z" clip-path="url(#clipPath20)"
/></g
><g transform="translate(70,130)"
><path fill="none" d="M10.5 10.5 L59.5 10.5" clip-path="url(#clipPath8)"
/><path d="M48.7417 17 L60 10.5 L48.7417 4 Z" clip-path="url(#clipPath8)" stroke="none"
/><path fill="none" d="M48.7417 17 L60 10.5 L48.7417 4 Z" clip-path="url(#clipPath8)"
/></g
><g transform="translate(360,150)"
><path fill="none" d="M10.5 10.5 L89.5 10.5" clip-path="url(#clipPath21)"
/><path d="M78.7417 17 L90 10.5 L78.7417 4 Z" clip-path="url(#clipPath21)" stroke="none"
/><path fill="none" d="M78.7417 17 L90 10.5 L78.7417 4 Z" clip-path="url(#clipPath21)"
/></g
><g stroke-dasharray="1,2" stroke-miterlimit="5" transform="translate(580,110)" stroke-linecap="butt"
><path fill="none" d="M20.5 100.5 L10.5 100.5" clip-path="url(#clipPath22)"
/><path fill="none" d="M10.5 100.5 L10.5 10.5" clip-path="url(#clipPath22)"
/><path fill="none" d="M10.5 10.5 L20.5 10.5" clip-path="url(#clipPath22)"
/></g
></g
></svg
>

After

Width:  |  Height:  |  Size: 33 KiB