Wiki page
[VirtualRouting] by
sandro
2018-04-08 17:40:57.
0000: 44 20 32 30 31 38 2d 30 34 2d 30 38 54 31 37 3a D 2018-04-08T17:
0010: 34 30 3a 35 37 2e 30 36 34 0a 4c 20 56 69 72 74 40:57.064.L Virt
0020: 75 61 6c 52 6f 75 74 69 6e 67 0a 50 20 65 34 66 ualRouting.P e4f
0030: 66 35 32 30 33 35 61 31 32 30 61 36 39 33 64 37 f52035a120a693d7
0040: 35 37 34 64 36 35 37 61 34 36 32 30 64 66 63 61 574d657a4620dfca
0050: 35 38 34 63 31 0a 55 20 73 61 6e 64 72 6f 0a 57 584c1.U sandro.W
0060: 20 31 32 35 32 32 32 0a 3c 61 20 68 72 65 66 3d 125222.<a href=
0070: 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 "https://www.gai
0080: 61 2d 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c 2f a-gis.it/fossil/
0090: 6c 69 62 73 70 61 74 69 61 6c 69 74 65 2f 77 69 libspatialite/wi
00a0: 6b 69 3f 6e 61 6d 65 3d 34 2e 33 2e 30 2d 64 6f ki?name=4.3.0-do
00b0: 63 22 3e 62 61 63 6b 3c 2f 61 3e 3c 68 72 3e 3c c">back</a><hr><
00c0: 62 72 3e 0d 0a 3c 68 31 3e 54 61 62 6c 65 20 6f br>..<h1>Table o
00d0: 66 20 43 6f 6e 74 65 6e 74 73 3c 2f 68 31 3e 0d f Contents</h1>.
00e0: 0a 31 20 2d 20 3c 61 20 68 72 65 66 3d 22 23 69 .1 - <a href="#i
00f0: 6e 74 72 6f 22 3e 49 6e 74 72 6f 64 75 63 74 69 ntro">Introducti
0100: 6f 6e 3c 2f 61 3e 3c 62 72 3e 0d 0a 32 20 2d 20 on</a><br>..2 -
0110: 3c 61 20 68 72 65 66 3d 22 23 73 61 6d 70 6c 65 <a href="#sample
0120: 22 3e 54 68 65 20 73 61 6d 70 6c 65 2f 74 65 73 ">The sample/tes
0130: 74 20 44 42 3c 2f 61 3e 3c 62 72 3e 0d 0a 33 20 t DB</a><br>..3
0140: 2d 20 3c 61 20 68 72 65 66 3d 22 23 63 72 65 61 - <a href="#crea
0150: 74 65 22 3e 43 72 65 61 74 69 6e 67 20 56 69 72 te">Creating Vir
0160: 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c tualRouting Tabl
0170: 65 73 3c 2f 61 3e 3c 62 72 3e 0d 0a 34 20 2d 20 es</a><br>..4 -
0180: 3c 61 20 68 72 65 66 3d 22 23 66 72 6f 6d 5f 74 <a href="#from_t
0190: 6f 22 3e 53 6f 6c 76 69 6e 67 20 63 6c 61 73 73 o">Solving class
01a0: 69 63 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 ic Shortest Path
01b0: 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 62 72 problems</a><br
01c0: 3e 0d 0a 35 20 2d 20 3c 61 20 68 72 65 66 3d 22 >..5 - <a href="
01d0: 23 6d 75 6c 74 69 22 3e 53 6f 6c 76 69 6e 67 20 #multi">Solving
01e0: 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f multi-destinatio
01f0: 6e 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 20 n Shortest Path
0200: 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 62 72 3e problems</a><br>
0210: 0d 0a 36 20 2d 20 3c 61 20 68 72 65 66 3d 22 23 ..6 - <a href="#
0220: 74 73 70 22 3e 53 6f 6c 76 69 6e 67 20 54 53 50 tsp">Solving TSP
0230: 20 28 74 72 61 76 65 6c 69 6e 67 20 73 61 6c 65 (traveling sale
0240: 73 6d 61 6e 29 20 70 72 6f 62 6c 65 6d 73 3c 2f sman) problems</
0250: 61 3e 3c 62 72 3e 0d 0a 3c 62 72 3e 3c 68 72 3e a><br>..<br><hr>
0260: 0d 0a 3c 68 31 3e 3c 61 20 6e 61 6d 65 3d 22 69 ..<h1><a name="i
0270: 6e 74 72 6f 22 3e 31 20 2d 20 49 6e 74 72 6f 64 ntro">1 - Introd
0280: 75 63 74 69 6f 6e 3c 2f 61 3e 3c 2f 68 31 3e 0d uction</a></h1>.
0290: 0a 50 72 65 76 69 6f 75 73 20 76 65 72 73 69 6f .Previous versio
02a0: 6e 73 20 6f 66 20 53 70 61 74 69 61 4c 69 74 65 ns of SpatiaLite
02b0: 20 74 72 61 64 69 74 69 6f 6e 61 6c 6c 79 20 73 traditionally s
02c0: 75 70 70 6f 72 74 65 64 20 61 20 3c 62 3e 70 75 upported a <b>pu
02d0: 72 65 20 53 51 4c 20 72 6f 75 74 69 6e 67 20 6d re SQL routing m
02e0: 6f 64 75 6c 65 3c 2f 62 3e 20 74 68 61 74 20 77 odule</b> that w
02f0: 61 73 20 6e 61 6d 65 64 20 3c 61 20 68 72 65 66 as named <a href
0300: 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 ="https://www.ga
0310: 69 61 2d 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c ia-gis.it/fossil
0320: 2f 6c 69 62 73 70 61 74 69 61 6c 69 74 65 2f 77 /libspatialite/w
0330: 69 6b 69 3f 6e 61 6d 65 3d 56 69 72 74 75 61 6c iki?name=Virtual
0340: 4e 65 74 77 6f 72 6b 2b 72 65 6c 6f 61 64 65 64 Network+reloaded
0350: 22 3e 56 69 72 74 75 61 6c 4e 65 74 77 6f 72 6b ">VirtualNetwork
0360: 3c 2f 61 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 53 </a>.<br><br>..S
0370: 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 3c 62 3e ince version <b>
0380: 35 2e 30 2e 30 3c 2f 62 3e 20 61 20 62 72 61 6e 5.0.0</b> a bran
0390: 64 20 6e 65 77 20 3c 62 3e 72 6f 75 74 69 6e 67 d new <b>routing
03a0: 20 6d 6f 64 75 6c 65 3c 2f 62 3e 20 28 6d 6f 72 module</b> (mor
03b0: 65 20 61 64 76 61 6e 63 65 64 20 61 6e 64 20 73 e advanced and s
03c0: 6f 70 68 69 73 74 69 63 61 74 65 64 29 20 69 73 ophisticated) is
03d0: 20 61 76 61 69 6c 61 62 6c 65 2c 20 74 68 61 74 available, that
03e0: 20 69 73 20 63 61 6c 6c 65 64 20 3c 62 3e 56 69 is called <b>Vi
03f0: 72 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e rtualRouting</b>
0400: 2e 3c 62 72 3e 0d 0a 54 68 65 20 6e 6f 77 20 6f .<br>..The now o
0410: 62 73 6f 6c 65 74 65 20 3c 62 3e 56 69 72 74 75 bsolete <b>Virtu
0420: 61 6c 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 69 73 alNetwork</b> is
0430: 20 73 74 69 6c 6c 20 73 75 70 70 6f 72 74 65 64 still supported
0440: 20 62 79 20 76 65 72 73 69 6f 6e 20 3c 62 3e 35 by version <b>5
0450: 2e 30 2e 30 3c 2f 62 3e 20 73 6f 20 61 73 20 74 .0.0</b> so as t
0460: 6f 20 6e 6f 74 20 63 61 75 73 65 20 61 6e 20 61 o not cause an a
0470: 62 72 75 70 74 20 62 72 65 61 6b 20 74 6f 20 61 brupt break to a
0480: 6c 72 65 61 64 79 20 65 78 69 73 74 69 6e 67 20 lready existing
0490: 61 70 70 6c 69 63 61 74 69 6f 6e 73 2c 20 62 75 applications, bu
04a0: 74 20 77 69 6c 6c 20 70 72 65 73 75 6d 61 62 6c t will presumabl
04b0: 79 20 62 65 20 64 69 73 63 6f 6e 74 69 6e 75 65 y be discontinue
04c0: 64 20 69 6e 20 66 75 74 75 72 65 20 76 65 72 73 d in future vers
04d0: 69 6f 6e 73 2e 3c 62 72 3e 0d 0a 55 73 69 6e 67 ions.<br>..Using
04e0: 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 74 69 <b>VirtualRouti
04f0: 6e 67 3c 2f 62 3e 20 69 6e 73 74 65 61 64 20 6f ng</b> instead o
0500: 66 20 3c 62 3e 56 69 72 74 75 61 6c 4e 65 74 77 f <b>VirtualNetw
0510: 69 72 6b 3c 2f 62 3e 20 69 73 20 77 61 72 6d 6c irk</b> is warml
0520: 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 66 6f y recommended fo
0530: 72 20 61 6e 79 20 6e 65 77 20 64 65 76 65 6c 6f r any new develo
0540: 70 6d 65 6e 74 2e 20 0d 0a 3c 68 32 3e 54 68 65 pment. ..<h2>The
0550: 6f 72 65 74 69 63 61 6c 20 66 6f 75 6e 64 61 74 oretical foundat
0560: 69 6f 6e 73 20 2d 20 61 6e 20 75 6c 74 72 61 2d ions - an ultra-
0570: 71 75 69 63 6b 20 72 65 63 61 6c 6c 3c 2f 68 32 quick recall</h2
0580: 3e 0d 0a 41 6c 6c 20 3c 62 3e 52 6f 75 74 69 6e >..All <b>Routin
0590: 67 20 61 6c 67 6f 72 69 74 68 6d 73 3c 2f 62 3e g algorithms</b>
05a0: 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e (<i>aka</i> <b>
05b0: 53 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 62 Shortest Path</b
05c0: 3e 20 61 6c 67 6f 72 69 74 68 6d 73 29 20 61 72 > algorithms) ar
05d0: 65 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 6d e based on the m
05e0: 61 74 68 65 6d 61 74 69 63 73 20 6f 66 20 74 68 athematics of th
05f0: 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 e <a href="https
0600: 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e ://en.wikipedia.
0610: 6f 72 67 2f 77 69 6b 69 2f 47 72 61 70 68 5f 74 org/wiki/Graph_t
0620: 68 65 6f 72 79 22 3e 47 72 61 70 68 20 74 68 65 heory">Graph the
0630: 6f 72 79 3c 2f 61 3e 20 6f 72 20 74 6f 20 62 65 ory</a> or to be
0640: 20 6d 6f 72 65 20 70 72 65 63 69 73 65 3a 20 6f more precise: o
0650: 6e 20 3c 62 3e 57 65 69 67 68 74 65 64 20 47 72 n <b>Weighted Gr
0660: 61 70 68 73 3c 2f 62 3e 2e 0d 0a 3c 62 72 3e 0d aphs</b>...<br>.
0670: 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 .<img src="https
0680: 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e ://www.gaia-gis.
0690: 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 it/gaia-sins/rou
06a0: 74 69 6e 67 2d 66 69 67 73 2f 6e 65 74 77 6f 72 ting-figs/networ
06b0: 6b 2e 70 6e 67 22 20 61 6c 74 3d 22 6e 65 74 77 k.png" alt="netw
06c0: 6f 72 6b 22 3e 0d 0a 3c 62 72 3e 0d 0a 41 20 74 ork">..<br>..A t
06d0: 6f 70 6f 6c 6f 67 69 63 61 6c 6c 79 20 76 61 6c opologically val
06e0: 69 64 20 3c 62 3e 4e 65 74 77 6f 72 6b 3c 2f 62 id <b>Network</b
06f0: 3e 20 69 73 20 61 20 64 61 74 61 73 65 74 20 74 > is a dataset t
0700: 68 61 74 20 66 75 6c 66 69 6c 6c 73 20 74 68 65 hat fulfills the
0710: 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 65 71 75 69 following requi
0720: 72 65 6d 65 6e 74 73 3a 0d 0a 3c 75 6c 3e 0d 0a rements:..<ul>..
0730: 3c 6c 69 3e 41 6c 6c 20 69 74 65 6d 73 20 69 6e <li>All items in
0740: 20 74 68 65 20 64 61 74 61 73 65 74 20 61 72 65 the dataset are
0750: 20 63 61 6c 6c 65 64 20 3c 62 3e 4c 69 6e 6b 73 called <b>Links
0760: 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e </b> (<i>aka</i>
0770: 20 3c 62 3e 41 72 63 73 3c 2f 62 3e 29 2c 20 61 <b>Arcs</b>), a
0780: 6e 64 20 61 72 65 20 65 78 70 65 63 74 65 64 20 nd are expected
0790: 74 6f 20 72 65 70 72 65 73 65 6e 74 20 73 6f 6d to represent som
07a0: 65 20 6f 72 69 65 6e 74 65 64 20 63 6f 6e 6e 65 e oriented conne
07b0: 63 74 69 6f 6e 20 6a 6f 69 6e 69 6e 67 20 74 77 ction joining tw
07c0: 6f 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 2e 3c o <b>Nodes</b>.<
07d0: 62 72 3e 0d 0a 3c 75 3e 45 78 61 6d 70 6c 65 3c br>..<u>Example<
07e0: 2f 75 3e 3a 20 69 6e 20 74 68 65 20 61 62 6f 76 /u>: in the abov
07f0: 65 20 66 69 67 75 72 65 20 4c 69 6e 6b 20 3c 62 e figure Link <b
0800: 3e 4c 33 3c 2f 62 3e 20 63 6f 6e 6e 65 63 74 73 >L3</b> connects
0810: 20 4e 6f 64 65 73 20 3c 62 3e 4e 32 3c 2f 62 3e Nodes <b>N2</b>
0820: 20 61 6e 64 20 3c 62 3e 4e 35 3c 2f 62 3e 2e 3c and <b>N5</b>.<
0830: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 53 6f 20 61 6c 6c /li>..<li>So all
0840: 20 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 61 72 <b>Links</b> ar
0850: 65 20 61 6c 77 61 79 73 20 65 78 70 65 63 74 65 e always expecte
0860: 64 20 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 d to explicitly
0870: 72 65 66 65 72 65 6e 63 65 20 61 20 3c 62 3e 53 reference a <b>S
0880: 74 61 72 74 2d 4e 6f 64 65 3c 2f 62 3e 20 28 3c tart-Node</b> (<
0890: 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 4e 6f 64 i>aka</i> <b>Nod
08a0: 65 2d 46 72 6f 6d 3c 2f 62 3e 29 20 61 6e 64 20 e-From</b>) and
08b0: 61 6e 20 3c 62 3e 45 6e 64 2d 4e 6f 64 65 3c 2f an <b>End-Node</
08c0: 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c b> (<i>aka</i> <
08d0: 62 3e 4e 6f 64 65 2d 54 6f 3c 2f 62 3e 29 2e 0d b>Node-To</b>)..
08e0: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 4c 69 6e 6b 73 .<ul>..<li>Links
08f0: 20 61 72 65 20 61 6c 77 61 79 73 20 3c 62 3e 6f are always <b>o
0900: 72 69 65 6e 74 65 64 3c 2f 62 3e 2c 20 61 6e 64 riented</b>, and
0910: 20 74 68 65 69 72 20 6e 61 74 75 72 61 6c 20 64 their natural d
0920: 69 72 65 63 74 69 6f 6e 20 69 73 20 3c 62 3e 46 irection is <b>F
0930: 72 6f 6d 2d 54 6f 3c 2f 62 3e 3a 0d 0a 3c 75 6c rom-To</b>:..<ul
0940: 3e 0d 0a 3c 6c 69 3e 69 6e 20 61 6e 20 3c 62 3e >..<li>in an <b>
0950: 75 6e 69 64 69 72 65 63 74 69 6f 6e 61 6c 3c 2f unidirectional</
0960: 62 3e 20 4e 65 74 77 6f 72 6b 20 65 61 63 68 20 b> Network each
0970: 4c 69 6e 6b 20 69 73 20 61 6e 20 3c 62 3e 6f 6e Link is an <b>on
0980: 65 2d 77 61 79 3c 2f 62 3e 20 63 6f 6e 6e 65 63 e-way</b> connec
0990: 74 69 6f 6e 2e 3c 62 72 3e 0d 0a 49 66 20 74 68 tion.<br>..If th
09a0: 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 69 73 20 e connection is
09b0: 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68 65 available in the
09c0: 20 6f 70 70 6f 73 69 74 65 20 64 69 72 65 63 74 opposite direct
09d0: 69 6f 6e 20 61 20 73 65 63 6f 6e 64 20 4c 69 6e ion a second Lin
09e0: 6b 20 6d 75 73 74 20 62 65 20 65 78 70 6c 69 63 k must be explic
09f0: 69 74 6c 79 20 64 65 63 6c 61 72 65 64 2e 3c 62 itly declared.<b
0a00: 72 3e 0d 0a 3c 75 3e 45 78 61 6d 70 6c 65 3c 2f r>..<u>Example</
0a10: 75 3e 3a 20 4c 69 6e 6b 20 3c 62 3e 58 31 3c 2f u>: Link <b>X1</
0a20: 62 3e 20 67 6f 65 73 20 66 72 6f 6d 20 4e 6f 64 b> goes from Nod
0a30: 65 20 3c 62 3e 41 3c 2f 62 3e 20 74 6f 20 4e 6f e <b>A</b> to No
0a40: 64 65 20 3c 62 3e 42 3c 2f 62 3e 2c 20 61 6e 64 de <b>B</b>, and
0a50: 20 4c 69 6e 6b 20 3c 62 3e 58 32 3c 2f 62 3e 20 Link <b>X2</b>
0a60: 67 6f 65 73 20 66 72 6f 6d 20 4e 6f 64 65 20 3c goes from Node <
0a70: 62 3e 42 3c 2f 62 3e 20 74 6f 20 4e 6f 64 65 20 b>B</b> to Node
0a80: 3c 62 3e 41 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a <b>A</b>.</li>..
0a90: 3c 6c 69 3e 69 6e 20 61 20 3c 62 3e 62 69 64 69 <li>in a <b>bidi
0aa0: 72 65 63 74 69 6f 6e 61 6c 3c 2f 62 3e 20 4e 65 rectional</b> Ne
0ab0: 74 77 6f 72 6b 20 61 6c 6c 20 4c 69 6e 6b 73 20 twork all Links
0ac0: 61 72 65 20 61 73 73 75 6d 65 64 20 74 6f 20 65 are assumed to e
0ad0: 73 74 61 62 6c 69 73 68 20 61 20 63 6f 6e 6e 65 stablish a conne
0ae0: 63 74 69 6f 6e 20 69 6e 20 62 6f 74 68 20 64 69 ction in both di
0af0: 72 65 63 74 69 6f 6e 73 2e 3c 62 72 3e 0d 0a 44 rections.<br>..D
0b00: 65 66 69 6e 69 74 69 6e 67 20 61 6e 20 3c 62 3e efiniting an <b>
0b10: 6f 6e 65 2d 77 61 79 20 63 6f 6e 6e 65 63 74 69 one-way connecti
0b20: 6f 6e 3c 2f 62 3e 20 72 65 71 75 69 72 65 73 20 on</b> requires
0b30: 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 61 an appropriate a
0b40: 74 74 72 69 62 75 74 65 20 74 6f 20 62 65 20 73 ttribute to be s
0b50: 65 74 20 28 73 65 65 20 62 65 6c 6f 77 29 2e 3c et (see below).<
0b60: 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e /li>..</ul></li>
0b70: 0d 0a 3c 6c 69 3e 54 68 65 20 3c 62 3e 53 74 61 ..<li>The <b>Sta
0b80: 72 74 2d 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 45 rt-</b> and <b>E
0b90: 6e 64 2d 4e 6f 64 65 3c 2f 62 3e 20 63 6f 75 6c nd-Node</b> coul
0ba0: 64 20 65 76 65 6e 74 75 61 6c 6c 79 20 62 65 20 d eventually be
0bb0: 74 68 65 20 73 61 6d 65 2c 20 61 6e 64 20 69 6e the same, and in
0bc0: 20 74 68 69 73 20 63 61 73 65 20 77 65 27 6c 6c this case we'll
0bd0: 20 68 61 76 65 20 61 20 3c 62 3e 73 65 6c 66 2d have a <b>self-
0be0: 63 6c 6f 73 65 64 3c 2f 62 3e 20 4c 69 6e 6b 2e closed</b> Link.
0bf0: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 4e 65 74 77 6f </li>..<li>Netwo
0c00: 72 6b 27 73 20 4c 69 6e 6b 73 20 3c 62 3e 63 61 rk's Links <b>ca
0c10: 6e 3c 2f 62 3e 20 65 76 65 6e 74 75 61 6c 6c 79 n</b> eventually
0c20: 20 64 65 66 69 6e 65 20 61 20 6c 69 6e 65 61 72 define a linear
0c30: 20 47 65 6f 6d 65 74 72 79 20 28 3c 62 3e 4c 49 Geometry (<b>LI
0c40: 4e 45 53 54 52 49 4e 47 3c 2f 62 3e 29 20 67 6f NESTRING</b>) go
0c50: 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 3c 62 3e ing from the <b>
0c60: 53 74 61 72 74 2d 4e 6f 64 65 3c 2f 62 3e 20 74 Start-Node</b> t
0c70: 6f 20 74 68 65 20 3c 62 3e 45 6e 64 2d 4e 6f 64 o the <b>End-Nod
0c80: 65 3c 2f 62 3e 2c 20 62 75 74 20 74 68 69 73 20 e</b>, but this
0c90: 69 73 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 66 is an optional f
0ca0: 65 61 74 75 72 65 2c 20 6e 6f 74 20 61 20 6d 61 eature, not a ma
0cb0: 6e 64 61 74 6f 72 79 20 72 65 71 75 69 72 65 6d ndatory requirem
0cc0: 65 6e 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 57 ent.</li>..<li>W
0cd0: 68 61 74 20 69 73 20 61 62 73 6f 6c 75 74 65 6c hat is absolutel
0ce0: 79 20 6d 61 6e 64 61 74 6f 72 79 20 69 73 20 74 y mandatory is t
0cf0: 68 61 74 20 65 61 63 68 20 3c 62 3e 4c 69 6e 6b hat each <b>Link
0d00: 3c 2f 62 3e 20 6d 75 73 74 20 65 78 70 6c 69 63 </b> must explic
0d10: 69 74 6c 79 20 72 65 66 65 72 65 6e 63 65 20 69 itly reference i
0d20: 74 73 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 2e ts <b>Nodes</b>.
0d30: 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 </li>..</ul></li
0d40: 3e 0d 0a 3c 6c 69 3e 41 20 4e 65 74 77 6f 72 6b >..<li>A Network
0d50: 20 73 75 70 70 6f 72 74 69 6e 67 20 47 65 6f 6d supporting Geom
0d60: 65 74 72 69 65 73 20 69 73 20 61 20 3c 62 3e 53 etries is a <b>S
0d70: 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f patial Network</
0d80: 62 3e 3b 20 6f 74 68 65 72 77 69 73 65 20 61 20 b>; otherwise a
0d90: 4e 65 74 77 6f 72 6b 20 6c 61 63 6b 69 6e 67 20 Network lacking
0da0: 61 6e 79 20 47 65 6f 6d 65 74 72 79 20 69 73 20 any Geometry is
0db0: 61 20 3c 62 3e 4c 6f 67 69 63 61 6c 20 4e 65 74 a <b>Logical Net
0dc0: 77 6f 72 6b 3c 2f 62 3e 2e 0d 0a 3c 75 6c 3e 0d work</b>...<ul>.
0dd0: 0a 3c 6c 69 3e 49 6e 20 61 20 3c 62 3e 53 70 61 .<li>In a <b>Spa
0de0: 74 69 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e tial Network</b>
0df0: 20 61 6c 6c 20 4c 69 6e 6b 73 20 3c 62 3e 6d 75 all Links <b>mu
0e00: 73 74 3c 2f 62 3e 20 68 61 76 65 20 61 20 63 6f st</b> have a co
0e10: 72 72 65 73 70 6f 6e 64 69 6e 67 20 47 65 6f 6d rresponding Geom
0e20: 65 74 72 79 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e etry.</li>..<li>
0e30: 49 6e 20 61 20 3c 62 3e 4c 6f 67 69 63 61 6c 20 In a <b>Logical
0e40: 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 61 6c 6c 20 Network</b> all
0e50: 4c 69 6e 6b 73 20 3c 62 3e 61 72 65 20 73 74 72 Links <b>are str
0e60: 69 63 74 6c 79 20 66 6f 72 62 69 64 64 65 6e 3c ictly forbidden<
0e70: 2f 62 3e 20 74 6f 20 68 61 76 65 20 61 6e 79 20 /b> to have any
0e80: 47 65 6f 6d 65 74 72 79 2e 3c 2f 6c 69 3e 0d 0a Geometry.</li>..
0e90: 3c 6c 69 3e 49 6e 20 61 20 3c 62 3e 53 70 61 74 <li>In a <b>Spat
0ea0: 69 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 ial Network</b>
0eb0: 62 6f 74 68 20 74 68 65 20 3c 62 3e 53 74 61 72 both the <b>Star
0ec0: 74 50 6f 69 6e 74 3c 2f 62 3e 20 61 6e 64 20 3c tPoint</b> and <
0ed0: 62 3e 45 6e 64 50 6f 69 6e 74 3c 2f 62 3e 20 6f b>EndPoint</b> o
0ee0: 66 20 65 61 63 68 20 4c 69 6e 6b 27 73 20 3c 62 f each Link's <b
0ef0: 3e 4c 49 4e 45 53 54 52 49 4e 47 3c 2f 62 3e 20 >LINESTRING</b>
0f00: 61 72 65 20 61 6c 77 61 79 73 20 65 78 70 65 63 are always expec
0f10: 74 65 64 20 74 6f 20 65 78 61 63 74 6c 79 20 63 ted to exactly c
0f20: 6f 69 6e 63 69 64 65 20 77 69 74 68 20 74 68 65 oincide with the
0f30: 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 3c corresponding <
0f40: 62 3e 4e 6f 64 65 73 3c 2f 62 3e 2e 3c 2f 6c 69 b>Nodes</b>.</li
0f50: 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c >..</ul></li>..<
0f60: 6c 69 3e 49 6e 20 61 20 3c 62 3e 53 70 61 74 69 li>In a <b>Spati
0f70: 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 61 al Network</b> a
0f80: 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f ll references to
0f90: 20 74 68 65 20 73 61 6d 65 20 3c 62 3e 4e 6f 64 the same <b>Nod
0fa0: 65 3c 2f 62 3e 20 62 79 20 64 69 66 66 65 72 65 e</b> by differe
0fb0: 6e 74 20 4c 69 6e 6b 73 20 3c 62 3e 6d 75 73 74 nt Links <b>must
0fc0: 3c 2f 62 3e 20 62 65 20 61 6e 20 65 78 61 63 74 </b> be an exact
0fd0: 20 6d 61 74 63 68 2e 3c 62 72 3e 0d 0a 3c 75 3e match.<br>..<u>
0fe0: 45 78 61 6d 70 6c 65 3c 2f 75 3e 3a 20 4e 6f 64 Example</u>: Nod
0ff0: 65 20 3c 62 3e 4e 35 3c 2f 62 3e 20 69 73 20 73 e <b>N5</b> is s
1000: 68 61 72 65 64 20 62 79 20 4c 69 6e 6b 73 20 3c hared by Links <
1010: 62 3e 4c 33 3c 2f 62 3e 2c 20 3c 62 3e 4c 36 3c b>L3</b>, <b>L6<
1020: 2f 62 3e 2c 20 3c 62 3e 4c 37 3c 2f 62 3e 2c 20 /b>, <b>L7</b>,
1030: 3c 62 3e 4c 39 3c 2f 62 3e 20 61 6e 64 20 3c 62 <b>L9</b> and <b
1040: 3e 4c 31 30 3c 2f 62 3e 2c 20 73 6f 20 61 6c 6c >L10</b>, so all
1050: 20 74 68 65 69 72 20 63 6f 72 72 65 73 70 6f 6e their correspon
1060: 64 69 6e 67 20 4c 49 4e 45 53 54 52 49 4e 47 53 ding LINESTRINGS
1070: 20 61 72 65 20 65 78 70 65 63 74 65 64 20 74 6f are expected to
1080: 20 68 61 76 65 20 74 68 65 20 63 6f 72 72 65 73 have the corres
1090: 70 6f 6e 64 69 6e 67 20 65 78 74 72 65 6d 69 74 ponding extremit
10a0: 79 20 28 3c 62 3e 53 74 61 72 74 2d 3c 2f 62 3e y (<b>Start-</b>
10b0: 20 6f 72 20 3c 62 3e 45 6e 64 2d 3c 2f 62 3e 2c or <b>End-</b>,
10c0: 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 depending on th
10d0: 65 20 6f 72 69 65 6e 74 61 74 69 6f 6e 29 20 70 e orientation) p
10e0: 6f 69 6e 74 73 20 74 68 61 74 20 6d 75 73 74 20 oints that must
10f0: 65 78 61 63 74 6c 79 20 6d 61 74 63 68 20 74 68 exactly match th
1100: 65 20 6f 74 68 65 72 2e 3c 62 72 3e 0d 0a 41 20 e other.<br>..A
1110: 3c 62 3e 74 6f 70 6f 6c 6f 67 69 63 61 6c 20 69 <b>topological i
1120: 6e 63 6f 6e 73 69 73 74 65 6e 63 79 3c 2f 62 3e nconsistency</b>
1130: 20 65 78 69 73 74 73 20 69 66 20 61 6e 79 20 6f exists if any o
1140: 66 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f f these conditio
1150: 6e 73 20 61 72 65 20 6e 6f 74 20 73 61 74 69 73 ns are not satis
1160: 66 69 65 64 2c 20 77 68 69 63 68 20 6c 65 61 64 fied, which lead
1170: 73 20 74 6f 20 61 6e 20 3c 62 3e 69 6e 76 61 6c s to an <b>inval
1180: 69 64 3c 2f 62 3e 20 4e 65 74 77 6f 72 6b 2e 3c id</b> Network.<
1190: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 49 6e 20 61 20 3c /li>..<li>In a <
11a0: 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 b>Spatial Networ
11b0: 6b 3c 2f 62 3e 20 74 77 6f 0d 0a 3c 6c 69 3e 41 k</b> two..<li>A
11c0: 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 74 68 ccordingly to th
11d0: 65 20 61 62 6f 76 65 20 70 72 65 6d 69 73 65 73 e above premises
11e0: 2c 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 20 61 , <b>Nodes</b> a
11f0: 72 65 20 6e 65 76 65 72 20 65 78 70 65 63 74 65 re never expecte
1200: 64 20 74 6f 20 62 65 20 65 78 70 6c 69 63 69 74 d to be explicit
1210: 6c 79 20 64 65 63 6c 61 72 65 64 20 69 6e 20 61 ly declared in a
1220: 20 73 65 70 61 72 61 74 65 20 54 61 62 6c 65 2e separate Table.
1230: 3c 62 72 3e 0d 0a 4a 75 73 74 20 61 20 73 69 6e <br>..Just a sin
1240: 67 6c 65 20 54 61 62 6c 65 20 64 65 63 6c 61 72 gle Table declar
1250: 69 6e 67 20 61 6c 6c 20 3c 62 3e 4c 69 6e 6b 73 ing all <b>Links
1260: 3c 2f 62 3e 20 69 73 20 72 65 71 75 69 72 65 64 </b> is required
1270: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 75 6c in order to ful
1280: 6c 79 20 64 65 66 69 6e 65 20 61 20 74 6f 70 6f ly define a topo
1290: 6c 6f 67 69 63 61 6c 6c 79 20 76 61 6c 69 64 20 logically valid
12a0: 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 41 6c Network.<br>..Al
12b0: 6c 20 74 68 65 20 4e 6f 64 65 73 20 63 61 6e 20 l the Nodes can
12c0: 74 68 65 6e 20 62 65 20 65 61 73 69 6c 79 20 65 then be easily e
12d0: 78 74 72 61 63 74 65 64 20 66 72 6f 6d 20 74 68 xtracted from th
12e0: 65 20 4c 69 6e 6b 73 27 20 64 65 66 69 6e 69 74 e Links' definit
12f0: 69 6f 6e 73 20 61 6e 64 20 74 68 65 20 63 6f 6f ions and the coo
1300: 72 64 69 6e 61 74 65 73 20 66 6f 72 20 65 61 63 rdinates for eac
1310: 68 20 4e 6f 64 65 20 63 61 6e 20 62 65 20 64 69 h Node can be di
1320: 72 65 63 74 6c 79 20 73 65 74 20 62 79 20 65 78 rectly set by ex
1330: 74 72 61 63 74 69 6e 67 20 74 68 65 20 65 78 74 tracting the ext
1340: 72 65 6d 65 20 50 6f 69 6e 74 20 6f 66 20 74 68 reme Point of th
1350: 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 e corresponding
1360: 4c 69 6e 65 73 74 72 69 6e 67 73 2e 3c 62 72 3e Linestrings.<br>
1370: 0d 0a 49 66 20 61 6e 79 20 6d 69 73 6d 61 74 63 ..If any mismatc
1380: 68 20 69 73 20 64 65 74 65 63 74 65 64 20 74 68 h is detected th
1390: 69 73 20 73 75 72 65 6c 79 20 6d 65 61 6e 73 20 is surely means
13a0: 74 68 61 74 20 74 68 65 20 4e 65 74 77 6f 72 6b that the Network
13b0: 20 69 73 20 69 6e 76 61 6c 69 64 2e 3c 2f 6c 69 is invalid.</li
13c0: 3e 0d 0a 3c 6c 69 3e 41 20 3c 62 3e 4c 69 6e 6b >..<li>A <b>Link
13d0: 3c 2f 62 3e 20 6d 61 79 20 6c 65 67 69 74 69 6d </b> may legitim
13e0: 61 74 65 6c 79 20 73 65 6c 66 2d 69 6e 74 65 72 ately self-inter
13f0: 73 65 63 74 20 69 74 73 65 6c 66 20 28 65 2e 67 sect itself (e.g
1400: 2e 20 66 6f 72 6d 69 6e 67 20 61 20 6c 6f 6f 70 . forming a loop
1410: 29 2c 20 61 73 20 73 68 6f 77 6e 20 69 6e 20 74 ), as shown in t
1420: 68 65 20 61 62 6f 76 65 20 66 69 67 75 72 65 20 he above figure
1430: 62 79 20 4c 69 6e 6b 20 3c 62 3e 4c 31 35 3c 2f by Link <b>L15</
1440: 62 3e 20 28 6f 72 61 6e 67 65 20 73 70 6f 74 29 b> (orange spot)
1450: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 54 77 6f 20 .</li>..<li>Two
1460: 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 6d 61 79 <b>Links</b> may
1470: 20 6c 65 67 69 74 69 6d 61 74 65 6c 79 20 69 6e legitimately in
1480: 74 65 72 73 65 63 74 20 77 68 65 72 65 20 6e 6f tersect where no
1490: 20 4e 6f 64 65 20 65 78 69 73 74 73 2c 20 61 73 Node exists, as
14a0: 20 65 78 65 6d 70 6c 69 66 69 65 64 20 6f 6e 20 exemplified on
14b0: 74 68 65 20 61 62 6f 76 65 20 66 69 67 75 72 65 the above figure
14c0: 20 62 79 20 4c 69 6e 6b 73 20 3c 62 3e 4c 34 3c by Links <b>L4<
14d0: 2f 62 3e 20 61 6e 64 20 3c 62 3e 4c 37 3c 2f 62 /b> and <b>L7</b
14e0: 3e 20 28 67 72 65 65 6e 20 73 70 6f 74 29 2e 3c > (green spot).<
14f0: 62 72 3e 0d 0a 54 68 69 73 20 75 73 75 61 6c 6c br>..This usuall
1500: 79 20 68 61 70 70 65 6e 73 20 77 68 65 6e 20 6f y happens when o
1510: 6e 65 20 6f 66 20 74 68 65 20 74 77 6f 20 4c 69 ne of the two Li
1520: 6e 6b 73 20 6f 76 65 72 70 61 73 73 65 73 20 74 nks overpasses t
1530: 68 65 20 6f 74 68 65 72 2c 20 6f 72 20 77 68 65 he other, or whe
1540: 72 65 20 73 6f 6d 65 20 74 65 63 68 6e 69 63 61 re some technica
1550: 6c 20 72 65 73 74 72 69 63 74 69 6f 6e 20 65 78 l restriction ex
1560: 69 73 74 73 20 28 65 2e 67 2e 20 74 77 6f 20 69 ists (e.g. two i
1570: 6e 73 75 6c 61 74 65 64 20 77 69 72 65 73 20 69 nsulated wires i
1580: 6e 20 61 6e 20 45 6c 65 63 74 72 69 63 61 6c 20 n an Electrical
1590: 4e 65 74 77 6f 72 6b 29 2e 3c 2f 6c 69 3e 0d 0a Network).</li>..
15a0: 3c 6c 69 3e 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e <li><b>Links</b>
15b0: 20 61 72 65 6e 27 74 20 73 74 72 69 63 74 6c 79 aren't strictly
15c0: 20 72 65 71 75 69 72 65 64 20 74 6f 20 62 65 20 required to be
15d0: 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 associated with
15e0: 61 6e 79 20 73 70 65 63 69 66 69 63 20 61 74 74 any specific att
15f0: 72 69 62 75 74 65 2c 20 62 75 74 20 74 68 65 20 ribute, but the
1600: 66 6f 6c 6c 6f 77 69 6e 67 20 61 74 74 72 69 62 following attrib
1610: 75 74 65 73 20 61 72 65 20 61 6c 6d 6f 73 74 20 utes are almost
1620: 75 6e 69 76 65 72 73 61 6c 6c 79 20 73 75 70 70 universally supp
1630: 6f 72 74 65 64 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c orted:..<ul>..<l
1640: 69 3e 61 20 3c 62 3e 6e 61 6d 65 3c 2f 62 3e 20 i>a <b>name</b>
1650: 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 identifying the
1660: 4c 69 6e 6b 2e 3c 62 72 3e 0d 0a 3c 75 3e 45 78 Link.<br>..<u>Ex
1670: 61 6d 70 6c 65 73 3c 2f 75 3e 3a 20 74 68 65 20 amples</u>: the
1680: 3c 69 3e 72 6f 61 64 20 74 6f 70 6f 6e 79 6d 3c <i>road toponym<
1690: 2f 69 3e 20 69 6e 20 61 20 3c 62 3e 72 6f 61 64 /i> in a <b>road
16a0: 20 6e 65 74 77 6f 72 6b 3c 2f 62 3e 2c 20 6f 72 network</b>, or
16b0: 20 74 68 65 20 3c 69 3e 72 69 76 65 72 20 6e 61 the <i>river na
16c0: 6d 65 3c 2f 69 3e 20 69 6e 20 61 6e 20 3c 62 3e me</i> in an <b>
16d0: 68 79 64 72 6f 67 72 61 70 68 69 63 20 6e 65 74 hydrographic net
16e0: 77 6f 72 6b 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a work</b>.</li>..
16f0: 3c 6c 69 3e 6f 6e 65 20 28 6f 72 20 65 76 65 6e <li>one (or even
1700: 20 6d 6f 72 65 29 20 61 70 70 72 6f 70 72 69 61 more) appropria
1710: 74 65 20 3c 62 3e 63 6f 73 74 20 76 61 6c 75 65 te <b>cost value
1720: 3c 2f 62 3e 28 73 29 2e 3c 62 72 3e 0d 0a 3c 75 </b>(s).<br>..<u
1730: 3e 45 78 61 6d 70 6c 65 3c 2f 75 3e 3a 20 74 68 >Example</u>: th
1740: 65 20 3c 69 3e 74 69 6d 65 3c 2f 69 3e 20 72 65 e <i>time</i> re
1750: 71 75 69 72 65 64 20 74 6f 20 74 72 61 76 65 72 quired to traver
1760: 73 65 20 74 68 65 20 4c 69 6e 6b 20 28 6d 61 79 se the Link (may
1770: 20 62 65 20 64 69 73 74 69 6e 67 75 69 73 68 65 be distinguishe
1780: 64 20 62 65 74 77 65 65 6e 20 70 65 64 65 73 74 d between pedest
1790: 72 69 61 6e 73 2c 20 62 69 63 79 63 6c 65 73 2c rians, bicycles,
17a0: 20 63 61 72 73 2c 20 6c 6f 72 72 69 65 73 20 61 cars, lorries a
17b0: 6e 64 20 73 6f 20 6f 6e 29 2e 3c 2f 6c 69 3e 0d nd so on).</li>.
17c0: 0a 3c 6c 69 3e 61 20 70 61 69 72 20 6f 66 20 3c .<li>a pair of <
17d0: 62 3e 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 73 3c b>boolean flags<
17e0: 2f 62 3e 20 28 3c 62 3e 66 72 6f 6d 2d 74 6f 3c /b> (<b>from-to<
17f0: 2f 62 3e 20 61 6e 64 20 3c 62 3e 74 6f 2d 66 72 /b> and <b>to-fr
1800: 6f 6d 3c 2f 62 3e 29 20 61 72 65 20 69 6e 74 65 om</b>) are inte
1810: 6e 64 65 6e 64 20 74 6f 20 73 70 65 63 69 66 79 ndend to specify
1820: 20 69 66 20 74 68 65 20 4c 69 6e 6b 20 63 61 6e if the Link can
1830: 20 62 65 20 74 72 61 76 65 72 73 65 64 20 6f 6e be traversed on
1840: 20 62 6f 74 68 20 64 69 72 65 63 74 69 6f 6e 73 both directions
1850: 20 6f 72 20 6a 75 73 74 20 69 6e 20 6f 6e 65 20 or just in one
1860: 28 3c 62 3e 6f 6e 65 2d 77 61 79 3c 2f 62 3e 29 (<b>one-way</b>)
1870: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c .</li>..</ul></l
1880: 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 68 34 3e 4c i>..</ul>..<h4>L
1890: 6f 67 69 63 61 6c 20 63 6f 6e 63 6c 75 73 69 6f ogical conclusio
18a0: 6e 73 3c 2f 68 34 3e 0d 0a 41 6e 79 20 74 6f 70 ns</h4>..Any top
18b0: 6f 6c 6f 67 69 63 61 6c 6c 79 20 76 61 6c 69 64 ologically valid
18c0: 20 3c 62 3e 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 <b>Network</b>
18d0: 28 69 72 72 65 73 70 65 63 74 69 76 65 20 6f 66 (irrespective of
18e0: 20 77 68 65 74 68 65 72 20 69 74 20 69 73 20 61 whether it is a
18f0: 20 3c 62 3e 53 70 61 74 69 61 6c 3c 2f 62 3e 20 <b>Spatial</b>
1900: 6f 72 20 3c 62 3e 4c 6f 67 69 63 61 6c 3c 2f 62 or <b>Logical</b
1910: 3e 20 74 79 70 65 29 20 69 73 20 61 20 76 61 6c > type) is a val
1920: 69 64 20 3c 62 3e 47 72 61 70 68 3c 2f 62 3e 2e id <b>Graph</b>.
1930: 3c 62 72 3e 0d 0a 41 20 4e 65 74 77 6f 72 6b 20 <br>..A Network
1940: 61 6c 6c 6f 77 69 6e 67 20 74 68 65 20 73 75 70 allowing the sup
1950: 70 6f 72 74 20 28 64 69 72 65 63 74 20 6f 72 20 port (direct or
1960: 69 6e 64 69 72 65 63 74 29 20 6f 66 20 73 6f 6d indirect) of som
1970: 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 3c 62 e appropriate <b
1980: 3e 63 6f 73 74 20 76 61 6c 75 65 3c 2f 62 3e 20 >cost value</b>
1990: 69 73 20 61 20 76 61 6c 69 64 20 3c 62 3e 57 65 is a valid <b>We
19a0: 69 67 68 74 65 64 20 47 72 61 70 68 3c 2f 62 3e ighted Graph</b>
19b0: 2c 20 61 6e 64 20 63 61 6e 20 63 6f 6e 73 65 71 , and can conseq
19c0: 75 65 6e 74 6c 79 20 73 75 70 70 6f 72 74 20 3c uently support <
19d0: 62 3e 52 6f 75 74 69 6e 67 20 61 6c 67 6f 72 69 b>Routing algori
19e0: 74 68 6d 73 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 41 thms</b>.<br>..A
19f0: 6c 6c 20 52 6f 75 74 69 6e 67 20 61 6c 67 6f 72 ll Routing algor
1a00: 69 74 68 6d 73 20 61 72 65 20 69 6e 74 65 6e 64 ithms are intend
1a10: 65 64 20 74 6f 20 69 64 65 6e 74 69 66 79 20 74 ed to identify t
1a20: 68 65 20 3c 62 3e 53 68 6f 72 74 65 73 74 20 50 he <b>Shortest P
1a30: 61 74 68 3c 2f 62 3e 20 73 6f 6c 75 74 69 6f 6e ath</b> solution
1a40: 20 63 6f 6e 6e 65 63 74 69 6e 67 20 74 77 6f 20 connecting two
1a50: 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 20 69 6e 20 <b>Nodes</b> in
1a60: 61 20 3c 62 3e 77 65 69 67 68 74 65 64 20 67 72 a <b>weighted gr
1a70: 61 70 68 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c aph</b> (<i>aka<
1a80: 2f 69 3e 20 3c 62 3e 4e 65 74 77 6f 72 6b 3c 2f /i> <b>Network</
1a90: 62 3e 29 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 b>).<br><br>..<b
1aa0: 3e 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3c 2f 62 3e ><u>Note</u></b>
1ab0: 3a 20 74 68 65 20 74 65 72 6d 20 3c 62 3e 3c 69 : the term <b><i
1ac0: 3e 53 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f >Shortest Path</
1ad0: 69 3e 3c 2f 62 3e 20 63 61 6e 20 62 65 20 65 61 i></b> can be ea
1ae0: 73 69 6c 79 20 6d 69 73 75 6e 64 65 72 73 74 6f sily misundersto
1af0: 6f 64 2e 3c 62 72 3e 0d 0a 44 75 65 20 74 6f 20 od.<br>..Due to
1b00: 68 69 73 74 6f 72 69 63 61 6c 20 72 65 61 73 6f historical reaso
1b10: 6e 73 20 74 68 65 20 6d 6f 73 74 20 63 6f 6d 6d ns the most comm
1b20: 6f 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 66 on application f
1b30: 69 65 6c 64 20 66 6f 72 20 52 6f 75 74 69 6e 67 ield for Routing
1b40: 20 61 6c 67 6f 72 69 74 68 6d 73 20 69 73 20 72 algorithms is r
1b50: 65 6c 61 74 65 64 20 74 6f 20 3c 62 3e 52 6f 61 elated to <b>Roa
1b60: 64 20 4e 65 74 77 6f 72 6b 73 3c 2f 62 3e 2c 20 d Networks</b>,
1b70: 62 75 74 20 61 6c 73 6f 20 6d 61 6e 79 20 6f 74 but also many ot
1b80: 68 65 72 20 6b 69 6e 64 73 20 6f 66 20 4e 65 74 her kinds of Net
1b90: 77 6f 72 6b 73 20 65 78 69 73 74 3a 0d 0a 3c 75 works exist:..<u
1ba0: 6c 3e 0d 0a 3c 6c 69 3e 48 79 64 72 6f 67 72 61 l>..<li>Hydrogra
1bb0: 70 68 69 63 20 4e 65 74 77 6f 72 6b 73 2e 3c 2f phic Networks.</
1bc0: 6c 69 3e 0d 0a 3c 6c 69 3e 47 61 73 20 2f 20 57 li>..<li>Gas / W
1bd0: 61 74 65 72 20 2f 20 4f 69 6c 20 4e 65 74 77 6f ater / Oil Netwo
1be0: 72 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 45 rks.</li>..<li>E
1bf0: 6c 65 63 74 72 69 63 61 6c 20 4e 65 74 77 6f 72 lectrical Networ
1c00: 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 54 65 ks.</li>..<li>Te
1c10: 6c 65 63 6f 6d 75 6e 69 63 61 74 69 6f 6e 20 4e lecomunication N
1c20: 65 74 77 6f 72 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c etworks.</li>..<
1c30: 6c 69 3e 53 6f 63 69 61 6c 20 6f 72 20 45 63 6f li>Social or Eco
1c40: 6e 6f 6d 69 63 61 6c 20 4e 65 74 77 6f 72 6b 73 nomical Networks
1c50: 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 72 65 representing re
1c60: 6c 61 74 69 6f 6e 73 68 69 70 73 20 62 65 74 77 lationships betw
1c70: 65 65 6e 20 69 6e 64 69 76 69 64 75 61 6c 73 20 een individuals
1c80: 6f 72 20 63 6f 6d 70 61 6e 69 65 73 2e 3c 2f 6c or companies.</l
1c90: 69 3e 0d 0a 3c 6c 69 3e 45 70 69 64 65 6d 69 6f i>..<li>Epidemio
1ca0: 6c 6f 67 69 63 61 6c 20 4e 65 74 77 6f 72 6b 73 logical Networks
1cb0: 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 representing th
1cc0: 65 20 70 72 6f 70 61 67 61 74 69 6f 6e 20 6f 66 e propagation of
1cd0: 20 69 6e 66 65 63 74 69 76 65 20 64 69 73 65 61 infective disea
1ce0: 73 65 73 20 62 65 74 77 65 65 6e 20 69 6e 64 69 ses between indi
1cf0: 76 69 64 75 61 6c 73 20 6f 72 20 67 72 6f 75 70 viduals or group
1d00: 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f s.</li>..</ul></
1d10: 6c 69 3e 20 0d 0a 3c 62 72 3e 0d 0a 49 6e 20 61 li> ..<br>..In a
1d20: 6c 6c 20 74 68 65 20 61 62 6f 76 65 20 63 61 73 ll the above cas
1d30: 65 73 20 77 65 20 63 65 72 74 61 69 6e 6c 79 20 es we certainly
1d40: 68 61 76 65 20 76 61 6c 69 64 20 4e 65 74 77 6f have valid Netwo
1d50: 72 6b 73 20 73 75 70 70 6f 72 74 69 6e 67 20 52 rks supporting R
1d60: 6f 75 74 69 6e 67 20 61 6c 67 6f 72 69 74 68 6e outing algorithn
1d70: 73 2c 20 62 75 74 20 6e 6f 74 20 61 6c 6c 20 6f s, but not all o
1d80: 66 20 74 68 65 6d 20 63 61 6e 20 69 6d 70 6c 79 f them can imply
1d90: 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 something like
1da0: 61 20 3c 69 3e 73 70 61 74 69 61 6c 20 64 69 73 a <i>spatial dis
1db0: 74 61 6e 63 65 3c 2f 69 3e 20 28 3c 69 3e 67 65 tance</i> (<i>ge
1dc0: 6f 6d 65 74 72 69 63 20 6c 65 6e 67 74 68 3c 2f ometric length</
1dd0: 69 3e 29 20 6f 72 20 61 20 3c 69 3e 74 72 61 76 i>) or a <i>trav
1de0: 65 6c 20 74 69 6d 65 3c 2f 69 3e 2e 3c 62 72 3e el time</i>.<br>
1df0: 0d 0a 49 6e 20 74 68 65 20 6d 6f 73 74 20 67 65 ..In the most ge
1e00: 6e 65 72 61 6c 20 61 63 63 65 70 74 69 6f 6e 20 neral acception
1e10: 3c 62 3e 63 6f 73 74 73 3c 2f 62 3e 20 63 61 6e <b>costs</b> can
1e20: 20 62 65 20 72 65 70 72 65 73 65 6e 74 65 64 20 be represented
1e30: 62 79 20 61 6e 79 20 72 65 61 73 6f 6e 61 62 6c by any reasonabl
1e40: 65 20 70 68 79 73 69 63 61 6c 20 71 75 61 6e 74 e physical quant
1e50: 69 74 79 2e 3c 62 72 3e 0d 0a 53 6f 20 61 20 6d ity.<br>..So a m
1e60: 6f 72 65 20 67 65 6e 65 72 61 6c 69 7a 65 64 20 ore generalized
1e70: 64 65 66 69 6e 69 74 69 6f 6e 20 69 73 20 61 73 definition is as
1e80: 73 75 6d 69 6e 67 20 74 68 61 74 20 52 6f 75 74 suming that Rout
1e90: 69 6e 67 20 61 6c 67 6f 72 69 74 68 6d 73 20 61 ing algorithms a
1ea0: 72 65 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 69 re intended to i
1eb0: 64 65 6e 74 69 66 79 20 3c 62 3e 6c 65 73 73 65 dentify <b>lesse
1ec0: 72 20 63 6f 73 74 3c 2f 62 3e 20 73 6f 6c 75 74 r cost</b> solut
1ed0: 69 6f 6e 73 20 6f 6e 20 61 20 3c 62 3e 77 65 69 ions on a <b>wei
1ee0: 67 68 74 65 64 20 67 72 61 70 68 3c 2f 62 3e 2e ghted graph</b>.
1ef0: 3c 62 72 3e 0d 0a 54 68 65 20 65 78 61 63 74 20 <br>..The exact
1f00: 69 6e 74 65 72 70 72 65 74 61 74 69 6f 6e 20 6f interpretation o
1f10: 66 20 74 68 65 20 69 6e 76 6f 6c 76 65 64 20 3c f the involved <
1f20: 62 3e 63 6f 73 74 73 3c 2f 62 3e 20 28 3c 69 3e b>costs</b> (<i>
1f30: 61 6b 61 3c 2f 69 3e 20 3c 62 3e 77 65 69 67 68 aka</i> <b>weigh
1f40: 74 73 3c 2f 62 3e 29 20 73 74 72 69 63 74 6c 79 ts</b>) strictly
1f50: 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 depends on the
1f60: 76 65 72 79 20 73 70 65 63 69 66 69 63 20 6e 61 very specific na
1f70: 74 75 72 65 20 6f 66 20 65 61 63 68 20 4e 65 74 ture of each Net
1f80: 77 6f 72 6b 2e 0d 0a 3c 68 33 3e 54 68 65 20 44 work...<h3>The D
1f90: 69 6a 6b 73 74 72 61 27 73 20 61 6c 67 6f 72 69 ijkstra's algori
1fa0: 74 68 6d 3c 2f 68 33 3e 0d 0a 54 68 69 73 20 77 thm</h3>..This w
1fb0: 65 6c 6c 20 6b 6e 6f 77 6e 20 3c 61 20 68 72 65 ell known <a hre
1fc0: 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 f="https://en.wi
1fd0: 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 kipedia.org/wiki
1fe0: 2f 44 69 6a 6b 73 74 72 61 25 32 37 73 5f 61 6c /Dijkstra%27s_al
1ff0: 67 6f 72 69 74 68 6d 22 3e 61 6c 67 6f 72 69 74 gorithm">algorit
2000: 68 6d 3c 2f 61 3e 20 69 73 6e 27 74 20 6e 65 63 hm</a> isn't nec
2010: 65 73 73 61 72 69 6c 79 20 74 68 65 20 66 61 73 essarily the fas
2020: 74 65 73 74 20 6f 6e 65 2c 20 62 75 74 20 69 74 test one, but it
2030: 20 61 6c 77 61 79 73 20 65 6e 73 75 72 65 73 20 always ensures
2040: 3c 62 3e 66 75 6c 6c 20 63 6f 72 72 65 63 74 6e <b>full correctn
2050: 65 73 73 3c 2f 62 3e 3a 0d 0a 3c 75 6c 3e 0d 0a ess</b>:..<ul>..
2060: 3c 6c 69 3e 41 6e 79 20 4e 6f 64 65 2d 74 6f 2d <li>Any Node-to-
2070: 4e 6f 64 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 Node connection
2080: 69 64 65 6e 74 69 66 69 65 64 20 62 79 20 44 69 identified by Di
2090: 6a 6b 73 74 72 61 27 73 20 69 73 20 63 65 72 74 jkstra's is cert
20a0: 61 69 6e 6c 79 20 65 6e 73 75 72 65 64 20 74 6f ainly ensured to
20b0: 20 62 65 20 3c 62 3e 6f 70 74 69 6d 61 6c 3c 2f be <b>optimal</
20c0: 62 3e 2e 3c 62 72 3e 0d 0a 49 6e 20 6f 74 68 65 b>.<br>..In othe
20d0: 72 20 77 6f 72 64 73 2c 20 6e 6f 20 63 6f 6e 6e r words, no conn
20e0: 65 74 63 74 69 6f 6e 20 70 72 65 73 65 6e 74 69 etction presenti
20f0: 6e 67 20 61 20 6c 6f 77 65 72 20 63 6f 73 74 20 ng a lower cost
2100: 63 61 6e 20 63 6f 6e 63 65 70 74 75 61 6c 6c 79 can conceptually
2110: 20 65 78 69 73 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c exist.</li>..<l
2120: 69 3e 57 68 65 6e 20 44 69 6a 73 6a 74 72 61 27 i>When Dijsjtra'
2130: 73 20 66 61 69 6c 73 20 74 6f 20 69 64 65 6e 74 s fails to ident
2140: 69 66 79 20 61 20 73 6f 6c 75 74 69 6f 6e 20 74 ify a solution t
2150: 68 69 73 20 73 75 72 65 6c 79 20 6d 65 61 6e 73 his surely means
2160: 20 74 68 61 74 20 6e 6f 20 73 6f 6c 75 74 69 6f that no solutio
2170: 6e 20 69 73 20 70 6f 73 73 69 62 6c 65 2e 3c 2f n is possible.</
2180: 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 68 33 3e li>..</ul>..<h3>
2190: 54 68 65 20 41 2a 20 61 6c 67 6f 72 69 74 68 6d The A* algorithm
21a0: 3c 2f 68 33 3e 0d 0a 4d 61 6e 79 20 61 6c 74 65 </h3>..Many alte
21b0: 72 6e 61 74 69 76 65 20 52 6f 75 74 69 6e 67 20 rnative Routing
21c0: 61 6c 67 6f 72 69 74 68 6d 73 20 68 61 76 65 20 algorithms have
21d0: 62 65 65 6e 20 69 6e 76 65 6e 74 65 64 20 64 75 been invented du
21e0: 72 69 6e 67 20 74 68 65 20 79 65 61 72 73 2e 3c ring the years.<
21f0: 62 72 3e 0d 0a 41 6c 6c 20 74 68 65 6d 20 61 72 br>..All them ar
2200: 65 20 62 61 73 65 64 20 6f 6e 20 68 65 75 72 69 e based on heuri
2210: 73 74 69 63 20 61 73 73 75 6d 70 74 69 6f 6e 73 stic assumptions
2220: 20 61 6e 64 20 61 72 65 20 69 6e 74 65 6e 64 65 and are intende
2230: 64 20 74 6f 20 62 65 20 66 61 73 74 65 72 20 74 d to be faster t
2240: 68 61 6e 20 44 69 6a 6b 73 74 72 61 27 73 2c 20 han Dijkstra's,
2250: 62 75 74 20 6e 6f 6e 65 20 6f 66 20 74 68 65 6d but none of them
2260: 20 63 61 6e 20 65 6e 73 75 72 65 20 3c 62 3e 66 can ensure <b>f
2270: 75 6c 6c 20 63 6f 72 72 65 63 74 6e 65 73 73 3c ull correctness<
2280: 2f 62 3e 20 61 73 20 44 69 6a 6b 73 74 72 61 27 /b> as Dijkstra'
2290: 73 20 64 6f 65 73 2e 3c 62 72 3e 0d 0a 54 68 65 s does.<br>..The
22a0: 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a <a href="https:
22b0: 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f //en.wikipedia.o
22c0: 72 67 2f 77 69 6b 69 2f 41 2a 5f 73 65 61 72 63 rg/wiki/A*_searc
22d0: 68 5f 61 6c 67 6f 72 69 74 68 6d 22 3e 41 2a 20 h_algorithm">A*
22e0: 61 6c 67 6f 72 69 74 68 6d 3c 2f 61 3e 20 61 70 algorithm</a> ap
22f0: 70 6c 69 65 73 20 61 20 6d 69 6c 64 20 68 65 75 plies a mild heu
2300: 72 69 73 74 69 63 20 6f 70 74 69 6d 69 7a 61 74 ristic optimizat
2310: 69 6f 6e 2c 20 61 6e 64 20 63 61 6e 20 62 65 20 ion, and can be
2320: 61 20 72 65 61 6c 69 73 74 69 63 20 61 6c 74 65 a realistic alte
2330: 72 6e 61 74 69 76 65 20 74 6f 20 44 69 6a 6b 73 rnative to Dijks
2340: 74 72 61 27 73 20 69 6e 20 6d 61 6e 79 20 63 61 tra's in many ca
2350: 73 65 73 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 ses.<br><br>..<h
2360: 72 3e 0d 0a 3c 68 31 3e 32 20 2d 20 54 68 65 20 r>..<h1>2 - The
2370: 73 61 6d 70 6c 65 2f 74 65 73 74 20 44 42 3c 2f sample/test DB</
2380: 68 31 3e 0d 0a 59 6f 75 20 61 72 65 20 65 78 70 h1>..You are exp
2390: 65 63 74 65 64 20 74 6f 20 66 6f 6c 6c 6f 77 20 ected to follow
23a0: 74 68 65 20 63 75 72 72 65 6e 74 20 74 75 74 6f the current tuto
23b0: 72 69 61 6c 20 61 62 6f 75 74 20 3c 62 3e 56 69 rial about <b>Vi
23c0: 72 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e rtualRouting</b>
23d0: 20 62 79 20 64 69 72 65 63 74 6c 79 20 74 65 73 by directly tes
23e0: 74 69 6e 67 20 61 6c 6c 20 53 51 4c 20 71 75 65 ting all SQL que
23f0: 72 69 65 73 20 64 69 73 63 75 73 73 65 64 20 62 ries discussed b
2400: 65 6c 6f 77 20 6f 6e 20 62 65 68 61 6c 66 20 6f elow on behalf o
2410: 66 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 68 f the <a href="h
2420: 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d ttps://www.gaia-
2430: 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 gis.it/gaia-sins
2440: 2f 72 6f 75 74 69 6e 67 2d 73 61 6d 70 6c 65 2d /routing-sample-
2450: 35 2e 30 2e 30 2e 37 7a 22 3e 73 61 6d 70 6c 65 5.0.0.7z">sample
2460: 2f 74 65 73 74 20 44 42 20 74 68 61 74 20 79 6f /test DB that yo
2470: 75 20 63 61 6e 20 64 6f 77 6e 6c 6f 61 64 20 66 u can download f
2480: 72 6f 6d 20 68 65 72 65 3c 2f 61 3e 3c 62 72 3e rom here</a><br>
2490: 3c 62 72 3e 0d 0a 54 68 65 20 73 61 6d 70 6c 65 <br>..The sample
24a0: 20 44 42 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 DB contains the
24b0: 20 66 75 6c 6c 20 3c 62 3e 72 6f 61 64 20 6e 65 full <b>road ne
24c0: 74 77 6f 72 6b 3c 2f 62 3e 20 6f 66 20 3c 62 3e twork</b> of <b>
24d0: 54 75 73 63 61 6e 79 20 52 65 67 69 6f 6e 20 28 Tuscany Region (
24e0: 49 74 61 6c 79 29 3c 2f 62 3e 20 28 3c 61 20 68 Italy)</b> (<a h
24f0: 72 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 35 ref="http://www5
2500: 30 32 2e 72 65 67 69 6f 6e 65 2e 74 6f 73 63 61 02.regione.tosca
2510: 6e 61 2e 69 74 2f 67 65 6f 73 63 6f 70 69 6f 2f na.it/geoscopio/
2520: 64 6f 77 6e 6c 6f 61 64 2f 67 72 61 66 6f 5f 73 download/grafo_s
2530: 74 72 61 64 61 6c 65 2f 69 74 65 72 6e 65 74 2e tradale/iternet.
2540: 7a 69 70 22 3e 49 74 65 72 2e 4e 65 74 20 64 61 zip">Iter.Net da
2550: 74 61 73 65 74 3c 2f 61 3e 29 20 6b 69 6e 64 6c taset</a>) kindl
2560: 79 20 72 65 6c 65 61 73 65 64 20 75 6e 64 65 72 y released under
2570: 20 74 68 65 20 3c 62 3e 43 43 2d 42 59 2d 53 41 the <b>CC-BY-SA
2580: 20 34 2e 30 3c 2f 62 3e 20 6c 69 63 65 6e 63 65 4.0</b> licence
2590: 20 74 65 72 6d 73 2e 3c 62 72 3e 0d 0a 54 68 65 terms.<br>..The
25a0: 20 63 6f 6e 74 65 6e 74 73 20 73 74 6f 72 65 64 contents stored
25b0: 20 69 6e 74 6f 20 74 68 65 20 73 61 6d 70 6c 65 into the sample
25c0: 20 64 61 74 61 62 61 73 65 20 77 65 72 65 20 6f database were o
25d0: 70 70 6f 72 74 75 6e 65 6c 79 20 72 65 61 72 72 pportunely rearr
25e0: 61 6e 67 65 64 2c 20 61 6e 64 20 61 72 65 20 73 anged, and are s
25f0: 74 69 6c 6c 20 73 75 62 6a 65 63 74 20 74 6f 20 till subject to
2600: 74 68 65 20 69 6e 69 74 69 61 6c 20 3c 62 3e 43 the initial <b>C
2610: 43 2d 42 59 2d 53 41 20 34 2e 30 3c 2f 62 3e 20 C-BY-SA 4.0</b>
2620: 63 6c 61 75 73 65 73 20 28 3c 69 3e 64 65 72 69 clauses (<i>deri
2630: 76 65 64 20 77 6f 72 6b 3c 2f 69 3e 29 2e 0d 0a ved work</i>)...
2640: 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 75 6c 3e 0d 0a <br><br>..<ul>..
2650: 3c 6c 69 3e 61 6c 6c 20 72 6f 61 64 20 6e 61 6d <li>all road nam
2660: 65 73 20 61 72 65 20 73 74 6f 72 65 64 20 77 69 es are stored wi
2670: 74 68 69 6e 20 74 68 65 20 3c 62 3e 74 6f 70 6f thin the <b>topo
2680: 6e 79 6d 73 3c 2f 62 3e 20 54 61 62 6c 65 2e 3c nyms</b> Table.<
2690: 62 72 3e 0d 0a 74 68 65 20 73 61 6d 65 20 72 6f br>..the same ro
26a0: 61 64 20 6e 61 6d 65 20 63 6f 75 6c 64 20 62 65 ad name could be
26b0: 20 75 73 65 64 20 69 6e 20 64 69 66 66 65 72 65 used in differe
26c0: 6e 74 20 4d 75 6e 69 63 69 70 61 6c 69 74 69 65 nt Municipalitie
26d0: 73 2c 20 73 6f 20 74 68 65 20 3c 62 3e 74 6f 70 s, so the <b>top
26e0: 6f 6e 79 6d 73 3c 2f 62 3e 20 54 61 62 6c 65 20 onyms</b> Table
26f0: 72 65 6c 61 74 69 6f 6e 61 6c 6c 79 20 72 65 66 relationally ref
2700: 65 72 65 6e 63 65 73 20 74 68 65 20 3c 62 3e 6d erences the <b>m
2710: 75 6e 69 63 69 70 61 6c 69 74 69 65 73 3c 2f 62 unicipalities</b
2720: 3e 20 54 61 62 6c 65 20 28 76 69 61 20 3c 62 3e > Table (via <b>
2730: 50 52 49 4d 41 52 59 3c 2f 62 3e 20 2f 20 3c 62 PRIMARY</b> / <b
2740: 3e 46 4f 52 45 49 47 4e 20 4b 45 59 3c 2f 62 3e >FOREIGN KEY</b>
2750: 20 72 65 6c 61 74 69 6f 6e 73 68 69 70 73 29 2e relationships).
2760: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c </li>..<li>the <
2770: 62 3e 72 6f 61 64 73 3c 2f 62 3e 20 53 70 61 74 b>roads</b> Spat
2780: 69 61 6c 20 54 61 62 6c 65 20 63 6f 6e 74 61 69 ial Table contai
2790: 6e 73 20 61 62 6f 75 74 20 3c 62 3e 33 38 30 2c ns about <b>380,
27a0: 30 30 30 3c 2f 62 3e 20 4c 69 6e 6b 73 2c 20 61 000</b> Links, a
27b0: 6e 64 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f nd has the follo
27c0: 77 69 6e 67 20 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c wing columns:..<
27d0: 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 3c 2f ul>..<li><b>id</
27e0: 62 3e 3a 20 75 6e 69 71 75 65 20 69 64 65 6e 74 b>: unique ident
27f0: 69 66 69 65 72 20 6f 66 20 65 61 63 68 20 4c 69 ifier of each Li
2800: 6e 6b 20 28 3c 62 3e 50 52 49 4d 41 52 59 20 4b nk (<b>PRIMARY K
2810: 45 59 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c EY</b>).</li>..<
2820: 6c 69 3e 3c 62 3e 6e 6f 64 65 5f 66 72 6f 6d 3c li><b>node_from<
2830: 2f 62 3e 20 61 6e 64 20 3c 62 3e 6e 6f 64 65 5f /b> and <b>node_
2840: 74 6f 3c 2f 62 3e 3a 20 4e 6f 64 65 20 69 64 65 to</b>: Node ide
2850: 6e 74 69 66 69 65 72 73 2e 0d 0a 54 68 65 20 6f ntifiers...The o
2860: 72 69 67 69 6e 61 6c 20 49 74 65 72 2e 4e 65 74 riginal Iter.Net
2870: 20 64 61 74 61 73 65 74 20 61 64 6f 70 74 73 20 dataset adopts
2880: 76 65 72 79 20 6c 6f 6e 67 20 61 6e 20 63 6f 6d very long an com
2890: 70 6c 65 78 20 61 6c 70 68 61 6e 75 6d 65 72 69 plex alphanumeri
28a0: 63 20 4e 6f 64 65 20 63 6f 64 65 73 3b 20 74 68 c Node codes; th
28b0: 65 20 69 6e 74 65 67 65 72 20 4e 6f 64 65 20 49 e integer Node I
28c0: 44 73 20 77 65 72 65 20 6f 62 74 61 69 6e 65 64 Ds were obtained
28d0: 20 62 79 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 by calling the
28e0: 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 <b>CreateRouting
28f0: 4e 6f 64 65 73 28 29 3c 2f 62 3e 20 53 51 4c 20 Nodes()</b> SQL
2900: 66 75 6e 63 74 69 6f 6e 20 64 69 73 63 75 73 73 function discuss
2910: 65 64 20 69 6e 20 61 20 66 6f 6c 6c 6f 77 69 6e ed in a followin
2920: 67 20 73 65 63 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d g section.</li>.
2930: 0a 3c 6c 69 3e 3c 62 3e 69 64 5f 74 6f 70 6f 6e .<li><b>id_topon
2940: 79 6d 3c 2f 62 3e 3a 20 72 65 6c 61 74 69 6f 6e ym</b>: relation
2950: 61 6c 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 al reference to
2960: 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e the correspondin
2970: 67 20 72 6f 61 64 20 6e 61 6d 65 20 63 6f 6e 74 g road name cont
2980: 61 69 6e 65 64 20 69 6e 74 6f 20 74 68 65 20 3c ained into the <
2990: 62 3e 74 6f 70 6f 6e 79 6d 73 3c 2f 62 3e 20 54 b>toponyms</b> T
29a0: 61 62 6c 65 20 28 3c 62 3e 46 4f 52 45 49 47 4e able (<b>FOREIGN
29b0: 20 4b 45 59 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d KEY</b>).</li>.
29c0: 0a 3c 6c 69 3e 3c 62 3e 73 70 65 65 64 5f 6b 6d .<li><b>speed_km
29d0: 68 3c 2f 62 3e 3a 20 74 68 65 20 65 73 74 69 6d h</b>: the estim
29e0: 61 74 65 64 20 61 76 65 72 61 67 65 20 73 70 65 ated average spe
29f0: 65 64 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 ed supported by
2a00: 74 68 65 20 4c 69 6e 6b 2c 20 65 78 70 72 65 73 the Link, expres
2a10: 73 65 64 20 69 6e 20 3c 62 3e 6b 6d 2f 68 3c 2f sed in <b>km/h</
2a20: 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 b>.<br>..<u>Note
2a30: 3c 2f 75 3e 3a 20 3c 62 3e 6e 65 67 61 74 69 76 </u>: <b>negativ
2a40: 65 3c 2f 62 3e 20 73 70 65 65 64 73 20 69 6e 74 e</b> speeds int
2a50: 65 6e 64 20 61 20 66 6f 72 62 69 64 64 65 6e 20 end a forbidden
2a60: 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e Link.</li>..<li>
2a70: 3c 62 3e 6f 6e 65 77 61 79 5f 66 72 6f 6d 74 6f <b>oneway_fromto
2a80: 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 6f 6e 65 77 </b> and <b>onew
2a90: 61 79 5f 74 6f 66 72 6f 6d 3c 2f 62 3e 3a 20 62 ay_tofrom</b>: b
2aa0: 6f 6f 6c 65 61 6e 20 66 6c 61 67 73 20 69 6e 74 oolean flags int
2ab0: 65 6e 64 65 64 20 74 6f 20 73 74 61 74 65 20 69 ended to state i
2ac0: 66 20 61 20 4c 69 6e 6b 20 63 61 6e 20 62 65 20 f a Link can be
2ad0: 74 72 61 76 65 72 73 65 64 20 69 6e 20 62 6f 74 traversed in bot
2ae0: 68 20 64 69 72 65 63 74 69 6f 6e 73 20 6f 72 20 h directions or
2af0: 6a 75 73 74 20 69 6e 20 61 20 73 69 6e 67 6c 65 just in a single
2b00: 20 64 69 72 65 63 74 69 6f 6e 20 28 3c 62 3e 6f direction (<b>o
2b10: 6e 65 2d 77 61 79 3c 2f 62 3e 29 2e 3c 62 72 3e ne-way</b>).<br>
2b20: 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 61 ..<u>Note</u>: a
2b30: 6c 6c 20 4c 69 6e 6b 73 20 64 65 63 6c 61 72 69 ll Links declari
2b40: 6e 67 20 3c 62 3e 6f 6e 65 77 61 79 5f 66 72 6f ng <b>oneway_fro
2b50: 6d 74 6f 3d 30 3c 2f 62 3e 20 61 6e 64 20 3c 62 mto=0</b> and <b
2b60: 3e 6f 6e 65 77 61 79 5f 74 6f 66 72 6f 6d 3d 30 >oneway_tofrom=0
2b70: 3c 2f 62 3e 20 61 72 65 20 69 6e 74 65 6e 64 65 </b> are intende
2b80: 64 20 74 6f 20 62 65 20 61 6c 77 61 79 73 20 66 d to be always f
2b90: 6f 72 62 69 64 64 65 6e 2e 3c 2f 6c 69 3e 0d 0a orbidden.</li>..
2ba0: 3c 6c 69 3e 3c 62 3e 63 6f 73 74 3c 2f 62 3e 3a <li><b>cost</b>:
2bb0: 20 74 68 65 20 3c 62 3e 74 69 6d 65 3c 2f 62 3e the <b>time</b>
2bc0: 20 65 78 70 72 65 73 73 65 64 20 69 6e 20 3c 62 expressed in <b
2bd0: 3e 73 65 63 6f 6e 64 73 3c 2f 62 3e 20 72 65 71 >seconds</b> req
2be0: 75 69 72 65 64 20 74 6f 20 74 72 61 76 65 72 73 uired to travers
2bf0: 65 20 65 61 63 68 20 4c 69 6e 6b 2e 3c 62 72 3e e each Link.<br>
2c00: 0d 0a 3c 75 3e 4e 6f 74 65 20 23 31 3c 2f 75 3e ..<u>Note #1</u>
2c10: 20 61 6c 6c 20 63 6f 73 74 73 20 77 65 72 65 20 all costs were
2c20: 63 61 6c 63 75 6c 61 74 65 64 20 61 63 63 6f 72 calculated accor
2c30: 64 69 6e 67 6c 79 20 74 6f 20 74 68 65 20 66 6f dingly to the fo
2c40: 6c 6c 6f 77 69 6e 67 20 66 6f 72 6d 75 6c 61 3a llowing formula:
2c50: 20 3c 62 3e 63 6f 73 74 20 3d 20 28 28 53 54 5f <b>cost = ((ST_
2c60: 4c 65 6e 67 74 68 28 67 65 6f 6d 29 20 2f 20 31 Length(geom) / 1
2c70: 30 30 30 2e 30 29 20 2f 20 73 70 65 65 64 5f 6b 000.0) / speed_k
2c80: 6d 68 29 20 2a 20 33 36 30 30 2e 30 3c 2f 62 3e mh) * 3600.0</b>
2c90: 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 <br>..<u>Note #2
2ca0: 3c 2f 75 3e 20 61 6c 6c 20 3c 62 3e 38 36 2c 34 </u> all <b>86,4
2cb0: 30 30 2e 30 3c 2f 62 3e 20 63 6f 73 74 20 76 61 00.0</b> cost va
2cc0: 6c 75 65 73 20 28 65 71 75 69 76 61 6c 65 6e 74 lues (equivalent
2cd0: 20 74 6f 20 31 20 64 61 79 29 20 61 70 70 72 6f to 1 day) appro
2ce0: 78 69 6d 61 74 65 20 61 6e 20 3c 62 3e 69 6e 66 ximate an <b>inf
2cf0: 69 6e 69 74 69 76 65 20 63 6f 73 74 3c 2f 62 3e initive cost</b>
2d00: 20 74 68 75 73 20 69 6e 74 65 6e 64 69 6e 67 20 thus intending
2d10: 61 20 3c 62 3e 66 6f 72 62 69 64 64 65 6e 3c 2f a <b>forbidden</
2d20: 62 3e 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c b> Link.</li>..<
2d30: 6c 69 3e 3c 62 3e 67 65 6f 6d 3c 2f 62 3e 3a 20 li><b>geom</b>:
2d40: 61 20 3c 62 3e 33 44 20 4c 69 6e 65 73 74 72 69 a <b>3D Linestri
2d50: 6e 67 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 ng</b> represent
2d60: 69 6e 67 20 74 68 65 20 47 65 6f 6d 65 74 72 79 ing the Geometry
2d70: 20 6f 66 20 65 61 63 68 20 4c 69 6e 6b 2e 3c 62 of each Link.<b
2d80: 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a r>..<u>Note</u>:
2d90: 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 3c 62 the original <b
2da0: 3e 49 74 65 72 2e 4e 65 74 3c 2f 62 3e 20 64 61 >Iter.Net</b> da
2db0: 74 61 73 65 74 20 69 73 20 6a 75 73 74 20 3c 62 taset is just <b
2dc0: 3e 32 44 3c 2f 62 3e 3b 20 65 6c 65 76 61 74 69 >2D</b>; elevati
2dd0: 6f 6e 73 20 28 3c 62 3e 5a 3c 2f 62 3e 20 63 6f ons (<b>Z</b> co
2de0: 6f 72 64 69 6e 61 74 65 73 29 20 77 65 72 65 20 ordinates) were
2df0: 69 6e 74 65 72 70 6f 6c 61 74 65 64 20 62 79 20 interpolated by
2e00: 64 72 61 70 69 6e 67 20 74 68 65 20 64 61 74 61 draping the data
2e10: 73 65 74 20 6f 76 65 72 20 61 6e 20 3c 61 20 68 set over an <a h
2e20: 72 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 35 ref="http://www5
2e30: 30 32 2e 72 65 67 69 6f 6e 65 2e 74 6f 73 63 61 02.regione.tosca
2e40: 6e 61 2e 69 74 2f 67 65 6f 73 63 6f 70 69 6f 2f na.it/geoscopio/
2e50: 64 6f 77 6e 6c 6f 61 64 2f 61 6c 74 69 6d 65 74 download/altimet
2e60: 72 69 61 2f 64 61 5f 63 74 72 31 30 6b 2f 67 62 ria/da_ctr10k/gb
2e70: 2f 44 54 4d 5f 4f 72 6f 67 72 61 66 69 63 6f 2e /DTM_Orografico.
2e80: 37 7a 22 3e 6f 72 6f 67 72 61 70 68 69 63 20 44 7z">orographic D
2e90: 45 4d 20 28 31 30 6d 20 58 20 31 30 6d 20 63 65 EM (10m X 10m ce
2ea0: 6c 6c 73 29 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a 3c lls)</a></li>..<
2eb0: 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 /ul></li>..<li>t
2ec0: 68 65 20 3c 62 3e 72 6f 61 64 73 5f 76 77 3c 2f he <b>roads_vw</
2ed0: 62 3e 20 53 70 61 74 69 61 6c 20 56 69 65 77 20 b> Spatial View
2ee0: 69 73 20 6a 75 73 74 20 69 6e 74 65 6e 64 65 64 is just intended
2ef0: 20 74 6f 20 66 75 6c 6c 79 20 72 65 73 6f 6c 76 to fully resolv
2f00: 65 20 61 6c 6c 20 72 65 6c 61 74 69 6f 6e 61 6c e all relational
2f10: 20 72 65 66 65 72 65 6e 63 65 73 20 62 65 74 77 references betw
2f20: 65 65 6e 20 3c 62 3e 72 6f 61 64 73 3c 2f 62 3e een <b>roads</b>
2f30: 2c 20 3c 62 3e 74 6f 70 6f 6e 79 6d 73 3c 2f 62 , <b>toponyms</b
2f40: 3e 20 61 6e 64 20 3c 62 3e 6d 75 6e 69 63 69 70 > and <b>municip
2f50: 61 6c 69 74 69 65 73 3c 2f 62 3e 2c 20 74 68 75 alities</b>, thu
2f60: 73 20 61 6c 6c 6f 77 69 6e 67 20 66 6f 72 20 65 s allowing for e
2f70: 61 73 69 65 72 20 53 51 4c 20 71 75 65 72 69 65 asier SQL querie
2f80: 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 s.</li>..<li>the
2f90: 20 3c 62 3e 68 6f 75 73 65 5f 6e 72 3c 2f 62 3e <b>house_nr</b>
2fa0: 20 53 70 61 74 69 61 6c 20 54 61 62 6c 65 20 63 Spatial Table c
2fb0: 6f 6e 74 61 69 6e 73 20 61 62 6f 75 74 20 3c 62 ontains about <b
2fc0: 3e 31 2c 34 38 30 2c 30 30 30 3c 2f 62 3e 20 48 >1,480,000</b> H
2fd0: 6f 75 73 65 20 4e 75 6d 62 65 72 73 2c 20 61 6e ouse Numbers, an
2fe0: 64 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 d has the follow
2ff0: 69 6e 67 20 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c 75 ing columns:..<u
3000: 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 3c 2f 62 l>..<li><b>id</b
3010: 3e 3a 20 75 6e 69 71 75 65 20 69 64 65 6e 74 69 >: unique identi
3020: 66 69 65 72 20 6f 66 20 65 61 63 68 20 48 6f 75 fier of each Hou
3030: 73 65 20 4e 75 6d 62 65 72 20 28 3c 62 3e 50 52 se Number (<b>PR
3040: 49 4d 41 52 59 20 4b 45 59 3c 2f 62 3e 29 2e 3c IMARY KEY</b>).<
3050: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 5f /li>..<li><b>id_
3060: 72 6f 61 64 3c 2f 62 3e 3a 20 72 65 6c 61 74 69 road</b>: relati
3070: 6f 6e 61 6c 20 72 65 66 65 72 65 6e 63 65 20 74 onal reference t
3080: 6f 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 o the correspond
3090: 69 6e 67 20 4c 69 6e 6b 20 63 6f 6e 74 61 69 6e ing Link contain
30a0: 65 64 20 69 6e 74 6f 20 74 68 65 20 3c 62 3e 72 ed into the <b>r
30b0: 6f 61 64 73 3c 2f 62 3e 20 54 61 62 6c 65 20 28 oads</b> Table (
30c0: 3c 62 3e 46 4f 52 45 49 47 4e 20 4b 45 59 3c 2f <b>FOREIGN KEY</
30d0: 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c b>).</li>..<li><
30e0: 62 3e 6c 61 62 65 6c 3c 2f 62 3e 3a 20 74 68 65 b>label</b>: the
30f0: 20 74 65 78 74 75 61 6c 20 6c 61 62 65 6c 20 66 textual label f
3100: 75 6c 6c 79 20 71 75 61 6c 69 66 79 69 6e 67 20 ully qualifying
3110: 65 61 63 68 20 48 6f 75 73 65 20 4e 75 6d 62 65 each House Numbe
3120: 72 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e r.</li>..<li><b>
3130: 67 65 6f 6d 3c 2f 62 3e 3a 20 61 20 3c 62 3e 33 geom</b>: a <b>3
3140: 44 20 50 6f 69 6e 74 3c 2f 62 3e 20 72 65 70 72 D Point</b> repr
3150: 65 73 65 6e 74 69 6e 67 20 74 68 65 20 47 65 6f esenting the Geo
3160: 6d 65 74 72 79 20 6f 66 20 65 61 63 68 20 48 6f metry of each Ho
3170: 75 73 65 20 4e 75 6d 62 65 72 2e 3c 62 72 3e 0d use Number.<br>.
3180: 0a 3c 75 3e 4e 6f 74 65 20 23 31 3c 2f 75 3e 3a .<u>Note #1</u>:
3190: 20 61 6c 73 6f 20 69 6e 20 74 68 69 73 20 63 61 also in this ca
31a0: 73 65 20 61 6c 6c 20 65 6c 65 76 61 74 69 6f 6e se all elevation
31b0: 73 20 28 3c 62 3e 5a 3c 2f 62 3e 20 63 6f 6f 72 s (<b>Z</b> coor
31c0: 64 69 6e 61 74 65 73 29 20 77 65 72 65 20 69 6e dinates) were in
31d0: 74 65 72 70 6f 6c 61 74 65 64 20 62 79 20 64 72 terpolated by dr
31e0: 61 70 69 6e 67 20 74 68 65 20 64 61 74 61 73 65 aping the datase
31f0: 74 20 6f 76 65 72 20 74 68 65 20 73 61 6d 65 20 t over the same
3200: 44 45 4d 20 61 73 20 61 62 6f 76 65 2e 3c 62 72 DEM as above.<br
3210: 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 3c 2f 75 >..<u>Note #2</u
3220: 3e 3a 20 73 74 72 69 63 74 6c 79 20 73 70 65 63 >: strictly spec
3230: 6b 69 6e 67 20 74 68 65 20 48 6f 75 73 65 20 4e king the House N
3240: 75 6d 62 65 72 73 20 61 72 65 20 6e 6f 74 20 70 umbers are not p
3250: 61 72 74 20 6f 66 20 74 68 65 20 52 6f 61 64 20 art of the Road
3260: 4e 65 74 77 6f 72 6b 3b 20 74 68 65 79 20 61 72 Network; they ar
3270: 65 20 69 6e 63 6c 75 64 65 20 69 6e 74 6f 20 74 e include into t
3280: 68 65 20 73 61 6d 70 6c 65 2f 74 65 73 74 20 64 he sample/test d
3290: 61 74 61 62 61 73 65 20 6a 75 73 74 20 62 65 63 atabase just bec
32a0: 61 75 73 65 20 74 68 65 79 27 6c 6c 20 62 65 20 ause they'll be
32b0: 75 73 65 66 75 6c 20 69 6e 20 73 6f 6d 65 20 6f useful in some o
32c0: 66 20 74 68 65 20 65 78 61 6d 70 6c 65 73 20 65 f the examples e
32d0: 78 70 6c 61 69 6e 65 64 20 69 6e 20 62 65 6c 6f xplained in belo
32e0: 77 20 70 61 72 61 67 72 61 70 68 73 2e 3c 2f 6c w paragraphs.</l
32f0: 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a i>..</ul></li>..
3300: 3c 6c 69 3e 74 68 65 20 3c 62 3e 68 6f 75 73 65 <li>the <b>house
3310: 5f 6e 72 5f 76 77 3c 2f 62 3e 20 53 70 61 74 69 _nr_vw</b> Spati
3320: 61 6c 20 56 69 65 77 20 69 73 20 6a 75 73 74 20 al View is just
3330: 69 6e 74 65 6e 64 65 64 20 74 6f 20 66 75 6c 6c intended to full
3340: 79 20 72 65 73 6f 6c 76 65 20 61 6c 6c 20 72 65 y resolve all re
3350: 6c 61 74 69 6f 6e 61 6c 20 72 65 66 65 72 65 6e lational referen
3360: 63 65 73 20 62 65 74 77 65 65 6e 20 3c 62 3e 68 ces between <b>h
3370: 6f 75 73 65 5f 6e 72 3c 2f 62 3e 2c 20 3c 62 3e ouse_nr</b>, <b>
3380: 72 6f 61 64 73 3c 2f 62 3e 2c 20 3c 62 3e 74 6f roads</b>, <b>to
3390: 70 6f 6e 79 6d 73 3c 2f 62 3e 20 61 6e 64 20 3c ponyms</b> and <
33a0: 62 3e 6d 75 6e 69 63 69 70 61 6c 69 74 69 65 73 b>municipalities
33b0: 3c 2f 62 3e 2c 20 74 68 75 73 20 61 6c 6c 6f 77 </b>, thus allow
33c0: 69 6e 67 20 66 6f 72 20 65 61 73 69 65 72 20 53 ing for easier S
33d0: 51 4c 20 71 75 65 72 69 65 73 2e 3c 2f 6c 69 3e QL queries.</li>
33e0: 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 20 ..</ul>..<br>..
33f0: 3c 68 72 3e 0d 0a 3c 68 31 3e 3c 61 20 6e 61 6d <hr>..<h1><a nam
3400: 65 3d 22 63 72 65 61 74 65 22 3e 33 20 2d 20 43 e="create">3 - C
3410: 72 65 61 74 69 6e 67 20 56 69 72 74 75 61 6c 52 reating VirtualR
3420: 6f 75 74 69 6e 67 20 54 61 62 6c 65 73 3c 2f 61 outing Tables</a
3430: 3e 3c 2f 68 31 3e 0d 0a 41 6c 6c 20 56 69 72 74 ></h1>..All Virt
3440: 75 61 6c 52 6f 75 74 69 6e 67 20 71 75 65 72 69 ualRouting queri
3450: 65 73 20 61 72 65 20 62 61 73 65 64 20 6f 6e 20 es are based on
3460: 73 6f 6d 65 20 3c 62 3e 56 69 72 74 75 61 6c 52 some <b>VirtualR
3470: 6f 75 74 69 6e 67 20 54 61 62 6c 65 3c 2f 62 3e outing Table</b>
3480: 2c 20 61 6e 64 20 69 6e 20 74 75 72 6e 20 61 6e , and in turn an
3490: 79 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 y VirtualRouting
34a0: 20 54 61 62 6c 65 20 69 73 20 62 61 73 65 64 20 Table is based
34b0: 6f 6e 20 73 6f 6d 65 20 61 70 70 72 6f 70 72 69 on some appropri
34c0: 61 74 65 20 3c 62 3e 42 69 6e 61 72 79 20 44 61 ate <b>Binary Da
34d0: 74 61 20 54 61 62 6c 65 3c 2f 62 3e 20 73 75 70 ta Table</b> sup
34e0: 70 6f 72 74 69 6e 67 20 61 6e 20 65 66 66 69 63 porting an effic
34f0: 69 65 6e 74 20 72 65 70 72 65 73 65 6e 74 61 74 ient representat
3500: 69 6f 6e 20 6f 66 20 74 68 65 20 75 6e 64 65 72 ion of the under
3510: 6c 79 69 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c 62 lying Network.<b
3520: 72 3e 0d 0a 53 6f 20 77 65 27 6c 6c 20 73 74 61 r>..So we'll sta
3530: 72 74 20 66 69 72 73 74 20 62 79 20 63 72 65 61 rt first by crea
3540: 74 69 6e 67 20 73 75 63 68 20 74 61 62 6c 65 73 ting such tables
3550: 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 20 6f .<br><br>..The o
3560: 6c 64 20 61 6e 64 20 6e 6f 77 20 73 75 70 65 72 ld and now super
3570: 73 65 64 65 64 20 3c 62 3e 56 69 72 74 75 61 6c seded <b>Virtual
3580: 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 72 65 71 75 Network</b> requ
3590: 69 72 65 64 20 75 73 69 6e 67 20 61 20 73 65 70 ired using a sep
35a0: 61 72 61 74 65 20 43 4c 49 20 74 6f 6f 6c 20 28 arate CLI tool (
35b0: 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 5f 6e 65 <b>spatialite_ne
35c0: 74 77 6f 72 6b 3c 2f 62 3e 29 20 69 6e 20 6f 72 twork</b>) in or
35d0: 64 65 72 20 74 6f 20 70 72 6f 70 65 72 6c 79 20 der to properly
35e0: 69 6e 69 74 69 61 6c 69 7a 65 20 61 20 56 69 72 initialize a Vir
35f0: 74 75 61 6c 4e 65 74 77 6f 72 6b 20 54 61 62 6c tualNetwork Tabl
3600: 65 20 61 6e 64 20 69 74 73 20 63 6f 6d 70 61 6e e and its compan
3610: 69 6f 6e 20 42 69 6e 61 72 79 20 44 61 74 61 20 ion Binary Data
3620: 54 61 62 6c 65 3b 0d 0a 61 6c 74 65 72 6e 61 74 Table;..alternat
3630: 69 76 65 6c 79 20 3c 62 3e 73 70 61 74 69 61 6c ively <b>spatial
3640: 69 74 65 5f 67 75 69 3c 2f 62 3e 20 73 75 70 70 ite_gui</b> supp
3650: 6f 72 74 65 64 20 61 20 3c 62 3e 47 55 49 20 77 orted a <b>GUI w
3660: 69 7a 61 72 64 3c 2f 62 3e 20 66 6f 72 20 74 68 izard</b> for th
3670: 65 20 73 61 6d 65 20 74 61 73 6b 2e 20 53 69 6e e same task. Sin
3680: 63 65 20 76 65 72 73 69 6f 6e 20 3c 62 3e 35 2e ce version <b>5.
3690: 30 2e 30 3c 2f 62 3e 20 6e 6f 77 20 53 70 61 74 0.0</b> now Spat
36a0: 69 61 4c 69 74 65 20 64 69 72 65 63 74 6c 79 20 iaLite directly
36b0: 73 75 70 70 6f 72 74 73 20 61 20 73 70 65 63 69 supports a speci
36c0: 66 69 63 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 fic <b>CreateRou
36d0: 74 69 6e 67 28 29 3c 2f 62 3e 20 53 51 4c 20 66 ting()</b> SQL f
36e0: 75 6e 63 74 69 6f 6e 2e 0d 0a 3c 76 65 72 62 61 unction...<verba
36f0: 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 tim>..SELECT Cre
3700: 61 74 65 52 6f 75 74 69 6e 67 28 27 62 79 66 6f ateRouting('byfo
3710: 6f 74 5f 64 61 74 61 27 2c 20 27 62 79 66 6f 6f ot_data', 'byfoo
3720: 74 27 2c 20 27 72 6f 61 64 73 5f 76 77 27 2c 20 t', 'roads_vw',
3730: 27 6e 6f 64 65 5f 66 72 6f 6d 27 2c 20 27 6e 6f 'node_from', 'no
3740: 64 65 74 6f 27 2c 20 27 67 65 6f 6d 27 2c 20 4e deto', 'geom', N
3750: 55 4c 4c 29 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 ULL);....SELECT
3760: 43 72 65 61 74 65 52 6f 75 74 69 6e 67 5f 47 65 CreateRouting_Ge
3770: 74 4c 61 73 74 45 72 72 6f 72 28 29 3b 0d 0a 2d tLastError();..-
3780: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3790: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
37a0: 2d 2d 2d 0d 0a 54 6f 4e 6f 64 65 20 43 6f 6c 75 ---..ToNode Colu
37b0: 6d 6e 20 22 6e 6f 64 65 74 6f 22 20 69 73 20 6e mn "nodeto" is n
37c0: 6f 74 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 ot defined in th
37d0: 65 20 49 6e 70 75 74 20 54 61 62 6c 65 0d 0a 3c e Input Table..<
37e0: 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 3c 75 3e 4e /verbatim>..<u>N
37f0: 6f 74 65 3c 2f 75 3e 3a 20 74 68 69 73 20 66 69 ote</u>: this fi
3800: 72 73 74 20 71 75 65 72 79 20 28 62 61 73 65 64 rst query (based
3810: 20 6f 6e 20 74 68 65 20 3c 69 3e 72 65 64 75 63 on the <i>reduc
3820: 65 64 20 66 6f 72 6d 3c 2f 69 3e 20 6f 66 20 3c ed form</i> of <
3830: 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 3c b>CreateRouting<
3840: 2f 62 3e 29 20 63 6f 6e 74 61 69 6e 73 20 61 6e /b>) contains an
3850: 20 69 6e 74 65 6e 64 65 64 20 65 72 72 6f 72 20 intended error
3860: 63 61 75 73 69 6e 67 20 61 20 66 61 69 6c 75 72 causing a failur
3870: 65 20 61 6e 64 20 74 68 75 73 20 72 61 69 73 69 e and thus raisi
3880: 6e 67 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 2e ng an exception.
3890: 3c 62 72 3e 0d 0a 43 72 65 61 74 65 52 6f 75 74 <br>..CreateRout
38a0: 69 6e 67 28 29 20 63 61 6e 20 66 61 69 6c 20 66 ing() can fail f
38b0: 6f 72 20 6d 75 6c 74 69 70 6c 65 20 72 65 61 73 or multiple reas
38c0: 6f 6e 73 2c 20 61 6e 64 20 62 79 20 63 61 6c 6c ons, and by call
38d0: 69 6e 67 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 ing <b>CreateRou
38e0: 74 69 6e 67 5f 47 65 74 4c 61 73 74 45 72 72 6f ting_GetLastErro
38f0: 72 28 29 3c 2f 62 3e 20 79 6f 75 20 63 61 6e 20 r()</b> you can
3900: 65 61 73 69 6c 79 20 69 64 65 6e 74 69 66 79 20 easily identify
3910: 74 68 65 20 65 78 61 63 74 20 72 65 61 73 6f 6e the exact reason
3920: 20 77 68 79 20 74 68 65 20 6d 6f 73 74 20 72 65 why the most re
3930: 63 65 6e 74 20 63 61 6c 6c 20 74 6f 20 43 72 65 cent call to Cre
3940: 61 74 65 52 6f 75 74 69 6e 67 28 29 20 66 61 69 ateRouting() fai
3950: 6c 65 64 2e 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 led.<br>..<verba
3960: 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 tim>..SELECT Cre
3970: 61 74 65 52 6f 75 74 69 6e 67 28 27 62 79 66 6f ateRouting('byfo
3980: 6f 74 5f 64 61 74 61 27 2c 20 27 62 79 66 6f 6f ot_data', 'byfoo
3990: 74 27 2c 20 27 72 6f 61 64 73 5f 76 77 27 2c 20 t', 'roads_vw',
39a0: 27 6e 6f 64 65 5f 66 72 6f 6d 27 2c 20 27 6e 6f 'node_from', 'no
39b0: 64 65 5f 74 6f 27 2c 20 27 67 65 6f 6d 27 2c 20 de_to', 'geom',
39c0: 4e 55 4c 4c 2c 20 27 74 6f 70 6f 6e 79 6d 27 2c NULL, 'toponym',
39d0: 20 31 2c 20 31 29 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 1, 1);..-------
39e0: 2d 2d 2d 2d 2d 2d 0d 0a 31 0d 0a 0d 0a 53 45 4c ------..1....SEL
39f0: 45 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 6e ECT CreateRoutin
3a00: 67 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 28 29 g_GetLastError()
3a10: 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ;..-------------
3a20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3a30: 2d 2d 2d 2d 2d 2d 2d 0d 0a 4e 55 4c 4c 0d 0a 3c -------..NULL..<
3a40: 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 54 68 69 73 /verbatim>..This
3a50: 20 73 65 63 6f 6e 64 20 61 74 74 65 6d 70 74 20 second attempt
3a60: 69 73 20 66 69 6e 61 6c 6c 79 20 73 75 63 63 65 is finally succe
3a70: 73 73 66 75 6c 2c 20 61 6e 64 20 6e 6f 77 20 43 ssful, and now C
3a80: 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 20 72 reateRouting() r
3a90: 65 74 75 72 6e 73 20 3c 62 3e 31 3c 2f 62 3e 20 eturns <b>1</b>
3aa0: 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 54 (<i>aka</i> <b>T
3ab0: 52 55 45 3c 2f 62 3e 29 2c 20 61 6e 64 20 61 73 RUE</b>), and as
3ac0: 20 79 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 you can easily
3ad0: 63 68 65 63 6b 20 6e 6f 77 20 74 68 65 20 44 61 check now the Da
3ae0: 74 61 62 61 73 65 20 63 6f 6e 74 61 69 6e 73 20 tabase contains
3af0: 74 77 6f 20 6e 65 77 20 54 61 62 6c 65 73 3a 20 two new Tables:
3b00: 3c 62 3e 62 79 66 6f 6f 74 3c 2f 62 3e 20 61 6e <b>byfoot</b> an
3b10: 64 20 3c 62 3e 62 79 66 6f 6f 74 5f 64 61 74 61 d <b>byfoot_data
3b20: 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f </b>.<br>..<u>No
3b30: 74 65 3c 2f 75 3e 3a 20 61 66 74 65 72 20 61 20 te</u>: after a
3b40: 73 75 63 63 65 73 73 66 75 6c 20 63 61 6c 6c 20 successful call
3b50: 74 6f 20 43 72 65 61 74 65 52 6f 75 74 69 6e 67 to CreateRouting
3b60: 28 29 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 () <b>CreateRout
3b70: 69 6e 67 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 ing_GetLastError
3b80: 28 29 3c 2f 62 3e 20 77 69 6c 6c 20 61 6c 77 61 ()</b> will alwa
3b90: 79 73 20 72 65 74 75 72 6e 20 3c 62 3e 4e 55 4c ys return <b>NUL
3ba0: 4c 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a L</b>.<br><br>..
3bb0: 59 6f 75 27 76 65 20 6a 75 73 74 20 75 73 65 64 You've just used
3bc0: 20 6f 6e 65 20 6f 66 20 74 68 65 20 3c 69 3e 70 one of the <i>p
3bd0: 61 72 74 69 61 6c 6c 79 20 72 65 64 75 63 65 64 artially reduced
3be0: 20 66 6f 72 6d 3c 2f 69 3e 20 6f 66 20 43 72 65 form</i> of Cre
3bf0: 61 74 65 52 6f 75 74 69 6e 67 28 29 3b 20 6c 65 ateRouting(); le
3c00: 74 27 73 20 73 65 65 20 69 6e 20 6d 6f 72 65 20 t's see in more
3c10: 64 65 70 74 68 20 61 6c 6c 20 74 68 65 20 61 72 depth all the ar
3c20: 67 75 6d 65 6e 74 73 20 61 6e 64 20 74 68 65 69 guments and thei
3c30: 72 20 6d 65 61 6e 69 6e 67 3a 0d 0a 3c 6f 6c 3e r meaning:..<ol>
3c40: 0d 0a 3c 6c 69 3e 3c 69 3e 62 79 66 6f 6f 74 5f ..<li><i>byfoot_
3c50: 64 61 74 61 3c 2f 69 3e 3a 20 74 68 65 20 6e 61 data</i>: the na
3c60: 6d 65 20 6f 66 20 74 68 65 20 4e 65 74 77 6f 72 me of the Networ
3c70: 6b 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 k Binary Data Ta
3c80: 62 6c 65 20 74 6f 20 62 65 20 63 72 65 61 74 65 ble to be create
3c90: 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e d.</li>..<li><i>
3ca0: 62 79 66 6f 6f 74 3c 2f 69 3e 3a 20 74 68 65 20 byfoot</i>: the
3cb0: 6e 61 6d 65 20 6f 66 20 74 68 65 20 56 69 72 74 name of the Virt
3cc0: 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 ualRouting Table
3cd0: 20 74 6f 20 62 65 20 63 72 65 61 74 65 64 2e 3c to be created.<
3ce0: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 72 6f 61 /li>..<li><i>roa
3cf0: 64 73 5f 76 77 3c 2f 69 3e 3a 20 74 68 65 20 6e ds_vw</i>: the n
3d00: 61 6d 65 20 6f 66 20 74 68 65 20 3c 62 3e 53 70 ame of the <b>Sp
3d10: 61 74 69 61 6c 20 54 61 62 6c 65 3c 2f 62 3e 20 atial Table</b>
3d20: 6f 72 20 3c 62 3e 53 70 61 74 69 61 6c 20 56 69 or <b>Spatial Vi
3d30: 65 77 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 ew</b> represent
3d40: 69 6e 67 20 74 68 65 20 75 6e 64 65 72 6c 79 69 ing the underlyi
3d50: 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d ng Network.<br>.
3d60: 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 69 6e .<u>Note</u>: in
3d70: 20 74 68 69 73 20 63 61 73 65 20 77 65 20 61 63 this case we ac
3d80: 74 75 61 6c 6c 79 20 75 73 65 64 20 61 20 53 70 tually used a Sp
3d90: 61 74 69 61 6c 20 56 69 65 77 2e 3c 2f 6c 69 3e atial View.</li>
3da0: 0d 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 5f 66 72 ..<li><i>node_fr
3db0: 6f 6d 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 om</i>: name of
3dc0: 74 68 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 the column (in t
3dd0: 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 20 6f he above Table o
3de0: 72 20 56 69 65 77 29 20 65 78 70 65 63 74 65 64 r View) expected
3df0: 20 74 6f 20 63 6f 6e 74 61 69 6e 20 3c 62 3e 6e to contain <b>n
3e00: 6f 64 65 2d 66 72 6f 6d 3c 2f 62 3e 20 76 61 6c ode-from</b> val
3e10: 75 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c ues.</li>..<li><
3e20: 69 3e 6e 6f 64 65 5f 74 6f 3c 2f 69 3e 3a 20 6e i>node_to</i>: n
3e30: 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d ame of the colum
3e40: 6e 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 n (in the above
3e50: 54 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 65 Table or View) e
3e60: 78 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 xpected to conta
3e70: 69 6e 20 3c 62 3e 6e 6f 64 65 2d 74 6f 3c 2f 62 in <b>node-to</b
3e80: 3e 20 76 61 6c 75 65 73 2e 3c 2f 6c 69 3e 0d 0a > values.</li>..
3e90: 3c 6c 69 3e 3c 69 3e 67 65 6f 6d 3c 2f 69 3e 3a <li><i>geom</i>:
3ea0: 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c name of the col
3eb0: 75 6d 6e 20 28 69 6e 20 74 68 65 20 61 62 6f 76 umn (in the abov
3ec0: 65 20 54 61 62 6c 65 20 6f 72 20 56 69 65 77 29 e Table or View)
3ed0: 20 65 78 70 65 63 74 65 64 20 74 6f 20 63 6f 6e expected to con
3ee0: 74 61 69 6e 20 3c 62 3e 4c 69 6e 65 73 74 72 69 tain <b>Linestri
3ef0: 6e 67 73 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 57 65 ngs</b>.<br>..We
3f00: 20 63 6f 75 6c 64 20 68 61 76 65 20 6c 65 67 69 could have legi
3f10: 74 69 6d 61 74 65 6c 79 20 70 61 73 73 65 64 20 timately passed
3f20: 61 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 76 61 a <b>NULL</b> va
3f30: 6c 75 65 20 66 6f 72 20 74 68 69 73 20 61 72 67 lue for this arg
3f40: 75 6d 65 6e 74 20 69 6e 20 74 68 65 20 63 61 73 ument in the cas
3f50: 65 20 6f 66 20 61 20 3c 62 3e 4c 6f 67 69 63 61 e of a <b>Logica
3f60: 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 2e 3c 2f l Network</b>.</
3f70: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 4e 55 4c 4c li>..<li><i>NULL
3f80: 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 74 68 </i>: name of th
3f90: 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 68 65 e column (in the
3fa0: 20 61 62 6f 76 65 20 54 61 62 6c 65 20 6f 72 20 above Table or
3fb0: 56 69 65 77 29 20 65 78 70 65 63 74 65 64 20 74 View) expected t
3fc0: 6f 20 63 6f 6e 74 61 69 6e 20 3c 62 3e 63 6f 73 o contain <b>cos
3fd0: 74 3c 2f 62 3e 20 76 61 6c 75 65 73 2e 3c 62 72 t</b> values.<br
3fe0: 3e 0d 0a 49 6e 20 74 68 69 73 20 63 61 73 65 20 >..In this case
3ff0: 77 65 20 68 61 76 65 20 70 61 73 73 65 64 20 61 we have passed a
4000: 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 76 61 6c <b>NULL</b> val
4010: 75 65 2c 20 61 6e 64 20 63 6f 6e 73 65 71 75 65 ue, and conseque
4020: 6e 74 6c 79 20 74 68 65 20 3c 62 3e 63 6f 73 74 ntly the <b>cost
4030: 3c 2f 62 3e 20 6f 66 20 65 61 63 68 20 4c 69 6e </b> of each Lin
4040: 6b 20 77 69 6c 6c 20 62 65 20 61 73 73 75 6d 65 k will be assume
4050: 64 20 74 6f 20 62 65 20 72 65 70 72 65 73 65 6e d to be represen
4060: 74 65 64 20 62 79 20 74 68 65 20 3c 62 3e 67 65 ted by the <b>ge
4070: 6f 6d 65 74 72 69 63 20 6c 65 6e 67 74 68 3c 2f ometric length</
4080: 62 3e 20 6f 66 20 74 68 65 20 63 6f 72 72 65 73 b> of the corres
4090: 70 6f 6e 64 69 6e 67 20 4c 69 6e 65 73 74 72 69 ponding Linestri
40a0: 6e 67 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 ng.<br>..<u>Note
40b0: 20 23 31 3c 2f 75 3e 3a 20 69 6e 20 74 68 65 20 #1</u>: in the
40c0: 63 61 73 65 20 6f 66 20 4e 65 74 77 6f 72 6b 73 case of Networks
40d0: 20 62 61 73 65 64 20 6f 6e 20 3c 62 3e 6c 6f 6e based on <b>lon
40e0: 67 69 74 75 64 65 73 3c 2f 62 3e 20 61 6e 64 20 gitudes</b> and
40f0: 3c 62 3e 6c 61 74 69 74 75 64 65 73 3c 2f 62 3e <b>latitudes</b>
4100: 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e (<i>aka</i> <b>
4110: 67 65 6f 67 72 61 70 68 69 63 3c 2f 62 3e 20 52 geographic</b> R
4120: 65 66 65 72 65 6e 63 65 20 53 79 73 74 65 6d 73 eference Systems
4130: 29 20 74 68 65 20 67 65 6f 6d 65 74 72 79 20 6c ) the geometry l
4140: 65 6e 67 74 68 20 6f 66 20 61 6c 6c 20 4c 69 6e ength of all Lin
4150: 65 73 74 72 69 6e 67 73 20 77 69 6c 6c 20 62 65 estrings will be
4160: 20 70 72 65 63 69 73 65 6c 79 20 3c 62 3e 6d 65 precisely <b>me
4170: 61 73 75 72 65 64 20 6f 6e 20 74 68 65 20 65 6c asured on the el
4180: 6c 69 70 73 6f 69 64 3c 2f 62 3e 20 62 79 20 61 lipsoid</b> by a
4190: 70 70 6c 79 69 6e 67 20 74 68 65 20 6d 6f 73 74 pplying the most
41a0: 20 61 63 63 75 72 61 74 65 20 3c 62 3e 67 65 6f accurate <b>geo
41b0: 64 65 73 69 63 20 66 6f 72 6d 75 6c 61 65 3c 2f desic formulae</
41c0: 62 3e 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 63 b> and will be c
41d0: 6f 6e 73 65 71 75 65 6e 74 6c 79 20 65 78 70 72 onsequently expr
41e0: 65 73 73 65 64 20 69 6e 20 3c 62 3e 6d 65 74 65 essed in <b>mete
41f0: 72 73 3c 2f 62 3e 2e 20 49 6e 20 61 6e 79 20 6f rs</b>. In any o
4200: 74 68 65 72 20 63 61 73 65 20 28 3c 62 3e 70 72 ther case (<b>pr
4210: 6f 6a 65 63 74 65 64 3c 2f 62 3e 20 52 65 66 65 ojected</b> Refe
4220: 72 65 6e 63 65 20 53 79 73 74 65 6d 73 29 20 6c rence Systems) l
4230: 65 6e 67 74 68 73 20 77 69 6c 6c 20 62 65 20 65 engths will be e
4240: 78 70 72 65 73 73 65 64 20 69 6e 20 74 68 65 20 xpressed in the
4250: 3c 62 3e 6d 65 61 73 75 72 65 20 75 6e 69 74 3c <b>measure unit<
4260: 2f 62 3e 20 64 65 66 69 6e 65 64 20 62 79 20 74 /b> defined by t
4270: 68 65 20 52 65 66 65 72 65 6e 63 65 20 53 79 73 he Reference Sys
4280: 74 65 6d 20 28 65 2e 67 2e 20 3c 62 3e 6d 65 74 tem (e.g. <b>met
4290: 65 72 73 3c 2f 62 3e 20 66 6f 72 20 3c 62 3e 55 ers</b> for <b>U
42a0: 54 4d 3c 2f 62 3e 20 70 72 6f 6a 65 63 74 69 6f TM</b> projectio
42b0: 6e 73 20 61 6e 64 20 3c 62 3e 66 65 65 74 3c 2f ns and <b>feet</
42c0: 62 3e 20 66 6f 72 20 3c 62 3e 4e 41 44 2d 66 74 b> for <b>NAD-ft
42d0: 3c 2f 62 3e 20 70 72 6f 6a 65 63 74 69 6f 6e 73 </b> projections
42e0: 29 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 ).<br>..<u>Note
42f0: 23 32 3c 2f 75 3e 3a 20 74 68 65 20 3c 62 3e 67 #2</u>: the <b>g
4300: 65 6f 6d 2d 63 6f 6c 75 6d 6e 3c 2f 62 3e 20 61 eom-column</b> a
4310: 6e 64 20 3c 62 3e 63 6f 73 74 2d 63 6f 6c 75 6d nd <b>cost-colum
4320: 6e 3c 2f 62 3e 20 61 72 67 75 6d 65 6e 74 73 20 n</b> arguments
4330: 61 72 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 are never allowe
4340: 64 20 74 6f 20 62 65 20 3c 62 3e 4e 55 4c 4c 3c d to be <b>NULL<
4350: 2f 62 3e 20 61 74 20 74 68 65 20 73 61 6d 65 20 /b> at the same
4360: 74 69 6d 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e time.</li>..<li>
4370: 3c 69 3e 74 6f 70 6f 6e 79 6d 3c 2f 69 3e 3a 20 <i>toponym</i>:
4380: 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 name of the colu
4390: 6d 6e 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 mn (in the above
43a0: 20 54 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 Table or View)
43b0: 65 78 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 expected to cont
43c0: 61 69 6e 20 3c 62 3e 72 6f 61 64 2d 6e 61 6d 65 ain <b>road-name
43d0: 3c 2f 62 3e 20 76 61 6c 75 65 73 2e 3c 62 72 3e </b> values.<br>
43e0: 0d 0a 49 74 20 63 6f 75 6c 64 20 62 65 20 6c 65 ..It could be le
43f0: 67 69 74 69 6d 61 74 65 6c 79 20 73 65 74 20 74 gitimately set t
4400: 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 66 o <b>NULL</b> if
4410: 20 61 6c 6c 20 4c 69 6e 6b 73 20 61 72 65 20 61 all Links are a
4420: 6e 6f 6e 79 6d 6f 75 73 2e 3c 2f 6c 69 3e 0d 0a nonymous.</li>..
4430: 3c 6c 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 61 20 <li><i>1</i>: a
4440: 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 20 69 6e 74 boolean flag int
4450: 65 6e 64 65 64 20 74 6f 20 73 70 65 63 69 66 79 ended to specify
4460: 20 69 66 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 if the Network
4470: 6d 75 73 74 20 73 75 70 70 6f 72 74 20 74 68 65 must support the
4480: 20 3c 62 3e 41 2a 20 61 6c 67 6f 72 69 74 68 6d <b>A* algorithm
4490: 3c 2f 62 3e 20 6f 72 20 6e 6f 74 20 28 73 65 74 </b> or not (set
44a0: 20 74 6f 20 3c 62 3e 54 52 55 45 3c 2f 62 3e 20 to <b>TRUE</b>
44b0: 62 79 20 64 65 66 61 75 6c 74 29 2e 3c 2f 6c 69 by default).</li
44c0: 3e 0d 0a 3c 6c 69 3e 3c 69 3e 31 3c 2f 69 3e 3a >..<li><i>1</i>:
44d0: 20 61 20 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 20 a boolean flag
44e0: 69 6e 74 65 6e 64 65 64 20 74 6f 20 73 70 65 63 intended to spec
44f0: 69 66 79 20 69 66 20 61 6c 6c 20 4e 65 74 77 6f ify if all Netwo
4500: 72 6b 27 73 20 4c 69 6e 6b 73 20 61 72 65 20 61 rk's Links are a
4510: 73 73 75 6d 65 64 20 74 6f 20 62 65 20 3c 62 3e ssumed to be <b>
4520: 62 69 64 69 72 65 63 74 69 6f 6e 61 6c 3c 2f 62 bidirectional</b
4530: 3e 20 6f 72 20 6e 6f 74 20 28 61 73 73 75 6d 65 > or not (assume
4540: 64 20 74 6f 20 62 65 20 3c 62 3e 54 52 55 45 3c d to be <b>TRUE<
4550: 2f 62 3e 20 62 79 20 64 65 66 61 75 6c 74 29 2e /b> by default).
4560: 3c 2f 6c 69 3e 20 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c </li> ..</ol>..<
4570: 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 table bgcolor="#
4580: 63 30 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 c0ffc0" cellspac
4590: 69 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 ing="10" cellpad
45a0: 64 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 ding="6"><tr><td
45b0: 3e 0d 0a 3c 68 33 3e 54 65 63 68 6e 69 63 61 6c >..<h3>Technical
45c0: 20 6e 6f 74 65 3c 2f 68 33 3e 0d 0a 54 68 65 20 note</h3>..The
45d0: 69 6e 74 65 72 6e 61 6c 20 65 6e 63 6f 64 69 6e internal encodin
45e0: 67 20 61 64 6f 70 74 65 64 20 62 79 20 74 68 65 g adopted by the
45f0: 20 3c 62 3e 42 69 6e 61 72 79 20 44 61 74 61 20 <b>Binary Data
4600: 54 61 62 6c 65 3c 2f 62 3e 20 69 73 20 75 6e 63 Table</b> is unc
4610: 68 61 6e 67 65 64 20 61 6e 64 20 69 73 20 74 68 hanged and is th
4620: 65 20 73 61 6d 65 20 66 6f 72 20 62 6f 74 68 20 e same for both
4630: 3c 62 3e 56 69 72 74 75 61 6c 4e 65 74 77 6f 6b <b>VirtualNetwok
4640: 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 56 69 72 74 </b> and <b>Virt
4650: 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e 2e 3c ualRouting</b>.<
4660: 62 72 3e 0d 0a 59 6f 75 20 63 61 6e 20 73 61 66 br>..You can saf
4670: 65 6c 79 20 62 61 73 65 20 61 20 3c 62 3e 56 69 ely base a <b>Vi
4680: 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 rtualRouting Tab
4690: 6c 65 3c 2f 62 3e 20 6f 6e 20 61 6e 79 20 65 78 le</b> on any ex
46a0: 69 73 74 69 6e 67 20 42 69 6e 61 72 79 20 44 61 isting Binary Da
46b0: 74 61 0d 0a 54 61 62 6c 65 20 63 72 65 61 74 65 ta..Table create
46c0: 64 20 62 79 20 74 68 65 20 3c 62 3e 73 70 61 74 d by the <b>spat
46d0: 69 61 6c 69 74 65 2d 6e 65 74 77 6f 72 6b 3c 2f ialite-network</
46e0: 62 3e 20 43 4c 49 20 74 6f 6f 6c 2c 20 65 78 61 b> CLI tool, exa
46f0: 63 74 6c 79 20 61 73 20 79 6f 75 20 63 61 6e 20 ctly as you can
4700: 62 61 73 65 20 61 20 3c 62 3e 56 69 72 74 75 61 base a <b>Virtua
4710: 6c 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 3c 2f lNetwork Table</
4720: 62 3e 20 6f 6e 20 61 6e 79 20 42 69 6e 61 72 79 b> on any Binary
4730: 20 44 61 74 61 20 54 61 62 6c 65 20 63 72 65 61 Data Table crea
4740: 74 65 64 20 62 79 20 74 68 65 20 3c 62 3e 43 72 ted by the <b>Cr
4750: 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 eateRouting()</b
4760: 3e 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 2e 0d > SQL function..
4770: 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 43 52 45 .<verbatim>..CRE
4780: 41 54 45 20 56 49 52 54 55 41 4c 20 54 41 42 4c ATE VIRTUAL TABL
4790: 45 20 74 65 73 74 5f 6e 65 74 77 6f 72 6b 20 55 E test_network U
47a0: 53 49 4e 47 20 56 69 72 74 75 61 6c 4e 65 74 77 SING VirtualNetw
47b0: 6f 72 6b 28 27 73 6f 6d 65 5f 64 61 74 61 5f 74 ork('some_data_t
47c0: 61 62 6c 65 27 29 3b 0d 0a 0d 0a 43 52 45 41 54 able');....CREAT
47d0: 45 20 56 49 52 54 55 41 4c 20 54 41 42 4c 45 20 E VIRTUAL TABLE
47e0: 74 65 73 74 5f 72 6f 75 74 69 6e 67 20 55 53 49 test_routing USI
47f0: 4e 47 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e NG VirtualRoutin
4800: 67 28 27 73 6f 6d 65 5f 64 61 74 61 5f 74 61 62 g('some_data_tab
4810: 6c 65 27 29 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 le');..</verbati
4820: 6d 3e 0d 0a 49 6e 20 6f 72 64 65 72 20 74 6f 20 m>..In order to
4830: 6d 61 6e 75 61 6c 6c 79 20 63 72 65 61 74 65 20 manually create
4840: 79 6f 75 72 20 56 69 72 74 75 61 6c 20 54 61 62 your Virtual Tab
4850: 6c 65 73 20 79 6f 75 20 6a 75 73 74 20 68 61 76 les you just hav
4860: 65 20 74 6f 20 65 78 65 63 75 74 65 20 61 6e 20 e to execute an
4870: 61 70 70 72 6f 70 72 69 61 74 65 20 3c 62 3e 43 appropriate <b>C
4880: 52 45 41 54 45 20 56 49 52 54 55 41 4c 20 54 41 REATE VIRTUAL TA
4890: 42 4c 45 20 2e 2e 2e 20 55 53 49 4e 47 20 56 69 BLE ... USING Vi
48a0: 72 74 75 61 6c 2e 2e 2e 20 28 2e 2e 2e 29 3c 2f rtual... (...)</
48b0: 62 3e 20 73 74 61 74 65 6d 65 6e 74 2e 0d 0a 3c b> statement...<
48c0: 68 34 3e 57 61 72 6e 69 6e 67 3c 2f 68 34 3e 0d h4>Warning</h4>.
48d0: 0a 49 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 .In the case of
48e0: 3c 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f <b>Spatial Netwo
48f0: 72 6b 73 3c 2f 62 3e 20 62 61 73 65 64 20 6f 6e rks</b> based on
4900: 20 61 6e 79 20 3c 62 3e 67 65 6f 67 72 61 70 68 any <b>geograph
4910: 69 63 3c 2f 62 3e 20 52 65 66 65 72 65 6e 63 65 ic</b> Reference
4920: 20 53 79 73 74 65 6d 20 28 75 73 69 6e 67 20 3c System (using <
4930: 62 3e 6c 6f 6e 67 69 74 75 64 65 73 3c 2f 62 3e b>longitudes</b>
4940: 20 61 6e 64 20 3c 62 3e 6c 61 74 69 74 75 64 65 and <b>latitude
4950: 73 3c 2f 62 3e 29 20 74 68 65 72 65 20 69 73 20 s</b>) there is
4960: 61 6e 20 69 6d 70 6f 72 74 61 6e 74 20 64 69 66 an important dif
4970: 66 65 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 ference between
4980: 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 6c Binary Data Tabl
4990: 65 73 20 63 72 65 61 74 65 64 20 62 79 20 74 68 es created by th
49a0: 65 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 5f e <b>spatialite_
49b0: 6e 65 74 77 6f 72 6b 3c 2f 62 3e 20 47 55 49 20 network</b> GUI
49c0: 74 6f 6f 6c 20 61 6e 64 20 20 42 69 6e 61 72 79 tool and Binary
49d0: 20 44 61 74 61 20 54 61 62 6c 65 73 20 63 72 65 Data Tables cre
49e0: 61 74 65 64 20 62 79 20 74 68 65 20 3c 62 3e 43 ated by the <b>C
49f0: 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f reateRouting()</
4a00: 62 3e 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 20 b> SQL function
4a10: 77 68 65 6e 20 3c 62 3e 63 6f 73 74 73 3c 2f 62 when <b>costs</b
4a20: 3e 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 > are implicitly
4a30: 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 67 65 based on the ge
4a40: 6f 6d 65 74 72 69 63 20 6c 65 6e 67 74 68 20 6f ometric length o
4a50: 66 20 74 68 65 20 4c 69 6e 6b 27 73 20 4c 69 6e f the Link's Lin
4a60: 65 73 74 72 69 6e 67 3a 0d 0a 3c 75 6c 3e 0d 0a estring:..<ul>..
4a70: 3c 6c 69 3e 74 68 65 20 3c 62 3e 73 70 61 74 69 <li>the <b>spati
4a80: 61 6c 69 74 65 5f 6e 65 74 77 6f 72 6b 3c 2f 62 alite_network</b
4a90: 3e 20 43 4c 49 20 74 6f 6f 6c 20 28 61 6e 64 20 > CLI tool (and
4aa0: 74 68 65 20 3c 62 3e 47 55 49 20 77 69 7a 61 72 the <b>GUI wizar
4ab0: 64 3c 2f 62 3e 20 69 6d 70 6c 65 6d 65 6e 74 65 d</b> implemente
4ac0: 64 20 62 79 20 70 72 65 76 69 6f 75 73 20 76 65 d by previous ve
4ad0: 72 73 69 6f 6e 73 20 6f 66 20 3c 62 3e 73 70 61 rsions of <b>spa
4ae0: 74 69 61 6c 69 74 65 5f 67 75 69 3c 2f 62 3e 29 tialite_gui</b>)
4af0: 20 63 6f 6d 70 75 74 65 20 74 68 65 20 4c 69 6e compute the Lin
4b00: 65 73 74 72 69 6e 67 27 73 20 6c 65 6e 67 74 68 estring's length
4b10: 20 61 73 20 61 6e 20 3c 62 3e 61 6e 67 75 6c 61 as an <b>angula
4b20: 72 20 64 69 73 74 61 6e 63 65 3c 2f 62 3e 20 65 r distance</b> e
4b30: 78 70 72 65 73 73 65 64 20 69 6e 20 3c 62 3e 64 xpressed in <b>d
4b40: 65 67 72 65 65 73 3c 2f 62 3e 2e 3c 2f 6c 69 3e egrees</b>.</li>
4b50: 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 43 72 65 ..<li>the <b>Cre
4b60: 61 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 3e ateRouting()</b>
4b70: 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 20 63 6f SQL function co
4b80: 6d 70 75 74 65 73 20 74 68 65 20 4c 69 6e 65 73 mputes the Lines
4b90: 74 72 69 6e 67 27 73 20 6c 65 6e 67 74 68 20 61 tring's length a
4ba0: 73 20 61 20 3c 62 3e 6c 69 6e 65 61 72 20 64 69 s a <b>linear di
4bb0: 73 74 61 6e 63 65 3c 2f 62 3e 20 65 78 70 72 65 stance</b> expre
4bc0: 73 73 65 64 20 69 6e 20 3c 62 3e 6d 65 74 72 65 ssed in <b>metre
4bd0: 73 3c 2f 62 3e 20 62 79 20 61 70 70 6c 79 69 6e s</b> by applyin
4be0: 67 20 74 68 65 20 6d 6f 73 74 20 61 63 63 75 72 g the most accur
4bf0: 61 74 65 20 3c 62 3e 67 65 6f 64 65 73 69 63 20 ate <b>geodesic
4c00: 66 6f 72 6d 75 6c 61 65 3c 2f 62 3e 20 6f 6e 20 formulae</b> on
4c10: 74 68 65 20 65 6c 6c 69 70 73 6f 69 64 2e 3c 2f the ellipsoid.</
4c20: 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 2f 74 64 li>..</ul>..</td
4c30: 3e 3c 2f 74 72 3e 3c 2f 74 61 62 6c 65 3e 3c 62 ></tr></table><b
4c40: 72 3e 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 r><br>..<verbati
4c50: 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 74 m>..SELECT Creat
4c60: 65 52 6f 75 74 69 6e 67 28 27 62 79 63 61 72 5f eRouting('bycar_
4c70: 64 61 74 61 27 2c 20 27 62 79 63 61 72 27 2c 20 data', 'bycar',
4c80: 27 72 6f 61 64 73 5f 76 77 27 2c 20 27 6e 6f 64 'roads_vw', 'nod
4c90: 65 5f 66 72 6f 6d 27 2c 20 27 6e 6f 64 65 5f 74 e_from', 'node_t
4ca0: 6f 27 2c 20 27 67 65 6f 6d 27 2c 20 27 63 6f 73 o', 'geom', 'cos
4cb0: 74 27 2c 20 27 74 6f 70 6f 6e 79 6d 27 2c 20 31 t', 'toponym', 1
4cc0: 2c 20 31 2c 20 27 6f 6e 65 77 61 79 5f 66 72 6f , 1, 'oneway_fro
4cd0: 6d 74 6f 27 2c 20 27 6f 6e 65 77 61 79 5f 74 6f mto', 'oneway_to
4ce0: 66 72 6f 6d 27 2c 20 30 29 3b 0d 0a 2d 2d 2d 2d from', 0);..----
4cf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
4d00: 0d 0a 31 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e ..1..</verbatim>
4d10: 0d 0a 41 66 74 65 72 20 63 61 6c 6c 69 6e 67 20 ..After calling
4d20: 79 65 74 20 61 6e 6f 74 68 65 72 20 74 69 6d 65 yet another time
4d30: 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e <b>CreateRoutin
4d40: 67 28 29 3c 2f 62 3e 20 6e 6f 77 20 74 68 65 20 g()</b> now the
4d50: 44 61 74 61 62 61 73 65 20 63 6f 6e 74 61 69 6e Database contain
4d60: 73 20 74 77 6f 20 66 75 72 74 68 65 72 20 54 61 s two further Ta
4d70: 62 6c 65 73 3a 20 3c 62 3e 62 79 63 61 72 3c 2f bles: <b>bycar</
4d80: 62 3e 20 61 6e 64 20 3c 62 3e 62 79 63 61 72 5f b> and <b>bycar_
4d90: 64 61 74 61 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 54 data</b>.<br>..T
4da0: 68 69 73 20 74 69 6d 65 20 79 6f 75 27 76 65 20 his time you've
4db0: 75 73 65 64 20 74 68 65 20 3c 69 3e 63 6f 6d 70 used the <i>comp
4dc0: 6c 65 74 65 20 66 6f 72 6d 3c 2f 69 3e 20 6f 66 lete form</i> of
4dd0: 20 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 CreateRouting()
4de0: 3b 20 6c 65 74 27 73 20 73 65 65 20 69 6e 20 6d ; let's see in m
4df0: 6f 72 65 20 64 65 70 74 68 20 61 6c 6c 20 74 68 ore depth all th
4e00: 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 e arguments and
4e10: 74 68 65 69 72 20 6d 65 61 6e 69 6e 67 3a 0d 0a their meaning:..
4e20: 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 3c 69 3e 62 79 63 <ol>..<li><i>byc
4e30: 61 72 5f 64 61 74 61 3c 2f 69 3e 3a 20 73 61 6d ar_data</i>: sam
4e40: 65 20 61 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e e as above.</li>
4e50: 0d 0a 3c 6c 69 3e 3c 69 3e 62 79 63 61 72 3c 2f ..<li><i>bycar</
4e60: 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 6f 76 i>: same as abov
4e70: 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e e.</li>..<li><i>
4e80: 72 6f 61 64 73 5f 76 77 3c 2f 69 3e 3a 20 73 61 roads_vw</i>: sa
4e90: 6d 65 20 61 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 me as above.</li
4ea0: 3e 0d 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 5f 66 >..<li><i>node_f
4eb0: 72 6f 6d 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 rom</i>: same as
4ec0: 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c above.</li>..<l
4ed0: 69 3e 3c 69 3e 6e 6f 64 65 5f 74 6f 3c 2f 69 3e i><i>node_to</i>
4ee0: 3a 20 73 61 6d 65 20 61 73 20 61 62 6f 76 65 2e : same as above.
4ef0: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 67 65 </li>..<li><i>ge
4f00: 6f 6d 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 om</i>: same as
4f10: 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 above.</li>..<li
4f20: 3e 3c 69 3e 63 6f 73 74 3c 2f 69 3e 3a 20 73 61 ><i>cost</i>: sa
4f30: 6d 65 20 61 73 20 61 62 6f 76 65 2e 0d 0a 49 6e me as above...In
4f40: 20 74 68 69 73 20 63 61 73 65 20 77 65 20 68 61 this case we ha
4f50: 76 65 20 72 65 66 65 72 65 6e 63 65 64 20 61 20 ve referenced a
4f60: 63 6f 6c 75 6d 6e 20 70 72 65 6c 6f 61 64 65 64 column preloaded
4f70: 20 77 69 74 68 20 76 61 6c 75 65 73 20 63 6f 72 with values cor
4f80: 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 responding to th
4f90: 65 20 3c 62 3e 74 69 6d 65 3c 2f 62 3e 20 6d 65 e <b>time</b> me
4fa0: 61 73 75 72 65 64 20 69 6e 20 3c 62 3e 73 65 63 asured in <b>sec
4fb0: 6f 6e 64 73 3c 2f 62 3e 20 72 65 71 75 69 72 65 onds</b> require
4fc0: 64 20 74 6f 20 74 72 61 76 65 72 73 65 20 65 61 d to traverse ea
4fd0: 63 68 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 20 0d 0a ch Link.</li> ..
4fe0: 3c 6c 69 3e 3c 69 3e 74 6f 70 6f 6e 79 6d 3c 2f <li><i>toponym</
4ff0: 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 6f 76 i>: same as abov
5000: 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e e.</li>..<li><i>
5010: 31 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 1</i>: same as a
5020: 62 6f 76 65 20 28 3c 69 3e 41 2a 20 65 6e 61 62 bove (<i>A* enab
5030: 6c 65 64 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a led</i>).</li>..
5040: 3c 6c 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 73 61 <li><i>1</i>: sa
5050: 6d 65 20 61 73 20 61 62 6f 76 65 20 28 3c 69 3e me as above (<i>
5060: 62 69 64 69 72 65 63 74 69 6f 6e 61 6c 20 4c 69 bidirectional Li
5070: 6e 6b 73 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a nks</i>).</li>..
5080: 3c 6c 69 3e 3c 69 3e 6f 6e 65 77 61 79 5f 66 72 <li><i>oneway_fr
5090: 6f 6d 74 6f 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f omto</i>: name o
50a0: 66 20 74 68 65 20 63 6f 6c 75 6d 6e 20 28 69 6e f the column (in
50b0: 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 the above Table
50c0: 20 6f 72 20 56 69 65 77 29 20 65 78 70 65 63 74 or View) expect
50d0: 65 64 20 74 6f 20 63 6f 6e 74 61 69 6e 20 62 6f ed to contain bo
50e0: 6f 6c 65 61 6e 20 66 6c 61 67 73 20 73 70 65 63 olean flags spec
50f0: 69 66 79 69 6e 67 20 69 66 20 65 61 63 68 20 4c ifying if each L
5100: 69 6e 6b 20 63 61 6e 20 62 65 20 74 72 61 76 65 ink can be trave
5110: 72 73 65 64 20 69 6e 20 74 68 65 20 3c 62 3e 66 rsed in the <b>f
5120: 72 6f 6d 2d 74 6f 3c 2f 62 3e 20 64 69 72 65 63 rom-to</b> direc
5130: 74 69 6f 6e 20 6f 72 20 6e 6f 74 2e 3c 2f 6c 69 tion or not.</li
5140: 3e 0d 0a 3c 6c 69 3e 3c 69 3e 6f 6e 65 77 61 79 >..<li><i>oneway
5150: 5f 74 6f 66 72 6f 6d 3c 2f 69 3e 3a 20 6e 61 6d _tofrom</i>: nam
5160: 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e 20 e of the column
5170: 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 61 (in the above Ta
5180: 62 6c 65 20 6f 72 20 56 69 65 77 29 20 65 78 70 ble or View) exp
5190: 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 6e ected to contain
51a0: 20 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 73 20 73 boolean flags s
51b0: 70 65 63 69 66 79 69 6e 67 20 69 66 20 65 61 63 pecifying if eac
51c0: 68 20 4c 69 6e 6b 20 63 61 6e 20 62 65 20 74 72 h Link can be tr
51d0: 61 76 65 72 73 65 64 20 69 6e 20 74 68 65 20 3c aversed in the <
51e0: 62 3e 74 6f 2d 66 72 6f 6d 3c 2f 62 3e 20 64 69 b>to-from</b> di
51f0: 72 65 63 74 69 6f 6e 20 6f 72 20 6e 6f 74 2e 3c rection or not.<
5200: 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 31 3c br>..<u>Note #1<
5210: 2f 75 3e 3a 20 62 6f 74 68 20 3c 62 3e 66 72 6f /u>: both <b>fro
5220: 6d 2d 74 6f 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e m-to</b> and <b>
5230: 74 6f 2d 66 72 6f 6d 3c 2f 62 3e 20 63 6f 6c 75 to-from</b> colu
5240: 6d 6e 20 6e 61 6d 65 73 20 63 61 6e 20 62 65 20 mn names can be
5250: 6c 65 67 69 74 69 6d 61 74 65 6c 79 20 73 65 74 legitimately set
5260: 20 61 73 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 as <b>NULL</b>
5270: 69 66 20 6e 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 if no <b>one-way
5280: 3c 2f 62 3e 20 72 65 73 74 72 69 63 74 69 6f 6e </b> restriction
5290: 73 20 61 70 70 6c 79 20 74 6f 20 74 68 65 20 63 s apply to the c
52a0: 75 72 72 65 6e 74 20 4e 65 74 77 6f 72 6b 2e 3c urrent Network.<
52b0: 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 3c br>..<u>Note #2<
52c0: 2f 75 3e 3a 20 4e 65 74 77 6f 72 6b 73 20 6f 66 /u>: Networks of
52d0: 20 74 68 65 20 3c 62 3e 75 6e 69 64 69 72 65 63 the <b>unidirec
52e0: 74 69 6f 6e 61 6c 3c 2f 62 3e 20 74 79 70 65 20 tional</b> type
52f0: 61 72 65 20 6e 65 76 65 72 20 65 6e 61 62 6c 65 are never enable
5300: 64 20 74 6f 20 72 65 66 65 72 65 6e 63 65 20 3c d to reference <
5310: 62 3e 6f 6e 65 2d 77 61 79 3c 2f 62 3e 20 63 6f b>one-way</b> co
5320: 6c 75 6d 6e 73 20 28 74 68 65 79 20 73 68 6f 75 lumns (they shou
5330: 6c 64 20 61 6c 77 61 79 73 20 62 65 20 73 65 74 ld always be set
5340: 20 74 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 29 to <b>NULL</b>)
5350: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 30 .</li>..<li><i>0
5360: 3c 2f 69 3e 3a 20 61 20 62 6f 6f 6c 65 61 6e 20 </i>: a boolean
5370: 66 6c 61 67 20 69 6e 74 65 6e 64 69 6e 67 20 61 flag intending a
5380: 6e 20 3c 62 3e 6f 76 65 72 77 72 69 74 65 20 61 n <b>overwrite a
5390: 75 74 68 6f 72 69 7a 61 74 69 6f 6e 3c 2f 62 3e uthorization</b>
53a0: 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 49 66 20 ...<ul>..<li>If
53b0: 73 65 74 20 74 6f 20 3c 62 3e 46 41 4c 53 45 3c set to <b>FALSE<
53c0: 2f 62 3e 20 61 6e 20 65 78 63 65 70 74 69 6f 6e /b> an exception
53d0: 20 77 69 6c 6c 20 62 65 20 72 61 69 73 65 64 20 will be raised
53e0: 69 66 20 74 68 65 20 3c 62 3e 42 69 6e 61 72 79 if the <b>Binary
53f0: 20 44 61 74 61 20 54 61 62 6c 65 3c 2f 62 3e 20 Data Table</b>
5400: 61 6e 64 2f 6f 72 20 74 68 65 20 3c 62 3e 56 69 and/or the <b>Vi
5410: 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 rtualRouting Tab
5420: 6c 65 3c 2f 62 3e 20 64 6f 20 61 6c 72 65 61 64 le</b> do alread
5430: 79 20 65 78 69 73 74 2e 3c 2f 6c 69 3e 0d 0a 3c y exist.</li>..<
5440: 6c 69 3e 49 66 20 73 65 74 20 74 6f 20 3c 62 3e li>If set to <b>
5450: 54 52 55 45 3c 2f 62 3e 20 65 76 65 6e 74 75 61 TRUE</b> eventua
5460: 6c 6c 79 20 65 78 69 73 74 69 6e 67 20 54 61 62 lly existing Tab
5470: 6c 65 73 20 77 69 6c 6c 20 62 65 20 70 72 65 76 les will be prev
5480: 65 6e 74 69 76 65 6c 79 20 64 72 6f 70 70 65 64 entively dropped
5490: 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 62 65 66 immediately bef
54a0: 6f 72 65 20 73 74 61 72 74 69 6e 67 20 74 68 65 ore starting the
54b0: 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 3c 62 execution of <b
54c0: 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 >CreateRouting()
54d0: 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c </b>.</li>..</ul
54e0: 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c ></li>..</ol>..<
54f0: 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f br>..<table bgco
5500: 6c 6f 72 3d 22 23 66 66 66 66 63 30 22 20 63 65 lor="#ffffc0" ce
5510: 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 llspacing="10" c
5520: 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c ellpadding="6"><
5530: 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 48 69 67 tr><td>..<h3>Hig
5540: 68 6c 69 67 68 74 3a 20 77 68 65 72 65 20 79 6f hlight: where yo
5550: 75 20 61 72 65 3c 2f 68 33 3e 0d 0a 59 6f 75 27 u are</h3>..You'
5560: 76 65 20 6a 75 73 74 20 63 72 65 61 74 65 64 20 ve just created
5570: 74 77 6f 20 56 69 72 74 75 61 6c 52 6f 75 74 69 two VirtualRouti
5580: 6e 67 20 54 61 62 6c 65 73 20 62 61 73 65 64 20 ng Tables based
5590: 6f 6e 20 64 69 66 66 65 72 65 6e 74 20 73 65 74 on different set
55a0: 74 69 6e 67 73 3b 20 62 6f 74 68 20 74 68 65 6d tings; both them
55b0: 20 61 72 65 20 70 65 72 66 65 63 74 6c 79 20 76 are perfectly v
55c0: 61 6c 69 64 20 61 6e 64 20 72 65 61 73 6f 6e 61 alid and reasona
55d0: 62 6c 65 2c 20 62 75 74 20 74 68 65 79 20 61 72 ble, but they ar
55e0: 65 20 69 6e 74 65 6e 64 65 64 20 66 6f 72 20 64 e intended for d
55f0: 69 66 66 65 72 65 6e 74 20 70 75 72 70 6f 73 65 ifferent purpose
5600: 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 s:..<ul>..<li><b
5610: 3e 62 79 66 6f 6f 74 3c 2f 62 3e 20 69 73 20 73 >byfoot</b> is s
5620: 70 65 63 69 66 69 63 61 6c 6c 79 20 69 6e 74 65 pecifically inte
5630: 6e 64 65 64 20 66 6f 72 20 3c 62 3e 70 65 64 65 nded for <b>pede
5640: 73 74 72 69 61 6e 73 3c 2f 62 3e 3a 0d 0a 3c 75 strians</b>:..<u
5650: 6c 3e 0d 0a 3c 6c 69 3e 61 6c 6c 20 4c 69 6e 6b l>..<li>all Link
5660: 73 20 61 72 65 20 61 6c 77 61 79 73 20 61 73 73 s are always ass
5670: 75 6d 65 64 20 74 6f 20 62 65 20 61 63 63 65 73 umed to be acces
5680: 73 69 62 6c 65 20 69 6e 20 3c 62 3e 62 6f 74 68 sible in <b>both
5690: 20 64 69 72 65 63 74 69 6f 6e 73 3c 2f 62 3e 3b directions</b>;
56a0: 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 3c 62 there are no <b
56b0: 3e 6f 6e 65 2d 77 61 79 73 3c 2f 62 3e 20 61 6e >one-ways</b> an
56c0: 64 20 6e 6f 20 3c 62 3e 66 6f 72 62 69 64 64 65 d no <b>forbidde
56d0: 6e 3c 2f 62 3e 20 4c 69 6e 6b 73 2e 3c 2f 6c 69 n</b> Links.</li
56e0: 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 63 6f >..<li>the <b>co
56f0: 73 74 3c 2f 62 3e 20 6f 66 20 65 61 63 68 20 4c st</b> of each L
5700: 69 6e 6b 20 69 73 20 64 69 72 65 63 74 6c 79 20 ink is directly
5710: 72 65 70 72 65 73 65 6e 74 65 64 20 62 79 20 69 represented by i
5720: 74 73 20 67 65 6f 6d 65 74 72 69 63 20 3c 62 3e ts geometric <b>
5730: 6c 65 6e 67 74 68 3c 2f 62 3e 2c 20 77 68 69 63 length</b>, whic
5740: 68 20 69 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 h is consistent
5750: 77 69 74 68 20 74 68 65 20 61 73 73 75 6d 70 74 with the assumpt
5760: 69 6f 6e 20 6f 66 20 61 6e 20 61 6c 6d 6f 73 74 ion of an almost
5770: 20 63 6f 6e 73 74 61 6e 74 20 73 70 65 65 64 20 constant speed
5780: 73 75 62 73 74 61 6e 74 69 61 6c 6c 79 20 69 6d substantially im
5790: 6d 75 6e 65 20 66 72 6f 6d 20 61 64 76 65 72 73 mune from advers
57a0: 65 20 72 6f 61 64 20 63 6f 6e 64 69 74 69 6f 6e e road condition
57b0: 73 20 61 6e 64 20 74 72 61 66 66 69 63 20 63 6f s and traffic co
57c0: 6e 67 65 73 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a ngestion.</li>..
57d0: 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e </ul></li>..<li>
57e0: 3c 62 3e 62 79 63 61 72 3c 2f 62 3e 20 69 73 20 <b>bycar</b> is
57f0: 73 70 65 63 69 66 69 63 61 6c 6c 79 20 69 6e 74 specifically int
5800: 65 6e 64 65 64 20 66 6f 72 20 3c 62 3e 6d 6f 74 ended for <b>mot
5810: 6f 72 20 76 65 68 69 63 6c 65 73 3c 2f 62 3e 3a or vehicles</b>:
5820: 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 6d 61 6e 79 ..<ul>..<li>many
5830: 20 4c 69 6e 6b 73 20 61 72 65 20 65 78 70 65 63 Links are expec
5840: 74 65 64 20 74 6f 20 62 65 20 61 63 63 65 73 73 ted to be access
5850: 69 62 6c 65 20 69 6e 20 3c 62 3e 62 6f 74 68 20 ible in <b>both
5860: 64 69 72 65 63 74 69 6f 6e 73 3c 2f 62 3e 20 62 directions</b> b
5870: 75 74 20 6f 74 68 65 72 73 20 63 6f 75 6c 64 20 ut others could
5880: 65 61 73 69 6c 79 20 62 65 20 73 75 62 6a 65 63 easily be subjec
5890: 74 20 74 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 3c t to <b>one-way<
58a0: 2f 62 3e 20 72 65 73 74 72 69 63 74 69 6f 6e 73 /b> restrictions
58b0: 20 6f 72 20 65 76 65 6e 20 62 65 20 63 6f 6d 70 or even be comp
58c0: 6c 65 74 65 6c 79 20 3c 62 3e 66 6f 72 62 69 64 letely <b>forbid
58d0: 64 65 6e 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c den</b>.</li>..<
58e0: 6c 69 3e 74 68 65 20 63 6f 73 74 20 6f 66 20 65 li>the cost of e
58f0: 61 63 68 20 4c 69 6e 6b 20 69 73 20 65 78 70 72 ach Link is expr
5900: 65 73 73 65 64 20 61 73 20 61 6e 20 65 73 74 69 essed as an esti
5910: 6d 61 74 65 64 20 3c 62 3e 74 72 61 76 65 6c 20 mated <b>travel
5920: 74 69 6d 65 3c 2f 62 3e 2c 20 62 65 63 61 75 73 time</b>, becaus
5930: 65 20 74 68 65 20 65 78 70 65 63 74 65 64 20 73 e the expected s
5940: 70 65 65 64 73 20 63 61 6e 20 67 72 65 61 74 6c peeds can greatl
5950: 79 20 76 61 72 79 20 61 63 63 6f 72 64 69 6e 67 y vary according
5960: 6c 79 20 74 6f 20 73 70 65 63 69 66 69 63 20 72 ly to specific r
5970: 6f 61 64 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 oad conditions,
5980: 74 72 61 66 66 69 63 20 63 6f 6e 67 65 73 74 69 traffic congesti
5990: 6f 6e 20 61 6e 64 20 6c 65 67 61 6c 20 72 65 67 on and legal reg
59a0: 75 6c 61 74 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a ulations.</li>..
59b0: 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c </ul></li>..</ul
59c0: 3e 0d 0a 3c 62 72 3e 0d 0a 3c 75 3e 43 6f 6e 63 >..<br>..<u>Conc
59d0: 6c 75 73 69 6f 6e 3c 2f 75 3e 3a 20 61 20 73 69 lusion</u>: a si
59e0: 6e 67 6c 65 20 56 69 72 74 75 61 6c 52 6f 75 74 ngle VirtualRout
59f0: 69 6e 67 20 54 61 62 6c 65 20 63 61 6e 27 74 20 ing Table can't
5a00: 62 65 20 61 62 6c 65 20 74 6f 20 61 64 65 71 75 be able to adequ
5a10: 61 74 65 6c 79 20 73 75 70 70 6f 72 74 20 73 75 ately support su
5a20: 70 70 6f 72 74 20 74 68 65 20 73 70 65 63 69 66 pport the specif
5a30: 69 63 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 ic requirements
5a40: 61 6e 64 20 65 78 70 65 63 74 61 74 69 6f 6e 73 and expectations
5a50: 20 6f 66 20 64 69 66 66 65 72 65 6e 74 20 75 73 of different us
5a60: 65 72 73 2e 3c 62 72 3e 0d 0a 44 65 66 69 6e 69 ers.<br>..Defini
5a70: 6e 67 20 6d 6f 72 65 20 52 6f 75 74 69 6e 67 20 ng more Routing
5a80: 54 61 62 6c 65 73 20 77 69 74 68 20 64 69 66 66 Tables with diff
5a90: 65 72 65 6e 74 20 73 65 74 74 69 6e 67 73 20 66 erent settings f
5aa0: 6f 72 20 74 68 65 20 73 61 6d 65 20 4e 65 74 77 or the same Netw
5ab0: 6f 72 6b 20 75 73 75 61 6c 6c 79 20 69 73 20 61 ork usually is a
5ac0: 20 67 6f 6f 64 20 64 65 73 69 67 6e 20 63 68 6f good design cho
5ad0: 69 63 65 20 6c 65 61 64 69 6e 67 20 74 6f 20 6d ice leading to m
5ae0: 6f 72 65 20 72 65 61 6c 69 73 74 69 63 20 72 65 ore realistic re
5af0: 73 75 6c 74 73 2e 3c 62 72 3e 0d 0a 3c 2f 74 64 sults.<br>..</td
5b00: 3e 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e ></tr>..</table>
5b10: 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 33 3e ..<br><br>..<h3>
5b20: 55 74 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e Utility function
5b30: 20 66 6f 72 20 61 75 74 6f 6d 61 74 69 63 61 6c for automatical
5b40: 6c 79 20 73 65 74 74 69 6e 67 20 4e 6f 64 65 46 ly setting NodeF
5b50: 72 6f 6d 20 61 6e 64 20 4e 6f 64 65 54 6f 20 49 rom and NodeTo I
5b60: 44 73 3c 2f 68 33 3e 0d 0a 53 6f 6d 65 74 69 6d Ds</h3>..Sometim
5b70: 65 73 20 69 74 20 63 6f 75 6c 64 20 65 76 65 6e es it could even
5b80: 74 75 61 6c 6c 79 20 68 61 70 70 65 6e 20 74 6f tually happen to
5b90: 20 65 6e 63 6f 75 6e 74 65 72 20 73 6f 6d 65 20 encounter some
5ba0: 3c 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f <b>Spatial Netwo
5bb0: 72 6b 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 rk</b> represent
5bc0: 61 74 69 6f 6e 20 62 65 69 6e 67 20 66 75 6c 6c ation being full
5bd0: 79 20 74 6f 70 6f 6c 6f 67 69 63 61 6c 6c 79 20 y topologically
5be0: 63 6f 6e 73 69 73 74 65 6e 74 20 62 75 74 20 63 consistent but c
5bf0: 6f 6d 70 6c 65 74 65 6c 79 20 6c 61 63 6b 69 6e ompletely lackin
5c00: 67 20 61 6e 79 20 64 65 66 69 6e 69 74 69 6f 6e g any definition
5c10: 20 61 62 6f 75 74 20 3c 62 3e 4e 6f 64 65 46 72 about <b>NodeFr
5c20: 6f 6d 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f om</b> and <b>No
5c30: 64 65 54 6f 3c 2f 62 3e 20 69 64 65 6e 74 69 66 deTo</b> identif
5c40: 69 65 72 73 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 iers.<br>..In th
5c50: 69 73 20 73 70 65 63 69 66 69 63 20 63 61 73 65 is specific case
5c60: 20 79 6f 75 20 63 61 6e 20 73 75 63 63 65 73 73 you can success
5c70: 66 75 6c 6c 79 20 72 65 63 6f 76 65 72 20 61 20 fully recover a
5c80: 70 65 72 66 65 63 74 6c 79 20 76 61 6c 69 64 20 perfectly valid
5c90: 4e 65 74 77 6f 72 6b 20 62 79 20 63 61 6c 6c 69 Network by calli
5ca0: 6e 67 20 74 68 65 20 3c 62 3e 43 72 65 61 74 65 ng the <b>Create
5cb0: 52 6f 75 74 69 6e 67 4e 6f 64 65 73 28 29 3c 2f RoutingNodes()</
5cc0: 62 3e 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 2e b> SQL function.
5cd0: 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 ..<verbatim>..SE
5ce0: 4c 45 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 LECT CreateRouti
5cf0: 6e 67 4e 6f 64 65 73 28 4e 55 4c 4c 2c 20 27 74 ngNodes(NULL, 't
5d00: 61 62 6c 65 5f 6e 61 6d 65 27 2c 20 27 67 65 6f able_name', 'geo
5d10: 6d 27 2c 20 27 6e 6f 64 65 5f 66 72 6f 6d 27 2c m', 'node_from',
5d20: 20 27 6e 6f 64 65 5f 74 6f 27 29 3b 0d 0a 5f 5f 'node_to');..__
5d30: 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ________________
5d40: 5f 5f 5f 5f 5f 5f 5f 0d 0a 31 0d 0a 3c 2f 76 65 _______..1..</ve
5d50: 72 62 61 74 69 6d 3e 0d 0a 4c 65 74 27 73 20 65 rbatim>..Let's e
5d60: 78 61 6d 69 6e 65 20 61 6c 6c 20 61 72 67 75 6d xamine all argum
5d70: 65 6e 74 73 20 61 6e 64 20 74 68 65 69 72 20 6d ents and their m
5d80: 65 61 6e 69 6e 67 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c eaning:..<ol>..<
5d90: 6c 69 3e 3c 69 3e 4e 55 4c 4c 3c 2f 69 3e 3a 20 li><i>NULL</i>:
5da0: 6e 61 6d 65 20 6f 66 20 74 68 65 20 3c 62 3e 41 name of the <b>A
5db0: 74 74 61 63 68 65 64 2d 44 42 3c 2f 62 3e 20 63 ttached-DB</b> c
5dc0: 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 53 70 ontaining the Sp
5dd0: 61 74 69 61 6c 20 54 61 62 6c 65 2e 3c 62 72 3e atial Table.<br>
5de0: 0d 0a 49 74 20 63 61 6e 20 62 65 20 6c 65 67 69 ..It can be legi
5df0: 74 69 6d 61 74 65 6c 79 20 73 65 74 20 74 6f 20 timately set to
5e00: 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 2c 20 61 6e 64 <b>NULL</b>, and
5e10: 20 69 6e 20 74 68 69 73 20 63 61 73 65 20 74 68 in this case th
5e20: 65 20 3c 62 3e 4d 41 49 4e 3c 2f 62 3e 20 44 42 e <b>MAIN</b> DB
5e30: 20 69 73 20 61 73 73 75 6d 65 64 2e 3c 2f 6c 69 is assumed.</li
5e40: 3e 0d 0a 3c 6c 69 3e 3c 69 3e 74 61 62 6c 65 5f >..<li><i>table_
5e50: 6e 61 6d 65 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f name</i>: name o
5e60: 66 20 74 68 65 20 53 70 61 74 69 61 6c 20 54 61 f the Spatial Ta
5e70: 62 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c ble.</li>..<li><
5e80: 69 3e 67 65 6f 6d 3c 2f 6c 69 3e 3a 20 6e 61 6d i>geom</li>: nam
5e90: 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e 20 e of the column
5ea0: 28 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 ((in the above T
5eb0: 61 62 6c 65 29 20 63 6f 6e 74 61 69 6e 69 6e 67 able) containing
5ec0: 20 3c 62 3e 4c 69 6e 65 73 74 72 69 6e 67 73 3c <b>Linestrings<
5ed0: 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c /b>.</li>..<li><
5ee0: 69 3e 6e 6f 64 65 5f 66 72 6f 6d 3c 2f 69 3e 3a i>node_from</i>:
5ef0: 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c name of the col
5f00: 75 6d 6e 20 74 6f 20 62 65 20 61 64 64 65 64 20 umn to be added
5f10: 74 6f 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 to the above Tab
5f20: 6c 65 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 64 le and populated
5f30: 20 77 69 74 68 20 61 70 70 72 6f 70 72 69 61 74 with appropriat
5f40: 65 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 e <b>NodeFrom</b
5f50: 3e 20 49 44 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 > IDs.</li>..<li
5f60: 3e 3c 69 3e 6e 6f 64 65 5f 74 6f 3c 2f 69 3e 3a ><i>node_to</i>:
5f70: 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c name of the col
5f80: 75 6d 6e 20 74 6f 20 62 65 20 61 64 64 65 64 20 umn to be added
5f90: 74 6f 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 to the above Tab
5fa0: 6c 65 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 64 le and populated
5fb0: 20 77 69 74 68 20 61 70 70 72 6f 70 72 69 61 74 with appropriat
5fc0: 65 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 e <b>NodeTo</b>
5fd0: 49 44 73 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 IDs.<br>..<u>Not
5fe0: 65 3c 2f 75 3e 3a 20 62 6f 74 68 20 3c 62 3e 4e e</u>: both <b>N
5ff0: 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 20 odeFrom</b> and
6000: 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 63 6f <b>NodeTo</b> co
6010: 6c 75 6d 6e 73 20 73 68 6f 75 6c 64 20 6e 6f 74 lumns should not
6020: 20 62 65 20 61 6c 72 65 61 64 79 20 64 65 66 69 be already defi
6030: 6e 65 64 20 69 6e 20 74 68 65 20 61 62 6f 76 65 ned in the above
6040: 20 54 61 62 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 2f Table.</li>..</
6050: 6f 6c 3e 0d 0a 3c 62 3e 43 72 65 61 74 65 52 6f ol>..<b>CreateRo
6060: 75 74 69 6e 67 4e 6f 64 65 73 28 29 3c 2f 62 3e utingNodes()</b>
6070: 20 77 69 6c 6c 20 72 65 74 75 72 6e 20 3c 62 3e will return <b>
6080: 31 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 1</b> (<i>aka</i
6090: 3e 20 3c 62 3e 54 52 55 45 3c 2f 62 3e 29 20 6f > <b>TRUE</b>) o
60a0: 6e 20 73 75 63 63 65 73 73 3b 20 61 6e 20 65 78 n success; an ex
60b0: 63 65 70 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 ception will be
60c0: 72 61 69 73 65 64 20 6f 6e 20 66 61 69 6c 75 72 raised on failur
60d0: 65 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c e.<br>..<u>Note<
60e0: 2f 75 3e 3a 20 79 6f 75 20 63 61 6e 20 63 61 6c /u>: you can cal
60f0: 6c 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 l <b>CreateRouti
6100: 6e 67 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 28 ng_GetLastError(
6110: 29 3c 2f 62 3e 20 73 6f 20 74 6f 20 70 72 65 63 )</b> so to prec
6120: 69 73 65 6c 79 20 69 64 65 6e 74 69 66 79 20 74 isely identify t
6130: 68 65 20 63 61 75 73 65 20 61 63 63 6f 75 6e 74 he cause account
6140: 69 6e 67 20 66 6f 72 20 66 61 69 6c 75 72 65 2e ing for failure.
6150: 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 <br><br><br>..<t
6160: 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 able bgcolor="#c
6170: 30 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 0ffc0" cellspaci
6180: 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 ng="10" cellpadd
6190: 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e ing="6"><tr><td>
61a0: 0d 0a 3c 68 33 3e 48 61 6e 64 6c 69 6e 67 20 64 ..<h3>Handling d
61b0: 79 6e 61 6d 69 63 20 4e 65 74 77 6f 72 6b 73 3c ynamic Networks<
61c0: 2f 68 33 3e 0d 0a 53 6f 6d 65 74 69 6d 65 73 20 /h3>..Sometimes
61d0: 69 74 20 68 61 70 70 65 6e 73 20 74 68 61 74 20 it happens that
61e0: 61 20 4e 65 74 77 6f 72 6b 20 63 6f 75 6c 64 20 a Network could
61f0: 62 65 20 73 75 62 6a 65 63 74 20 74 6f 20 72 61 be subject to ra
6200: 74 68 65 72 20 66 72 65 71 75 65 6e 74 20 63 68 ther frequent ch
6210: 61 6e 67 65 73 3a 20 73 6f 6d 65 20 6e 65 77 20 anges: some new
6220: 4c 69 6e 6b 73 20 72 65 71 75 69 72 65 20 74 6f Links require to
6230: 20 62 65 20 61 64 64 65 64 2c 20 6f 62 73 6f 6c be added, obsol
6240: 65 74 65 20 4c 69 6e 6b 73 20 72 65 71 75 69 72 ete Links requir
6250: 65 20 74 6f 20 62 65 20 72 65 6d 6f 76 65 64 2c e to be removed,
6260: 20 6f 74 68 65 72 20 4c 69 6e 6b 73 20 6d 61 79 other Links may
6270: 20 61 73 73 75 6d 65 20 61 20 64 69 66 66 65 72 assume a differ
6280: 65 6e 74 20 43 6f 73 74 2c 20 6f 6e 65 2d 77 61 ent Cost, one-wa
6290: 79 73 20 63 6f 75 6c 64 20 62 65 20 72 65 76 65 ys could be reve
62a0: 72 73 65 64 2c 20 74 68 65 20 64 69 73 63 69 70 rsed, the discip
62b0: 6c 69 6e 65 20 6f 66 20 70 65 64 65 73 74 72 69 line of pedestri
62c0: 61 6e 20 61 72 65 61 73 20 63 6f 75 6c 64 20 62 an areas could b
62d0: 65 20 6d 6f 64 69 66 69 65 64 20 61 6e 64 20 73 e modified and s
62e0: 6f 20 6f 6e 2e 3c 62 72 3e 0d 0a 41 20 56 69 72 o on.<br>..A Vir
62f0: 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c tualRouting Tabl
6300: 65 20 69 73 20 61 6c 77 61 79 73 20 62 61 73 65 e is always base
6310: 64 20 6f 6e 20 61 20 63 6f 6d 70 61 6e 69 6f 6e d on a companion
6320: 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 Binary Data Tab
6330: 6c 65 2c 20 74 68 61 74 20 69 73 20 69 6e 74 72 le, that is intr
6340: 69 6e 73 69 63 61 6c 6c 79 20 3c 62 3e 73 74 61 insically <b>sta
6350: 74 69 63 3c 2f 62 3e 2c 20 61 6e 64 20 63 6f 6e tic</b>, and con
6360: 73 65 71 75 65 6e 74 6c 79 20 79 6f 75 20 61 72 sequently you ar
6370: 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 e required to re
6380: 2d 63 72 65 61 74 65 20 62 6f 74 68 20 74 68 65 -create both the
6390: 6d 20 66 72 6f 6d 20 74 69 6d 65 20 74 6f 20 74 m from time to t
63a0: 69 6d 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 ime in order to
63b0: 73 75 70 70 6f 72 74 20 61 6c 6c 20 72 65 63 65 support all rece
63c0: 6e 74 20 63 68 61 6e 67 65 73 20 61 66 66 65 63 nt changes affec
63d0: 74 69 6e 67 20 74 68 65 20 75 6e 64 65 72 6c 61 ting the underla
63e0: 79 69 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 ying Network.<br
63f0: 3e 0d 0a 54 68 65 20 6f 70 74 69 6d 61 6c 20 66 >..The optimal f
6400: 72 65 71 75 65 6e 63 79 20 66 6f 72 20 63 79 63 requency for cyc
6410: 6c 69 63 61 6c 6c 79 20 72 65 66 72 65 73 68 69 lically refreshi
6420: 6e 67 20 74 68 65 20 52 6f 75 74 69 6e 67 20 54 ng the Routing T
6430: 61 62 6c 65 73 20 73 74 72 69 63 74 6c 79 20 64 ables strictly d
6440: 65 70 65 6e 64 73 20 6f 6e 20 73 70 65 63 69 66 epends on specif
6450: 69 63 20 72 65 71 75 69 72 65 6d 65 6e 74 73 2c ic requirements,
6460: 20 62 75 74 20 74 68 65 20 74 77 6f 20 6f 76 65 but the two ove
6470: 72 61 6c 6c 20 61 70 70 72 6f 61 63 68 65 73 20 rall approaches
6480: 61 72 65 20 63 6f 6d 6d 6f 6e 6c 79 20 61 64 6f are commonly ado
6490: 70 74 65 64 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 pted:..<ol>..<li
64a0: 3e 3c 62 3e 6c 6f 77 20 66 72 65 71 75 65 6e 63 ><b>low frequenc
64b0: 79 20 72 65 66 72 65 73 68 3c 2f 62 3e 3a 20 62 y refresh</b>: b
64c0: 65 73 74 20 66 69 74 20 66 6f 72 20 73 6c 6f 77 est fit for slow
64d0: 6c 79 20 65 76 6f 6c 76 69 6e 67 20 4e 65 74 77 ly evolving Netw
64e0: 6f 72 6b 73 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 orks.<br>..In th
64f0: 69 73 20 63 61 73 65 20 72 65 2d 63 72 65 61 74 is case re-creat
6500: 69 6e 67 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 ing the Network
6510: 54 61 62 6c 65 73 20 6f 6e 63 65 20 61 20 6d 6f Tables once a mo
6520: 6e 74 68 20 2f 20 77 65 65 6b 20 2f 20 64 61 79 nth / week / day
6530: 20 63 6f 75 6c 64 20 62 65 20 72 65 61 73 6f 6e could be reason
6540: 61 62 6c 79 20 65 6e 6f 75 67 68 2e 0d 0a 52 65 ably enough...Re
6550: 63 72 65 61 74 69 6e 67 20 74 68 65 20 54 61 62 creating the Tab
6560: 6c 65 73 20 66 72 6f 6d 20 73 63 72 61 74 63 68 les from scratch
6570: 20 75 73 75 61 6c 6c 79 20 72 65 71 75 69 72 65 usually require
6580: 73 20 73 65 76 65 72 61 6c 20 73 65 63 6f 6e 64 s several second
6590: 73 20 28 6f 72 20 65 76 65 6e 20 6c 65 73 73 2c s (or even less,
65a0: 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 depending on th
65b0: 65 20 6e 75 6d 62 65 72 20 6f 66 20 4c 69 6e 6b e number of Link
65c0: 73 29 2e 3c 62 72 3e 0d 0a 54 68 65 20 72 65 66 s).<br>..The ref
65d0: 72 65 73 68 20 61 63 74 69 76 69 74 69 65 73 20 resh activities
65e0: 63 6f 75 6c 64 20 62 65 20 6f 70 70 6f 72 74 75 could be opportu
65f0: 6e 65 6c 79 20 70 6c 61 6e 6e 65 64 20 61 74 20 nely planned at
6600: 6c 6f 77 20 74 72 61 66 66 69 63 20 68 6f 75 72 low traffic hour
6610: 73 20 28 65 2e 67 2e 20 64 75 72 69 6e 67 20 74 s (e.g. during t
6620: 68 65 20 6e 69 67 68 74 29 2c 20 61 6e 64 20 3c he night), and <
6630: 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 b>CreateRouting(
6640: 29 3c 2f 62 3e 20 63 6f 75 6c 64 20 62 65 20 75 )</b> could be u
6650: 73 65 66 75 6c 6c 79 20 63 61 6c 6c 65 64 20 62 sefully called b
6660: 79 20 65 6e 61 62 6c 69 6e 67 20 74 68 65 20 3c y enabling the <
6670: 62 3e 6f 76 65 72 77 72 69 74 65 3c 2f 62 3e 20 b>overwrite</b>
6680: 6f 70 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c option.</li>..<l
6690: 69 3e 3c 62 3e 6d 65 64 69 75 6d 2d 68 69 67 68 i><b>medium-high
66a0: 20 66 72 65 71 75 65 6e 63 79 20 72 65 66 72 65 frequency refre
66b0: 73 68 3c 2f 62 3e 3a 20 62 65 73 74 20 66 69 74 sh</b>: best fit
66c0: 20 66 6f 72 20 71 75 69 63 6b 6c 79 20 65 76 6f for quickly evo
66d0: 6c 76 69 6e 67 20 4e 65 74 77 6f 72 6b 73 2e 3c lving Networks.<
66e0: 62 72 3e 0d 0a 52 65 2d 63 72 65 61 74 69 6e 67 br>..Re-creating
66f0: 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 54 61 62 the Network Tab
6700: 6c 65 73 20 6f 6e 63 65 20 70 65 72 20 68 6f 75 les once per hou
6710: 72 20 28 6f 72 20 65 76 65 6e 20 6d 6f 72 65 20 r (or even more
6720: 66 72 65 71 75 65 6e 74 6c 79 29 20 63 6f 75 6c frequently) coul
6730: 64 20 62 65 20 73 74 72 69 63 74 6c 79 20 72 65 d be strictly re
6740: 71 75 69 72 65 64 2c 20 61 6e 64 20 66 72 65 71 quired, and freq
6750: 75 65 6e 74 20 3c 62 3e 6f 75 74 20 6f 66 20 73 uent <b>out of s
6760: 65 72 76 69 63 65 3c 2f 62 3e 20 70 65 72 69 6f ervice</b> perio
6770: 64 73 20 77 68 69 6c 65 20 77 61 69 74 69 6e 67 ds while waiting
6780: 20 66 6f 72 20 74 68 65 20 72 65 66 72 65 73 68 for the refresh
6790: 20 70 72 6f 63 65 73 73 20 74 6f 20 63 6f 6d 70 process to comp
67a0: 6c 65 74 65 20 63 6f 75 6c 64 20 65 61 73 69 6c lete could easil
67b0: 79 20 62 65 20 75 6e 61 63 63 65 70 74 61 62 6c y be unacceptabl
67c0: 65 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 69 73 20 e.<br>..In this
67d0: 63 61 73 65 20 79 6f 75 20 63 6f 75 6c 64 20 75 case you could u
67e0: 73 65 66 75 6c 6c 79 20 61 64 6f 70 74 20 61 20 sefully adopt a
67f0: 3c 62 3e 6d 75 6c 74 69 2d 74 68 72 65 61 64 65 <b>multi-threade
6800: 64 20 73 74 72 61 74 65 67 79 3c 2f 62 3e 3a 0d d strategy</b>:.
6810: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 74 68 .<ul>..<li><b>th
6820: 72 65 61 64 20 23 31 3c 2f 62 3e 20 28 3c 69 3e read #1</b> (<i>
6830: 74 68 65 20 72 65 61 64 65 72 3c 2f 69 3e 29 3a the reader</i>):
6840: 20 74 68 69 73 20 66 69 72 73 74 20 74 68 72 65 this first thre
6850: 61 64 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 ad is intended t
6860: 6f 20 73 65 72 76 69 63 65 20 61 6e 79 20 69 6e o service any in
6870: 63 6f 6d 69 6e 67 20 52 6f 75 74 69 6e 67 20 72 coming Routing r
6880: 65 71 75 65 73 74 2e 20 49 74 20 77 69 6c 6c 20 equest. It will
6890: 62 65 20 61 6c 77 61 79 73 20 61 63 74 69 76 65 be always active
68a0: 2c 20 61 6e 64 20 77 69 6c 6c 20 74 61 72 67 65 , and will targe
68b0: 74 20 61 20 77 65 6c 6c 20 6b 6e 6f 77 6e 20 56 t a well known V
68c0: 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 irtualRouting Ta
68d0: 62 6c 65 20 28 65 2e 67 2e 20 3c 62 3e 6d 79 5f ble (e.g. <b>my_
68e0: 72 6f 75 74 69 6e 67 3c 2f 62 3e 20 62 61 73 65 routing</b> base
68f0: 64 20 6f 6e 20 3c 62 3e 6d 79 5f 72 6f 75 74 69 d on <b>my_routi
6900: 6e 67 5f 64 61 74 61 3c 2f 62 3e 29 2e 3c 2f 6c ng_data</b>).</l
6910: 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 74 68 72 65 61 i>..<li><b>threa
6920: 64 20 23 32 3c 2f 62 3e 20 28 3c 69 3e 74 68 65 d #2</b> (<i>the
6930: 20 77 72 69 74 65 72 3c 2f 69 3e 29 3a 20 74 68 writer</i>): th
6940: 69 73 20 73 65 63 6f 6e 64 20 74 68 72 65 61 64 is second thread
6950: 20 69 73 20 6a 75 73 74 20 69 6e 74 65 6e 64 65 is just intende
6960: 64 20 74 6f 20 72 65 2d 63 72 65 61 74 65 20 62 d to re-create b
6970: 6f 74 68 20 4e 65 74 77 6f 72 6b 20 54 61 62 6c oth Network Tabl
6980: 65 73 20 61 74 20 70 72 65 64 65 66 69 6e 65 64 es at predefined
6990: 20 69 6e 74 65 72 76 61 6c 73 2c 20 61 6e 64 20 intervals, and
69a0: 69 74 20 77 69 6c 6c 20 73 6c 65 65 70 20 62 65 it will sleep be
69b0: 74 77 65 65 6e 20 61 6e 20 69 6e 74 65 72 76 61 tween an interva
69c0: 6c 20 61 6e 64 20 74 68 65 20 6f 74 68 65 72 2e l and the other.
69d0: 3c 62 72 3e 0d 0a 57 68 65 6e 20 74 68 69 73 20 <br>..When this
69e0: 74 68 72 65 61 64 20 61 77 61 6b 65 6e 73 20 77 thread awakens w
69f0: 69 6c 6c 20 72 65 2d 63 72 65 61 74 65 20 62 6f ill re-create bo
6a00: 74 68 20 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 th Network Table
6a10: 73 20 62 79 20 75 73 69 6e 67 20 64 69 66 66 65 s by using diffe
6a20: 72 65 6e 74 20 6e 61 6d 65 73 2c 20 61 6e 64 20 rent names, and
6a30: 77 69 6c 6c 20 6f 76 65 72 77 72 69 74 65 20 74 will overwrite t
6a40: 68 65 20 73 74 61 6e 64 61 72 64 20 6f 6e 65 73 he standard ones
6a50: 20 6a 75 73 74 20 61 74 20 74 68 65 20 76 65 72 just at the ver
6a60: 79 20 65 6e 64 20 6f 66 20 74 68 65 20 70 72 6f y end of the pro
6a70: 63 65 73 73 20 28 61 63 74 69 76 61 74 69 6e 67 cess (activating
6a80: 20 61 20 73 65 6d 61 70 68 6f 72 65 20 64 75 72 a semaphore dur
6a90: 69 6e 67 20 74 68 69 73 20 73 68 6f 72 74 2d 74 ing this short-t
6aa0: 69 6d 65 64 20 6c 61 73 74 20 73 74 65 70 20 69 imed last step i
6ab0: 73 20 68 69 67 68 6c 79 20 72 65 63 6f 6d 6d 65 s highly recomme
6ac0: 6e 64 65 64 29 2e 3c 62 72 3e 0d 0a 53 6f 6d 65 nded).<br>..Some
6ad0: 74 68 69 6e 67 20 6c 69 6b 65 20 74 68 69 73 20 thing like this
6ae0: 70 73 65 75 64 6f 2d 63 6f 64 65 20 65 78 65 6d pseudo-code exem
6af0: 70 6c 69 66 69 65 73 3a 0d 0a 3c 76 65 72 62 61 plifies:..<verba
6b00: 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 tim>..SELECT Cre
6b10: 61 74 65 52 6f 75 74 69 6e 67 28 27 6e 65 77 5f ateRouting('new_
6b20: 6d 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 my_routing_data'
6b30: 2c 20 27 6e 65 77 5f 6d 79 5f 72 6f 75 74 69 6e , 'new_my_routin
6b40: 67 27 2c 20 2e 2e 2e 29 3b 0d 0a 0d 0a 2d 2d 3e g', ...);....-->
6b50: 20 73 74 61 72 74 20 74 68 65 20 73 65 6d 61 70 start the semap
6b60: 68 6f 72 65 20 73 6f 20 74 6f 20 6c 6f 63 6b 20 hore so to lock
6b70: 74 68 65 20 6f 74 68 65 72 20 74 68 72 65 61 64 the other thread
6b80: 0d 0a 0d 0a 42 45 47 49 4e 3b 0d 0a 44 52 4f 50 ....BEGIN;..DROP
6b90: 20 54 41 42 4c 45 20 6d 79 5f 72 6f 75 74 69 6e TABLE my_routin
6ba0: 67 3b 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6d g;..DROP TABLE m
6bb0: 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 3b 0d y_routing_data;.
6bc0: 0a 53 45 4c 45 43 54 20 43 6c 6f 6e 65 54 61 62 .SELECT CloneTab
6bd0: 6c 65 28 27 4d 41 49 4e 27 2c 20 27 6e 65 77 5f le('MAIN', 'new_
6be0: 6d 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 my_routing_data'
6bf0: 2c 20 27 6d 79 5f 72 6f 75 74 69 6e 67 5f 64 61 , 'my_routing_da
6c00: 74 61 27 2c 20 30 29 3b 0d 0a 43 52 45 41 54 45 ta', 0);..CREATE
6c10: 20 56 49 52 54 55 41 4c 20 54 41 42 4c 45 20 6d VIRTUAL TABLE m
6c20: 79 5f 72 6f 75 74 69 6e 67 20 55 53 49 4e 47 20 y_routing USING
6c30: 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 28 27 VirtualRouting('
6c40: 6d 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 my_routing_data'
6c50: 29 3b 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6e );..DROP TABLE n
6c60: 65 77 5f 6d 79 5f 72 6f 75 74 69 6e 67 3b 0d 0a ew_my_routing;..
6c70: 44 52 4f 50 20 54 41 42 4c 45 20 6e 65 77 5f 6d DROP TABLE new_m
6c80: 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 3b 0d y_routing_data;.
6c90: 0a 43 4f 4d 4d 49 54 3b 0d 0a 0d 0a 2d 2d 3e 20 .COMMIT;....-->
6ca0: 72 65 6d 6f 76 65 20 74 68 65 20 73 65 6d 61 70 remove the semap
6cb0: 68 6f 72 65 0d 0a 3c 2f 76 65 72 62 61 74 69 6d hore..</verbatim
6cc0: 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 >..<u>Note</u>:
6cd0: 73 74 72 69 63 74 6c 79 20 72 65 73 70 65 63 74 strictly respect
6ce0: 69 6e 67 20 74 68 65 20 61 62 6f 76 65 20 73 65 ing the above se
6cf0: 71 75 65 6e 63 65 20 6f 66 20 53 51 4c 20 6f 70 quence of SQL op
6d00: 65 72 61 74 69 6f 6e 73 20 69 73 20 61 62 73 6f erations is abso
6d10: 6c 75 74 65 6c 79 20 72 65 71 75 69 72 65 64 2e lutely required.
6d20: 3c 2f 6c 69 3e 20 0d 0a 3c 2f 75 6c 3e 3c 2f 6c </li> ..</ul></l
6d30: 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 2f 74 64 3e i>..</ol>..</td>
6d40: 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d </tr>..</table>.
6d50: 0a 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 .<br>..<table bg
6d60: 63 6f 6c 6f 72 3d 22 23 66 66 62 30 36 30 22 20 color="#ffb060"
6d70: 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 cellspacing="10"
6d80: 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 cellpadding="6"
6d90: 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 57 ><tr><td>..<h3>W
6da0: 61 72 6e 69 6e 67 3a 20 68 6f 77 20 74 6f 20 63 arning: how to c
6db0: 6f 72 72 65 63 74 6c 79 20 64 72 6f 70 20 4e 65 orrectly drop Ne
6dc0: 74 77 6f 72 6b 20 54 61 62 6c 65 73 3c 2f 68 33 twork Tables</h3
6dd0: 3e 0d 0a 57 68 65 6e 20 64 72 6f 70 70 69 6e 67 >..When dropping
6de0: 20 61 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e a VirtualRoutin
6df0: 67 20 54 61 62 6c 65 20 61 6e 64 20 69 74 73 20 g Table and its
6e00: 63 6f 6d 70 61 6e 69 6f 6e 20 42 69 6e 61 72 79 companion Binary
6e10: 20 44 61 74 61 20 54 61 62 6c 65 20 66 6f 6c 6c Data Table foll
6e20: 6f 77 69 6e 67 20 74 68 65 20 63 6f 72 72 65 63 owing the correc
6e30: 74 20 73 65 71 75 65 6e 63 65 20 6f 66 20 53 51 t sequence of SQ
6e40: 4c 20 63 6f 6d 6d 61 6e 64 73 20 69 73 20 70 61 L commands is pa
6e50: 72 61 6d 6f 75 6e 74 2e 3c 62 72 3e 0d 0a 46 61 ramount.<br>..Fa
6e60: 69 6c 69 6e 67 20 74 6f 20 73 74 72 69 63 74 6c iling to strictl
6e70: 79 20 72 65 73 70 65 63 74 20 74 68 65 20 65 78 y respect the ex
6e80: 70 65 63 74 65 64 20 73 65 71 75 65 6e 63 65 20 pected sequence
6e90: 77 69 6c 6c 20 73 75 72 65 6c 79 20 63 61 75 73 will surely caus
6ea0: 65 20 79 6f 75 20 73 65 76 65 72 61 6c 20 74 72 e you several tr
6eb0: 6f 75 62 6c 65 73 20 61 6e 64 20 73 65 76 65 72 oubles and sever
6ec0: 65 20 68 65 61 64 61 63 68 65 73 2c 20 61 6e 64 e headaches, and
6ed0: 20 77 69 6c 6c 20 70 6f 73 73 69 62 6c 79 20 6c will possibly l
6ee0: 65 61 64 20 74 6f 20 61 6e 20 69 72 72 65 6d 65 ead to an irreme
6ef0: 64 69 61 62 6c 79 20 63 6f 72 72 75 70 74 65 64 diably corrupted
6f00: 20 64 61 74 61 62 61 73 65 2e 0d 0a 3c 6f 6c 3e database...<ol>
6f10: 0d 0a 3c 6c 69 3e 79 6f 75 20 61 72 65 20 61 6c ..<li>you are al
6f20: 77 61 79 73 20 65 78 70 65 63 74 65 64 20 74 6f ways expected to
6f30: 20 44 52 4f 50 20 66 69 72 73 74 20 74 68 65 20 DROP first the
6f40: 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 VirtualRouting T
6f50: 61 62 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e able.</li>..<li>
6f60: 79 6f 75 20 63 61 6e 20 73 61 66 65 6c 79 20 44 you can safely D
6f70: 52 4f 50 20 74 68 65 20 63 6f 6d 70 61 6e 69 6f ROP the companio
6f80: 6e 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 n Binary Data Ta
6f90: 62 6c 65 20 6f 6e 6c 79 20 6f 6e 63 65 20 69 74 ble only once it
6fa0: 27 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 72 65 66 's no longer ref
6fb0: 65 72 65 6e 63 65 64 20 62 79 20 74 68 65 20 56 erenced by the V
6fc0: 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 irtualRouting Ta
6fd0: 62 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 62 ble.</li>..<li>b
6fe0: 79 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 y following the
6ff0: 72 65 76 65 72 73 65 20 73 65 71 75 65 6e 63 65 reverse sequence
7000: 20 79 6f 75 27 6c 6c 20 64 69 72 65 63 74 6c 79 you'll directly
7010: 20 63 72 65 61 74 65 20 61 6e 20 3c 62 3e 6f 72 create an <b>or
7020: 70 68 61 6e 3c 2f 62 3e 20 56 69 72 74 75 61 6c phan</b> Virtual
7030: 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 74 68 Routing Table th
7040: 61 74 20 63 61 6e 6e 6f 74 20 62 65 20 61 63 63 at cannot be acc
7050: 65 73 73 65 64 20 61 6e 79 20 6c 6f 6e 67 65 72 essed any longer
7060: 2c 20 61 6e 64 20 74 68 61 74 20 77 69 6c 6c 20 , and that will
7070: 63 6f 6e 73 65 71 75 65 6e 74 6c 79 20 72 65 66 consequently ref
7080: 75 73 65 20 74 6f 20 62 65 20 64 72 6f 70 70 65 use to be droppe
7090: 64 2e 3c 62 72 3e 0d 0a 42 65 20 77 61 72 6e 65 d.<br>..Be warne
70a0: 64 20 21 21 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e d !!</li>..</ol>
70b0: 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 2f ..</td></tr>..</
70c0: 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e table>..<br><br>
70d0: 0d 0a 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e ..<hr><br>..<h1>
70e0: 3c 61 20 6e 61 6d 65 3d 22 66 72 6f 6d 5f 74 6f <a name="from_to
70f0: 22 3e 34 20 2d 20 53 6f 6c 76 69 6e 67 20 63 6c ">4 - Solving cl
7100: 61 73 73 69 63 20 53 68 6f 72 74 65 73 74 20 50 assic Shortest P
7110: 61 74 68 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e ath problems</a>
7120: 3c 2f 68 31 3e 0d 0a 54 68 65 20 6d 6f 73 74 20 </h1>..The most
7130: 63 6c 61 73 73 69 63 20 53 68 6f 72 74 65 73 74 classic Shortest
7140: 20 50 61 74 68 20 70 72 6f 62 6c 65 6d 20 72 65 Path problem re
7150: 71 75 69 72 65 73 20 74 6f 20 69 64 65 6e 74 69 quires to identi
7160: 66 79 20 74 68 65 20 6f 70 74 69 6d 61 6c 20 63 fy the optimal c
7170: 6f 6e 6e 65 63 74 69 6f 6e 20 62 65 74 77 65 65 onnection betwee
7180: 6e 20 61 6e 20 3c 62 3e 4f 72 69 67 69 6e 20 4e n an <b>Origin N
7190: 6f 64 65 3c 2f 62 3e 20 61 6e 64 20 61 20 3c 62 ode</b> and a <b
71a0: 3e 44 65 73 74 69 6e 61 74 69 6f 6e 20 4e 6f 64 >Destination Nod
71b0: 65 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 57 65 20 63 e</b>.<br>..We c
71c0: 61 6e 20 65 61 73 69 6c 79 20 74 72 61 6e 73 6c an easily transl
71d0: 61 74 65 20 73 75 63 68 20 61 20 70 72 6f 62 6c ate such a probl
71e0: 65 6d 20 69 6e 74 6f 20 61 20 73 69 6d 70 6c 65 em into a simple
71f0: 20 53 51 4c 20 71 75 65 72 79 20 74 61 72 67 65 SQL query targe
7200: 74 69 6e 67 20 73 6f 6d 65 20 56 69 72 74 75 61 ting some Virtua
7210: 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 2e 0d lRouting Table..
7220: 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c .<verbatim>..SEL
7230: 45 43 54 20 2a 20 0d 0a 46 52 4f 4d 20 62 79 66 ECT * ..FROM byf
7240: 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 oot..WHERE NodeF
7250: 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
7260: 20 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 36 NodeTo = 183286
7270: 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a ;..</verbatim>..
7280: 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 31 <table border="1
7290: 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 66 " bgcolor="#ffff
72a0: 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d cf" cellspacing=
72b0: 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d "4" cellpadding=
72c0: 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 "6">..<tr><th bg
72d0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
72e0: 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 3e 3c 74 Algorithm</th><t
72f0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
7300: 61 30 22 3e 52 65 71 75 65 73 74 3c 2f 74 68 3e a0">Request</th>
7310: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
7320: 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 d0a0">Options</t
7330: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
7340: 64 30 64 30 61 30 22 3e 44 65 6c 69 6d 69 74 65 d0d0a0">Delimite
7350: 72 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f r</th><th bgcolo
7360: 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 r="#d0d0a0">Rout
7370: 65 49 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f eId</th><th bgco
7380: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f lor="#d0d0a0">Ro
7390: 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 uteRow</th><th b
73a0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
73b0: 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 >Role</th><th bg
73c0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
73d0: 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 LinkRowid</th><t
73e0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
73f0: 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 a0">NodeFrom</th
7400: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
7410: 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 0d0a0">NodeTo</t
7420: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
7430: 64 30 64 30 61 30 22 3e 50 6f 69 6e 74 46 72 6f d0d0a0">PointFro
7440: 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f m</th><th bgcolo
7450: 72 3d 22 23 64 30 64 30 61 30 22 3e 50 6f 69 6e r="#d0d0a0">Poin
7460: 74 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f tTo</th><th bgco
7470: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 54 6f lor="#d0d0a0">To
7480: 6c 65 72 61 6e 63 65 3c 2f 74 68 3e 3c 74 68 20 lerance</th><th
7490: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
74a0: 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 ">Cost</th><th b
74b0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
74c0: 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 >Geometry</th><t
74d0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
74e0: 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 a0">Name</th></t
74f0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 69 r>..<tr>..<td>Di
7500: 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e 53 jkstra</td><td>S
7510: 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 74 64 hortest Path</td
7520: 3e 3c 74 64 3e 46 75 6c 6c 3c 2f 74 64 3e 3c 74 ><td>Full</td><t
7530: 64 3e 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 2c d>, [dec=44,
7540: 20 68 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 64 hex=2c]</td
7550: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
7560: 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">0</td><td ali
7570: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
7580: 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
7590: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
75a0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
75b0: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
75c0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 gn="right">18328
75d0: 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 6</td><td>NULL</
75e0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
75f0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
7600: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
7610: 30 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 00.912208</td><t
7620: 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 d>BLOB sz=272 GE
7630: 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e OMETRY</td><td>N
7640: 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
7650: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
7660: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
7670: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
7680: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
7690: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
76a0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
76b0: 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c ght">1</td><td>L
76c0: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
76d0: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 n="right">224014
76e0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
76f0: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
7700: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
7710: 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c ht">182885</td><
7720: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
7730: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
7740: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
7750: 22 72 69 67 68 74 22 3e 39 34 2e 38 31 32 34 32 "right">94.81242
7760: 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 4</td><td>NULL</
7770: 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 52 td><td>VIA PIETR
7780: 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a O ARETINO</td>..
7790: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
77a0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
77b0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
77c0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
77d0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
77e0: 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">0</td><td ali
77f0: 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 gn="right">2</td
7800: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
7810: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
7820: 32 32 34 34 34 36 3c 2f 74 64 3e 3c 74 64 20 61 224446</td><td a
7830: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
7840: 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 885</td><td alig
7850: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 n="right">178880
7860: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
7870: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
7880: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
7890: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 39 align="right">69
78a0: 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 3e .727726</td><td>
78b0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
78c0: 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 MARGARITONE</td
78d0: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
78e0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
78f0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
7900: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
7910: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
7920: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 ight">0</td><td
7930: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
7940: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
7950: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
7960: 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 t">224414</td><t
7970: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
7980: 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
7990: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
79a0: 32 38 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 286</td><td>NULL
79b0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
79c0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
79d0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
79e0: 3e 31 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e >136.372057</td>
79f0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
7a00: 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 >VIA MARGARITONE
7a10: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f </td>..</tr>..</
7a20: 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 table>..<br>..Le
7a30: 74 27 73 20 71 75 69 63 6b 6c 79 20 65 78 61 6d t's quickly exam
7a40: 69 6e 65 20 74 68 65 20 72 65 73 75 6c 74 73 65 ine the resultse
7a50: 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 t returned by th
7a60: 65 20 61 62 6f 76 65 20 52 6f 75 74 69 6e 67 20 e above Routing
7a70: 71 75 65 72 79 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c query:..<ul>..<l
7a80: 69 3e 74 68 65 20 3c 62 3e 66 69 72 73 74 20 72 i>the <b>first r
7a90: 6f 77 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f ow</b> (<i>aka</
7aa0: 69 3e 20 68 65 61 64 65 72 20 72 6f 77 29 20 68 i> header row) h
7ab0: 61 73 20 61 20 73 70 65 63 69 61 6c 20 69 6e 74 as a special int
7ac0: 65 72 70 72 65 74 61 74 69 6f 6e 2c 20 61 6e 64 erpretation, and
7ad0: 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 is intended to
7ae0: 73 75 6d 6d 61 72 69 7a 65 20 74 68 65 20 74 72 summarize the tr
7af0: 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 20 61 73 avel solution as
7b00: 20 61 20 77 68 6f 6c 65 2e 3c 2f 6c 69 3e 0d 0a a whole.</li>..
7b10: 3c 6c 69 3e 61 6c 6c 20 74 68 65 20 3c 62 3e 66 <li>all the <b>f
7b20: 6f 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 3c 2f 62 ollowing rows</b
7b30: 3e 20 72 65 70 72 65 73 65 6e 74 20 61 20 73 69 > represent a si
7b40: 6e 67 6c 65 20 4c 69 6e 6b 20 72 65 71 75 69 72 ngle Link requir
7b50: 65 64 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 ed to build the
7b60: 73 6f 6c 75 74 69 6f 6e 20 28 6f 70 74 69 6d 61 solution (optima
7b70: 20 70 61 74 68 29 3b 20 4c 69 6e 6b 73 20 61 72 path); Links ar
7b80: 65 20 6f 72 64 65 72 65 64 20 61 63 63 6f 72 64 e ordered accord
7b90: 69 6e 67 6c 79 20 74 6f 20 74 68 65 20 74 72 61 ingly to the tra
7ba0: 76 65 6c 20 64 69 72 65 63 74 69 6f 6e 20 63 6f vel direction co
7bb0: 6e 6e 65 63 74 69 6e 67 20 74 68 65 20 4f 72 69 nnecting the Ori
7bc0: 67 69 6e 20 61 6e 64 20 74 68 65 20 44 65 73 74 gin and the Dest
7bd0: 69 6e 61 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c ination.</li>..<
7be0: 6c 69 3e 63 6f 6c 75 6d 6e 73 20 3c 62 3e 41 6c li>columns <b>Al
7bf0: 67 6f 72 69 74 68 6d 3c 2f 62 3e 2c 20 3c 62 3e gorithm</b>, <b>
7c00: 52 65 71 75 65 73 74 3c 2f 62 3e 2c 20 3c 62 3e Request</b>, <b>
7c10: 4f 70 74 69 6f 6e 73 3c 2f 62 3e 2c 20 3c 62 3e Options</b>, <b>
7c20: 44 65 6c 69 6d 69 74 65 72 3c 2f 62 3e 2c 20 3c Delimiter</b>, <
7c30: 62 3e 50 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 2c b>PointFrom</b>,
7c40: 20 3c 62 3e 50 6f 69 6e 74 54 6f 3c 2f 62 3e 2c <b>PointTo</b>,
7c50: 20 3c 62 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f 62 <b>Tolerance</b
7c60: 3e 20 61 6e 64 20 3c 62 3e 47 65 6f 6d 65 74 72 > and <b>Geometr
7c70: 79 3c 2f 62 3e 20 61 72 65 20 61 6c 77 61 79 73 y</b> are always
7c80: 20 73 65 74 20 74 6f 20 3c 62 3e 4e 55 4c 4c 3c set to <b>NULL<
7c90: 2f 62 3e 20 65 78 63 65 70 74 20 74 68 61 74 20 /b> except that
7ca0: 69 6e 20 74 68 65 20 66 69 72 73 74 20 72 6f 77 in the first row
7cb0: 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 73 65 of the resultse
7cc0: 74 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 63 6f t:..<ul>..<li>co
7cd0: 6c 75 6d 6e 20 3c 62 3e 41 6c 67 6f 72 69 74 68 lumn <b>Algorith
7ce0: 6d 3c 2f 62 3e 20 61 63 63 6f 75 6e 74 73 20 66 m</b> accounts f
7cf0: 6f 72 20 74 68 65 20 52 6f 75 74 69 6e 67 20 41 or the Routing A
7d00: 6c 67 6f 72 69 74 68 6d 20 75 73 65 64 20 62 79 lgorithm used by
7d10: 20 74 68 65 20 63 75 72 72 65 6e 74 20 71 75 65 the current que
7d20: 72 79 20 28 3c 69 3e 44 69 6a 6b 73 74 72 61 27 ry (<i>Dijkstra'
7d30: 73 3c 2f 69 3e 20 6f 72 20 3c 69 3e 41 2a 3c 2f s</i> or <i>A*</
7d40: 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 i>).</li>..<li>c
7d50: 6f 6c 75 6d 6e 20 3c 62 3e 52 65 71 75 65 73 74 olumn <b>Request
7d60: 3c 2f 62 3e 20 73 70 65 63 69 66 69 65 73 20 74 </b> specifies t
7d70: 68 65 20 65 78 61 63 74 20 6e 61 74 75 72 65 20 he exact nature
7d80: 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 71 of the current q
7d90: 75 65 72 79 20 28 69 6e 20 74 68 69 73 20 73 70 uery (in this sp
7da0: 65 63 69 66 69 63 20 63 61 73 65 20 3c 69 3e 53 ecific case <i>S
7db0: 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 69 3e hortest Path</i>
7dc0: 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 77 65 27 ).</li>..<li>we'
7dd0: 6c 6c 20 69 67 6e 6f 72 65 20 66 6f 72 20 6e 6f ll ignore for no
7de0: 77 20 63 6f 6c 75 6d 6e 73 20 3c 62 3e 4f 70 74 w columns <b>Opt
7df0: 69 6f 6e 73 3c 2f 62 3e 2c 20 3c 62 3e 44 65 6c ions</b>, <b>Del
7e00: 69 6d 69 74 65 72 3c 2f 62 3e 2c 20 3c 62 3e 50 imiter</b>, <b>P
7e10: 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 2c 20 3c 62 ointFrom</b>, <b
7e20: 3e 50 6f 69 6e 74 54 6f 3c 2f 62 3e 20 61 6e 64 >PointTo</b> and
7e30: 20 3c 62 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f 62 <b>Tolerance</b
7e40: 3e 3a 20 74 68 65 69 72 20 72 65 73 70 65 63 74 >: their respect
7e50: 69 76 65 20 6d 65 61 6e 69 6e 67 73 20 77 69 6c ive meanings wil
7e60: 6c 20 62 65 20 65 78 70 6c 61 69 6e 65 64 20 69 l be explained i
7e70: 6e 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 72 61 n following para
7e80: 67 72 61 70 68 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c graphs.</li>..<l
7e90: 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 47 65 6f 6d i>column <b>Geom
7ea0: 65 74 72 79 3c 2f 62 3e 20 63 6f 6e 74 61 69 6e etry</b> contain
7eb0: 73 20 61 20 3c 62 3e 4c 49 4e 45 53 54 52 49 4e s a <b>LINESTRIN
7ec0: 47 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 61 G</b> representa
7ed0: 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 6f 6c tion of the whol
7ee0: 65 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f e travel solutio
7ef0: 6e 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c n.<br>..<u>Note<
7f00: 2f 75 3e 3a 20 6f 6e 20 3c 62 3e 4c 6f 67 69 63 /u>: on <b>Logic
7f10: 61 6c 20 4e 65 74 77 6f 72 6b 73 3c 2f 62 3e 20 al Networks</b>
7f20: 28 6e 6f 74 20 73 75 70 70 6f 72 74 69 6e 67 20 (not supporting
7f30: 47 65 6f 6d 65 74 72 69 65 73 29 20 3c 62 3e 47 Geometries) <b>G
7f40: 65 6f 6d 65 74 72 79 3c 2f 62 3e 20 77 69 6c 6c eometry</b> will
7f50: 20 61 6c 77 61 79 73 20 62 65 20 3c 62 3e 4e 55 always be <b>NU
7f60: 4c 4c 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f LL</b>.</li>..</
7f70: 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 77 65 ul></li>..<li>we
7f80: 27 6c 6c 20 69 67 6e 6f 72 65 20 66 6f 72 20 6e 'll ignore for n
7f90: 6f 77 20 63 6f 6c 75 6d 6e 20 3c 62 3e 52 6f 75 ow column <b>Rou
7fa0: 74 65 49 64 3c 2f 62 3e 3b 20 69 74 73 20 6d 65 teId</b>; its me
7fb0: 61 6e 69 6e 67 20 77 69 6c 6c 20 62 65 20 65 78 aning will be ex
7fc0: 70 6c 61 69 6e 65 64 20 69 6e 20 66 6f 6c 6c 6f plained in follo
7fd0: 77 69 6e 67 20 70 61 72 61 67 72 61 70 68 73 2e wing paragraphs.
7fe0: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d </li>..<li>colum
7ff0: 6e 20 3c 62 3e 52 6f 75 74 65 52 6f 77 3c 2f 62 n <b>RouteRow</b
8000: 3e 20 73 69 6d 70 6c 79 20 69 73 20 74 68 65 20 > simply is the
8010: 70 72 6f 67 72 65 73 73 69 76 65 20 6e 75 6d 62 progressive numb
8020: 65 72 20 6f 66 20 74 68 65 20 72 6f 77 20 69 6e er of the row in
8030: 20 74 68 65 20 74 72 61 76 65 6c 20 73 6f 6c 75 the travel solu
8040: 74 69 6f 6e 20 28 61 6c 77 61 79 73 20 3c 62 3e tion (always <b>
8050: 30 3c 2f 62 3e 20 69 6e 20 74 68 65 20 68 65 61 0</b> in the hea
8060: 64 65 72 20 72 6f 77 29 2e 3c 2f 6c 69 3e 0d 0a der row).</li>..
8070: 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 52 6f <li>column <b>Ro
8080: 6c 65 3c 2f 62 3e 20 63 61 6e 20 62 65 20 3c 69 le</b> can be <i
8090: 3e 52 6f 75 74 65 3c 2f 69 3e 20 28 68 65 61 64 >Route</i> (head
80a0: 65 72 20 72 6f 77 29 20 6f 72 20 3c 69 3e 4c 69 er row) or <i>Li
80b0: 6e 6b 3c 2f 69 3e 20 28 61 6c 6c 20 66 6f 6c 6c nk</i> (all foll
80c0: 6f 77 69 6e 67 20 72 6f 77 73 29 2e 3c 2f 6c 69 owing rows).</li
80d0: 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 >..<li>column <b
80e0: 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 62 3e 20 72 >LinkRowid</b> r
80f0: 65 66 65 72 65 6e 63 65 73 20 74 68 65 20 3c 62 eferences the <b
8100: 3e 52 4f 57 49 44 3c 2f 62 3e 20 6f 66 20 74 68 >ROWID</b> of th
8110: 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 e corresponding
8120: 4c 69 6e 6b 20 28 61 6c 77 61 79 73 20 73 65 74 Link (always set
8130: 20 74 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 to <b>NULL</b>
8140: 69 6e 20 74 68 65 20 68 65 61 64 65 72 20 72 6f in the header ro
8150: 77 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f w).</li>..<li>co
8160: 6c 75 6d 6e 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d lumn <b>NodeFrom
8170: 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f 64 65 </b> and <b>Node
8180: 54 6f 3c 2f 62 3e 20 68 61 76 65 20 74 68 65 20 To</b> have the
8190: 66 6f 6c 6c 6f 77 69 6e 67 20 69 6e 74 65 72 70 following interp
81a0: 72 65 74 61 74 69 6f 6e 3a 0d 0a 3c 75 6c 3e 0d retation:..<ul>.
81b0: 0a 3c 6c 69 3e 69 6e 20 74 68 65 20 68 65 61 64 .<li>in the head
81c0: 65 72 20 72 6f 77 20 74 68 65 79 20 63 6f 72 72 er row they corr
81d0: 65 73 70 6f 6e 64 20 74 6f 20 68 65 20 3c 62 3e espond to he <b>
81e0: 4f 72 69 67 69 6e 3c 2f 62 3e 20 61 6e 64 20 3c Origin</b> and <
81f0: 62 3e 44 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 62 b>Destination</b
8200: 3e 20 4e 6f 64 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c > Nodes.</li>..<
8210: 6c 69 3e 69 6e 20 61 6c 6c 20 74 68 65 20 66 6f li>in all the fo
8220: 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 20 74 68 65 llowing rows the
8230: 79 20 61 72 65 20 69 6e 74 65 6e 64 65 64 20 74 y are intended t
8240: 6f 20 73 70 65 63 69 66 79 20 74 68 65 20 64 69 o specify the di
8250: 72 65 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 rection of the c
8260: 75 72 72 65 6e 74 20 4c 69 6e 6b 2e 3c 2f 6c 69 urrent Link.</li
8270: 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c >..</ul></li>..<
8280: 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 43 6f 73 li>column <b>Cos
8290: 74 3c 2f 62 3e 20 68 61 73 20 74 68 65 20 66 6f t</b> has the fo
82a0: 6c 6c 6f 77 69 6e 67 20 69 6e 74 65 72 70 72 65 llowing interpre
82b0: 74 61 74 69 6f 6e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c tation:..<ul>..<
82c0: 6c 69 3e 69 6e 20 74 68 65 20 68 65 61 64 65 72 li>in the header
82d0: 20 74 6f 77 20 69 74 20 63 6f 72 72 65 73 70 6f tow it correspo
82e0: 6e 64 73 20 74 6f 20 74 68 65 20 3c 62 3e 74 6f nds to the <b>to
82f0: 74 61 6c 20 63 6f 73 74 3c 2f 62 3e 20 6f 66 20 tal cost</b> of
8300: 74 68 65 20 74 72 61 76 65 6c 2e 3c 2f 6c 69 3e the travel.</li>
8310: 0d 0a 3c 6c 69 3e 69 6e 20 61 6c 6c 20 74 68 65 ..<li>in all the
8320: 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 20 following rows
8330: 69 74 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 it represents th
8340: 65 20 73 70 65 63 69 66 69 63 20 63 6f 73 74 20 e specific cost
8350: 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 4c of the current L
8360: 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e ink.</li>..</ul>
8370: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d </li>..<li>colum
8380: 6e 20 3c 62 3e 4e 61 6d 65 3c 2f 62 3e 20 63 6f n <b>Name</b> co
8390: 6e 74 61 69 6e 73 20 74 68 65 20 64 65 73 63 72 ntains the descr
83a0: 69 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 75 iption of the cu
83b0: 72 72 65 6e 74 20 4c 69 6e 6b 20 28 75 73 75 61 rrent Link (usua
83c0: 6c 6c 79 20 61 20 72 6f 61 64 20 6e 61 6d 65 29 lly a road name)
83d0: 2c 20 61 6e 64 20 69 73 20 61 6c 77 61 79 73 20 , and is always
83e0: 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 6e 20 74 <b>NULL</b> in t
83f0: 68 65 20 68 65 61 64 65 72 20 72 6f 77 2e 3c 62 he header row.<b
8400: 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 20 r>..<u>Note</u>
8410: 69 74 20 63 6f 75 6c 64 20 62 65 20 61 6c 77 61 it could be alwa
8420: 79 73 20 62 65 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 ys be <b>NULL</b
8430: 3e 20 69 66 20 74 68 65 20 56 69 72 74 75 61 6c > if the Virtual
8440: 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 64 6f Routing Table do
8450: 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 73 20 es not supports
8460: 6e 61 6d 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 names.</li>..</u
8470: 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a l></li>..</ul>..
8480: 3c 62 72 3e 3c 62 72 3e 0d 0a 54 65 73 74 69 6e <br><br>..Testin
8490: 67 20 74 68 65 20 72 65 74 75 72 6e 20 63 6f 6e g the return con
84a0: 6e 65 63 74 69 6f 6e 20 6a 75 73 74 20 72 65 71 nection just req
84b0: 75 69 72 65 73 20 73 77 61 70 70 69 6e 67 20 74 uires swapping t
84c0: 68 65 20 4f 72 69 67 69 6e 20 61 6e 64 20 74 68 he Origin and th
84d0: 65 20 44 65 73 74 69 6e 61 74 69 6f 6e 3b 20 69 e Destination; i
84e0: 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 79 n this example y
84f0: 6f 75 27 6c 6c 20 6a 75 73 74 20 72 65 71 75 65 ou'll just reque
8500: 73 74 20 74 68 65 20 6d 65 61 6e 69 6e 67 66 75 st the meaningfu
8510: 6c 20 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c 76 65 72 l columns:..<ver
8520: 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 52 batim>..SELECT R
8530: 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c outeRow, Role, L
8540: 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 inkRowid, NodeFr
8550: 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 om, NodeTo, Cost
8560: 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 , Geometry, Name
8570: 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 ..FROM byfoot..W
8580: 48 45 52 45 20 4e 6f 64 65 54 6f 20 3d 20 31 37 HERE NodeTo = 17
8590: 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 46 72 6f 8731 AND NodeFro
85a0: 6d 20 3d 20 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 m = 183286;..</v
85b0: 65 72 62 61 74 69 6d 3e 0d 0a 3c 74 61 62 6c 65 erbatim>..<table
85c0: 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f border="1" bgco
85d0: 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 lor="#ffffcf" ce
85e0: 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 llspacing="4" ce
85f0: 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a llpadding="6">..
8600: 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d <tr><th bgcolor=
8610: 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 "#d0d0a0">RouteR
8620: 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ow</th><th bgcol
8630: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c or="#d0d0a0">Rol
8640: 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f e</th><th bgcolo
8650: 72 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b r="#d0d0a0">Link
8660: 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 Rowid</th><th bg
8670: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
8680: 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 NodeFrom</th><th
8690: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
86a0: 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 0">NodeTo</th><t
86b0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
86c0: 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 a0">Cost</th><th
86d0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
86e0: 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 0">Geometry</th>
86f0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
8700: 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c d0a0">Name</th><
8710: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
8720: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
8730: 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
8740: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
8750: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
8760: 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 >183286</td><td
8770: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
8780: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
8790: 67 6e 3d 22 72 69 67 68 74 22 3e 33 30 30 2e 39 gn="right">300.9
87a0: 31 32 32 30 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 12208</td><td>BL
87b0: 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f 4d 45 54 OB sz=272 GEOMET
87c0: 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
87d0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
87e0: 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 >..<td align="ri
87f0: 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c ght">1</td><td>L
8800: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
8810: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 34 31 34 n="right">224414
8820: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
8830: 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 right">183286</t
8840: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
8850: 68 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c ht">178880</td><
8860: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
8870: 3e 31 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e >136.372057</td>
8880: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
8890: 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 >VIA MARGARITONE
88a0: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
88b0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
88c0: 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 2</td><td>Link</
88d0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
88e0: 67 68 74 22 3e 32 32 34 34 34 36 3c 2f 74 64 3e ght">224446</td>
88f0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
8900: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
8910: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
8920: 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 82885</td><td al
8930: 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 39 2e 37 ign="right">69.7
8940: 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 27726</td><td>NU
8950: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d LL</td><td>VIA M
8960: 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d ARGARITONE</td>.
8970: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
8980: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
8990: 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 3</td><td>Link</
89a0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
89b0: 67 68 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e ght">224014</td>
89c0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
89d0: 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 ">182885</td><td
89e0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
89f0: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
8a00: 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 ign="right">94.8
8a10: 31 32 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 12424</td><td>NU
8a20: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 LL</td><td>VIA P
8a30: 49 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 IETRO ARETINO</t
8a40: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 d>..</tr>..</tab
8a50: 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 49 66 20 79 6f le>..<br>..If yo
8a60: 75 20 72 65 6d 65 6d 62 65 72 2c 20 74 68 65 20 u remember, the
8a70: 3c 62 3e 62 79 66 6f 6f 74 3c 2f 62 3e 20 56 69 <b>byfoot</b> Vi
8a80: 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 rtualRouting Tab
8a90: 6c 65 20 68 61 73 20 6e 6f 20 3c 62 3e 6f 6e 65 le has no <b>one
8aa0: 2d 77 61 79 73 3c 2f 62 3e 2c 20 61 6e 64 20 63 -ways</b>, and c
8ab0: 6f 6e 73 65 71 75 65 6e 74 6c 79 20 74 68 65 20 onsequently the
8ac0: 72 65 74 75 72 6e 20 70 61 74 68 20 65 78 61 63 return path exac
8ad0: 74 6c 79 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 tly corresponds
8ae0: 74 6f 20 74 68 65 20 66 69 72 73 74 20 6f 6e 65 to the first one
8af0: 2c 20 65 78 63 65 70 74 20 69 6e 20 74 68 61 74 , except in that
8b00: 20 61 6c 6c 20 64 69 72 65 63 74 69 6f 6e 73 20 all directions
8b10: 61 72 65 20 6e 6f 77 20 72 65 76 65 72 73 65 64 are now reversed
8b20: 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d ...<br><br><br>.
8b30: 0a 4e 6f 77 20 79 6f 75 27 6c 6c 20 67 6f 20 74 .Now you'll go t
8b40: 6f 20 74 65 73 74 20 74 68 65 20 73 61 6d 65 20 o test the same
8b50: 63 6f 6e 6e 65 63 74 69 6f 6e 73 2c 20 62 75 74 connections, but
8b60: 20 74 68 69 73 20 74 69 6d 65 20 79 6f 75 27 6c this time you'l
8b70: 6c 20 74 61 72 67 65 74 20 74 68 65 20 3c 62 3e l target the <b>
8b80: 62 79 63 61 72 3c 2f 62 3e 20 56 69 72 74 75 61 bycar</b> Virtua
8b90: 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 74 lRouting Table t
8ba0: 68 61 74 20 66 75 6c 6c 79 20 73 75 70 70 6f 72 hat fully suppor
8bb0: 74 73 20 3c 62 3e 6f 6e 65 2d 77 61 79 73 3c 2f ts <b>one-ways</
8bc0: 62 3e 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d b>:..<verbatim>.
8bd0: 0a 53 45 4c 45 43 54 20 52 6f 75 74 65 52 6f 77 .SELECT RouteRow
8be0: 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 , Role, LinkRowi
8bf0: 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 d, NodeFrom, Nod
8c00: 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 eTo, Cost, Geome
8c10: 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 try, Name..FROM
8c20: 62 79 63 61 72 0d 0a 57 48 45 52 45 20 4e 6f 64 bycar..WHERE Nod
8c30: 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 eFrom = 178731 A
8c40: 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 ND NodeTo = 1832
8c50: 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 86;..</verbatim>
8c60: 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d ..<table border=
8c70: 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 "1" bgcolor="#ff
8c80: 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e ffcf" cellspacin
8c90: 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e g="4" cellpaddin
8ca0: 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 g="6">..<tr><th
8cb0: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
8cc0: 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c ">RouteRow</th><
8cd0: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
8ce0: 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 0a0">Role</th><t
8cf0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
8d00: 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 a0">LinkRowid</t
8d10: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
8d20: 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d d0d0a0">NodeFrom
8d30: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
8d40: 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 ="#d0d0a0">NodeT
8d50: 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f o</th><th bgcolo
8d60: 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 r="#d0d0a0">Cost
8d70: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
8d80: 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 ="#d0d0a0">Geome
8d90: 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f try</th><th bgco
8da0: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 lor="#d0d0a0">Na
8db0: 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 me</th></tr>..<t
8dc0: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
8dd0: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
8de0: 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
8df0: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
8e00: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
8e10: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
8e20: 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
8e30: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
8e40: 74 22 3e 31 30 31 2e 38 31 35 35 35 32 3c 2f 74 t">101.815552</t
8e50: 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 30 d><td>BLOB sz=20
8e60: 33 32 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 32 GEOMETRY</td>
8e70: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c <td>NULL</td>..<
8e80: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
8e90: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c align="right">1<
8ea0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
8eb0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
8ec0: 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 t">224014</td><t
8ed0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
8ee0: 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
8ef0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
8f00: 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 885</td><td alig
8f10: 6e 3d 22 72 69 67 68 74 22 3e 31 33 2e 31 32 37 n="right">13.127
8f20: 38 37 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 874</td><td>NULL
8f30: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 </td><td>VIA PIE
8f40: 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e TRO ARETINO</td>
8f50: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
8f60: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
8f70: 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >2</td><td>Link<
8f80: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
8f90: 69 67 68 74 22 3e 32 32 34 34 34 36 3c 2f 74 64 ight">224446</td
8fa0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
8fb0: 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 t">182885</td><t
8fc0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
8fd0: 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
8fe0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 2e 36 lign="right">9.6
8ff0: 35 34 36 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 54608</td><td>NU
9000: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d LL</td><td>VIA M
9010: 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d ARGARITONE</td>.
9020: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
9030: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9040: 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 3</td><td>Link</
9050: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9060: 67 68 74 22 3e 32 31 39 31 37 31 3c 2f 74 64 3e ght">219171</td>
9070: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9080: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
9090: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
90a0: 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 78732</td><td al
90b0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 38 30 ign="right">7.80
90c0: 39 39 35 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 9952</td><td>NUL
90d0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 L</td><td>VIA FR
90e0: 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c 2f ANCESCO CRISPI</
90f0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
9100: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
9110: 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">4</td><td>Li
9120: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
9130: 3d 22 72 69 67 68 74 22 3e 32 31 39 30 35 38 3c ="right">219058<
9140: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9150: 69 67 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 ight">178732</td
9160: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9170: 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 t">178754</td><t
9180: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9190: 31 32 2e 34 34 35 36 32 36 3c 2f 74 64 3e 3c 74 12.445626</td><t
91a0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
91b0: 49 41 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 IA FRANCESCO CRI
91c0: 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d SPI</td>..</tr>.
91d0: 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
91e0: 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c ="right">5</td><
91f0: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
9200: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
9210: 35 38 38 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 5888</td><td ali
9220: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 gn="right">17875
9230: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
9240: 22 72 69 67 68 74 22 3e 31 38 33 34 36 31 3c 2f "right">183461</
9250: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9260: 67 68 74 22 3e 31 2e 35 39 39 38 36 35 3c 2f 74 ght">1.599865</t
9270: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
9280: 74 64 3e 56 49 41 20 46 52 41 4e 43 45 53 43 4f td>VIA FRANCESCO
9290: 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f CRISPI</td>..</
92a0: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 tr>..<tr>..<td a
92b0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f lign="right">6</
92c0: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
92d0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
92e0: 22 3e 32 32 35 38 38 37 3c 2f 74 64 3e 3c 74 64 ">225887</td><td
92f0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9300: 38 33 34 36 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 83461</td><td al
9310: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 ign="right">1828
9320: 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 00</td><td align
9330: 3d 22 72 69 67 68 74 22 3e 33 2e 33 30 30 35 39 ="right">3.30059
9340: 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 0</td><td>NULL</
9350: 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 td><td>VIA FRANC
9360: 45 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e ESCO CRISPI</td>
9370: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
9380: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9390: 3e 37 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >7</td><td>Link<
93a0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
93b0: 69 67 68 74 22 3e 32 32 33 39 33 35 3c 2f 74 64 ight">223935</td
93c0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
93d0: 74 22 3e 31 38 32 38 30 30 3c 2f 74 64 3e 3c 74 t">182800</td><t
93e0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
93f0: 31 38 32 37 39 39 3c 2f 74 64 3e 3c 74 64 20 61 182799</td><td a
9400: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 2e 36 lign="right">6.6
9410: 38 38 37 38 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 88786</td><td>NU
9420: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 4c 45 LL</td><td>VIALE
9430: 20 4c 55 43 41 20 53 49 47 4e 4f 52 45 4c 4c 49 LUCA SIGNORELLI
9440: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
9450: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
9460: 69 67 68 74 22 3e 38 3c 2f 74 64 3e 3c 74 64 3e ight">8</td><td>
9470: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
9480: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 36 30 33 gn="right">22603
9490: 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 8</td><td align=
94a0: 22 72 69 67 68 74 22 3e 31 38 32 37 39 39 3c 2f "right">182799</
94b0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
94c0: 67 68 74 22 3e 31 38 33 34 35 36 3c 2f 74 64 3e ght">183456</td>
94d0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
94e0: 22 3e 31 2e 32 39 34 30 31 37 3c 2f 74 64 3e 3c ">1.294017</td><
94f0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
9500: 56 49 41 4c 45 20 4c 55 43 41 20 53 49 47 4e 4f VIALE LUCA SIGNO
9510: 52 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 RELLI</td>..</tr
9520: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 >..<tr>..<td ali
9530: 67 6e 3d 22 72 69 67 68 74 22 3e 39 3c 2f 74 64 gn="right">9</td
9540: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
9550: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9560: 32 32 35 38 33 32 3c 2f 74 64 3e 3c 74 64 20 61 225832</td><td a
9570: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
9580: 34 35 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 456</td><td alig
9590: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 34 34 34 n="right">183444
95a0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
95b0: 72 69 67 68 74 22 3e 32 2e 33 38 35 34 38 36 3c right">2.385486<
95c0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
95d0: 3e 3c 74 64 3e 56 49 41 4c 45 20 4c 55 43 41 20 ><td>VIALE LUCA
95e0: 53 49 47 4e 4f 52 45 4c 4c 49 3c 2f 74 64 3e 0d SIGNORELLI</td>.
95f0: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
9600: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9610: 31 30 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 10</td><td>Link<
9620: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9630: 69 67 68 74 22 3e 32 32 35 38 33 31 3c 2f 74 64 ight">225831</td
9640: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9650: 74 22 3e 31 38 33 34 34 34 3c 2f 74 64 3e 3c 74 t">183444</td><t
9660: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9670: 31 38 33 35 35 34 3c 2f 74 64 3e 3c 74 64 20 61 183554</td><td a
9680: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 2e 31 lign="right">3.1
9690: 36 30 36 36 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 60662</td><td>NU
96a0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 4c 45 LL</td><td>VIALE
96b0: 20 4c 55 43 41 20 53 49 47 4e 4f 52 45 4c 4c 49 LUCA SIGNORELLI
96c0: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
96d0: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
96e0: 69 67 68 74 22 3e 31 31 3c 2f 74 64 3e 3c 74 64 ight">11</td><td
96f0: 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
9700: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 37 ign="right">2257
9710: 36 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 65</td><td align
9720: 3d 22 72 69 67 68 74 22 3e 31 38 33 35 35 34 3c ="right">183554<
9730: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9740: 69 67 68 74 22 3e 31 38 33 39 35 34 3c 2f 74 64 ight">183954</td
9750: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9760: 74 22 3e 37 2e 34 36 39 39 31 37 3c 2f 74 64 3e t">7.469917</td>
9770: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
9780: 3e 56 49 41 4c 45 20 4c 55 43 41 20 53 49 47 4e >VIALE LUCA SIGN
9790: 4f 52 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 ORELLI</td>..</t
97a0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c r>..<tr>..<td al
97b0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 32 3c 2f ign="right">12</
97c0: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
97d0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
97e0: 22 3e 32 32 35 37 36 36 3c 2f 74 64 3e 3c 74 64 ">225766</td><td
97f0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9800: 38 33 39 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 83954</td><td al
9810: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 39 ign="right">1839
9820: 30 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 05</td><td align
9830: 3d 22 72 69 67 68 74 22 3e 33 2e 32 33 36 33 38 ="right">3.23638
9840: 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 9</td><td>NULL</
9850: 74 64 3e 3c 74 64 3e 56 49 41 4c 45 20 4c 55 43 td><td>VIALE LUC
9860: 41 20 53 49 47 4e 4f 52 45 4c 4c 49 3c 2f 74 64 A SIGNORELLI</td
9870: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
9880: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9890: 22 3e 31 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e ">13</td><td>Lin
98a0: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
98b0: 22 72 69 67 68 74 22 3e 32 32 35 39 37 39 3c 2f "right">225979</
98c0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
98d0: 67 68 74 22 3e 31 38 33 39 30 35 3c 2f 74 64 3e ght">183905</td>
98e0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
98f0: 22 3e 31 38 33 36 32 36 3c 2f 74 64 3e 3c 74 64 ">183626</td><td
9900: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9910: 33 2e 39 38 33 36 32 39 3c 2f 74 64 3e 3c 74 64 3.983629</td><td
9920: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 53 54 >NULL</td><td>ST
9930: 52 41 44 41 20 53 45 4e 5a 41 20 4e 4f 4d 45 3c RADA SENZA NOME<
9940: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
9950: 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 >..<td align="ri
9960: 67 68 74 22 3e 31 34 3c 2f 74 64 3e 3c 74 64 3e ght">14</td><td>
9970: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
9980: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 39 30 gn="right">22490
9990: 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
99a0: 22 72 69 67 68 74 22 3e 31 38 33 36 32 36 3c 2f "right">183626</
99b0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
99c0: 67 68 74 22 3e 31 38 33 31 32 38 3c 2f 74 64 3e ght">183128</td>
99d0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
99e0: 22 3e 35 2e 36 32 37 33 35 38 3c 2f 74 64 3e 3c ">5.627358</td><
99f0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
9a00: 53 54 52 41 44 41 20 53 45 4e 5a 41 20 4e 4f 4d STRADA SENZA NOM
9a10: 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c E</td>..</tr>..<
9a20: 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 tr>..<td align="
9a30: 72 69 67 68 74 22 3e 31 35 3c 2f 74 64 3e 3c 74 right">15</td><t
9a40: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
9a50: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
9a60: 38 39 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 897</td><td alig
9a70: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 31 32 38 n="right">183128
9a80: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9a90: 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 right">183286</t
9aa0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9ab0: 68 74 22 3e 31 30 2e 30 33 30 37 39 32 3c 2f 74 ht">10.030792</t
9ac0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
9ad0: 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f td>VIA MARGARITO
9ae0: 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NE</td>..</tr>..
9af0: 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 76 65 72 62 61 </table>..<verba
9b00: 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 52 6f 75 tim>..SELECT Rou
9b10: 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e teRow, Role, Lin
9b20: 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d kRowid, NodeFrom
9b30: 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 , NodeTo, Cost,
9b40: 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a Geometry, Name..
9b50: 46 52 4f 4d 20 62 79 63 61 72 0d 0a 57 48 45 52 FROM bycar..WHER
9b60: 45 20 4e 6f 64 65 54 6f 20 3d 20 31 37 38 37 33 E NodeTo = 17873
9b70: 31 20 41 4e 44 20 4e 6f 64 65 46 72 6f 6d 20 3d 1 AND NodeFrom =
9b80: 20 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 62 183286;..</verb
9b90: 61 74 69 6d 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f atim>..<table bo
9ba0: 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 rder="1" bgcolor
9bb0: 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 ="#ffffcf" cells
9bc0: 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 pacing="4" cellp
9bd0: 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 adding="6">..<tr
9be0: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
9bf0: 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 0d0a0">RouteRow<
9c00: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
9c10: 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f "#d0d0a0">Role</
9c20: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
9c30: 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 #d0d0a0">LinkRow
9c40: 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c id</th><th bgcol
9c50: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 or="#d0d0a0">Nod
9c60: 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 eFrom</th><th bg
9c70: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
9c80: 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 NodeTo</th><th b
9c90: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
9ca0: 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 >Cost</th><th bg
9cb0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
9cc0: 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 Geometry</th><th
9cd0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
9ce0: 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 0">Name</th></tr
9cf0: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 >..<tr>..<td ali
9d00: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
9d10: 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
9d20: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
9d30: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
9d40: 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3286</td><td ali
9d50: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
9d60: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
9d70: 22 72 69 67 68 74 22 3e 31 30 33 2e 33 30 35 32 "right">103.3052
9d80: 35 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 59</td><td>BLOB
9d90: 73 7a 3d 39 34 34 20 47 45 4f 4d 45 54 52 59 3c sz=944 GEOMETRY<
9da0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
9db0: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
9dc0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9dd0: 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">1</td><td>Link
9de0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9df0: 72 69 67 68 74 22 3e 32 32 34 34 31 34 3c 2f 74 right">224414</t
9e00: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9e10: 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c ht">183286</td><
9e20: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9e30: 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 >178880</td><td
9e40: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
9e50: 2e 38 38 32 32 38 35 3c 2f 74 64 3e 3c 74 64 3e .882285</td><td>
9e60: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
9e70: 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 MARGARITONE</td
9e80: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
9e90: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9ea0: 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">2</td><td>Link
9eb0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9ec0: 72 69 67 68 74 22 3e 32 31 39 31 37 31 3c 2f 74 right">219171</t
9ed0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9ee0: 68 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c ht">178880</td><
9ef0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9f00: 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 >178732</td><td
9f10: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e align="right">7.
9f20: 38 30 39 39 35 32 3c 2f 74 64 3e 3c 74 64 3e 4e 809952</td><td>N
9f30: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
9f40: 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 FRANCESCO CRISPI
9f50: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
9f60: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
9f70: 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e ight">3</td><td>
9f80: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
9f90: 67 6e 3d 22 72 69 67 68 74 22 3e 32 31 39 30 35 gn="right">21905
9fa0: 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 8</td><td align=
9fb0: 22 72 69 67 68 74 22 3e 31 37 38 37 33 32 3c 2f "right">178732</
9fc0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9fd0: 67 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e ght">178754</td>
9fe0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9ff0: 22 3e 31 32 2e 34 34 35 36 32 36 3c 2f 74 64 3e ">12.445626</td>
a000: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
a010: 3e 56 49 41 20 46 52 41 4e 43 45 53 43 4f 20 43 >VIA FRANCESCO C
a020: 52 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 RISPI</td>..</tr
a030: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 >..<tr>..<td ali
a040: 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 gn="right">4</td
a050: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
a060: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a070: 32 32 34 35 33 38 3c 2f 74 64 3e 3c 74 64 20 61 224538</td><td a
a080: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
a090: 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 754</td><td alig
a0a0: 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 37 32 n="right">181972
a0b0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
a0c0: 72 69 67 68 74 22 3e 37 2e 30 34 37 37 38 34 3c right">7.047784<
a0d0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
a0e0: 3e 3c 74 64 3e 56 49 41 20 41 4e 54 4f 4e 49 4f ><td>VIA ANTONIO
a0f0: 20 47 55 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 3e GUADAGNOLI</td>
a100: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
a110: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a120: 3e 35 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >5</td><td>Link<
a130: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a140: 69 67 68 74 22 3e 32 32 32 35 37 35 3c 2f 74 64 ight">222575</td
a150: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a160: 74 22 3e 31 38 31 39 37 32 3c 2f 74 64 3e 3c 74 t">181972</td><t
a170: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a180: 31 38 31 39 37 31 3c 2f 74 64 3e 3c 74 64 20 61 181971</td><td a
a190: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 2e 38 lign="right">1.8
a1a0: 35 32 32 38 33 3c 2f 74 64 3e 3c 74 64 3e 4e 55 52283</td><td>NU
a1b0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 41 LL</td><td>VIA A
a1c0: 4e 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c NTONIO GUADAGNOL
a1d0: 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c I</td>..</tr>..<
a1e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a1f0: 3e 36 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >6</td><td>Link<
a200: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a210: 69 67 68 74 22 3e 32 32 34 39 36 37 3c 2f 74 64 ight">224967</td
a220: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a230: 74 22 3e 31 38 31 39 37 31 3c 2f 74 64 3e 3c 74 t">181971</td><t
a240: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a250: 31 38 32 38 39 31 3c 2f 74 64 3e 3c 74 64 20 61 182891</td><td a
a260: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 2e lign="right">14.
a270: 32 37 33 31 38 35 3c 2f 74 64 3e 3c 74 64 3e 4e 273185</td><td>N
a280: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
a290: 41 4e 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f ANTONIO GUADAGNO
a2a0: 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LI</td>..</tr>..
a2b0: 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d <tr>..<td align=
a2c0: 22 72 69 67 68 74 22 3e 37 3c 2f 74 64 3e 3c 74 "right">7</td><t
a2d0: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
a2e0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
a2f0: 31 36 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 168</td><td alig
a300: 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 39 31 n="right">182891
a310: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
a320: 72 69 67 68 74 22 3e 31 38 33 30 35 37 3c 2f 74 right">183057</t
a330: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a340: 68 74 22 3e 36 2e 36 34 33 33 30 39 3c 2f 74 64 ht">6.643309</td
a350: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
a360: 64 3e 56 49 41 20 4d 41 43 41 4c 4c 45 27 3c 2f d>VIA MACALLE'</
a370: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
a380: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
a390: 68 74 22 3e 38 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">8</td><td>Li
a3a0: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
a3b0: 3d 22 72 69 67 68 74 22 3e 32 32 34 31 36 37 3c ="right">224167<
a3c0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a3d0: 69 67 68 74 22 3e 31 38 33 30 35 37 3c 2f 74 64 ight">183057</td
a3e0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a3f0: 74 22 3e 31 38 33 30 35 36 3c 2f 74 64 3e 3c 74 t">183056</td><t
a400: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a410: 33 2e 31 35 31 32 37 32 3c 2f 74 64 3e 3c 74 64 3.151272</td><td
a420: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
a430: 41 20 4d 41 43 41 4c 4c 45 27 3c 2f 74 64 3e 0d A MACALLE'</td>.
a440: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
a450: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a460: 39 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 9</td><td>Link</
a470: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a480: 67 68 74 22 3e 32 32 34 31 37 34 3c 2f 74 64 3e ght">224174</td>
a490: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a4a0: 22 3e 31 38 33 30 35 36 3c 2f 74 64 3e 3c 74 64 ">183056</td><td
a4b0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
a4c0: 38 32 39 34 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 82941</td><td al
a4d0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 39 36 ign="right">7.96
a4e0: 36 38 37 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 6870</td><td>NUL
a4f0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 52 4f L</td><td>VIA RO
a500: 44 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a DI</td>..</tr>..
a510: 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d <tr>..<td align=
a520: 22 72 69 67 68 74 22 3e 31 30 3c 2f 74 64 3e 3c "right">10</td><
a530: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
a540: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
a550: 34 30 35 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4059</td><td ali
a560: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 39 34 gn="right">18294
a570: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
a580: 22 72 69 67 68 74 22 3e 31 38 32 30 30 31 3c 2f "right">182001</
a590: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a5a0: 67 68 74 22 3e 36 2e 33 39 33 37 34 37 3c 2f 74 ght">6.393747</t
a5b0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
a5c0: 74 64 3e 56 49 41 20 52 4f 44 49 3c 2f 74 64 3e td>VIA RODI</td>
a5d0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
a5e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a5f0: 3e 31 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b >11</td><td>Link
a600: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
a610: 72 69 67 68 74 22 3e 32 32 32 36 33 37 3c 2f 74 right">222637</t
a620: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a630: 68 74 22 3e 31 38 32 30 30 31 3c 2f 74 64 3e 3c ht">182001</td><
a640: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a650: 3e 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 >182000</td><td
a660: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 2e align="right">2.
a670: 34 37 35 35 33 38 3c 2f 74 64 3e 3c 74 64 3e 4e 475538</td><td>N
a680: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
a690: 50 49 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f PIETRO ARETINO</
a6a0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
a6b0: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
a6c0: 68 74 22 3e 31 32 3c 2f 74 64 3e 3c 74 64 3e 4c ht">12</td><td>L
a6d0: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
a6e0: 6e 3d 22 72 69 67 68 74 22 3e 32 32 32 36 33 36 n="right">222636
a6f0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
a700: 72 69 67 68 74 22 3e 31 38 32 30 30 30 3c 2f 74 right">182000</t
a710: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a720: 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c ht">178731</td><
a730: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a740: 3e 31 34 2e 33 36 33 34 30 38 3c 2f 74 64 3e 3c >14.363408</td><
a750: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
a760: 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 VIA PIETRO ARETI
a770: 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NO</td>..</tr>..
a780: 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a </table>..<br>..
a790: 41 73 20 79 6f 75 20 63 61 6e 20 65 61 73 69 6c As you can easil
a7a0: 79 20 6e 6f 74 69 63 65 2c 20 74 68 65 20 6f 70 y notice, the op
a7b0: 74 69 6d 61 6c 20 70 61 74 68 73 20 72 65 74 75 timal paths retu
a7c0: 72 6e 65 64 20 62 79 20 74 68 65 20 3c 62 3e 62 rned by the <b>b
a7d0: 79 63 61 72 3c 2f 62 3e 20 56 69 72 74 75 61 6c ycar</b> Virtual
a7e0: 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 74 68 Routing Table th
a7f0: 65 20 70 61 74 68 73 20 69 6e 20 6f 70 70 6f 73 e paths in oppos
a800: 69 74 65 20 64 69 72 65 63 74 69 6f 6e 73 20 73 ite directions s
a810: 74 72 6f 6e 67 6c 79 20 64 69 66 66 65 72 20 62 trongly differ b
a820: 65 74 77 65 65 6e 20 74 68 65 6d 2c 20 61 6e 64 etween them, and
a830: 20 62 6f 74 68 20 61 72 65 20 63 6f 6d 70 6c 65 both are comple
a840: 74 65 6c 79 20 64 69 66 66 65 72 65 6e 74 20 66 tely different f
a850: 72 6f 6d 20 74 68 65 20 70 61 74 68 20 72 65 74 rom the path ret
a860: 75 72 6e 65 64 20 62 79 20 71 75 65 72 79 69 6e urned by queryin
a870: 67 20 3c 62 3e 62 79 66 6f 6f 74 3c 2f 62 3e 2e g <b>byfoot</b>.
a880: 3c 62 72 3e 0d 0a 41 20 71 75 69 63 6b 20 67 6c <br>..A quick gl
a890: 61 6e 63 65 20 61 74 20 74 68 65 20 62 65 6c 6f ance at the belo
a8a0: 77 20 6d 61 70 20 77 69 6c 6c 20 73 75 72 65 6c w map will surel
a8b0: 79 20 68 65 6c 70 20 74 6f 20 75 6e 64 65 72 73 y help to unders
a8c0: 74 61 6e 64 20 62 65 74 74 65 72 20 77 68 61 74 tand better what
a8d0: 27 73 20 72 65 61 6c 6c 79 20 68 61 70 70 65 6e 's really happen
a8e0: 69 6e 67 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 69 ing.<br>..This i
a8f0: 73 20 61 20 63 65 6e 74 72 61 6c 20 61 72 65 61 s a central area
a900: 20 6f 66 20 74 68 65 20 74 6f 77 6e 20 6f 66 20 of the town of
a910: 41 72 65 7a 7a 6f 20 61 72 6f 75 6e 64 20 74 68 Arezzo around th
a920: 65 20 61 72 63 68 61 65 6f 6c 6f 67 69 63 61 6c e archaeological
a930: 20 72 75 69 6e 73 20 6f 66 20 74 68 65 20 52 6f ruins of the Ro
a940: 6d 61 6e 20 41 6d 70 68 69 74 68 65 61 74 65 72 man Amphitheater
a950: 3b 20 63 69 72 63 75 6c 61 74 69 6e 67 20 62 79 ; circulating by
a960: 20 63 61 72 20 69 73 20 64 69 73 63 6f 75 72 61 car is discoura
a970: 67 65 64 20 61 6e 64 20 69 73 20 73 75 62 6a 65 ged and is subje
a980: 63 74 20 74 6f 20 6d 61 6e 79 20 6f 6e 65 2d 77 ct to many one-w
a990: 61 79 20 72 65 73 74 72 69 63 74 69 6f 6e 73 2e ay restrictions.
a9a0: 20 4e 6f 74 20 73 75 72 70 72 69 73 69 6e 67 6c Not surprisingl
a9b0: 79 2c 20 6d 6f 76 69 6e 67 20 62 79 20 66 6f 6f y, moving by foo
a9c0: 74 20 69 73 20 74 68 65 20 66 61 73 74 65 72 20 t is the faster
a9d0: 6f 70 74 69 6f 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 option...<br><br
a9e0: 3e 0d 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 >..<img src="htt
a9f0: 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 ps://www.gaia-gi
aa00: 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 s.it/gaia-sins/r
aa10: 6f 75 74 69 6e 67 2d 66 69 67 73 2f 72 6f 75 74 outing-figs/rout
aa20: 69 6e 67 31 2e 6a 70 67 22 20 61 6c 74 3d 22 66 ing1.jpg" alt="f
aa30: 69 67 31 22 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 ig1">..<ul>..<li
aa40: 3e 79 65 6c 6c 6f 77 20 70 61 74 68 3a 20 70 65 >yellow path: pe
aa50: 64 65 73 74 72 69 61 6e 73 3c 2f 6c 69 3e 0d 0a destrians</li>..
aa60: 3c 6c 69 3e 67 72 65 65 6e 20 70 61 74 68 3a 20 <li>green path:
aa70: 63 61 72 2c 20 64 69 72 65 63 74 20 64 69 72 65 car, direct dire
aa80: 63 74 69 6f 6e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e ction</li>..<li>
aa90: 72 65 64 20 70 61 74 68 3a 20 63 61 72 2c 20 72 red path: car, r
aaa0: 65 74 75 72 6e 20 64 69 72 65 63 74 69 6f 6e 3c eturn direction<
aab0: 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 /li>..</ul>..<br
aac0: 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f >..<table bgcolo
aad0: 72 3d 22 23 63 30 66 66 63 30 22 20 63 65 6c 6c r="#c0ffc0" cell
aae0: 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c spacing="10" cel
aaf0: 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 lpadding="6"><tr
ab00: 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 4c 69 6e 65 73 ><td>..<h3>Lines
ab10: 74 72 69 6e 67 73 20 72 65 74 75 72 6e 65 64 20 trings returned
ab20: 62 79 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e by VirtualRoutin
ab30: 67 3c 2f 68 33 3e 0d 0a 41 6c 6c 20 4c 49 4e 45 g</h3>..All LINE
ab40: 53 54 52 49 4e 47 20 47 65 6f 6d 65 74 72 69 65 STRING Geometrie
ab50: 73 20 63 72 65 61 74 65 64 20 62 79 20 61 6e 79 s created by any
ab60: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
ab70: 77 69 6c 6c 20 61 6c 77 61 79 73 20 63 6f 6e 74 will always cont
ab80: 61 69 6e 20 3c 62 3e 4d 20 76 61 6c 75 65 73 3c ain <b>M values<
ab90: 2f 62 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e /b>:..<ul>..<li>
aba0: 69 66 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 if the underlayi
abb0: 6e 67 20 4e 65 74 77 6f 72 6b 27 73 20 47 65 6f ng Network's Geo
abc0: 6d 65 74 72 69 65 73 20 61 72 65 20 3c 62 3e 58 metries are <b>X
abd0: 59 3c 2f 62 3e 20 74 68 65 6e 20 3c 62 3e 58 59 Y</b> then <b>XY
abe0: 4d 3c 2f 62 3e 20 4c 69 6e 65 73 74 72 69 6e 67 M</b> Linestring
abf0: 73 20 77 69 6c 6c 20 62 65 20 72 65 74 75 72 6e s will be return
ac00: 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 66 ed.</li>..<li>if
ac10: 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 the underlaying
ac20: 20 4e 65 74 77 6f 72 6b 27 73 20 47 65 6f 6d 65 Network's Geome
ac30: 74 72 69 65 73 20 61 72 65 20 3c 62 3e 58 59 5a tries are <b>XYZ
ac40: 3c 2f 62 3e 20 74 68 65 6e 20 3c 62 3e 58 59 5a </b> then <b>XYZ
ac50: 4d 3c 2f 62 3e 20 4c 69 6e 65 73 74 72 69 6e 67 M</b> Linestring
ac60: 73 20 77 69 6c 6c 20 62 65 20 72 65 74 75 72 6e s will be return
ac70: 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 66 ed.</li>..<li>if
ac80: 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 the underlaying
ac90: 20 4e 65 74 77 6f 72 6b 27 73 20 47 65 6f 6d 65 Network's Geome
aca0: 74 72 69 65 73 20 61 72 65 20 3c 62 3e 58 59 4d tries are <b>XYM
acb0: 3c 2f 62 3e 20 6f 72 20 3c 62 3e 58 59 5a 4d 3c </b> or <b>XYZM<
acc0: 2f 62 3e 20 74 68 65 6e 20 20 4c 69 6e 65 73 74 /b> then Linest
acd0: 72 69 6e 67 73 20 72 65 74 75 72 6e 65 64 20 69 rings returned i
ace0: 6e 74 6f 20 74 68 65 20 72 65 73 75 6c 74 73 65 nto the resultse
acf0: 74 20 77 69 6c 6c 20 6d 61 69 6e 74 61 69 6e 20 t will maintain
ad00: 74 68 65 20 73 61 6d 65 20 64 69 6d 65 6e 73 69 the same dimensi
ad10: 6f 6e 73 20 61 73 20 69 6e 20 74 68 65 20 75 6e ons as in the un
ad20: 64 65 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f 72 derlaying Networ
ad30: 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 6e 20 k.</li>..<li>in
ad40: 61 6e 79 20 63 61 73 65 20 74 68 65 20 3c 62 3e any case the <b>
ad50: 4d 3c 2f 62 3e 20 76 61 6c 75 65 73 20 77 69 6c M</b> values wil
ad60: 6c 20 62 65 20 61 70 70 72 6f 70 72 69 61 74 65 l be appropriate
ad70: 6c 79 20 73 65 74 20 73 6f 20 74 6f 20 72 65 70 ly set so to rep
ad80: 72 65 73 65 6e 74 20 74 68 65 20 3c 75 3e 70 61 resent the <u>pa
ad90: 72 74 69 61 6c 20 63 6f 73 74 3c 2f 75 3e 20 63 rtial cost</u> c
ada0: 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 orresponding to
adb0: 65 61 63 68 20 76 65 72 74 65 78 2e 0d 0a 28 69 each vertex...(i
adc0: 66 20 74 68 65 20 69 6e 70 75 74 20 4c 69 6e 65 f the input Line
add0: 73 74 72 69 6e 67 73 20 61 6c 72 65 61 64 79 20 strings already
ade0: 63 6f 6e 74 61 69 6e 73 20 4d 2d 76 61 6c 75 65 contains M-value
adf0: 73 20 74 68 65 79 27 6c 6c 20 62 65 20 6f 76 65 s they'll be ove
ae00: 72 77 72 69 74 74 65 6e 29 2e 3c 2f 6c 69 3e 0d rwritten).</li>.
ae10: 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 49 6e .</ul>..<br>..In
ae20: 20 6f 74 68 65 72 20 77 6f 72 64 73 2c 20 61 6c other words, al
ae30: 6c 20 4c 69 6e 65 73 74 72 69 6e 67 73 20 72 65 l Linestrings re
ae40: 74 75 72 6e 65 64 20 62 79 20 56 69 72 74 75 61 turned by Virtua
ae50: 6c 52 6f 75 74 69 6e 67 20 63 61 6e 20 65 66 66 lRouting can eff
ae60: 65 63 74 69 76 65 6c 79 20 73 75 70 70 6f 72 74 ectively support
ae70: 20 3c 62 3e 4c 52 3c 2f 62 3e 20 28 3c 69 3e 4c <b>LR</b> (<i>L
ae80: 69 6e 65 61 72 20 52 65 66 65 72 65 6e 63 69 6e inear Referencin
ae90: 67 3c 2f 69 3e 29 20 53 51 4c 20 66 75 6e 63 74 g</i>) SQL funct
aea0: 69 6f 6e 73 2c 20 61 73 20 69 6e 20 74 68 65 20 ions, as in the
aeb0: 66 6f 6c 6c 6f 77 69 6e 67 20 65 78 61 6d 70 6c following exampl
aec0: 65 73 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d es:..<verbatim>.
aed0: 0a 53 45 4c 45 43 54 20 53 54 5f 4c 6f 63 61 74 .SELECT ST_Locat
aee0: 65 5f 42 65 74 77 65 65 6e 5f 4d 65 61 73 75 72 e_Between_Measur
aef0: 65 73 28 3c 67 65 6f 6d 65 74 72 79 3e 2c 20 33 es(<geometry>, 3
af00: 30 2e 30 2c 20 34 35 2e 30 29 3b 0d 0a 0d 0a 53 0.0, 45.0);....S
af10: 45 4c 45 43 54 20 53 54 5f 4c 6f 63 61 74 65 5f ELECT ST_Locate_
af20: 42 65 74 77 65 65 6e 5f 4d 65 61 73 75 72 65 73 Between_Measures
af30: 28 3c 67 65 6f 6d 65 74 72 79 3e 2c 20 38 30 2e (<geometry>, 80.
af40: 30 2c 20 39 35 2e 30 29 3b 0d 0a 3c 2f 76 65 72 0, 95.0);..</ver
af50: 62 61 74 69 6d 3e 0d 0a 54 68 65 20 73 69 64 65 batim>..The side
af60: 20 6d 61 70 20 67 72 61 70 68 69 63 61 6c 6c 79 map graphically
af70: 20 73 68 6f 77 73 20 74 68 65 20 65 73 74 69 6d shows the estim
af80: 61 74 65 64 20 70 6f 73 69 74 69 6f 6e 73 20 72 ated positions r
af90: 65 73 70 65 63 74 69 76 65 6c 79 20 3c 62 3e 33 espectively <b>3
afa0: 30 3c 2f 62 3e 2d 3c 62 3e 34 35 3c 2f 62 3e 20 0</b>-<b>45</b>
afb0: 73 65 63 6f 6e 64 73 20 61 66 74 65 72 20 73 74 seconds after st
afc0: 61 72 74 69 6e 67 20 28 79 65 6c 6c 6f 77 20 64 arting (yellow d
afd0: 6f 74 74 65 64 20 6c 69 6e 65 29 20 61 6e 64 20 otted line) and
afe0: 3c 62 3e 38 30 3c 2f 62 3e 2d 3c 62 3e 39 35 3c <b>80</b>-<b>95<
aff0: 2f 62 3e 20 73 65 63 6f 6e 64 73 20 61 66 74 65 /b> seconds afte
b000: 72 20 73 74 61 72 74 69 6e 67 20 28 67 72 65 65 r starting (gree
b010: 6e 20 64 6f 74 74 65 64 20 6c 69 6e 65 29 2e 3c n dotted line).<
b020: 62 72 3e 0d 0a 28 61 73 73 75 6d 69 6e 67 20 74 br>..(assuming t
b030: 68 65 20 73 61 6d 65 20 70 61 74 68 20 72 65 74 he same path ret
b040: 75 72 6e 65 64 20 62 79 20 74 68 65 20 6c 61 74 urned by the lat
b050: 65 73 74 20 3c 62 3e 62 79 63 61 72 3c 2f 62 3e est <b>bycar</b>
b060: 20 71 75 65 72 79 29 2e 0d 0a 3c 2f 74 64 3e 0d query)...</td>.
b070: 0a 3c 74 64 3e 3c 69 6d 67 20 73 72 63 3d 22 68 .<td><img src="h
b080: 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d ttps://www.gaia-
b090: 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 gis.it/gaia-sins
b0a0: 2f 72 6f 75 74 69 6e 67 2d 66 69 67 73 2f 72 6f /routing-figs/ro
b0b0: 75 74 69 6e 67 32 2e 6a 70 67 22 20 61 6c 74 3d uting2.jpg" alt=
b0c0: 22 66 69 67 32 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f "fig2"></td>..</
b0d0: 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c tr>..</table>..<
b0e0: 62 72 3e 0d 0a 3c 68 32 3e 50 6c 61 79 69 6e 67 br>..<h2>Playing
b0f0: 20 77 69 74 68 20 56 69 72 74 75 61 6c 52 6f 75 with VirtualRou
b100: 74 69 6e 67 20 63 6f 6e 66 69 67 75 72 61 62 6c ting configurabl
b110: 65 20 6f 70 74 69 6f 6e 73 3c 2f 68 32 3e 0d 0a e options</h2>..
b120: 53 65 76 65 72 61 6c 20 61 73 70 65 63 74 73 20 Several aspects
b130: 6f 66 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e of VirtualRoutin
b140: 67 20 63 61 6e 20 62 65 20 66 72 65 65 6c 79 20 g can be freely
b150: 63 75 73 74 6f 6d 69 7a 65 64 2e 0d 0a 3c 76 65 customized...<ve
b160: 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 rbatim>..UPDATE
b170: 62 79 66 6f 6f 74 20 53 45 54 20 41 6c 67 6f 72 byfoot SET Algor
b180: 69 74 68 6d 20 3d 20 27 41 2a 27 3b 0d 0a 0d 0a ithm = 'A*';....
b190: 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d SELECT Algorithm
b1a0: 2c 20 4f 70 74 69 6f 6e 73 2c 20 52 6f 75 74 65 , Options, Route
b1b0: 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 Row, Role, LinkR
b1c0: 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 owid, NodeFrom,
b1d0: 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 NodeTo, Cost, Ge
b1e0: 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 ometry, Name..FR
b1f0: 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 OM byfoot..WHERE
b200: 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 NodeFrom = 1787
b210: 33 31 20 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 31 AND NodeTo =
b220: 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 183286;..</verba
b230: 74 69 6d 3e 0d 0a 49 66 20 79 6f 75 20 72 65 6d tim>..If you rem
b240: 65 6d 62 65 72 20 69 6e 20 61 6c 6c 20 74 68 65 ember in all the
b250: 20 70 72 65 76 69 6f 75 73 20 65 78 61 6d 70 6c previous exampl
b260: 65 73 20 74 68 65 20 3c 62 3e 44 69 6a 6b 73 74 es the <b>Dijkst
b270: 72 61 27 73 3c 2f 62 3e 20 61 6c 67 6f 72 69 74 ra's</b> algorit
b280: 68 6d 20 77 61 73 20 75 73 65 64 3b 20 6e 6f 77 hm was used; now
b290: 20 28 61 66 74 65 72 20 65 78 65 63 75 74 69 6e (after executin
b2a0: 67 20 74 68 65 20 61 62 6f 76 65 20 3c 62 3e 55 g the above <b>U
b2b0: 50 44 41 54 45 3c 2f 62 3e 29 20 61 6c 6c 20 53 PDATE</b>) all S
b2c0: 68 6f 72 74 65 73 74 20 50 61 74 68 20 71 75 65 hortest Path que
b2d0: 72 69 65 73 20 77 69 6c 6c 20 62 65 20 62 61 73 ries will be bas
b2e0: 65 64 20 6f 6e 20 74 68 65 20 61 6c 74 65 72 6e ed on the altern
b2f0: 61 74 69 76 65 20 3c 62 3e 41 2a 3c 2f 62 3e 20 ative <b>A*</b>
b300: 61 6c 67 6f 72 69 74 68 6d 2e 3c 62 72 3e 0d 0a algorithm.<br>..
b310: 49 66 20 79 6f 75 20 77 69 73 68 20 74 6f 20 73 If you wish to s
b320: 65 6c 65 63 74 20 61 67 61 69 6e 20 74 68 65 20 elect again the
b330: 44 69 6a 6b 73 74 72 61 27 73 20 61 6c 67 6f 72 Dijkstra's algor
b340: 69 74 68 6d 20 79 6f 75 20 6a 75 73 74 20 68 61 ithm you just ha
b350: 76 65 20 74 6f 20 65 78 65 63 75 74 65 3c 62 72 ve to execute<br
b360: 3e 20 3c 62 3e 55 50 44 41 54 45 20 62 79 66 6f > <b>UPDATE byfo
b370: 6f 74 20 53 45 54 20 41 6c 67 6f 72 69 74 68 6d ot SET Algorithm
b380: 20 3d 20 27 44 49 4a 4b 53 54 52 41 27 3b 3c 2f = 'DIJKSTRA';</
b390: 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 b>.<br><br>..The
b3a0: 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 following table
b3b0: 20 73 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c shows the resul
b3c0: 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 tset returned by
b3d0: 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 53 68 the previous Sh
b3e0: 6f 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 ortest Path quer
b3f0: 79 3b 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 y; please notice
b400: 20 74 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 the value in th
b410: 65 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f e <b>Algorithm</
b420: 62 3e 20 63 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e b> column...<br>
b430: 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 <br>..<table bor
b440: 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d der="1" bgcolor=
b450: 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 "#ffffcf" cellsp
b460: 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 acing="4" cellpa
b470: 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e dding="6">..<tr>
b480: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
b490: 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c d0a0">Algorithm<
b4a0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
b4b0: 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e "#d0d0a0">Option
b4c0: 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f s</th><th bgcolo
b4d0: 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 r="#d0d0a0">Rout
b4e0: 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 eRow</th><th bgc
b4f0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
b500: 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f ole</th><th bgco
b510: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 lor="#d0d0a0">Li
b520: 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 nkRowid</th><th
b530: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
b540: 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c ">NodeFrom</th><
b550: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
b560: 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 0a0">NodeTo</th>
b570: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
b580: 64 30 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c d0a0">Cost</th><
b590: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
b5a0: 30 61 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 0a0">Geometry</t
b5b0: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
b5c0: 64 30 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 d0d0a0">Name</th
b5d0: 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 3e ></tr>..<tr><td>
b5e0: 41 2a 3c 2f 74 64 3e 3c 74 64 3e 46 75 6c 6c 3c A*</td><td>Full<
b5f0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
b600: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
b610: 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
b620: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
b630: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
b640: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
b650: 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
b660: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
b670: 74 22 3e 33 30 30 2e 39 31 32 32 30 38 3c 2f 74 t">300.912208</t
b680: 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 d><td>BLOB sz=27
b690: 32 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 2 GEOMETRY</td><
b6a0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
b6b0: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
b6c0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
b6d0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
b6e0: 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 right">1</td><td
b6f0: 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
b700: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 ign="right">2240
b710: 31 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 14</td><td align
b720: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
b730: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
b740: 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 ight">182885</td
b750: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
b760: 74 22 3e 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 t">94.812424</td
b770: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
b780: 64 3e 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 d>VIA PIETRO ARE
b790: 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e TINO</td>..</tr>
b7a0: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
b7b0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
b7c0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
b7d0: 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">2</td><td>Li
b7e0: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
b7f0: 3d 22 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c ="right">224446<
b800: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
b810: 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 ight">182885</td
b820: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
b830: 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
b840: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
b850: 36 39 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 69.727726</td><t
b860: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
b870: 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f IA MARGARITONE</
b880: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
b890: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
b8a0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
b8b0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
b8c0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
b8d0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
b8e0: 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 t">224414</td><t
b8f0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
b900: 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
b910: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
b920: 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 286</td><td alig
b930: 6e 3d 22 72 69 67 68 74 22 3e 31 33 36 2e 33 37 n="right">136.37
b940: 32 30 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2057</td><td>NUL
b950: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 L</td><td>VIA MA
b960: 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a RGARITONE</td>..
b970: 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d </tr>..</table>.
b980: 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 59 .<br><br><br>..Y
b990: 6f 75 20 63 61 6e 20 65 76 65 6e 74 75 61 6c 6c ou can eventuall
b9a0: 79 20 63 6f 6e 66 69 67 75 72 65 20 74 68 65 20 y configure the
b9b0: 72 65 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e resultset return
b9c0: 65 64 20 74 68 65 20 56 69 72 74 75 61 6c 52 6f ed the VirtualRo
b9d0: 75 74 69 6e 67 20 71 75 65 72 69 65 73 2e 0d 0a uting queries...
b9e0: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 <verbatim>..UPDA
b9f0: 54 45 20 62 79 66 6f 6f 74 20 53 45 54 20 4f 70 TE byfoot SET Op
ba00: 74 69 6f 6e 73 20 3d 20 27 4e 4f 20 4c 49 4e 4b tions = 'NO LINK
ba10: 53 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 41 6c S';....SELECT Al
ba20: 67 6f 72 69 74 68 6d 2c 20 4f 70 74 69 6f 6e 73 gorithm, Options
ba30: 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 , RouteRow, Role
ba40: 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 , LinkRowid, Nod
ba50: 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 eFrom, NodeTo, C
ba60: 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e ost, Geometry, N
ba70: 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 ame..FROM byfoot
ba80: 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d ..WHERE NodeFrom
ba90: 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e 6f = 178731 AND No
baa0: 64 65 54 6f 20 3d 20 31 38 33 32 38 36 3b 0d 0a deTo = 183286;..
bab0: 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 66 74 </verbatim>..Aft
bac0: 65 72 20 73 65 74 74 69 6e 67 20 3c 62 3e 4f 70 er setting <b>Op
bad0: 74 69 6f 6e 73 3d 27 4e 4f 20 4c 49 4e 4b 53 27 tions='NO LINKS'
bae0: 3c 2f 62 3e 20 74 68 65 20 72 65 73 75 6c 74 73 </b> the results
baf0: 65 74 20 77 69 6c 6c 20 73 69 6d 70 6c 79 20 63 et will simply c
bb00: 6f 6e 74 61 69 6e 20 74 68 65 20 68 65 61 64 65 ontain the heade
bb10: 72 20 72 6f 77 2c 20 61 6e 64 20 61 6c 6c 20 74 r row, and all t
bb20: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 6f 77 he following row
bb30: 73 20 77 69 6c 6c 20 62 65 20 73 75 70 70 72 65 s will be suppre
bb40: 73 73 65 64 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f ssed.<br>..<u>No
bb50: 74 65 3c 2f 75 3e 3a 20 70 72 6f 64 75 63 69 6e te</u>: producin
bb60: 67 20 61 20 72 65 64 75 63 65 64 20 72 65 73 75 g a reduced resu
bb70: 6c 74 73 65 74 20 69 73 20 65 78 70 65 63 74 65 ltset is expecte
bb80: 64 20 74 6f 20 62 65 20 73 6f 6d 65 77 61 79 20 d to be someway
bb90: 66 61 73 74 65 72 2e 3c 62 72 3e 0d 0a 54 68 65 faster.<br>..The
bba0: 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 following table
bbb0: 20 73 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c shows the resul
bbc0: 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 tset returned by
bbd0: 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 53 68 the previous Sh
bbe0: 6f 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 ortest Path quer
bbf0: 79 3b 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 y; please notice
bc00: 20 74 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 the value in th
bc10: 65 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e e <b>Options</b>
bc20: 20 63 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c 62 column...<br><b
bc30: 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 r>..<table borde
bc40: 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 r="1" bgcolor="#
bc50: 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 ffffcf" cellspac
bc60: 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 ing="4" cellpadd
bc70: 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 ing="6">..<tr><t
bc80: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
bc90: 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 a0">Algorithm</t
bca0: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
bcb0: 64 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c d0d0a0">Options<
bcc0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
bcd0: 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 "#d0d0a0">RouteR
bce0: 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ow</th><th bgcol
bcf0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c or="#d0d0a0">Rol
bd00: 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f e</th><th bgcolo
bd10: 72 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b r="#d0d0a0">Link
bd20: 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 Rowid</th><th bg
bd30: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
bd40: 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 NodeFrom</th><th
bd50: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
bd60: 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 0">NodeTo</th><t
bd70: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
bd80: 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 a0">Cost</th><th
bd90: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
bda0: 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 0">Geometry</th>
bdb0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
bdc0: 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c d0a0">Name</th><
bdd0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
bde0: 41 2a 3c 2f 74 64 3e 3c 74 64 3e 4e 6f 20 4c 69 A*</td><td>No Li
bdf0: 6e 6b 73 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 nks</td><td alig
be00: 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
be10: 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
be20: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
be30: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
be40: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
be50: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 n="right">183286
be60: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
be70: 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 32 30 right">300.91220
be80: 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 8</td><td>BLOB s
be90: 7a 3d 32 37 32 20 47 45 4f 4d 45 54 52 59 3c 2f z=272 GEOMETRY</
bea0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
beb0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 ..</tr>..</table
bec0: 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d >..<br><br><br>.
bed0: 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 .<verbatim>..UPD
bee0: 41 54 45 20 62 79 66 6f 6f 74 20 53 45 54 20 4f ATE byfoot SET O
bef0: 70 74 69 6f 6e 73 20 3d 20 27 4e 4f 20 47 45 4f ptions = 'NO GEO
bf00: 4d 45 54 52 49 45 53 27 3b 0d 0a 0d 0a 53 45 4c METRIES';....SEL
bf10: 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 4f ECT Algorithm, O
bf20: 70 74 69 6f 6e 73 2c 20 52 6f 75 74 65 52 6f 77 ptions, RouteRow
bf30: 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 , Role, LinkRowi
bf40: 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 d, NodeFrom, Nod
bf50: 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 eTo, Cost, Geome
bf60: 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 try, Name..FROM
bf70: 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f byfoot..WHERE No
bf80: 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 deFrom = 178731
bf90: 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 31 38 33 AND NodeTo = 183
bfa0: 32 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 286;..</verbatim
bfb0: 3e 41 66 74 65 72 20 73 65 74 74 69 6e 67 20 3c >After setting <
bfc0: 62 3e 4f 70 74 69 6f 6e 73 3d 27 4e 4f 20 47 45 b>Options='NO GE
bfd0: 4f 4d 45 54 52 49 45 53 27 3c 2f 62 3e 20 74 68 OMETRIES'</b> th
bfe0: 65 20 72 65 73 75 6c 74 73 65 74 20 77 69 6c 6c e resultset will
bff0: 20 63 6f 6e 74 61 69 6e 20 61 6c 6c 20 72 6f 77 contain all row
c000: 73 2c 20 62 75 74 20 61 6c 6c 20 47 65 6f 6d 65 s, but all Geome
c010: 74 72 69 65 73 20 77 69 6c 6c 20 62 65 20 73 75 tries will be su
c020: 70 70 72 65 73 73 65 64 2e 3c 62 72 3e 0d 0a 3c ppressed.<br>..<
c030: 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 74 68 69 73 u>Note</u>: this
c040: 20 74 6f 6f 20 69 73 20 65 78 70 65 63 74 65 64 too is expected
c050: 20 74 6f 20 62 65 20 73 6f 6d 65 77 61 79 20 66 to be someway f
c060: 61 73 74 65 72 2e 3c 62 72 3e 0d 0a 54 68 65 20 aster.<br>..The
c070: 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 following table
c080: 73 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 shows the result
c090: 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 set returned by
c0a0: 74 68 65 20 70 72 65 76 69 6f 75 73 20 53 68 6f the previous Sho
c0b0: 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 79 rtest Path query
c0c0: 3b 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 ; please notice
c0d0: 74 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 the value in the
c0e0: 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 <b>Options</b>
c0f0: 63 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 column...<br><br
c100: 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 >..<table border
c110: 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 ="1" bgcolor="#f
c120: 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 fffcf" cellspaci
c130: 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 ng="4" cellpaddi
c140: 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 ng="6">..<tr><th
c150: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
c160: 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 0">Algorithm</th
c170: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
c180: 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 0d0a0">Options</
c190: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
c1a0: 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f #d0d0a0">RouteRo
c1b0: 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f w</th><th bgcolo
c1c0: 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 r="#d0d0a0">Role
c1d0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
c1e0: 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 ="#d0d0a0">LinkR
c1f0: 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 owid</th><th bgc
c200: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
c210: 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 odeFrom</th><th
c220: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
c230: 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 ">NodeTo</th><th
c240: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
c250: 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 0">Cost</th><th
c260: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
c270: 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c ">Geometry</th><
c280: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
c290: 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 0a0">Name</th></
c2a0: 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 41 2a 3c tr>..<tr><td>A*<
c2b0: 2f 74 64 3e 3c 74 64 3e 4e 6f 20 47 65 6f 6d 65 /td><td>No Geome
c2c0: 74 72 69 65 73 3c 2f 74 64 3e 3c 74 64 20 61 6c tries</td><td al
c2d0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
c2e0: 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
c2f0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
c300: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
c310: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
c320: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 ign="right">1832
c330: 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 86</td><td align
c340: 3d 22 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 ="right">300.912
c350: 32 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 208</td><td>NULL
c360: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
c370: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
c380: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
c390: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
c3a0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f lign="right">1</
c3b0: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
c3c0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
c3d0: 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 64 ">224014</td><td
c3e0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
c3f0: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
c400: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 ign="right">1828
c410: 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 85</td><td align
c420: 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 32 34 ="right">94.8124
c430: 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 24</td><td>NULL<
c440: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 /td><td>VIA PIET
c450: 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d RO ARETINO</td>.
c460: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
c470: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
c480: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
c490: 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e n="right">2</td>
c4a0: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
c4b0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
c4c0: 32 34 34 34 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 24446</td><td al
c4d0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 ign="right">1828
c4e0: 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 85</td><td align
c4f0: 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c ="right">178880<
c500: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
c510: 69 67 68 74 22 3e 36 39 2e 37 32 37 37 32 36 3c ight">69.727726<
c520: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
c530: 3e 3c 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 ><td>VIA MARGARI
c540: 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e TONE</td>..</tr>
c550: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
c560: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
c570: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
c580: 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">3</td><td>Li
c590: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
c5a0: 3d 22 72 69 67 68 74 22 3e 32 32 34 34 31 34 3c ="right">224414<
c5b0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
c5c0: 69 67 68 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 ight">178880</td
c5d0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
c5e0: 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 t">183286</td><t
c5f0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
c600: 31 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 136.372057</td><
c610: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
c620: 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c VIA MARGARITONE<
c630: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 /td>..</tr>..</t
c640: 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c able>..<br><br><
c650: 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d br>..<verbatim>.
c660: 0a 55 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 .UPDATE byfoot S
c670: 45 54 20 4f 70 74 69 6f 6e 73 20 3d 20 27 53 49 ET Options = 'SI
c680: 4d 50 4c 45 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 MPLE';....SELECT
c690: 20 41 6c 67 6f 72 69 74 68 6d 2c 20 4f 70 74 69 Algorithm, Opti
c6a0: 6f 6e 73 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 ons, RouteRow, R
c6b0: 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 ole, LinkRowid,
c6c0: 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f NodeFrom, NodeTo
c6d0: 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 , Cost, Geometry
c6e0: 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 , Name..FROM byf
c6f0: 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 oot..WHERE NodeF
c700: 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
c710: 20 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 36 NodeTo = 183286
c720: 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 53 65 ;..</verbatim>Se
c730: 74 74 69 6e 67 20 3c 62 3e 4f 70 74 69 6f 6e 73 tting <b>Options
c740: 3d 27 53 49 4d 50 4c 45 27 3c 2f 62 3e 20 68 61 ='SIMPLE'</b> ha
c750: 73 20 74 68 65 20 73 61 6d 65 20 65 66 66 65 63 s the same effec
c760: 74 20 74 68 61 6e 20 73 65 74 74 69 6e 67 20 62 t than setting b
c770: 6f 74 68 20 3c 62 3e 4e 4f 20 4c 49 4e 4b 53 3c oth <b>NO LINKS<
c780: 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 4f 20 47 45 /b> and <b>NO GE
c790: 4f 4d 45 54 52 49 45 53 3c 2f 62 3e 20 61 74 20 OMETRIES</b> at
c7a0: 74 68 65 20 73 61 6d 65 20 74 69 6d 65 2e 3c 62 the same time.<b
c7b0: 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a r>..<u>Note</u>:
c7c0: 20 74 68 69 73 20 69 73 20 65 78 70 65 63 74 65 this is expecte
c7d0: 64 20 74 6f 20 62 65 20 74 68 65 20 66 61 73 74 d to be the fast
c7e0: 65 73 74 20 73 65 74 74 69 6e 67 2e 3c 62 72 3e est setting.<br>
c7f0: 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 ..The following
c800: 74 61 62 6c 65 20 73 68 6f 77 73 20 74 68 65 20 table shows the
c810: 72 65 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e resultset return
c820: 65 64 20 62 79 20 74 68 65 20 70 72 65 76 69 6f ed by the previo
c830: 75 73 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 us Shortest Path
c840: 20 71 75 65 72 79 3b 20 70 6c 65 61 73 65 20 6e query; please n
c850: 6f 74 69 63 65 20 74 68 65 20 76 61 6c 75 65 20 otice the value
c860: 69 6e 20 74 68 65 20 3c 62 3e 4f 70 74 69 6f 6e in the <b>Option
c870: 73 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 2e 0d 0a 3c s</b> column...<
c880: 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 br><br>..<table
c890: 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c border="1" bgcol
c8a0: 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c or="#ffffcf" cel
c8b0: 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c lspacing="4" cel
c8c0: 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c lpadding="6">..<
c8d0: 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 tr><th bgcolor="
c8e0: 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 #d0d0a0">Algorit
c8f0: 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c hm</th><th bgcol
c900: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 74 or="#d0d0a0">Opt
c910: 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 ions</th><th bgc
c920: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
c930: 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 outeRow</th><th
c940: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
c950: 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 ">Role</th><th b
c960: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
c970: 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c >LinkRowid</th><
c980: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
c990: 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 0a0">NodeFrom</t
c9a0: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
c9b0: 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f d0d0a0">NodeTo</
c9c0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
c9d0: 23 64 30 64 30 61 30 22 3e 43 6f 73 74 3c 2f 74 #d0d0a0">Cost</t
c9e0: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
c9f0: 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 72 79 d0d0a0">Geometry
ca00: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
ca10: 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 6d 65 3c ="#d0d0a0">Name<
ca20: 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d /th></tr>..<tr>.
ca30: 0a 3c 74 64 3e 41 2a 3c 2f 74 64 3e 3c 74 64 3e .<td>A*</td><td>
ca40: 53 69 6d 70 6c 65 3c 2f 74 64 3e 3c 74 64 20 61 Simple</td><td a
ca50: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
ca60: 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 td><td>Route</td
ca70: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
ca80: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
ca90: 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
caa0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
cab0: 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 286</td><td alig
cac0: 6e 3d 22 72 69 67 68 74 22 3e 33 30 30 2e 39 31 n="right">300.91
cad0: 32 32 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2208</td><td>NUL
cae0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
caf0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 td>..</tr>..</ta
cb00: 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 46 69 6e 61 ble>..<br>..Fina
cb10: 6c 6c 79 2c 20 69 66 20 79 6f 75 20 77 69 73 68 lly, if you wish
cb20: 20 74 6f 20 73 65 6c 65 63 74 20 61 67 61 69 6e to select again
cb30: 20 74 68 65 20 69 6e 69 74 69 61 6c 20 73 74 61 the initial sta
cb40: 6e 64 61 72 64 20 73 65 74 74 69 6e 67 20 79 6f ndard setting yo
cb50: 75 20 6a 75 73 74 20 68 61 76 65 20 74 6f 20 65 u just have to e
cb60: 78 65 63 75 74 65 3c 62 72 3e 20 3c 62 3e 55 50 xecute<br> <b>UP
cb70: 44 41 54 45 20 62 79 66 6f 6f 74 20 53 45 54 20 DATE byfoot SET
cb80: 4f 70 74 69 6f 6e 73 20 3d 20 27 46 55 4c 4c 27 Options = 'FULL'
cb90: 3b 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a ;</b>.<br><br>..
cba0: 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 3c 61 <hr><br>..<h1><a
cbb0: 20 6e 61 6d 65 3d 22 6d 75 6c 74 69 22 3e 35 20 name="multi">5
cbc0: 2d 20 53 6f 6c 76 69 6e 67 20 6d 75 6c 74 69 2d - Solving multi-
cbd0: 64 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 destination Shor
cbe0: 74 65 73 74 20 50 61 74 68 20 70 72 6f 62 6c 65 test Path proble
cbf0: 6d 73 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a 41 20 76 ms</a></h1>..A v
cc00: 65 72 79 20 69 6e 74 65 72 65 73 74 69 6e 67 20 ery interesting
cc10: 66 65 61 74 75 72 65 20 73 75 70 70 6f 72 74 65 feature supporte
cc20: 64 20 62 79 20 74 68 65 20 44 69 6a 6b 73 74 72 d by the Dijkstr
cc30: 61 27 73 20 41 6c 67 6f 72 69 74 68 6d 20 69 73 a's Algorithm is
cc40: 20 74 68 61 74 20 69 74 20 72 6f 62 75 73 74 6c that it robustl
cc50: 79 20 65 6e 73 75 72 65 73 20 74 68 61 74 20 77 y ensures that w
cc60: 68 65 6e 20 61 20 64 65 73 74 69 6e 61 74 69 6f hen a destinatio
cc70: 6e 20 69 73 20 72 65 61 63 68 65 64 20 61 6c 6c n is reached all
cc80: 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e the destination
cc90: 73 20 70 72 65 73 65 6e 74 69 6e 67 20 61 20 3c s presenting a <
cca0: 62 3e 6c 65 73 73 65 72 20 63 6f 73 74 3c 2f 62 b>lesser cost</b
ccb0: 3e 20 68 61 76 65 20 61 6c 72 65 61 64 79 20 62 > have already b
ccc0: 65 65 6e 20 72 65 61 63 68 65 64 20 69 6e 20 73 een reached in s
ccd0: 6f 6d 65 20 70 72 65 76 69 6f 75 73 20 73 74 65 ome previous ste
cce0: 70 20 6f 66 20 74 68 65 20 70 72 6f 63 65 73 73 p of the process
ccf0: 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 61 6c 6c 6f .<br>..This allo
cd00: 77 73 20 74 6f 20 65 66 66 69 63 69 65 6e 74 6c ws to efficientl
cd10: 79 20 73 75 70 70 6f 72 74 20 3c 62 3e 6d 75 6c y support <b>mul
cd20: 74 69 70 6c 65 20 64 65 73 74 69 6e 61 74 69 6f tiple destinatio
cd30: 6e 73 3c 2f 62 3e 20 53 68 6f 72 74 65 73 74 20 ns</b> Shortest
cd40: 50 61 74 68 20 71 75 65 72 69 65 73 2e 0d 0a 59 Path queries...Y
cd50: 6f 75 20 73 69 6d 70 6c 79 20 68 61 76 65 20 74 ou simply have t
cd60: 6f 20 73 70 65 63 69 66 79 20 61 20 3c 62 3e 73 o specify a <b>s
cd70: 69 6e 67 6c 65 20 6f 72 69 67 69 6e 20 4e 6f 64 ingle origin Nod
cd80: 65 3c 2f 62 3e 20 61 6e 64 20 61 6e 20 3c 62 3e e</b> and an <b>
cd90: 61 72 62 69 74 72 61 72 79 20 6c 69 73 74 20 6f arbitrary list o
cda0: 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 4e 6f f destination No
cdb0: 64 65 73 3c 2f 62 3e 20 69 6e 20 61 20 73 69 6e des</b> in a sin
cdc0: 67 6c 65 20 44 69 6a 6b 73 74 72 61 27 73 20 65 gle Dijkstra's e
cdd0: 78 65 63 75 74 69 6f 6e 2e 3c 62 72 3e 3c 62 72 xecution.<br><br
cde0: 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 >..<u>Note</u>:
cdf0: 65 78 65 63 75 74 69 6e 67 20 61 20 6d 75 6c 74 executing a mult
ce00: 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 i-destination Sh
ce10: 6f 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 ortest Path quer
ce20: 79 20 72 65 71 75 69 72 65 73 20 61 20 3c 62 3e y requires a <b>
ce30: 70 72 6f 63 65 73 73 69 6e 67 20 74 69 6d 65 3c processing time<
ce40: 2f 62 3e 20 74 68 61 74 20 69 73 6e 27 74 20 74 /b> that isn't t
ce50: 68 65 20 3c 75 3e 73 75 6d 20 6f 66 20 61 6c 6c he <u>sum of all
ce60: 20 69 6e 64 69 76 69 64 75 61 6c 20 74 69 6d 69 individual timi
ce70: 6e 67 73 20 66 6f 72 20 65 61 63 68 20 64 65 73 ngs for each des
ce80: 74 69 6e 61 74 69 6f 6e 3c 2f 75 3e 2c 20 62 75 tination</u>, bu
ce90: 74 20 73 69 6d 70 6c 79 20 69 73 20 74 68 65 20 t simply is the
cea0: 3c 75 3e 74 69 6d 65 20 72 65 71 75 69 72 65 64 <u>time required
ceb0: 20 74 6f 20 72 65 61 63 68 20 74 68 65 20 6d 6f to reach the mo
cec0: 73 74 20 63 6f 73 74 6c 79 20 6f 66 20 61 6c 6c st costly of all
ced0: 20 64 65 73 74 69 6e 61 74 69 6f 6e 73 20 69 6e destinations in
cee0: 20 74 68 65 20 6c 69 73 74 3c 2f 75 3e 2e 3c 62 the list</u>.<b
cef0: 72 3e 0d 0a 54 68 69 73 20 69 73 6e 27 74 20 72 r>..This isn't r
cf00: 69 67 6f 72 6f 75 73 6c 79 20 74 72 75 65 20 69 igorously true i
cf10: 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 74 68 n the case of th
cf20: 65 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 e VirtualRouting
cf30: 20 73 70 65 63 69 66 69 63 20 69 6d 70 6c 65 6d specific implem
cf40: 65 6e 74 61 74 69 6f 6e 2c 20 62 65 63 61 75 73 entation, becaus
cf50: 65 20 61 72 72 61 6e 67 69 6e 67 20 74 68 65 20 e arranging the
cf60: 72 65 73 75 6c 74 73 65 74 20 74 6f 20 62 65 20 resultset to be
cf70: 72 65 74 75 72 6e 65 64 20 61 6e 64 20 63 72 65 returned and cre
cf80: 61 74 69 6e 67 20 61 6c 6c 20 74 68 65 20 69 6e ating all the in
cf90: 64 69 76 69 64 75 61 6c 20 4c 69 6e 65 73 74 72 dividual Linestr
cfa0: 69 6e 67 73 20 66 6f 72 20 65 61 63 68 20 64 65 ings for each de
cfb0: 73 74 69 6e 61 74 69 6f 6e 20 77 69 6c 6c 20 73 stination will s
cfc0: 75 72 65 6c 79 20 69 6d 70 6f 73 65 20 73 6f 6d urely impose som
cfd0: 65 20 66 75 72 74 68 65 72 20 6f 76 65 72 68 65 e further overhe
cfe0: 61 64 2c 20 62 75 74 20 6e 6f 6e 65 74 68 65 6c ad, but nonethel
cff0: 65 73 73 20 69 74 20 72 65 6d 61 69 6e 73 20 63 ess it remains c
d000: 6f 6e 66 69 72 6d 65 64 20 74 68 61 74 20 65 78 onfirmed that ex
d010: 65 63 75 74 69 6e 67 20 61 20 73 69 6e 67 6c 65 ecuting a single
d020: 20 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 multi-destinati
d030: 6f 6e 20 71 75 65 72 79 20 77 69 6c 6c 20 73 75 on query will su
d040: 72 65 6c 79 20 62 65 20 20 6e 6f 74 69 63 65 61 rely be noticea
d050: 62 6c 79 20 66 61 73 74 65 72 20 74 68 65 6e 20 bly faster then
d060: 65 78 65 63 75 74 69 6e 67 20 6d 61 6e 79 20 73 executing many s
d070: 70 61 72 73 65 20 73 69 6e 67 6c 65 2d 64 65 73 parse single-des
d080: 74 69 6e 61 74 69 6f 6e 20 71 75 65 72 69 65 73 tination queries
d090: 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 ...<verbatim>..S
d0a0: 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c ELECT Algorithm,
d0b0: 20 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e Request, Option
d0c0: 73 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f s, Delimiter, Ro
d0d0: 75 74 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c uteId, RouteRow,
d0e0: 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 Role, LinkRowid
d0f0: 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 , NodeFrom, Node
d100: 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 To, Cost, Geomet
d110: 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 ry, Name..FROM b
d120: 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 yfoot..WHERE Nod
d130: 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 eFrom = 178731 A
d140: 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 ND NodeTo = '183
d150: 32 38 36 2c 32 39 30 34 35 38 2c 31 38 31 39 39 286,290458,18199
d160: 39 2c 31 38 34 30 33 30 2c 31 32 34 36 32 32 2c 9,184030,124622,
d170: 31 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 183882,178754';.
d180: 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 73 .</verbatim>..As
d190: 20 79 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 you can easily
d1a0: 6e 6f 74 69 63 65 2c 20 61 20 3c 62 3e 6d 75 6c notice, a <b>mul
d1b0: 74 69 70 6c 65 2d 64 65 73 74 69 6e 61 74 69 6f tiple-destinatio
d1c0: 6e 73 3c 2f 62 3e 20 71 75 65 72 79 20 68 61 73 ns</b> query has
d1d0: 20 74 68 65 20 73 61 6d 65 20 69 64 65 6e 74 69 the same identi
d1e0: 63 61 6c 20 66 6f 72 6d 20 6f 66 20 61 6e 79 20 cal form of any
d1f0: 75 73 75 61 6c 20 53 68 6f 72 74 65 73 74 20 50 usual Shortest P
d200: 61 74 68 20 71 75 65 72 79 2c 20 65 78 63 65 70 ath query, excep
d210: 74 20 69 6e 20 74 68 61 74 20 3c 62 3e 4e 6f 64 t in that <b>Nod
d220: 65 54 6f 3c 2f 62 3e 20 6e 6f 77 20 63 6f 72 72 eTo</b> now corr
d230: 65 73 70 6f 6e 64 73 20 74 6f 20 61 20 63 6f 6d esponds to a com
d240: 6d 61 2d 73 65 70 61 72 61 74 65 64 20 6c 69 73 ma-separated lis
d250: 74 2e 3c 62 72 3e 0d 0a 54 68 65 20 66 6f 6c 6c t.<br>..The foll
d260: 6f 77 69 6e 67 20 74 61 62 6c 65 20 73 68 6f 77 owing table show
d270: 73 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 s the resultset
d280: 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 returned by the
d290: 70 72 65 76 69 6f 75 73 20 6d 75 6c 74 69 2d 64 previous multi-d
d2a0: 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 74 estination Short
d2b0: 65 73 74 20 50 61 74 68 20 71 75 65 72 79 2e 0d est Path query..
d2c0: 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c .<br><br>..<tabl
d2d0: 65 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 e border="1" bgc
d2e0: 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 olor="#ffffcf" c
d2f0: 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 ellspacing="4" c
d300: 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d ellpadding="6">.
d310: 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 .<tr><th bgcolor
d320: 3d 22 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 ="#d0d0a0">Algor
d330: 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 ithm</th><th bgc
d340: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
d350: 65 71 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 equest</th><th b
d360: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
d370: 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 >Options</th><th
d380: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
d390: 30 22 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 0">Delimiter</th
d3a0: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
d3b0: 30 64 30 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 0d0a0">RouteId</
d3c0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
d3d0: 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f #d0d0a0">RouteRo
d3e0: 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f w</th><th bgcolo
d3f0: 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 r="#d0d0a0">Role
d400: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
d410: 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 ="#d0d0a0">LinkR
d420: 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 owid</th><th bgc
d430: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
d440: 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 odeFrom</th><th
d450: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
d460: 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 ">NodeTo</th><th
d470: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
d480: 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 0">Cost</th><th
d490: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
d4a0: 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c ">Geometry</th><
d4b0: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
d4c0: 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 0a0">Name</th></
d4d0: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 tr>..<tr>..<td>D
d4e0: 69 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e ijkstra</td><td>
d4f0: 53 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 74 Shortest Path</t
d500: 64 3e 3c 74 64 3e 46 75 6c 6c 3c 2f 74 64 3e 3c d><td>Full</td><
d510: 74 64 3e 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 td>, [dec=44
d520: 2c 20 68 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 , hex=2c]</t
d530: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
d540: 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">0</td><td al
d550: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
d560: 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
d570: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
d580: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
d590: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
d5a0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 38 ign="right">1838
d5b0: 38 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 82</td><td align
d5c0: 3d 22 72 69 67 68 74 22 3e 31 35 34 2e 37 35 30 ="right">154.750
d5d0: 38 33 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 839</td><td>BLOB
d5e0: 20 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 sz=240 GEOMETRY
d5f0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
d600: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
d610: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
d620: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
d630: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
d640: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
d650: 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 right">0</td><td
d660: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
d670: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
d680: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
d690: 68 74 22 3e 32 32 32 36 33 36 3c 2f 74 64 3e 3c ht">222636</td><
d6a0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
d6b0: 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
d6c0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
d6d0: 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2000</td><td ali
d6e0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 33 2e 37 gn="right">103.7
d6f0: 33 35 37 32 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 35722</td><td>NU
d700: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 LL</td><td>VIA P
d710: 49 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 IETRO ARETINO</t
d720: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
d730: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
d740: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
d750: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
d760: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
d770: 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 right">0</td><td
d780: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
d790: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
d7a0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
d7b0: 68 74 22 3e 32 32 35 35 32 37 3c 2f 74 64 3e 3c ht">225527</td><
d7c0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
d7d0: 3e 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 >182000</td><td
d7e0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
d7f0: 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3882</td><td ali
d800: 67 6e 3d 22 72 69 67 68 74 22 3e 35 31 2e 30 31 gn="right">51.01
d810: 35 31 31 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 5117</td><td>NUL
d820: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4c 49 L</td><td>VIA LI
d830: 43 49 4f 20 4e 45 4e 43 45 54 54 49 3c 2f 74 64 CIO NENCETTI</td
d840: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
d850: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
d860: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
d870: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
d880: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
d890: 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 ight">1</td><td
d8a0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
d8b0: 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
d8c0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
d8d0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
d8e0: 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
d8f0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
d900: 34 30 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4030</td><td ali
d910: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 36 2e 33 gn="right">176.3
d920: 36 34 37 35 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 64755</td><td>BL
d930: 4f 42 20 73 7a 3d 33 30 34 20 47 45 4f 4d 45 54 OB sz=304 GEOMET
d940: 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
d950: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
d960: 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
d970: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
d980: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
d990: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
d9a0: 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c ="right">1</td><
d9b0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
d9c0: 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >1</td><td>Link<
d9d0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
d9e0: 69 67 68 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 ight">224014</td
d9f0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
da00: 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
da10: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
da20: 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 182885</td><td a
da30: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e lign="right">94.
da40: 38 31 32 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 812424</td><td>N
da50: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
da60: 50 49 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f PIETRO ARETINO</
da70: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
da80: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
da90: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
daa0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
dab0: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
dac0: 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 "right">1</td><t
dad0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
dae0: 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 2</td><td>Link</
daf0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
db00: 67 68 74 22 3e 32 32 34 38 36 32 3c 2f 74 64 3e ght">224862</td>
db10: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
db20: 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 ">182885</td><td
db30: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
db40: 38 32 30 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 82043</td><td al
db50: 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 37 2e 30 ign="right">37.0
db60: 39 35 32 38 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 95287</td><td>NU
db70: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d LL</td><td>VIA M
db80: 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d ARGARITONE</td>.
db90: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
dba0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
dbb0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
dbc0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
dbd0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
dbe0: 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">1</td><td al
dbf0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
dc00: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
dc10: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
dc20: 3e 32 32 36 30 37 30 3c 2f 74 64 3e 3c 74 64 20 >226070</td><td
dc30: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
dc40: 32 30 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2043</td><td ali
dc50: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 gn="right">18403
dc60: 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
dc70: 22 72 69 67 68 74 22 3e 34 34 2e 34 35 37 30 34 "right">44.45704
dc80: 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 4</td><td>NULL</
dc90: 74 64 3e 3c 74 64 3e 50 49 41 5a 5a 41 20 53 41 td><td>PIAZZA SA
dca0: 4e 54 27 41 47 4f 53 54 49 4e 4f 3c 2f 74 64 3e NT'AGOSTINO</td>
dcb0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
dcc0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
dcd0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
dce0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
dcf0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
dd00: 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 ght">2</td><td a
dd10: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
dd20: 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 td><td>Route</td
dd30: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
dd40: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
dd50: 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
dd60: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
dd70: 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 754</td><td alig
dd80: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 2e 36 37 n="right">224.67
dd90: 37 30 39 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 7095</td><td>BLO
dda0: 42 20 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 B sz=240 GEOMETR
ddb0: 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f Y</td><td>NULL</
ddc0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
ddd0: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
dde0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
ddf0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
de00: 4c 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 L<td align="righ
de10: 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">2</td><td ali
de20: 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 gn="right">1</td
de30: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
de40: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
de50: 32 31 39 30 34 35 3c 2f 74 64 3e 3c 74 64 20 61 219045</td><td a
de60: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
de70: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
de80: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 32 n="right">178732
de90: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
dea0: 72 69 67 68 74 22 3e 37 36 2e 30 32 31 30 30 37 right">76.021007
deb0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
dec0: 64 3e 3c 74 64 3e 56 49 41 20 41 53 53 41 42 3c d><td>VIA ASSAB<
ded0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
dee0: 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
def0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
df00: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
df10: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
df20: 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
df30: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
df40: 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >2</td><td>Link<
df50: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
df60: 69 67 68 74 22 3e 32 31 39 30 35 38 3c 2f 74 64 ight">219058</td
df70: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
df80: 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 t">178732</td><t
df90: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
dfa0: 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 178754</td><td a
dfb0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 38 lign="right">148
dfc0: 2e 36 35 36 30 38 39 3c 2f 74 64 3e 3c 74 64 3e .656089</td><td>
dfd0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
dfe0: 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 FRANCESCO CRISP
dff0: 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c I</td>..</tr>..<
e000: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
e010: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
e020: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e030: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
e040: 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 gn="right">3</td
e050: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e060: 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 t">0</td><td>Rou
e070: 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c te</td><td>NULL<
e080: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e090: 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
e0a0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e0b0: 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 t">181999</td><t
e0c0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e0d0: 32 36 30 2e 31 33 32 33 35 34 3c 2f 74 64 3e 3c 260.132354</td><
e0e0: 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 34 30 20 47 td>BLOB sz=240 G
e0f0: 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e EOMETRY</td><td>
e100: 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e NULL</td>..</tr>
e110: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
e120: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
e130: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
e140: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
e150: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
e160: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e170: 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e ight">1</td><td>
e180: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
e190: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 gn="right">22401
e1a0: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
e1b0: 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f "right">178731</
e1c0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e1d0: 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e ght">182885</td>
e1e0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e1f0: 22 3e 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e ">94.812424</td>
e200: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e210: 3e 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 >VIA PIETRO ARET
e220: 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d INO</td>..</tr>.
e230: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
e240: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e250: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e260: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
e270: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f lign="right">3</
e280: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e290: 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c ght">2</td><td>L
e2a0: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
e2b0: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 34 34 36 n="right">224446
e2c0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e2d0: 72 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 right">182885</t
e2e0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e2f0: 68 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c ht">178880</td><
e300: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e310: 3e 36 39 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c >69.727726</td><
e320: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e330: 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c VIA MARGARITONE<
e340: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
e350: 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
e360: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e370: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
e380: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
e390: 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c ="right">3</td><
e3a0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e3b0: 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >3</td><td>Link<
e3c0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e3d0: 69 67 68 74 22 3e 32 32 35 38 30 30 3c 2f 74 64 ight">225800</td
e3e0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e3f0: 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
e400: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e410: 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 181999</td><td a
e420: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 35 2e lign="right">95.
e430: 35 39 32 32 30 34 3c 2f 74 64 3e 3c 74 64 3e 4e 592204</td><td>N
e440: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
e450: 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 FRANCESCO CRISPI
e460: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
e470: 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
e480: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e490: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e4a0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
e4b0: 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e n="right">4</td>
e4c0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e4d0: 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 ">0</td><td>Rout
e4e0: 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f e</td><td>NULL</
e4f0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e500: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
e510: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e520: 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 ">183286</td><td
e530: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
e540: 30 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 00.912208</td><t
e550: 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 d>BLOB sz=272 GE
e560: 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e OMETRY</td><td>N
e570: 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
e580: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
e590: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e5a0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e5b0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
e5c0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f lign="right">4</
e5d0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e5e0: 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c ght">1</td><td>L
e5f0: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
e600: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 n="right">224014
e610: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e620: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
e630: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e640: 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c ht">182885</td><
e650: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e660: 3e 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e 3c >94.812424</td><
e670: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e680: 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 VIA PIETRO ARETI
e690: 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NO</td>..</tr>..
e6a0: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
e6b0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e6c0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e6d0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
e6e0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 ign="right">4</t
e6f0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e700: 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">2</td><td>Li
e710: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
e720: 3d 22 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c ="right">224446<
e730: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e740: 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 ight">182885</td
e750: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e760: 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
e770: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e780: 36 39 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 69.727726</td><t
e790: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
e7a0: 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f IA MARGARITONE</
e7b0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
e7c0: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
e7d0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e7e0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
e7f0: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
e800: 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 "right">4</td><t
e810: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e820: 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 3</td><td>Link</
e830: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e840: 67 68 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e ght">224414</td>
e850: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e860: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
e870: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
e880: 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 83286</td><td al
e890: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 36 2e ign="right">136.
e8a0: 33 37 32 30 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 372057</td><td>N
e8b0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
e8c0: 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e MARGARITONE</td>
e8d0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
e8e0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e8f0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
e900: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
e910: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e920: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e930: 3e 55 6e 72 65 61 63 68 61 62 6c 65 20 4e 6f 64 >Unreachable Nod
e940: 65 54 6f 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c eTo</td><td>NULL
e950: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e960: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
e970: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e980: 68 74 22 3e 32 39 30 34 35 38 3c 2f 74 64 3e 3c ht">290458</td><
e990: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e9a0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
e9b0: 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c L</td>..</tr>..<
e9c0: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
e9d0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
e9e0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e9f0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
ea00: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
ea10: 74 64 3e 3c 74 64 3e 55 6e 72 65 61 63 68 61 62 td><td>Unreachab
ea20: 6c 65 20 4e 6f 64 65 54 6f 3c 2f 74 64 3e 3c 74 le NodeTo</td><t
ea30: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
ea40: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
ea50: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
ea60: 6e 3d 22 72 69 67 68 74 22 3e 31 32 34 36 32 32 n="right">124622
ea70: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
ea80: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
ea90: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
eaa0: 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c tr>..</table>..<
eab0: 62 72 3e 0d 0a 4c 65 74 27 73 20 71 75 69 63 6b br>..Let's quick
eac0: 6c 79 20 65 78 61 6d 69 6e 65 20 74 68 65 20 72 ly examine the r
ead0: 65 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 esultset returne
eae0: 64 20 62 79 20 74 68 65 20 61 62 6f 76 65 20 3c d by the above <
eaf0: 62 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 b>multi-destinat
eb00: 69 6f 6e 73 3c 2f 62 3e 20 71 75 65 72 79 2e 0d ions</b> query..
eb10: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 20 6f .<ul>..<li>the o
eb20: 76 65 72 61 6c 6c 20 6c 61 79 6f 75 74 20 69 73 verall layout is
eb30: 20 61 6c 6d 6f 73 74 20 65 78 61 63 74 6c 79 20 almost exactly
eb40: 74 68 65 20 73 61 6d 65 20 61 73 20 79 6f 75 27 the same as you'
eb50: 76 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 ve already seen
eb60: 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 3c in the case of <
eb70: 62 3e 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 b>single-destina
eb80: 74 69 6f 6e 3c 2f 62 3e 20 71 75 65 72 69 65 73 tion</b> queries
eb90: 2c 20 62 75 74 20 69 6e 20 74 68 69 73 20 63 61 , but in this ca
eba0: 73 65 20 6d 6f 72 65 20 69 6e 64 69 76 69 64 75 se more individu
ebb0: 61 6c 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 al travel soluti
ebc0: 6f 6e 73 20 61 72 65 20 67 72 6f 75 70 65 64 20 ons are grouped
ebd0: 61 6c 74 6f 67 65 74 68 65 72 2e 3c 2f 6c 69 3e altogether.</li>
ebe0: 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 66 69 72 ..<li>the <b>fir
ebf0: 73 74 20 72 6f 77 3c 2f 62 3e 20 6f 66 20 74 68 st row</b> of th
ec00: 65 20 72 65 73 75 6c 74 73 65 74 20 69 73 20 73 e resultset is s
ec10: 6f 6d 65 77 61 79 20 65 78 63 65 70 74 69 6f 6e omeway exception
ec20: 61 6c 2c 20 61 6e 64 20 69 73 20 74 68 65 20 75 al, and is the u
ec30: 6e 69 71 75 65 20 72 6f 77 20 6f 66 20 74 68 65 nique row of the
ec40: 20 72 65 73 75 6c 74 73 65 74 20 70 72 65 73 65 resultset prese
ec50: 6e 74 69 6e 67 20 3c 62 3e 4e 4f 54 20 4e 55 4c nting <b>NOT NUL
ec60: 4c 3c 2f 62 3e 20 76 61 6c 75 65 73 20 69 6e 20 L</b> values in
ec70: 74 68 65 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d the <b>Algorithm
ec80: 3c 2f 62 3e 2c 20 3c 62 3e 52 65 71 75 65 73 74 </b>, <b>Request
ec90: 3c 2f 62 3e 2c 20 3c 62 3e 4f 70 74 69 6f 6e 73 </b>, <b>Options
eca0: 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 44 65 6c 69 </b> and <b>Deli
ecb0: 6d 69 74 65 72 3c 2f 62 3e 20 63 6f 6c 75 6d 6e miter</b> column
ecc0: 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 s.</li>..<li>the
ecd0: 20 3c 62 3e 52 6f 75 74 65 49 64 3c 2f 62 3e 20 <b>RouteId</b>
ece0: 63 6f 6c 75 6d 6e 20 69 73 20 69 6e 74 65 6e 64 column is intend
ecf0: 65 64 20 74 6f 20 67 72 6f 75 70 20 74 6f 67 65 ed to group toge
ed00: 74 68 65 72 20 61 6c 6c 20 72 6f 77 73 20 62 65 ther all rows be
ed10: 6c 6f 6e 67 69 6e 67 20 74 6f 20 73 61 6d 65 20 longing to same
ed20: 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 20 travel solution
ed30: 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 52 (<i>aka</i> <b>R
ed40: 6f 75 74 65 3c 2f 62 3e 29 2e 3c 62 72 3e 0d 0a oute</b>).<br>..
ed50: 52 6f 75 74 65 73 20 61 72 65 20 70 72 6f 67 72 Routes are progr
ed60: 65 73 73 69 76 65 6c 79 20 6e 75 6d 62 65 72 65 essively numbere
ed70: 64 20 61 6e 64 20 61 72 65 20 6f 72 64 65 72 65 d and are ordere
ed80: 64 20 61 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f d accordingly to
ed90: 20 74 68 65 69 72 20 3c 62 3e 74 6f 74 61 6c 20 their <b>total
eda0: 63 6f 73 74 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a cost</b>.</li>..
edb0: 3c 6c 69 3e 74 68 65 20 3c 62 3e 52 6f 75 74 65 <li>the <b>Route
edc0: 52 6f 77 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 20 68 Row</b> column h
edd0: 61 73 20 74 68 65 20 73 61 6d 65 20 69 6e 74 65 as the same inte
ede0: 72 70 72 65 74 61 74 69 6f 6e 20 61 73 20 69 6e rpretation as in
edf0: 20 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 single-destinat
ee00: 69 6f 6e 20 72 65 73 75 6c 74 73 65 74 73 2c 20 ion resultsets,
ee10: 61 6e 64 20 69 73 20 69 6e 74 65 6e 64 65 64 20 and is intended
ee20: 74 6f 20 70 72 6f 67 72 65 73 73 69 76 65 6c 79 to progressively
ee30: 20 6f 72 64 65 72 20 69 6e 20 74 68 65 20 63 6f order in the co
ee40: 72 72 65 63 74 20 73 65 71 75 65 6e 63 65 20 61 rrect sequence a
ee50: 6c 6c 20 4c 69 6e 6b 73 20 63 6f 6e 6e 65 63 74 ll Links connect
ee60: 69 6e 67 20 74 68 65 20 4f 72 69 67 69 6e 20 61 ing the Origin a
ee70: 6e 64 20 74 68 65 20 44 65 73 74 69 6e 61 74 69 nd the Destinati
ee80: 6f 6e 20 6f 66 20 65 61 63 68 20 52 6f 75 74 65 on of each Route
ee90: 2e 3c 62 72 3e 0d 0a 3c 62 3e 52 6f 75 74 65 52 .<br>..<b>RouteR
eea0: 6f 77 3d 30 3c 2f 62 3e 20 61 6c 77 61 79 73 20 ow=0</b> always
eeb0: 69 64 65 6e 74 69 66 69 65 73 20 74 68 65 20 68 identifies the h
eec0: 65 61 64 65 72 20 72 6f 77 20 6f 66 20 65 61 63 eader row of eac
eed0: 68 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f h travel solutio
eee0: 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a n.</li>..</ul>..
eef0: 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 69 63 65 3c <br>..<u>Notice<
ef00: 2f 75 3e 3a 20 74 68 65 20 6c 61 73 74 20 74 77 /u>: the last tw
ef10: 6f 20 72 6f 77 73 20 69 6e 20 74 68 65 20 72 65 o rows in the re
ef20: 73 75 6c 74 73 65 74 20 72 65 70 6f 72 74 73 20 sultset reports
ef30: 3c 62 3e 55 6e 72 65 61 63 68 61 62 6c 65 20 4e <b>Unreachable N
ef40: 6f 64 65 54 6f 09 3c 2f 62 3e 20 69 6e 20 74 68 odeTo.</b> in th
ef50: 65 20 3c 62 3e 52 6f 6c 65 3c 2f 62 3e 20 63 6f e <b>Role</b> co
ef60: 6c 75 6d 6e 2c 20 74 68 75 73 20 69 6d 70 6c 79 lumn, thus imply
ef70: 69 6e 67 20 61 20 3c 62 3e 66 6f 72 62 69 64 64 ing a <b>forbidd
ef80: 65 6e 20 63 6f 6e 6e 65 63 74 69 6f 6e 3c 2f 62 en connection</b
ef90: 3e 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 77 61 73 >.<br>..This was
efa0: 20 70 75 72 70 6f 73 65 6c 79 20 69 6e 74 65 6e purposely inten
efb0: 64 65 64 3a 20 4e 6f 64 65 73 20 3c 62 3e 32 39 ded: Nodes <b>29
efc0: 30 34 35 38 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 0458</b> and <b>
efd0: 31 32 34 36 32 32 3c 2f 62 3e 20 61 72 65 20 6c 124622</b> are l
efe0: 6f 63 61 74 65 64 20 6f 6e 20 45 6c 62 61 20 61 ocated on Elba a
eff0: 6e 64 20 47 69 67 6c 69 6f 20 69 73 6c 61 6e 64 nd Giglio island
f000: 73 2e 20 54 68 65 20 75 6e 64 65 72 6c 61 79 69 s. The underlayi
f010: 6e 67 20 4e 65 74 77 6f 72 6b 20 69 73 20 62 61 ng Network is ba
f020: 73 65 64 20 6f 6e 20 3c 62 3e 49 74 65 72 2e 4e sed on <b>Iter.N
f030: 65 74 3c 2f 62 3e 20 74 68 61 74 20 64 6f 6e 27 et</b> that don'
f040: 74 20 73 75 70 70 6f 72 74 73 20 66 65 72 72 79 t supports ferry
f050: 20 63 6f 6e 6e 65 63 74 69 6f 6e 73 2c 20 73 6f connections, so
f060: 20 61 6e 79 20 74 72 61 76 65 6c 20 73 6f 6c 75 any travel solu
f070: 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 74 68 65 tion between the
f080: 20 69 73 6c 61 6e 64 73 20 61 6e 64 20 74 68 65 islands and the
f090: 20 6d 61 69 6e 6c 61 6e 64 20 77 69 6c 6c 20 61 mainland will a
f0a0: 6c 77 61 79 73 20 66 61 69 6c 2e 0d 0a 3c 62 72 lways fail...<br
f0b0: 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 41 6c 73 6f 20 ><br><br>..Also
f0c0: 3c 62 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 <b>multi-destina
f0d0: 74 69 6f 6e 73 3c 2f 62 3e 20 71 75 65 72 69 65 tions</b> querie
f0e0: 73 20 63 61 6e 20 62 65 20 63 75 73 74 6f 6d 69 s can be customi
f0f0: 7a 65 64 2c 20 62 75 74 20 74 68 65 20 63 6f 6e zed, but the con
f100: 66 69 67 75 72 61 74 69 6f 6e 20 72 75 6c 65 73 figuration rules
f110: 20 73 6c 69 67 68 74 6c 79 20 64 69 66 66 65 72 slightly differ
f120: 20 66 72 6f 6d 20 77 68 61 74 20 79 6f 75 20 68 from what you h
f130: 61 76 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e ave already seen
f140: 20 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 in the case of
f150: 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 single-destinati
f160: 6f 6e 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c on...<ul>..<li><
f170: 62 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 3a b>Algorithm</b>:
f180: 20 6f 6e 6c 79 20 3c 62 3e 44 69 6a 6b 73 74 72 only <b>Dijkstr
f190: 61 3c 2f 62 3e 20 69 73 20 73 75 70 70 6f 72 74 a</b> is support
f1a0: 65 64 20 62 79 20 6d 75 6c 74 69 2d 64 65 73 74 ed by multi-dest
f1b0: 69 6e 61 74 69 6f 6e 3b 20 61 6e 79 20 61 74 74 ination; any att
f1c0: 65 6d 70 74 20 74 6f 20 75 73 65 20 74 68 65 20 empt to use the
f1d0: 61 6c 74 65 72 6e 61 74 69 76 65 20 3c 62 3e 41 alternative <b>A
f1e0: 2a 3c 2f 62 3e 20 61 6c 67 6f 72 69 74 68 6d 20 *</b> algorithm
f1f0: 77 69 6c 6c 20 73 69 6d 70 6c 79 20 72 65 74 75 will simply retu
f200: 72 6e 20 61 6e 20 65 6d 70 74 79 20 72 65 73 75 rn an empty resu
f210: 6c 74 73 65 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 ltset.</li>..<li
f220: 3e 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 3a ><b>Options</b>:
f230: 20 74 68 65 20 75 73 75 61 6c 20 3c 62 3e 46 55 the usual <b>FU
f240: 4c 4c 3c 2f 62 3e 2c 20 3c 62 3e 53 49 4d 50 4c LL</b>, <b>SIMPL
f250: 45 3c 2f 62 3e 2c 20 3c 62 3e 4e 4f 20 4c 49 4e E</b>, <b>NO LIN
f260: 4b 53 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 4f KS</b> and <b>NO
f270: 20 47 45 4f 4d 45 54 52 49 45 53 3c 2f 62 3e 20 GEOMETRIES</b>
f280: 61 72 65 20 73 75 70 70 6f 72 74 65 64 20 61 6e are supported an
f290: 64 20 77 69 6c 6c 20 68 61 76 65 20 74 68 65 20 d will have the
f2a0: 73 61 6d 65 20 65 66 66 65 63 74 20 61 73 20 69 same effect as i
f2b0: 6e 20 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 n single-destina
f2c0: 74 69 6f 6e 20 71 75 65 72 69 65 73 2e 3c 2f 6c tion queries.</l
f2d0: 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 76 65 72 62 i>..</ul>..<verb
f2e0: 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 atim>..UPDATE by
f2f0: 66 6f 6f 74 20 53 45 54 20 4f 70 74 69 6f 6e 73 foot SET Options
f300: 20 3d 20 27 53 49 4d 50 4c 45 27 3b 0d 0a 0d 0a = 'SIMPLE';....
f310: 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d SELECT Algorithm
f320: 2c 20 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f , Request, Optio
f330: 6e 73 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 ns, Delimiter, R
f340: 6f 75 74 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 outeId, RouteRow
f350: 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 , Role, LinkRowi
f360: 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 d, NodeFrom, Nod
f370: 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 eTo, Cost, Geome
f380: 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 try, Name..FROM
f390: 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f byfoot..WHERE No
f3a0: 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 deFrom = 178731
f3b0: 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 AND NodeTo = '18
f3c0: 33 32 38 36 2c 32 39 30 34 35 38 2c 31 38 31 39 3286,290458,1819
f3d0: 39 39 2c 31 38 34 30 33 30 2c 31 32 34 36 32 32 99,184030,124622
f3e0: 2c 31 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b ,183882,178754';
f3f0: 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 54 ..</verbatim>..T
f400: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 he following tab
f410: 6c 65 20 73 68 6f 77 73 20 74 68 65 20 72 65 73 le shows the res
f420: 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 ultset returned
f430: 62 79 20 74 68 65 20 73 61 6d 65 20 6d 75 6c 74 by the same mult
f440: 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 20 71 75 i-destination qu
f450: 65 72 79 20 75 73 65 64 20 69 6e 20 74 68 65 20 ery used in the
f460: 70 72 65 76 69 6f 75 73 20 65 78 61 6d 70 6c 65 previous example
f470: 20 61 66 74 65 72 20 65 6e 61 62 6c 69 6e 67 20 after enabling
f480: 74 68 65 20 3c 62 3e 53 49 4d 50 4c 45 3c 2f 62 the <b>SIMPLE</b
f490: 3e 20 6f 70 74 69 6f 6e 2e 0d 0a 3c 62 72 3e 3c > option...<br><
f4a0: 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 br>..<table bord
f4b0: 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 er="1" bgcolor="
f4c0: 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 #ffffcf" cellspa
f4d0: 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 cing="4" cellpad
f4e0: 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c ding="6">..<tr><
f4f0: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
f500: 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 0a0">Algorithm</
f510: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
f520: 23 64 30 64 30 61 30 22 3e 52 65 71 75 65 73 74 #d0d0a0">Request
f530: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
f540: 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f ="#d0d0a0">Optio
f550: 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ns</th><th bgcol
f560: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 44 65 6c or="#d0d0a0">Del
f570: 69 6d 69 74 65 72 3c 2f 74 68 3e 3c 74 68 20 62 imiter</th><th b
f580: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
f590: 3e 52 6f 75 74 65 49 64 3c 2f 74 68 3e 3c 74 68 >RouteId</th><th
f5a0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
f5b0: 30 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 0">RouteRow</th>
f5c0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
f5d0: 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c d0a0">Role</th><
f5e0: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
f5f0: 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 0a0">LinkRowid</
f600: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
f610: 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f #d0d0a0">NodeFro
f620: 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f m</th><th bgcolo
f630: 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 r="#d0d0a0">Node
f640: 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c To</th><th bgcol
f650: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 or="#d0d0a0">Cos
f660: 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f t</th><th bgcolo
f670: 72 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d r="#d0d0a0">Geom
f680: 65 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 etry</th><th bgc
f690: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
f6a0: 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c ame</th></tr>..<
f6b0: 74 72 3e 0d 0a 3c 74 64 3e 44 69 6a 6b 73 74 72 tr>..<td>Dijkstr
f6c0: 61 3c 2f 74 64 3e 3c 74 64 3e 53 68 6f 72 74 65 a</td><td>Shorte
f6d0: 73 74 20 50 61 74 68 3c 2f 74 64 3e 3c 74 64 3e st Path</td><td>
f6e0: 46 75 6c 6c 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 Full</td><td>, &
f6f0: 23 39 31 3b 64 65 63 3d 34 34 2c 20 68 65 78 3d #91;dec=44, hex=
f700: 32 63 26 23 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 2c]</td><td
f710: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
f720: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
f730: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
f740: 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
f750: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
f760: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
f770: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
f780: 69 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 ight">183882</td
f790: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
f7a0: 74 22 3e 31 35 34 2e 37 35 30 38 33 39 3c 2f 74 t">154.750839</t
f7b0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
f7c0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
f7d0: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
f7e0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
f7f0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
f800: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
f810: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
f820: 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >1</td><td align
f830: 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
f840: 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 td>Route</td><td
f850: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
f860: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
f870: 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
f880: 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 30 3c ="right">184030<
f890: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
f8a0: 69 67 68 74 22 3e 31 37 36 2e 33 36 34 37 35 35 ight">176.364755
f8b0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
f8c0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
f8d0: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
f8e0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
f8f0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
f900: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
f910: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
f920: 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">2</td><td al
f930: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
f940: 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
f950: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
f960: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
f970: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
f980: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
f990: 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 54</td><td align
f9a0: 3d 22 72 69 67 68 74 22 3e 32 32 34 2e 36 37 37 ="right">224.677
f9b0: 30 39 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 095</td><td>NULL
f9c0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
f9d0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
f9e0: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
f9f0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
fa00: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
fa10: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
fa20: 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 right">3</td><td
fa30: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 align="right">0
fa40: 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f </td><td>Route</
fa50: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
fa60: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
fa70: 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 ">178731</td><td
fa80: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
fa90: 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 81999</td><td al
faa0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 36 30 2e ign="right">260.
fab0: 31 33 32 33 35 34 3c 2f 74 64 3e 3c 74 64 3e 4e 132354</td><td>N
fac0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
fad0: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
fae0: 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
faf0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
fb00: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
fb10: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
fb20: 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e n="right">4</td>
fb30: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
fb40: 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 ">0</td><td>Rout
fb50: 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f e</td><td>NULL</
fb60: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
fb70: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
fb80: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
fb90: 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 ">183286</td><td
fba0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
fbb0: 30 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 00.912208</td><t
fbc0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
fbd0: 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
fbe0: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
fbf0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
fc00: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
fc10: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
fc20: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
fc30: 3c 2f 74 64 3e 3c 74 64 3e 55 6e 72 65 61 63 68 </td><td>Unreach
fc40: 61 62 6c 65 20 4e 6f 64 65 54 6f 3c 2f 74 64 3e able NodeTo</td>
fc50: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
fc60: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
fc70: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
fc80: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 39 30 34 ign="right">2904
fc90: 35 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 58</td><td>NULL<
fca0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
fcb0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a ><td>NULL</td>..
fcc0: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
fcd0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
fce0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
fcf0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
fd00: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
fd10: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 55 d>NULL</td><td>U
fd20: 6e 72 65 61 63 68 61 62 6c 65 20 4e 6f 64 65 54 nreachable NodeT
fd30: 6f 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f o</td><td>NULL</
fd40: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
fd50: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
fd60: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
fd70: 22 3e 31 32 34 36 32 32 3c 2f 74 64 3e 3c 74 64 ">124622</td><td
fd80: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
fd90: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
fda0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 /td>..</tr>..</t
fdb0: 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 54 68 65 able>..<br>..The
fdc0: 20 6d 61 70 20 62 65 6c 6f 77 20 67 72 61 70 68 map below graph
fdd0: 69 63 61 6c 6c 79 20 73 68 6f 77 73 20 74 68 65 ically shows the
fde0: 20 70 72 65 76 69 6f 75 73 20 3c 62 3e 6d 75 6c previous <b>mul
fdf0: 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c ti-destinations<
fe00: 2f 62 3e 20 71 75 65 72 69 65 73 2e 0d 0a 3c 62 /b> queries...<b
fe10: 72 3e 3c 62 72 3e 0d 0a 3c 69 6d 67 20 73 72 63 r><br>..<img src
fe20: 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 ="https://www.ga
fe30: 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 ia-gis.it/gaia-s
fe40: 69 6e 73 2f 72 6f 75 74 69 6e 67 2d 66 69 67 73 ins/routing-figs
fe50: 2f 72 6f 75 74 69 6e 67 33 2e 6a 70 67 22 20 61 /routing3.jpg" a
fe60: 6c 74 3d 22 66 69 67 33 22 3e 0d 0a 3c 75 6c 3e lt="fig3">..<ul>
fe70: 0d 0a 3c 6c 69 3e 52 65 64 20 73 74 61 72 3a 20 ..<li>Red star:
fe80: 74 68 65 20 4f 72 69 67 69 6e 20 4e 6f 64 65 2e the Origin Node.
fe90: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 47 72 65 65 6e </li>..<li>Green
fea0: 20 64 6f 74 73 3a 20 74 68 65 20 44 65 73 74 69 dots: the Desti
feb0: 6e 61 74 69 6f 6e 20 4e 6f 64 65 73 2e 3c 2f 6c nation Nodes.</l
fec0: 69 3e 0d 0a 3c 6c 69 3e 59 65 6c 6c 6f 77 20 6c i>..<li>Yellow l
fed0: 69 6e 65 73 3a 20 61 6c 6c 20 69 6e 64 69 76 69 ines: all indivi
fee0: 64 75 61 6c 20 74 72 61 76 65 6c 20 73 6f 6c 75 dual travel solu
fef0: 74 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 tions.</li>..</u
ff00: 6c 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 l>..<br>..<table
ff10: 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 62 30 36 bgcolor="#ffb06
ff20: 30 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 0" cellspacing="
ff30: 31 30 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 10" cellpadding=
ff40: 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 68 "6"><tr><td>..<h
ff50: 33 3e 44 61 6e 67 65 72 6f 75 73 20 70 69 74 66 3>Dangerous pitf
ff60: 61 6c 6c 73 20 72 65 6c 61 74 65 64 20 74 6f 20 alls related to
ff70: 6d 75 6c 74 69 70 6c 65 20 64 65 73 74 69 6e 61 multiple destina
ff80: 74 69 6f 6e 20 6c 69 73 74 73 3c 2f 68 33 3e 0d tion lists</h3>.
ff90: 0a 53 51 4c 20 73 79 6e 74 61 78 20 64 69 72 65 .SQL syntax dire
ffa0: 63 74 6c 79 20 61 6c 6c 6f 77 73 20 74 6f 20 73 ctly allows to s
ffb0: 70 65 63 69 66 79 20 6c 69 73 74 73 20 6f 66 20 pecify lists of
ffc0: 20 6d 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 multiple values
ffd0: 2c 20 73 6f 20 6d 61 79 20 62 65 20 79 6f 75 20 , so may be you
ffe0: 61 72 65 20 6e 6f 77 20 77 6f 6e 64 65 72 69 6e are now wonderin
fff0: 67 20 61 62 6f 75 74 20 77 72 69 74 69 6e 67 20 g about writing
10000 74 68 65 20 3c 62 3e 6d 75 6c 74 69 70 6c 65 20 the <b>multiple
10010 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 3e destinations</b>
10020 20 71 75 65 72 79 20 74 65 73 74 65 64 20 69 6e query tested in
10030 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 65 78 the previous ex
10040 61 6d 70 6c 65 73 20 74 68 69 73 20 77 61 79 3a amples this way:
10050 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 ..<verbatim>..SE
10060 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 LECT Algorithm,
10070 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 Request, Options
10080 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 , Delimiter, Rou
10090 74 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 teId, RouteRow,
100a0 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c Role, LinkRowid,
100b0 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 NodeFrom, NodeT
100c0 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 o, Cost, Geometr
100d0 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 y, Name..FROM by
100e0 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 foot..WHERE Node
100f0 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e From = 178731 AN
10100 44 20 4e 6f 64 65 54 6f 20 49 4e 20 28 31 38 33 D NodeTo IN (183
10110 32 38 36 2c 20 32 39 30 34 35 38 2c 20 31 38 31 286, 290458, 181
10120 39 39 39 2c 20 31 38 34 30 33 30 2c 20 31 32 34 999, 184030, 124
10130 36 32 32 2c 20 31 38 33 38 38 32 2c 20 31 37 38 622, 183882, 178
10140 37 35 34 29 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 754);..</verbati
10150 6d 3e 0d 0a 54 68 65 72 65 20 69 73 20 61 20 76 m>..There is a v
10160 65 72 79 20 67 6f 6f 64 20 72 65 61 73 6f 6e 20 ery good reason
10170 64 69 73 63 6f 75 72 61 67 69 6e 67 20 66 72 6f discouraging fro
10180 6d 20 64 6f 69 6e 67 20 73 75 63 68 20 61 20 74 m doing such a t
10190 68 69 6e 67 2c 20 6c 65 74 27 73 20 73 65 65 20 hing, let's see
101a0 77 68 79 2e 3c 62 72 3e 0d 0a 3c 62 3e 53 51 4c why.<br>..<b>SQL
101b0 69 74 65 3c 2f 62 3e 20 77 69 6c 6c 20 70 72 6f ite</b> will pro
101c0 63 65 73 73 20 61 20 72 65 71 75 65 73 74 20 77 cess a request w
101d0 72 69 74 74 65 6e 20 74 68 69 73 20 77 61 79 20 ritten this way
101e0 62 79 20 72 65 70 65 61 74 65 64 6c 79 20 63 61 by repeatedly ca
101f0 6c 6c 69 6e 67 20 56 69 72 74 75 61 6c 52 6f 75 lling VirtualRou
10200 74 69 6e 67 20 70 61 73 73 69 6e 67 20 65 61 63 ting passing eac
10210 68 20 74 69 6d 65 20 61 20 73 69 6e 67 6c 65 20 h time a single
10220 44 65 73 74 69 6e 61 74 69 6f 6e 3b 20 61 6e 64 Destination; and
10230 20 63 6f 6e 73 65 71 75 65 6e 74 6c 79 20 3c 62 consequently <b
10240 3e 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 3c >VirtualRouting<
10250 2f 62 3e 20 77 69 6c 6c 20 6e 65 76 65 72 20 72 /b> will never r
10260 65 63 65 69 76 65 20 74 68 65 20 63 72 69 74 69 eceive the criti
10270 63 61 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 cal information
10280 74 68 61 74 20 61 20 73 69 6e 67 6c 65 20 6d 6f that a single mo
10290 6e 6f 6c 69 74 68 69 63 20 72 65 71 75 65 73 74 nolithic request
102a0 20 77 61 73 20 69 6e 74 65 6e 64 65 64 20 74 6f was intended to
102b0 20 62 65 20 65 78 65 63 75 74 65 64 20 69 6e 20 be executed in
102c0 61 20 73 69 6e 67 6c 65 20 73 68 6f 74 2e 20 53 a single shot. S
102d0 6f 20 74 68 65 20 72 65 71 75 65 73 74 20 63 6f o the request co
102e0 6e 74 65 78 74 20 77 69 6c 6c 20 62 65 20 65 61 ntext will be ea
102f0 73 69 6c 79 20 6d 69 73 69 6e 74 65 72 70 72 65 sily misinterpre
10300 74 65 64 2c 20 61 6e 64 20 61 6e 79 20 65 78 70 ted, and any exp
10310 65 63 74 65 64 20 73 70 65 65 64 20 62 65 6e 65 ected speed bene
10320 66 69 74 20 77 69 6c 6c 20 62 65 20 63 6f 6d 70 fit will be comp
10330 6c 65 74 65 6c 79 20 66 72 75 73 74 72 61 74 65 letely frustrate
10340 64 2e 0d 0a 3c 68 33 3e 42 65 77 61 72 65 3c 2f d...<h3>Beware</
10350 68 33 3e 0d 0a 3c 62 3e 4e 65 76 65 72 20 65 76 h3>..<b>Never ev
10360 65 72 3c 2f 62 3e 20 61 74 74 65 6d 70 74 20 74 er</b> attempt t
10370 6f 20 64 65 66 69 6e 65 20 61 20 6c 69 73 74 20 o define a list
10380 6f 66 20 6d 75 6c 74 69 70 6c 65 20 64 65 73 74 of multiple dest
10390 69 6e 61 74 69 6f 6e 73 20 75 73 69 6e 67 20 74 inations using t
103a0 68 65 20 73 74 61 6e 64 61 72 64 20 53 51 4c 20 he standard SQL
103b0 73 79 6e 74 61 78 20 3c 62 3e 3c 69 3e 57 48 45 syntax <b><i>WHE
103c0 52 45 20 4e 6f 64 65 54 6f 20 49 4e 20 28 2e 2e RE NodeTo IN (..
103d0 2e 2e 2e 2e 29 3c 2f 69 3e 3c 2f 62 3e 2c 20 62 ....)</i></b>, b
103e0 65 63 61 75 73 65 20 74 68 69 73 20 77 69 6c 6c ecause this will
103f0 20 63 65 72 74 61 69 6e 6c 79 20 63 61 75 73 65 certainly cause
10400 20 6d 61 6e 79 20 75 6e 65 78 70 65 63 74 65 64 many unexpected
10410 20 74 72 6f 75 62 6c 65 73 2e 3c 62 72 3e 0d 0a troubles.<br>..
10420 42 61 64 6c 79 20 66 6f 72 6d 61 74 74 65 64 20 Badly formatted
10430 72 65 73 75 6c 74 73 65 74 73 20 77 69 6c 6c 20 resultsets will
10440 62 65 20 74 68 65 6e 20 72 65 74 75 72 6e 65 64 be then returned
10450 2c 20 6d 61 79 20 62 65 20 63 6f 6e 74 61 69 6e , may be contain
10460 69 6e 67 20 77 72 6f 6e 67 20 72 65 73 75 6c 74 ing wrong result
10470 73 2e 20 3c 62 3e 59 6f 75 20 61 72 65 20 77 61 s. <b>You are wa
10480 72 6e 65 64 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 rned</b>.<br><br
10490 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 >..</td></tr></t
104a0 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 able>..<br>..<ta
104b0 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 ble bgcolor="#c0
104c0 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e ffc0" cellspacin
104d0 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 g="10" cellpaddi
104e0 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d ng="6"><tr><td>.
104f0 0a 3c 68 33 3e 48 6f 77 20 74 6f 20 63 6f 72 72 .<h3>How to corr
10500 65 63 74 6c 79 20 66 6f 72 6d 61 74 20 6d 75 6c ectly format mul
10510 74 69 70 6c 65 20 64 65 73 74 69 6e 61 74 69 6f tiple destinatio
10520 6e 73 20 6c 69 73 74 73 3c 2f 68 33 3e 0d 0a 56 ns lists</h3>..V
10530 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 61 6c irtualRouting al
10540 77 61 79 73 20 65 78 70 65 63 74 73 20 74 6f 20 ways expects to
10550 72 65 63 65 69 76 65 20 61 20 3c 62 3e 6d 75 6c receive a <b>mul
10560 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c ti-destinations<
10570 2f 62 3e 20 6c 69 73 74 20 61 73 20 61 20 3c 62 /b> list as a <b
10580 3e 54 45 58 54 3c 2f 62 3e 20 73 74 72 69 6e 67 >TEXT</b> string
10590 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 69 67 68 containing tigh
105a0 74 6c 79 20 70 61 63 6b 65 64 20 76 61 6c 75 65 tly packed value
105b0 73 20 73 65 70 61 72 61 74 65 64 20 62 79 20 61 s separated by a
105c0 20 63 6f 6e 76 65 6e 74 69 6f 6e 61 6c 20 3c 62 conventional <b
105d0 3e 64 65 6c 69 6d 69 74 65 72 3c 2f 62 3e 20 28 >delimiter</b> (
105e0 75 73 75 61 6c 6c 79 20 72 65 70 72 65 73 65 6e usually represen
105f0 74 65 64 20 62 79 20 61 20 3c 62 3e 63 6f 6d 6d ted by a <b>comm
10600 61 3c 2f 62 3e 29 2e 3c 62 72 3e 0d 0a 45 78 61 a</b>).<br>..Exa
10610 6d 70 6c 65 73 20 6f 66 20 3c 62 3e 77 65 6c 6c mples of <b>well
10620 20 66 6f 72 6d 61 74 74 65 64 3c 2f 62 3e 20 6d formatted</b> m
10630 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e ulti-destination
10640 73 20 6c 69 73 74 73 3a 0d 0a 3c 76 65 72 62 61 s lists:..<verba
10650 74 69 6d 3e 0d 0a 27 31 2c 32 2c 33 2c 34 2c 35 tim>..'1,2,3,4,5
10660 2c 31 30 2c 31 30 30 2c 31 30 30 30 2c 31 30 30 ,10,100,1000,100
10670 30 30 30 27 20 20 20 2d 2d 20 69 6e 74 65 67 65 000' -- intege
10680 72 20 4e 6f 64 65 20 49 44 73 0d 0a 0d 0a 27 41 r Node IDs....'A
10690 31 30 30 42 2c 41 31 30 30 46 2c 42 32 35 30 5a 100B,A100F,B250Z
106a0 2c 43 30 31 30 4d 2c 5a 39 39 39 41 27 20 20 2d ,C010M,Z999A' -
106b0 2d 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 20 4e - alphanumeric N
106c0 6f 64 65 20 43 6f 64 65 73 0d 0a 3c 2f 76 65 72 ode Codes..</ver
106d0 62 61 74 69 6d 3e 0d 0a 45 78 61 6d 70 6c 65 73 batim>..Examples
106e0 20 6f 66 20 3c 62 3e 62 61 64 6c 79 20 66 6f 72 of <b>badly for
106f0 6d 61 74 74 65 64 3c 2f 62 3e 20 6d 75 6c 74 69 matted</b> multi
10700 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 20 6c 69 -destinations li
10710 73 74 73 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e sts:..<verbatim>
10720 0d 0a 27 20 20 31 2c 20 32 2c 20 33 2c 20 34 20 ..' 1, 2, 3, 4
10730 2c 20 35 20 2c 20 31 30 2c 20 31 30 30 2c 20 31 , 5 , 10, 100, 1
10740 30 30 30 2c 20 31 30 30 30 30 30 20 20 27 20 20 000, 100000 '
10750 20 2d 2d 20 69 6e 74 65 67 65 72 20 4e 6f 64 65 -- integer Node
10760 20 49 44 73 0d 0a 0d 0a 27 20 20 41 31 30 30 42 IDs....' A100B
10770 2c 20 41 31 30 30 46 20 2c 20 42 32 35 30 5a 20 , A100F , B250Z
10780 2c 20 43 30 31 30 4d 2c 20 5a 39 39 39 41 20 20 , C010M, Z999A
10790 27 20 20 20 20 20 20 2d 2d 20 61 6c 70 68 61 6e ' -- alphan
107a0 75 6d 65 72 69 63 20 4e 6f 64 65 20 43 6f 64 65 umeric Node Code
107b0 73 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a s..</verbatim>..
107c0 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 61 6c 6c <u>Note</u>: all
107d0 20 77 68 69 74 65 73 70 61 63 65 73 20 69 6d 6d whitespaces imm
107e0 65 64 69 61 74 65 6c 79 20 70 72 65 63 65 64 69 ediately precedi
107f0 6e 67 20 6f 72 20 66 6f 6c 6c 6f 77 69 6e 67 20 ng or following
10800 74 68 65 20 3c 62 3e 64 65 6c 69 6d 69 74 65 72 the <b>delimiter
10810 3c 2f 62 3e 20 77 69 6c 6c 20 62 65 20 63 6f 6e </b> will be con
10820 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 69 6e sidered to be in
10830 74 65 67 72 61 6c 20 70 61 72 74 20 6f 66 20 74 tegral part of t
10840 68 65 20 76 61 6c 75 65 20 69 74 73 65 6c 66 2e he value itself.
10850 3c 62 72 3e 0d 0a 54 68 69 73 20 77 69 6c 6c 20 <br>..This will
10860 68 61 76 65 20 6e 6f 20 61 64 76 65 72 73 65 20 have no adverse
10870 63 6f 6e 73 65 71 75 65 6e 63 65 73 20 69 6e 20 consequences in
10880 74 68 65 20 63 61 73 65 20 6f 66 20 69 6e 74 65 the case of inte
10890 67 65 72 20 76 61 6c 75 65 73 2c 20 62 75 74 20 ger values, but
108a0 63 61 6e 20 65 61 73 69 6c 79 20 68 61 76 65 20 can easily have
108b0 63 61 74 61 73 74 72 6f 70 68 69 63 20 65 66 66 catastrophic eff
108c0 65 63 74 73 20 6f 6e 20 61 6c 70 68 61 6e 75 6d ects on alphanum
108d0 65 72 69 63 20 76 61 6c 75 65 73 2e 0d 0a 3c 68 eric values...<h
108e0 33 3e 44 65 66 69 6e 69 6e 67 20 61 20 63 75 73 3>Defining a cus
108f0 74 6f 6d 20 64 65 6c 69 6d 69 74 65 72 3c 2f 68 tom delimiter</h
10900 33 3e 0d 0a 53 6f 6d 65 74 69 6d 65 73 20 69 74 3>..Sometimes it
10910 20 63 6f 75 6c 64 20 62 65 20 75 73 65 66 75 6c could be useful
10920 20 73 65 74 74 69 6e 67 20 75 70 20 61 20 64 65 setting up a de
10930 6c 69 6d 69 74 65 72 20 64 69 66 66 65 72 65 6e limiter differen
10940 74 20 66 72 6f 6d 20 3c 62 3e 63 6f 6d 6d 61 3c t from <b>comma<
10950 2f 62 3e 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e /b>...<verbatim>
10960 0d 0a 55 50 44 41 54 45 20 62 79 66 6f 6f 74 20 ..UPDATE byfoot
10970 53 45 54 20 44 65 6c 69 6d 69 74 65 72 20 3d 20 SET Delimiter =
10980 27 2a 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 44 '*';....SELECT D
10990 65 6c 69 6d 69 74 65 72 20 46 52 4f 4d 20 62 79 elimiter FROM by
109a0 66 6f 6f 74 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d foot;..---------
109b0 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 2a 20 5b 64 65 ---------..* [de
109c0 63 3d 34 32 2c 20 68 65 78 3d 32 61 5d 0d 0a 3c c=42, hex=2a]..<
109d0 2f 76 65 72 62 61 74 69 6d 3e 20 0d 0a 59 6f 75 /verbatim> ..You
109e0 20 73 69 6d 70 6c 79 20 68 61 76 65 20 74 6f 20 simply have to
109f0 65 78 65 63 75 74 65 20 61 6e 20 3c 62 3e 55 50 execute an <b>UP
10a00 44 41 54 45 3c 2f 62 3e 20 73 74 61 74 65 6d 65 DATE</b> stateme
10a10 6e 74 20 62 79 20 73 70 65 63 69 66 79 69 6e 67 nt by specifying
10a20 20 74 68 65 20 6e 65 77 20 64 65 6c 69 6d 69 74 the new delimit
10a30 65 72 20 76 61 6c 75 65 2e 3c 62 72 3e 3c 62 72 er value.<br><br
10a40 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 >..</td></tr></t
10a50 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d able>..<br><br>.
10a60 0a 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 3c .<hr><br>..<h1><
10a70 61 20 6e 61 6d 65 3d 22 74 73 70 22 3e 36 20 2d a name="tsp">6 -
10a80 20 53 6f 6c 76 69 6e 67 20 54 53 50 20 28 74 72 Solving TSP (tr
10a90 61 76 65 6c 69 6e 67 20 73 61 6c 65 73 6d 61 6e aveling salesman
10aa0 29 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 2f ) problems</a></
10ab0 68 31 3e 0d 0a 3c 62 3e 54 53 50 3c 2f 62 3e 20 h1>..<b>TSP</b>
10ac0 28 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a (<a href="https:
10ad0 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f //en.wikipedia.o
10ae0 72 67 2f 77 69 6b 69 2f 54 72 61 76 65 6c 6c 69 rg/wiki/Travelli
10af0 6e 67 5f 73 61 6c 65 73 6d 61 6e 5f 70 72 6f 62 ng_salesman_prob
10b00 6c 65 6d 22 3e 54 72 61 76 65 6c 69 6e 67 20 53 lem">Traveling S
10b10 61 6c 65 73 6d 6e 20 50 72 6f 62 6c 65 6d 3c 2f alesmn Problem</
10b20 61 3e 29 20 69 73 20 61 20 77 65 6c 6c 20 6b 6e a>) is a well kn
10b30 6f 77 6e 20 4f 70 65 72 61 74 69 6f 6e 73 20 52 own Operations R
10b40 65 61 73 65 61 72 63 68 20 70 72 6f 62 6c 65 6d easearch problem
10b50 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 ...<br><br>..<ta
10b60 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 ble bgcolor="#c0
10b70 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e ffc0" cellspacin
10b80 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 g="10" cellpaddi
10b90 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d ng="6"><tr><td>.
10ba0 0a 3c 68 33 3e 54 68 65 20 54 72 61 76 65 6c 69 .<h3>The Traveli
10bb0 6e 67 20 53 61 6c 65 73 6d 61 6e 20 50 72 6f 62 ng Salesman Prob
10bc0 6c 65 6d 3c 2f 68 33 3e 0d 0a 3c 62 3e 3c 69 3e lem</h3>..<b><i>
10bd0 47 69 76 65 6e 20 61 20 6c 69 73 74 20 6f 66 20 Given a list of
10be0 63 69 74 69 65 73 20 61 6e 64 20 74 68 65 20 64 cities and the d
10bf0 69 73 74 61 6e 63 65 73 20 62 65 74 77 65 65 6e istances between
10c00 20 65 61 63 68 20 70 61 69 72 20 6f 66 20 63 69 each pair of ci
10c10 74 69 65 73 2c 20 77 68 61 74 20 69 73 20 74 68 ties, what is th
10c20 65 20 73 68 6f 72 74 65 73 74 20 70 6f 73 73 69 e shortest possi
10c30 62 6c 65 20 72 6f 75 74 65 20 74 68 61 74 20 76 ble route that v
10c40 69 73 69 74 73 20 65 61 63 68 20 63 69 74 79 20 isits each city
10c50 61 6e 64 20 72 65 74 75 72 6e 73 20 74 6f 20 74 and returns to t
10c60 68 65 20 6f 72 69 67 69 6e 20 63 69 74 79 20 3f he origin city ?
10c70 3c 2f 69 3e 3c 2f 62 3e 0d 0a 3c 62 72 3e 3c 62 </i></b>..<br><b
10c80 72 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f r>..</td></tr></
10c90 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c 75 table>..<br>..<u
10ca0 3e 4e 6f 74 65 3a 3c 2f 75 3e 20 74 68 65 20 74 >Note:</u> the t
10cb0 65 72 6d 73 20 3c 69 3e 3c 75 3e 73 61 6c 65 73 erms <i><u>sales
10cc0 6d 61 6e 3c 2f 75 3e 3c 2f 69 3e 20 61 6e 64 20 man</u></i> and
10cd0 3c 69 3e 3c 75 3e 63 69 74 79 3c 2f 75 3e 3c 2f <i><u>city</u></
10ce0 69 3e 20 61 72 65 20 75 6e 69 76 65 72 73 61 6c i> are universal
10cf0 6c 79 20 75 73 65 64 20 66 6f 72 20 68 69 73 74 ly used for hist
10d00 6f 72 69 63 61 6c 20 72 65 61 73 6f 6e 73 2c 20 orical reasons,
10d10 62 75 74 20 79 6f 75 20 73 68 6f 75 6c 64 20 61 but you should a
10d20 76 6f 69 64 20 74 6f 20 6c 69 74 65 72 61 6c 6c void to literall
10d30 79 20 69 6e 74 65 6e 64 20 62 6f 74 68 20 74 68 y intend both th
10d40 65 6d 2e 3c 62 72 3e 0d 0a 54 68 65 20 74 65 72 em.<br>..The ter
10d50 6d 20 3c 75 3e 3c 69 3e 73 61 6c 65 73 6d 61 6e m <u><i>salesman
10d60 3c 2f 69 3e 3c 2f 75 3e 20 69 6e 20 74 68 69 73 </i></u> in this
10d70 20 73 70 65 63 69 66 69 63 20 63 6f 6e 74 65 78 specific contex
10d80 74 20 69 6e 74 65 6e 64 73 20 61 6e 79 20 70 6f t intends any po
10d90 73 73 69 62 6c 65 20 6b 69 6e 64 20 6f 66 20 3c ssible kind of <
10da0 75 3e 3c 69 3e 6d 6f 76 69 6e 67 20 61 67 65 6e u><i>moving agen
10db0 74 3c 2f 69 3e 3c 2f 75 3e 20 28 70 65 64 65 73 t</i></u> (pedes
10dc0 74 72 69 61 6e 2c 20 76 65 68 69 63 6c 65 2c 20 trian, vehicle,
10dd0 70 61 73 73 65 6e 67 65 72 20 6f 72 20 77 68 61 passenger or wha
10de0 74 65 76 65 72 20 65 6c 73 65 29 2c 20 65 78 61 tever else), exa
10df0 63 74 6c 79 20 61 73 20 3c 69 3e 3c 75 3e 63 69 ctly as <i><u>ci
10e00 74 79 3c 2f 75 3e 3c 2f 69 3e 20 73 69 6d 70 6c ty</u></i> simpl
10e10 79 20 73 74 61 6e 64 73 20 66 6f 72 20 61 6e 79 y stands for any
10e20 20 3c 69 3e 3c 75 3e 67 65 6e 65 72 69 63 20 64 <i><u>generic d
10e30 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 75 3e 3c 2f estination</u></
10e40 69 3e 20 6f 6e 20 61 20 67 69 76 65 6e 20 4e 65 i> on a given Ne
10e50 74 77 6f 72 6b 2e 0d 0a 3c 62 72 3e 3c 62 72 3e twork...<br><br>
10e60 0d 0a 57 65 20 63 61 6e 20 63 6f 6e 63 65 74 74 ..We can concett
10e70 75 61 6c 79 20 73 70 6c 69 74 20 54 50 53 20 69 ualy split TPS i
10e80 6e 20 74 77 6f 20 68 61 6c 76 65 73 3a 0d 0a 3c n two halves:..<
10e90 6f 6c 3e 0d 0a 3c 6c 69 3e 63 6f 6d 70 75 74 69 ol>..<li>computi
10ea0 6e 67 20 61 6c 6c 20 64 69 73 74 61 6e 63 65 73 ng all distances
10eb0 20 62 65 74 77 65 65 6e 20 70 61 69 72 73 20 6f between pairs o
10ec0 66 20 3c 69 3e 63 69 74 69 65 73 3c 2f 69 3e 2e f <i>cities</i>.
10ed0 20 54 68 69 73 20 69 73 20 61 20 74 79 70 69 63 This is a typic
10ee0 61 6c 20 3c 62 3e 53 68 6f 72 74 65 73 74 50 61 al <b>ShortestPa
10ef0 74 68 3c 2f 62 3e 20 70 72 6f 62 6c 65 6d 2c 20 th</b> problem,
10f00 61 6e 64 20 77 65 20 63 61 6e 20 64 75 6c 79 20 and we can duly
10f10 75 73 65 20 74 68 65 20 44 69 6a 6b 73 74 72 61 use the Dijkstra
10f20 27 73 20 61 6c 67 6f 72 69 74 68 6d 20 66 6f 72 's algorithm for
10f30 20 74 68 69 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 this.</li>..<li
10f40 3e 74 68 65 6e 20 77 65 20 68 61 76 65 20 74 6f >then we have to
10f50 20 63 68 65 63 6b 20 61 6c 6c 20 70 6f 73 73 69 check all possi
10f60 62 6c 65 20 3c 62 3e 70 65 72 6d 75 74 61 74 69 ble <b>permutati
10f70 6f 6e 73 3c 2f 62 3e 20 2f 20 3c 62 3e 63 6f 6d ons</b> / <b>com
10f80 62 69 6e 61 74 69 6f 6e 73 3c 2f 62 3e 20 73 6f binations</b> so
10f90 20 74 6f 20 69 64 65 6e 74 69 66 79 20 74 68 65 to identify the
10fa0 20 6f 70 74 69 6d 61 6c 20 54 53 50 20 73 6f 6c optimal TSP sol
10fb0 75 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f ution.</li>..</o
10fc0 6c 3e 0d 0a 55 6e 68 61 70 70 69 6c 79 20 74 68 l>..Unhappily th
10fd0 65 72 65 20 69 73 20 61 20 70 72 61 63 74 69 63 ere is a practic
10fe0 61 6c 20 64 69 66 66 69 63 75 6c 74 79 20 69 6e al difficulty in
10ff0 20 73 75 63 68 20 61 20 73 74 72 61 69 67 68 74 such a straight
11000 20 61 70 70 72 6f 61 63 68 3b 20 74 68 65 20 6e approach; the n
11010 75 6d 62 65 72 20 6f 66 20 63 6f 6d 62 69 6e 61 umber of combina
11020 74 69 6f 6e 73 20 77 69 6c 6c 20 67 72 6f 77 20 tions will grow
11030 65 78 74 72 65 6d 65 6c 79 20 66 61 73 74 20 61 extremely fast a
11040 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 s the number of
11050 3c 62 3e 3c 69 3e 63 69 74 69 65 73 3c 2f 69 3e <b><i>cities</i>
11060 3c 2f 62 3e 20 69 6e 63 72 65 61 73 65 73 2e 3c </b> increases.<
11070 62 72 3e 0d 0a 53 69 6d 70 6c 79 20 63 6f 6d 70 br>..Simply comp
11080 75 74 69 6e 67 20 74 68 65 20 63 6f 6d 70 6c 65 uting the comple
11090 74 65 20 54 53 50 20 73 6f 6c 75 74 69 6f 6e 20 te TSP solution
110a0 66 6f 72 20 61 62 6f 75 74 20 74 65 6e 20 63 69 for about ten ci
110b0 74 69 65 73 20 77 69 6c 6c 20 72 65 71 75 69 72 ties will requir
110c0 65 20 61 20 3c 62 3e 76 65 72 79 20 6c 6f 6e 67 e a <b>very long
110d0 20 74 69 6d 65 3c 2f 62 3e 20 65 76 65 6e 20 75 time</b> even u
110e0 73 69 6e 67 20 61 20 73 75 70 65 72 63 6f 6d 70 sing a supercomp
110f0 75 74 65 72 2e 3c 62 72 3e 0d 0a 41 6e 64 20 61 uter.<br>..And a
11100 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6d ttempting to com
11110 70 75 74 65 20 61 20 54 53 50 20 73 6f 6c 75 74 pute a TSP solut
11120 69 6f 6e 20 66 6f 72 20 61 62 6f 75 74 20 68 75 ion for about hu
11130 6e 64 72 65 64 20 63 69 74 69 65 73 20 77 69 6c ndred cities wil
11140 6c 20 72 65 71 75 69 72 65 20 61 20 3c 62 3e 70 l require a <b>p
11150 72 61 63 74 69 63 61 6c 6c 79 20 69 6e 66 69 6e ractically infin
11160 69 74 65 3c 2f 62 3e 20 74 69 6d 65 2e 0d 0a 3c ite</b> time...<
11170 62 72 3e 3c 62 72 3e 0d 0a 48 6f 77 65 76 65 72 br><br>..However
11180 20 73 6f 6c 76 69 6e 67 20 54 53 50 20 69 73 20 solving TSP is
11190 68 69 67 68 6c 79 20 64 65 73 69 64 65 72 61 62 highly desiderab
111a0 6c 65 20 69 6e 20 6d 61 6e 79 20 61 70 70 6c 69 le in many appli
111b0 63 61 74 69 6f 6e 20 66 69 65 6c 64 73 3a 20 3c cation fields: <
111c0 62 3e 6c 6f 67 69 73 74 69 63 73 3c 2f 62 3e 20 b>logistics</b>
111d0 28 6a 75 73 74 20 74 68 69 6e 6b 20 61 62 6f 75 (just think abou
111e0 74 20 63 6f 75 72 69 65 72 20 63 6f 6d 70 61 6e t courier compan
111f0 69 65 73 20 61 73 20 44 48 4c 2c 20 46 65 64 45 ies as DHL, FedE
11200 58 2c 20 55 50 53 20 6f 72 20 54 4e 54 29 2c 20 X, UPS or TNT),
11210 3c 62 3e 66 69 65 6c 64 20 6d 61 69 6e 74 65 6e <b>field mainten
11220 61 6e 63 65 3c 2f 62 3e 20 2f 20 3c 62 3e 61 73 ance</b> / <b>as
11230 73 69 73 74 61 6e 63 65 3c 2f 62 3e 2c 20 3c 62 sistance</b>, <b
11240 3e 77 61 73 74 65 20 63 6f 6c 6c 65 63 74 69 6f >waste collectio
11250 6e 3c 2f 62 3e 2c 20 3c 62 3e 73 63 68 6f 6f 6c n</b>, <b>school
11260 62 75 73 3c 2f 62 3e 20 2f 20 3c 62 3e 73 68 61 bus</b> / <b>sha
11270 72 65 64 20 74 61 78 69 20 73 65 72 76 69 63 65 red taxi service
11280 73 3c 2f 62 3e 20 65 74 63 2e 3c 62 72 3e 0d 0a s</b> etc.<br>..
11290 4d 61 6e 79 20 61 6c 67 6f 72 69 74 68 6d 73 20 Many algorithms
112a0 68 61 76 65 20 62 65 65 6e 20 69 6e 76 65 6e 74 have been invent
112b0 65 64 20 64 75 72 69 6e 67 20 6c 61 73 74 20 64 ed during last d
112c0 65 63 61 64 65 73 20 69 6e 74 65 6e 64 65 64 20 ecades intended
112d0 74 6f 20 70 72 6f 64 75 63 65 20 70 72 61 63 74 to produce pract
112e0 69 63 61 6c 20 61 6c 74 68 6f 75 67 68 20 61 70 ical although ap
112f0 70 72 6f 78 69 6d 61 74 65 20 2f 20 69 6d 70 65 proximate / impe
11300 72 66 65 63 74 20 54 53 50 20 73 6f 6c 75 74 69 rfect TSP soluti
11310 6f 6e 73 20 69 6e 20 61 20 72 65 61 73 6f 6e 61 ons in a reasona
11320 62 6c 79 20 73 68 6f 72 74 20 74 69 6d 65 2e 0d bly short time..
11330 0a 4d 61 6e 79 20 6f 66 20 74 68 65 6d 20 73 74 .Many of them st
11340 72 6f 6e 67 6c 79 20 64 65 70 65 6e 64 20 6f 6e rongly depend on
11350 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a <a href="https:
11360 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f //en.wikipedia.o
11370 72 67 2f 77 69 6b 69 2f 48 65 75 72 69 73 74 69 rg/wiki/Heuristi
11380 63 22 3e 68 65 75 72 69 73 74 69 63 3c 2f 61 3e c">heuristic</a>
11390 20 61 6e 64 20 2f 20 6f 72 20 3c 61 20 68 72 65 and / or <a hre
113a0 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 f="https://en.wi
113b0 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 kipedia.org/wiki
113c0 2f 52 61 6e 64 6f 6d 6e 65 73 73 22 3e 72 61 6e /Randomness">ran
113d0 64 6f 6d 6e 65 73 73 3c 2f 61 3e 2e 0d 0a 3c 62 domness</a>...<b
113e0 72 3e 3c 62 72 3e 0d 0a 3c 62 3e 56 69 72 74 75 r><br>..<b>Virtu
113f0 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e 20 73 75 alRouting</b> su
11400 70 70 6f 72 74 73 20 74 77 6f 20 64 69 66 66 65 pports two diffe
11410 72 65 6e 74 20 54 53 50 20 61 6c 67 6f 72 69 74 rent TSP algorit
11420 68 6d 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e hms:..<ul>..<li>
11430 3c 62 3e 54 53 50 20 4e 4e 3c 2f 62 3e 20 28 3c <b>TSP NN</b> (<
11440 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 3c 69 3e i>aka</i> <b><i>
11450 4e 65 61 72 65 73 74 20 4e 65 69 67 68 62 6f 75 Nearest Neighbou
11460 72 3c 2f 69 3e 3c 2f 62 3e 29 3c 62 72 3e 0d 0a r</i></b>)<br>..
11470 54 68 69 73 20 3c 61 20 68 72 65 66 3d 22 68 74 This <a href="ht
11480 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 tps://en.wikiped
11490 69 61 2e 6f 72 67 2f 77 69 6b 69 2f 4e 65 61 72 ia.org/wiki/Near
114a0 65 73 74 5f 6e 65 69 67 68 62 6f 75 72 5f 61 6c est_neighbour_al
114b0 67 6f 72 69 74 68 6d 22 3e 66 69 72 73 74 20 61 gorithm">first a
114c0 6c 67 6f 72 69 74 68 6d 3c 2f 61 3e 20 69 73 20 lgorithm</a> is
114d0 73 74 72 61 69 67 68 74 66 6f 72 77 61 64 20 73 straightforwad s
114e0 69 6d 70 6c 65 20 61 6e 64 20 76 65 72 79 20 66 imple and very f
114f0 61 73 74 3b 20 69 74 20 63 61 6e 20 65 66 66 65 ast; it can effe
11500 63 74 69 76 65 6c 79 20 73 6f 6c 76 65 20 68 75 ctively solve hu
11510 67 65 20 54 53 50 20 73 6f 6c 75 74 69 6f 6e 73 ge TSP solutions
11520 20 28 74 68 6f 75 73 61 6e 64 20 3c 69 3e 63 69 (thousand <i>ci
11530 74 69 65 73 3c 2f 69 3e 20 6f 72 20 65 76 65 6e ties</i> or even
11540 20 6d 6f 72 65 29 20 69 6e 20 61 20 76 65 72 79 more) in a very
11550 20 73 68 6f 72 74 20 74 69 6d 65 2e 3c 62 72 3e short time.<br>
11560 0d 0a 3c 75 3e 53 68 6f 72 74 20 64 65 73 63 72 ..<u>Short descr
11570 69 70 74 69 6f 6e 3c 2f 75 3e 3a 0d 0a 3c 75 6c iption</u>:..<ul
11580 3e 0d 0a 3c 6c 69 3e 73 74 61 72 74 69 6e 67 20 >..<li>starting
11590 66 72 6f 6d 20 74 68 65 20 3c 75 3e 3c 69 3e 62 from the <u><i>b
115a0 61 73 65 20 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e ase city</i></u>
115b0 20 74 68 65 20 3c 75 3e 3c 69 3e 73 61 6c 65 73 the <u><i>sales
115c0 6d 61 6e 3c 2f 69 3e 3c 2f 75 3e 20 67 6f 65 73 man</i></u> goes
115d0 20 74 6f 20 74 68 65 20 3c 75 3e 3c 69 3e 63 69 to the <u><i>ci
115e0 74 79 3c 2f 69 3e 3c 2f 75 3e 20 70 72 65 73 65 ty</i></u> prese
115f0 6e 74 69 6e 67 20 74 68 65 20 3c 69 3e 3c 75 3e nting the <i><u>
11600 6c 65 73 73 65 72 20 63 6f 6e 6e 65 63 74 69 6f lesser connectio
11610 6e 20 63 6f 73 74 3c 2f 75 3e 3c 2f 69 3e 2e 3c n cost</u></i>.<
11620 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 61 6c /li>..<li>the al
11630 72 65 61 64 79 20 76 69 73 69 74 65 64 20 3c 69 ready visited <i
11640 3e 3c 75 3e 63 69 74 79 3c 2f 75 3e 3c 2f 69 3e ><u>city</u></i>
11650 20 69 73 20 63 61 6e 63 65 6c 6c 65 64 20 66 72 is cancelled fr
11660 6f 6d 20 74 68 65 20 6c 69 73 74 2c 20 61 6e 64 om the list, and
11670 20 74 68 65 6e 20 74 68 65 20 3c 75 3e 3c 69 3e then the <u><i>
11680 73 61 6c 65 73 6d 61 6e 3c 2f 69 3e 3c 2f 75 3e salesman</i></u>
11690 20 67 6f 65 73 20 74 6f 20 74 68 65 20 6e 65 78 goes to the nex
116a0 74 20 3c 75 3e 3c 69 3e 63 69 74 79 3c 2f 69 3e t <u><i>city</i>
116b0 3c 2f 75 3e 20 70 72 65 73 65 6e 74 69 6e 67 20 </u> presenting
116c0 74 68 65 20 3c 69 3e 3c 75 3e 6c 65 73 73 65 72 the <i><u>lesser
116d0 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 63 6f 73 74 connection cost
116e0 3c 2f 75 3e 3c 2f 69 3e 2e 3c 2f 6c 69 3e 0d 0a </u></i>.</li>..
116f0 3c 6c 69 3e 74 68 65 20 63 79 63 6c 65 20 63 6f <li>the cycle co
11700 6e 74 69 6e 75 65 73 20 75 6e 74 69 6c 20 61 6c ntinues until al
11710 6c 20 20 3c 69 3e 3c 75 3e 63 69 74 69 65 73 3c l <i><u>cities<
11720 2f 75 3e 3c 2f 69 3e 20 69 6e 20 74 68 65 20 6c /u></i> in the l
11730 69 73 74 20 68 61 76 65 20 62 65 65 6e 20 76 69 ist have been vi
11740 73 69 74 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 sited.</li>..<li
11750 3e 66 69 6e 61 6c 6c 79 2c 20 74 68 65 20 3c 75 >finally, the <u
11760 3e 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c 2f 69 3e ><i>salesman</i>
11770 3c 2f 75 3e 20 72 65 74 75 72 6e 73 20 74 6f 20 </u> returns to
11780 68 69 73 2f 68 65 72 20 69 6e 69 74 69 61 6c 20 his/her initial
11790 3c 75 3e 3c 69 3e 62 61 73 65 20 63 69 74 79 3c <u><i>base city<
117a0 2f 69 3e 3c 2f 75 3e 3c 2f 6c 69 3e 0d 0a 3c 2f /i></u></li>..</
117b0 75 6c 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e ul>..<u>Note</u>
117c0 20 69 74 27 73 20 76 65 72 79 20 75 6e 6c 69 6b it's very unlik
117d0 65 20 74 68 61 74 20 54 53 50 20 4e 4e 20 63 6f e that TSP NN co
117e0 75 6c 64 20 66 69 6e 64 20 74 68 65 20 3c 62 3e uld find the <b>
117f0 6f 70 74 69 6d 61 6c 3c 2f 62 3e 20 73 6f 6c 75 optimal</b> solu
11800 74 69 6f 6e 2c 20 62 75 74 20 69 74 20 63 61 6e tion, but it can
11810 20 71 75 69 63 6b 6c 79 20 66 69 6e 64 20 73 6f quickly find so
11820 6d 65 20 72 65 61 73 6f 6e 61 62 6c 65 20 3c 62 me reasonable <b
11830 3e 61 70 70 72 6f 78 69 6d 61 74 65 3c 2f 62 3e >approximate</b>
11840 20 73 6f 6c 75 74 69 6f 6e 20 28 3c 69 3e 66 65 solution (<i>fe
11850 77 20 69 73 20 73 75 72 65 6c 79 20 62 65 74 74 w is surely bett
11860 65 72 20 74 68 61 6e 20 6e 6f 74 68 69 6e 67 3c er than nothing<
11870 2f 69 3e 29 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 /i>).<br>..In th
11880 65 20 6d 6f 73 74 20 75 6e 6c 75 63 6b 79 20 63 e most unlucky c
11890 61 73 65 20 54 53 50 20 4e 4e 20 63 6f 75 6c 64 ase TSP NN could
118a0 20 70 6f 73 73 69 62 6c 79 20 72 65 74 75 72 6e possibly return
118b0 20 74 68 65 20 3c 62 3e 77 6f 72 73 74 20 73 6f the <b>worst so
118c0 6c 75 74 69 6f 6e 3c 2f 62 3e 2c 20 62 75 74 20 lution</b>, but
118d0 74 68 65 20 73 70 65 63 69 66 69 63 20 69 6d 70 the specific imp
118e0 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 61 64 6f 70 lementation adop
118f0 74 65 64 20 62 79 20 56 69 72 74 75 61 6c 52 6f ted by VirtualRo
11900 75 74 69 6e 67 20 63 68 65 63 6b 73 20 61 67 61 uting checks aga
11910 69 6e 73 74 20 74 68 69 73 20 70 6f 73 73 69 62 inst this possib
11920 69 6c 69 74 79 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c ility:..<ul>..<l
11930 69 3e 65 61 63 68 20 54 53 50 20 4e 4e 20 69 73 i>each TSP NN is
11940 20 61 6c 77 61 79 73 20 63 6f 6d 70 75 74 65 64 always computed
11950 20 74 77 69 63 65 20 62 79 20 72 61 6e 64 6f 6d twice by random
11960 6c 79 20 63 68 6f 6f 73 69 6e 67 20 61 20 64 69 ly choosing a di
11970 66 66 65 72 65 6e 74 20 3c 75 3e 3c 69 3e 62 61 fferent <u><i>ba
11980 73 65 20 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e 20 se city</i></u>
11990 61 6e 64 20 74 68 65 6e 20 6e 6f 72 6d 61 6c 69 and then normali
119a0 7a 69 6e 67 20 74 68 65 20 73 6f 6c 75 74 69 6f zing the solutio
119b0 6e 3b 20 74 68 65 20 62 65 73 74 20 6f 66 20 74 n; the best of t
119c0 68 65 20 74 77 6f 20 73 6f 6c 75 74 69 6f 6e 73 he two solutions
119d0 20 69 73 20 74 68 65 6e 20 72 65 74 75 72 6e 65 is then returne
119e0 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 69 d.</li>..<li>thi
119f0 73 20 73 69 6d 70 6c 65 20 62 75 74 20 65 66 66 s simple but eff
11a00 65 63 74 69 76 65 20 70 72 65 63 61 75 74 69 6f ective precautio
11a10 6e 20 72 6f 62 75 73 74 6c 79 20 65 6e 73 75 72 n robustly ensur
11a20 65 73 20 74 68 61 74 20 74 68 65 20 3c 62 3e 77 es that the <b>w
11a30 6f 72 73 74 20 73 6f 6c 75 74 69 6f 6e 3c 2f 62 orst solution</b
11a40 3e 20 77 69 6c 6c 20 6e 65 76 65 72 20 62 65 20 > will never be
11a50 72 65 74 75 72 6e 65 64 2c 20 61 6e 64 20 6a 75 returned, and ju
11a60 73 74 20 69 6d 70 6c 69 65 73 20 61 20 6d 6f 64 st implies a mod
11a70 65 72 61 74 65 6c 79 20 69 6e 63 72 65 61 73 65 erately increase
11a80 64 20 65 78 65 63 75 74 69 6f 6e 20 74 69 6d 65 d execution time
11a90 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c .</li>..</ul></l
11aa0 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 54 53 50 20 47 i>..<li><b>TSP G
11ab0 41 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 A</b> (<i>aka</i
11ac0 3e 20 3c 62 3e 3c 69 3e 47 65 6e 65 74 69 63 20 > <b><i>Genetic
11ad0 41 6c 67 6f 72 69 74 68 6d 3c 2f 69 3e 3c 2f 62 Algorithm</i></b
11ae0 3e 29 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 3c 61 >).<br>..This <a
11af0 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 href="https://e
11b00 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f n.wikipedia.org/
11b10 77 69 6b 69 2f 47 65 6e 65 74 69 63 5f 61 6c 67 wiki/Genetic_alg
11b20 6f 72 69 74 68 6d 22 3e 61 6c 74 65 72 6e 61 74 orithm">alternat
11b30 69 76 65 20 61 6c 67 6f 72 69 74 68 6d 3c 2f 61 ive algorithm</a
11b40 3e 20 69 73 20 6d 75 63 68 20 6d 6f 72 65 20 63 > is much more c
11b50 6f 6d 70 6c 65 78 20 61 6e 64 20 73 6f 70 68 69 omplex and sophi
11b60 73 74 69 63 61 74 65 64 2c 20 61 6e 64 20 69 73 sticated, and is
11b70 20 64 69 72 65 63 74 6c 79 20 69 6e 73 70 69 72 directly inspir
11b80 65 64 20 62 79 20 62 69 6f 6c 6f 67 69 63 61 6c ed by biological
11b90 20 63 6f 6e 63 65 70 74 73 20 73 75 63 68 20 61 concepts such a
11ba0 73 20 3c 62 3e 73 65 78 75 61 6c 20 72 65 70 72 s <b>sexual repr
11bb0 6f 64 75 63 74 69 6f 6e 3c 2f 62 3e 2c 20 3c 62 oduction</b>, <b
11bc0 3e 67 65 6e 65 74 69 63 20 6d 75 74 61 74 69 6f >genetic mutatio
11bd0 6e 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 6e 61 ns</b> and <b>na
11be0 74 75 61 6c 20 73 65 6c 65 63 74 69 6f 6e 3c 2f tual selection</
11bf0 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 53 68 6f 72 b>.<br>..<u>Shor
11c00 74 20 64 65 73 63 72 69 70 74 69 6f 6e 3c 2f 75 t description</u
11c10 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 61 20 >:..<ul>..<li>a
11c20 66 69 72 73 74 20 69 6e 69 74 69 61 6c 20 73 65 first initial se
11c30 74 20 6f 66 20 73 6f 6c 75 74 69 6f 6e 73 20 28 t of solutions (
11c40 3c 69 3e 3c 75 3e 74 68 65 20 70 6f 70 75 6c 61 <i><u>the popula
11c50 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 29 20 69 73 tion</u></i>) is
11c60 20 63 72 65 61 74 65 64 20 62 79 20 75 73 69 6e created by usin
11c70 67 20 54 53 50 20 4e 4e 20 61 66 74 65 72 20 72 g TSP NN after r
11c80 61 6e 64 6f 6d 6c 79 20 63 68 6f 6f 73 69 6e 67 andomly choosing
11c90 20 74 68 65 20 3c 75 3e 3c 69 3e 62 61 73 65 20 the <u><i>base
11ca0 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e 20 61 6e 64 city</i></u> and
11cb0 20 74 68 65 6e 20 6e 6f 72 6d 61 6c 69 7a 69 6e then normalizin
11cc0 67 20 65 61 63 68 20 73 6f 6c 75 74 69 6f 6e 2e g each solution.
11cd0 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 6e 20 </li>..<li>then
11ce0 64 75 72 69 6e 67 20 65 61 63 68 20 73 74 65 70 during each step
11cf0 20 6f 66 20 74 68 65 20 65 78 65 63 75 74 69 6f of the executio
11d00 6e 20 6c 6f 6f 70 20 28 3c 69 3e 3c 75 3e 67 65 n loop (<i><u>ge
11d10 6e 65 72 61 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e neration</u></i>
11d20 29 20 70 61 69 72 73 20 6f 66 20 73 6f 6c 75 74 ) pairs of solut
11d30 69 6f 6e 73 20 3c 69 3e 3c 75 3e 73 65 78 75 61 ions <i><u>sexua
11d40 6c 6c 79 20 72 65 70 72 6f 64 75 63 65 73 3c 2f lly reproduces</
11d50 69 3e 3c 2f 75 3e 20 67 69 76 69 6e 67 20 62 69 i></u> giving bi
11d60 72 74 68 20 74 6f 20 3c 75 3e 3c 69 3e 63 68 69 rth to <u><i>chi
11d70 6c 64 72 65 6e 20 73 6f 6c 75 74 69 6f 6e 73 3c ldren solutions<
11d80 2f 69 3e 3c 2f 75 3e 3b 20 3c 75 3e 3c 69 3e 63 /i></u>; <u><i>c
11d90 68 72 6f 6d 6f 73 6f 6d 65 20 63 72 6f 73 73 6f hromosome crosso
11da0 76 65 72 73 3c 2f 69 3e 3c 2f 75 3e 20 61 6e 64 vers</i></u> and
11db0 20 3c 69 3e 3c 75 3e 72 61 6e 64 6f 6d 20 6d 75 <i><u>random mu
11dc0 74 61 74 69 6f 6e 73 3c 2f 75 3e 3c 2f 69 3e 20 tations</u></i>
11dd0 69 6e 74 72 69 6e 73 69 63 61 6c 6c 79 20 61 66 intrinsically af
11de0 66 65 63 74 20 74 68 65 20 72 65 70 72 6f 64 75 fect the reprodu
11df0 63 74 69 76 65 20 70 72 6f 63 65 73 73 2e 3c 2f ctive process.</
11e00 6c 69 3e 0d 0a 3c 6c 69 3e 66 6f 72 20 65 61 63 li>..<li>for eac
11e10 68 20 3c 69 3e 3c 75 3e 67 65 6e 65 72 61 74 69 h <i><u>generati
11e20 6f 6e 3c 2f 75 3e 3c 2f 69 3e 20 74 68 65 20 3c on</u></i> the <
11e30 69 3e 3c 75 3e 6e 61 74 75 72 61 6c 20 73 65 6c i><u>natural sel
11e40 65 63 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 20 65 ection</u></i> e
11e50 6c 69 6d 69 6e 61 74 65 73 20 61 6c 6c 20 70 6f liminates all po
11e60 6f 72 6c 79 20 66 69 74 20 69 6e 64 69 76 69 64 orly fit individ
11e70 75 61 6c 73 20 66 72 6f 6d 20 74 68 65 20 3c 69 uals from the <i
11e80 3e 3c 75 3e 70 6f 70 75 6c 61 74 69 6f 6e 3c 2f ><u>population</
11e90 75 3e 3c 2f 69 3e 20 61 6e 64 20 63 6f 6e 73 65 u></i> and conse
11ea0 71 75 65 6e 74 6c 79 20 6f 6e 6c 79 20 74 68 65 quently only the
11eb0 20 62 65 73 74 20 66 69 74 20 69 6e 64 69 76 69 best fit indivi
11ec0 64 75 61 6c 73 20 63 61 6e 20 70 72 6f 70 61 67 duals can propag
11ed0 61 74 65 20 74 68 65 69 72 20 3c 75 3e 3c 69 3e ate their <u><i>
11ee0 67 65 6e 6f 6d 65 3c 2f 69 3e 3c 2f 75 3e 20 74 genome</i></u> t
11ef0 6f 20 6e 65 78 74 20 3c 75 3e 3c 69 3e 67 65 6e o next <u><i>gen
11f00 65 72 61 74 69 6f 6e 3c 2f 69 3e 3c 2f 75 3e 2e eration</i></u>.
11f10 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 66 74 65 72 </li>..<li>after
11f20 20 61 20 63 65 72 74 61 69 6e 20 6e 75 6d 62 65 a certain numbe
11f30 72 20 6f 66 20 3c 69 3e 3c 75 3e 67 65 6e 65 72 r of <i><u>gener
11f40 61 74 69 6f 6e 73 3c 2f 69 3e 3c 2f 75 3e 20 28 ations</i></u> (
11f50 6c 65 74 27 73 20 73 61 79 20 61 62 6f 75 74 20 let's say about
11f60 73 6f 6d 65 20 68 75 6e 64 72 65 64 74 68 20 69 some hundredth i
11f70 74 65 72 61 74 69 6f 6e 73 29 20 74 68 65 20 3c terations) the <
11f80 62 3e 6f 70 74 69 6d 61 6c 20 73 6f 6c 75 74 69 b>optimal soluti
11f90 6f 6e 3c 2f 62 3e 20 28 6f 72 20 61 74 20 6c 65 on</b> (or at le
11fa0 61 73 74 20 61 20 3c 62 3e 66 61 69 72 6c 79 20 ast a <b>fairly
11fb0 67 6f 6f 64 20 73 75 62 2d 6f 70 74 69 6d 61 6c good sub-optimal
11fc0 20 73 6f 6c 75 74 69 6f 6e 3c 2f 62 3e 29 20 73 solution</b>) s
11fd0 68 6f 75 6c 64 20 66 69 6e 61 6c 6c 79 20 65 6d hould finally em
11fe0 65 72 67 65 2c 20 61 6e 64 20 73 6f 20 74 68 65 erge, and so the
11ff0 20 6c 6f 6f 70 20 63 61 6e 20 65 78 69 74 2e 3c loop can exit.<
12000 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e /li>..</ul></li>
12010 0d 0a 3c 6c 69 3e 3c 75 3e 4e 6f 74 65 3c 2f 75 ..<li><u>Note</u
12020 3e 3a 20 54 53 50 20 47 41 20 69 73 20 75 73 75 >: TSP GA is usu
12030 61 6c 6c 79 20 65 78 70 65 63 74 65 64 20 74 6f ally expected to
12040 20 69 64 65 6e 74 69 66 79 20 62 65 74 74 65 72 identify better
12050 20 73 6f 6c 75 74 69 6f 6e 73 20 74 68 61 6e 20 solutions than
12060 54 53 50 20 4e 4e 20 63 61 6e 20 64 6f 2c 20 62 TSP NN can do, b
12070 75 74 20 69 74 20 77 69 6c 6c 20 73 75 72 65 6c ut it will surel
12080 79 20 72 65 71 75 69 72 65 20 6d 75 63 68 20 6d y require much m
12090 6f 72 65 20 74 69 6d 65 20 74 6f 20 63 6f 6d 70 ore time to comp
120a0 6c 65 74 65 2e 3c 2f 6c 69 3e 20 0d 0a 3c 2f 75 lete.</li> ..</u
120b0 6c 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 4c 65 l>..<br><br>..Le
120c0 74 27 73 20 6e 6f 77 20 65 78 61 6d 69 6e 65 20 t's now examine
120d0 61 20 70 72 61 63 74 69 63 61 6c 20 65 78 61 6d a practical exam
120e0 70 6c 65 20 6f 66 20 54 53 50 20 73 6f 6c 76 69 ple of TSP solvi
120f0 6e 67 20 75 73 69 6e 67 20 56 69 72 74 75 61 6c ng using Virtual
12100 52 6f 75 74 69 6e 67 2e 20 0d 0a 3c 76 65 72 62 Routing. ..<verb
12110 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 atim>..UPDATE by
12120 66 6f 6f 74 20 53 45 54 20 52 65 71 75 65 73 74 foot SET Request
12130 20 3d 20 27 54 53 50 27 3b 0d 0a 0d 0a 53 45 4c = 'TSP';....SEL
12140 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 ECT Algorithm, R
12150 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c equest, Options,
12160 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 Delimiter, Rout
12170 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 eId, RouteRow, R
12180 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 ole, LinkRowid,
12190 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f NodeFrom, NodeTo
121a0 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 , Cost, Geometry
121b0 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 , Name..FROM byf
121c0 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 oot..WHERE NodeF
121d0 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
121e0 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 38 NodeTo = '18328
121f0 36 2c 31 38 31 39 39 39 2c 31 38 34 30 33 30 2c 6,181999,184030,
12200 31 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 183882,178754';.
12210 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 20 .</verbatim>..A
12220 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 3c VirtualRouting <
12230 62 3e 54 53 50 3c 2f 62 3e 20 71 75 65 72 79 20 b>TSP</b> query
12240 68 61 73 20 74 68 65 20 73 61 6d 65 20 69 64 65 has the same ide
12250 6e 74 69 63 61 6c 20 66 6f 72 6d 20 6f 66 20 61 ntical form of a
12260 20 3c 62 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e <b>multi-destin
12270 61 74 69 6f 6e 3c 2f 62 3e 20 71 75 65 72 79 3b ation</b> query;
12280 20 74 68 65 20 3c 69 3e 3c 75 3e 62 61 73 65 20 the <i><u>base
12290 63 69 74 79 3c 75 3e 3c 2f 69 3e 20 69 73 20 61 city<u></i> is a
122a0 6c 77 61 79 73 20 65 78 70 65 63 74 65 64 20 74 lways expected t
122b0 6f 20 63 6f 72 72 65 73 70 6f 6e 64 20 74 6f 20 o correspond to
122c0 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 <b>NodeFrom</b>
122d0 61 6e 64 20 61 6c 6c 20 6f 74 68 65 72 20 3c 69 and all other <i
122e0 3e 3c 75 3e 63 69 74 69 65 73 3c 2f 75 3e 3c 2f ><u>cities</u></
122f0 69 3e 20 74 6f 20 62 65 20 76 69 73 69 74 65 64 i> to be visited
12300 20 61 72 65 20 65 78 70 65 63 74 65 64 20 74 6f are expected to
12310 20 62 65 20 65 6e 75 6d 65 72 61 74 65 64 20 69 be enumerated i
12320 6e 74 6f 20 61 20 3c 62 3e 6d 75 6c 74 69 2d 64 nto a <b>multi-d
12330 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 62 3e 20 6c estination</b> l
12340 69 73 74 20 61 73 73 69 67 6e 65 64 20 74 6f 20 ist assigned to
12350 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 2e 0d 0a <b>NodeTo</b>...
12360 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 79 6f 75 <u>Note</u>: you
12370 20 6d 75 73 74 20 65 78 70 6c 69 63 69 74 6c 79 must explicitly
12380 20 73 65 74 20 74 68 65 20 63 75 72 72 65 6e 74 set the current
12390 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f 62 3e 20 <b>Request</b>
123a0 61 73 20 3c 62 3e 54 53 50 3c 2f 62 3e 2c 20 3c as <b>TSP</b>, <
123b0 62 3e 54 53 50 20 4e 4e 3c 2f 62 3e 20 6f 72 20 b>TSP NN</b> or
123c0 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e 20 28 54 <b>TSP GA</b> (T
123d0 53 50 20 61 6e 64 20 54 53 50 20 4e 4e 20 61 72 SP and TSP NN ar
123e0 65 20 73 79 6e 6f 6e 69 6d 73 29 2e 0d 0a 3c 62 e synonims)...<b
123f0 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 r><br>..<table b
12400 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f order="1" bgcolo
12410 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c r="#ffffcf" cell
12420 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c spacing="4" cell
12430 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 padding="6">..<t
12440 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 r><th bgcolor="#
12450 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 d0d0a0">Algorith
12460 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f m</th><th bgcolo
12470 72 3d 22 23 64 30 64 30 61 30 22 3e 52 65 71 75 r="#d0d0a0">Requ
12480 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f est</th><th bgco
12490 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 lor="#d0d0a0">Op
124a0 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 tions</th><th bg
124b0 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
124c0 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 3e 3c 74 Delimiter</th><t
124d0 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
124e0 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 74 68 3e a0">RouteId</th>
124f0 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
12500 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 2f d0a0">RouteRow</
12510 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
12520 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 #d0d0a0">Role</t
12530 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
12540 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 d0d0a0">LinkRowi
12550 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f d</th><th bgcolo
12560 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 r="#d0d0a0">Node
12570 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 From</th><th bgc
12580 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
12590 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 odeTo</th><th bg
125a0 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
125b0 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 Cost</th><th bgc
125c0 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 47 olor="#d0d0a0">G
125d0 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 20 eometry</th><th
125e0 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
125f0 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e ">Name</th></tr>
12600 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 69 6a 6b ..<tr>..<td>Dijk
12610 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e 54 53 50 stra</td><td>TSP
12620 20 4e 4e 3c 2f 74 64 3e 3c 74 64 3e 46 75 6c 6c NN</td><td>Full
12630 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 23 39 31 3b </td><td>, [
12640 64 65 63 3d 34 34 2c 20 68 65 78 3d 32 63 26 23 dec=44, hex=2c&#
12650 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 93;</td><td alig
12660 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
12670 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
12680 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 54 53 50 20 ">0</td><td>TSP
12690 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e 3c 74 64 Solution</td><td
126a0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
126b0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
126c0 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
126d0 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
126e0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
126f0 69 67 68 74 22 3e 31 32 35 34 2e 34 33 33 39 33 ight">1254.43393
12700 33 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 3</td><td>BLOB s
12710 7a 3d 32 30 30 30 20 47 45 4f 4d 45 54 52 59 3c z=2000 GEOMETRY<
12720 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
12730 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
12740 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12750 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
12760 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
12770 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
12780 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >1</td><td align
12790 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
127a0 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 td>Route</td><td
127b0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
127c0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
127d0 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
127e0 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 30 3c ="right">184030<
127f0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
12800 69 67 68 74 22 3e 31 37 36 2e 33 36 34 37 35 35 ight">176.364755
12810 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a </td><td>BLOB sz
12820 3d 33 30 34 20 47 45 4f 4d 45 54 52 59 3c 2f 74 =304 GEOMETRY</t
12830 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
12840 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
12850 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
12860 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
12870 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
12880 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
12890 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">2</td><td al
128a0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 ign="right">1</t
128b0 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
128c0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
128d0 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 64 20 >224014</td><td
128e0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
128f0 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
12900 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 gn="right">18288
12910 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
12920 22 72 69 67 68 74 22 3e 39 34 2e 38 31 32 34 32 "right">94.81242
12930 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 4</td><td>NULL</
12940 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 52 td><td>VIA PIETR
12950 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a O ARETINO</td>..
12960 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 72 </tr>..<tr>..<tr
12970 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
12980 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12990 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
129a0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
129b0 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
129c0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
129d0 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >2</td><td>Link<
129e0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
129f0 69 67 68 74 22 3e 32 32 34 38 36 32 3c 2f 74 64 ight">224862</td
12a00 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
12a10 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 t">182885</td><t
12a20 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
12a30 31 38 32 30 34 33 3c 2f 74 64 3e 3c 74 64 20 61 182043</td><td a
12a40 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 37 2e lign="right">37.
12a50 30 39 35 32 38 37 3c 2f 74 64 3e 3c 74 64 3e 4e 095287</td><td>N
12a60 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
12a70 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e MARGARITONE</td>
12a80 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
12a90 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
12aa0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
12ab0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
12ac0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
12ad0 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 ght">2</td><td a
12ae0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f lign="right">3</
12af0 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
12b00 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
12b10 22 3e 32 32 36 30 37 30 3c 2f 74 64 3e 3c 74 64 ">226070</td><td
12b20 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
12b30 38 32 30 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 82043</td><td al
12b40 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 ign="right">1840
12b50 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 30</td><td align
12b60 3d 22 72 69 67 68 74 22 3e 34 34 2e 34 35 37 30 ="right">44.4570
12b70 34 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 44</td><td>NULL<
12b80 2f 74 64 3e 3c 74 64 3e 50 49 41 5a 5a 41 20 53 /td><td>PIAZZA S
12b90 41 4e 54 27 41 47 4f 53 54 49 4e 4f 3c 2f 74 64 ANT'AGOSTINO</td
12ba0 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
12bb0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12bc0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
12bd0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
12be0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
12bf0 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 ight">2</td><td
12c00 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
12c10 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
12c20 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
12c30 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
12c40 3e 31 38 34 30 33 30 3c 2f 74 64 3e 3c 74 64 20 >184030</td><td
12c50 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
12c60 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1999</td><td ali
12c70 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 39 2e 31 gn="right">139.1
12c80 31 34 39 33 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 14938</td><td>BL
12c90 4f 42 20 73 7a 3d 34 39 36 20 47 45 4f 4d 45 54 OB sz=496 GEOMET
12ca0 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
12cb0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
12cc0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
12cd0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12ce0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
12cf0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
12d00 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c ="right">3</td><
12d10 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
12d20 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >1</td><td>Link<
12d30 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
12d40 69 67 68 74 22 3e 32 32 36 30 37 31 3c 2f 74 64 ight">226071</td
12d50 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
12d60 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 3e 3c 74 t">184030</td><t
12d70 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
12d80 31 38 32 36 32 39 3c 2f 74 64 3e 3c 74 64 20 61 182629</td><td a
12d90 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 35 2e lign="right">55.
12da0 36 38 39 30 30 39 3c 2f 74 64 3e 3c 74 64 3e 4e 689009</td><td>N
12db0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
12dc0 47 49 55 53 45 50 50 45 20 47 41 52 49 42 41 4c GIUSEPPE GARIBAL
12dd0 44 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a DI</td>..</tr>..
12de0 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
12df0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
12e00 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12e10 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
12e20 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
12e30 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
12e40 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">2</td><td>Li
12e50 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
12e60 3d 22 72 69 67 68 74 22 3e 32 32 35 35 31 32 3c ="right">225512<
12e70 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
12e80 69 67 68 74 22 3e 31 38 32 36 32 39 3c 2f 74 64 ight">182629</td
12e90 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
12ea0 74 22 3e 31 38 32 39 33 33 3c 2f 74 64 3e 3c 74 t">182933</td><t
12eb0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
12ec0 33 34 2e 31 38 34 31 39 34 3c 2f 74 64 3e 3c 74 34.184194</td><t
12ed0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 43 d>NULL</td><td>C
12ee0 4f 52 53 4f 20 49 54 41 4c 49 41 3c 2f 74 64 3e ORSO ITALIA</td>
12ef0 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
12f00 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
12f10 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
12f20 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
12f30 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
12f40 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 ght">3</td><td a
12f50 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f lign="right">3</
12f60 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
12f70 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
12f80 22 3e 32 32 35 35 31 31 3c 2f 74 64 3e 3c 74 64 ">225511</td><td
12f90 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
12fa0 38 32 39 33 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 82933</td><td al
12fb0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 ign="right">1819
12fc0 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 99</td><td align
12fd0 3d 22 72 69 67 68 74 22 3e 34 39 2e 32 34 31 37 ="right">49.2417
12fe0 33 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 35</td><td>NULL<
12ff0 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 54 /td><td>CORSO IT
13000 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ALIA</td>..</tr>
13010 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
13020 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13030 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13040 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
13050 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
13060 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13070 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
13080 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
13090 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
130a0 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 39 3c ="right">181999<
130b0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
130c0 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
130d0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
130e0 74 22 3e 32 31 37 2e 36 37 32 38 38 35 3c 2f 74 t">217.672885</t
130f0 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 36 38 d><td>BLOB sz=68
13100 38 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 8 GEOMETRY</td><
13110 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
13120 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
13130 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
13140 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13150 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13160 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13170 3e 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >4</td><td align
13180 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c ="right">1</td><
13190 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
131a0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
131b0 32 36 33 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2635</td><td ali
131c0 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 gn="right">18199
131d0 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 9</td><td align=
131e0 22 72 69 67 68 74 22 3e 31 38 31 39 39 38 3c 2f "right">181998</
131f0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
13200 67 68 74 22 3e 31 30 31 2e 36 32 39 37 35 30 3c ght">101.629750<
13210 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
13220 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 54 41 4c 49 ><td>CORSO ITALI
13230 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c A</td>..</tr>..<
13240 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
13250 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13260 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
13270 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
13280 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 gn="right">4</td
13290 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
132a0 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">2</td><td>Lin
132b0 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
132c0 22 72 69 67 68 74 22 3e 32 32 34 37 38 30 3c 2f "right">224780</
132d0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
132e0 67 68 74 22 3e 31 38 31 39 39 38 3c 2f 74 64 3e ght">181998</td>
132f0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
13300 22 3e 31 38 33 35 36 30 3c 2f 74 64 3e 3c 74 64 ">183560</td><td
13310 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 align="right">7
13320 33 2e 37 33 33 35 37 32 3c 2f 74 64 3e 3c 74 64 3.733572</td><td
13330 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
13340 41 20 44 45 4c 4c 27 41 4e 46 49 54 45 41 54 52 A DELL'ANFITEATR
13350 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c O</td>..</tr>..<
13360 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
13370 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13380 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
13390 4e 55 4c 4c 3c 74 64 20 61 6c 69 67 6e 3d 22 72 NULL<td align="r
133a0 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 ight">4</td><td
133b0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
133c0 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
133d0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
133e0 74 22 3e 32 32 35 38 32 37 3c 2f 74 64 3e 3c 74 t">225827</td><t
133f0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13400 31 38 33 35 36 30 3c 2f 74 64 3e 3c 74 64 20 61 183560</td><td a
13410 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
13420 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 286</td><td alig
13430 6e 3d 22 72 69 67 68 74 22 3e 34 32 2e 33 30 39 n="right">42.309
13440 35 36 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 564</td><td>NULL
13450 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 44 45 4c </td><td>VIA DEL
13460 4c 27 41 4e 46 49 54 45 41 54 52 4f 3c 2f 74 64 L'ANFITEATRO</td
13470 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
13480 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13490 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
134a0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
134b0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
134c0 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 ight">4</td><td
134d0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
134e0 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
134f0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13500 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13510 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 >183286</td><td
13520 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
13530 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8754</td><td ali
13540 67 6e 3d 22 72 69 67 68 74 22 3e 33 37 38 2e 33 gn="right">378.3
13550 31 33 36 38 34 3c 2f 74 64 3e 3c 74 64 3e 42 4c 13684</td><td>BL
13560 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f 4d 45 54 OB sz=272 GEOMET
13570 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
13580 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
13590 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
135a0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
135b0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
135c0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
135d0 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c ="right">5</td><
135e0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
135f0 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >1</td><td>Link<
13600 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13610 69 67 68 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 ight">224414</td
13620 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13630 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 t">183286</td><t
13640 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13650 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
13660 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 36 lign="right">136
13670 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 74 64 3e .372057</td><td>
13680 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
13690 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 MARGARITONE</td
136a0 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
136b0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
136c0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
136d0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
136e0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
136f0 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 20 ight">5</td><td
13700 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c align="right">2<
13710 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
13720 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13730 74 22 3e 32 31 39 31 37 31 3c 2f 74 64 3e 3c 74 t">219171</td><t
13740 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13750 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
13760 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
13770 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 732</td><td alig
13780 6e 3d 22 72 69 67 68 74 22 3e 39 33 2e 32 38 35 n="right">93.285
13790 35 33 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 538</td><td>NULL
137a0 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 </td><td>VIA FRA
137b0 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 NCESCO CRISPI</t
137c0 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
137d0 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
137e0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
137f0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
13800 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
13810 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 right">5</td><td
13820 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
13830 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
13840 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13850 68 74 22 3e 32 31 39 30 35 38 3c 2f 74 64 3e 3c ht">219058</td><
13860 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13870 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 >178732</td><td
13880 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
13890 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8754</td><td ali
138a0 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 38 2e 36 gn="right">148.6
138b0 35 36 30 38 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 56089</td><td>NU
138c0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 LL</td><td>VIA F
138d0 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c RANCESCO CRISPI<
138e0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
138f0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
13900 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13910 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
13920 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
13930 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c ="right">5</td><
13940 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13950 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
13960 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13970 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13980 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c ht">178754</td><
13990 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
139a0 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 >183882</td><td
139b0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
139c0 38 2e 32 31 36 38 33 31 3c 2f 74 64 3e 3c 74 64 8.216831</td><td
139d0 3e 42 4c 4f 42 20 73 7a 3d 34 30 30 20 47 45 4f >BLOB sz=400 GEO
139e0 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
139f0 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
13a00 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
13a10 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13a20 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13a30 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
13a40 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 ign="right">6</t
13a50 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13a60 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
13a70 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
13a80 3d 22 72 69 67 68 74 22 3e 32 32 34 35 33 38 3c ="right">224538<
13a90 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13aa0 69 67 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 ight">178754</td
13ab0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13ac0 74 22 3e 31 38 31 39 37 32 3c 2f 74 64 3e 3c 74 t">181972</td><t
13ad0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13ae0 35 30 2e 39 30 30 36 36 33 3c 2f 74 64 3e 3c 74 50.900663</td><t
13af0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
13b00 49 41 20 41 4e 54 4f 4e 49 4f 20 47 55 41 44 41 IA ANTONIO GUADA
13b10 47 4e 4f 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 GNOLI</td>..</tr
13b20 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
13b30 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
13b40 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13b50 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c <td>NULL</td>..<
13b60 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13b70 3e 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >6</td><td align
13b80 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
13b90 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
13ba0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
13bb0 34 35 33 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4537</td><td ali
13bc0 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 37 gn="right">18197
13bd0 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 2</td><td align=
13be0 22 72 69 67 68 74 22 3e 31 38 32 30 30 30 3c 2f "right">182000</
13bf0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
13c00 67 68 74 22 3e 38 36 2e 33 30 31 30 35 31 3c 2f ght">86.301051</
13c10 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13c20 3c 74 64 3e 56 49 41 20 44 45 4c 20 4e 49 4e 46 <td>VIA DEL NINF
13c30 45 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a EO</td>..</tr>..
13c40 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
13c50 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13c60 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13c70 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
13c80 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 ign="right">6</t
13c90 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13ca0 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">3</td><td>Li
13cb0 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
13cc0 3d 22 72 69 67 68 74 22 3e 32 32 35 35 32 37 3c ="right">225527<
13cd0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13ce0 69 67 68 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 ight">182000</td
13cf0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13d00 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c 74 t">183882</td><t
13d10 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13d20 35 31 2e 30 31 35 31 31 37 3c 2f 74 64 3e 3c 74 51.015117</td><t
13d30 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
13d40 49 41 20 4c 49 43 49 4f 20 4e 45 4e 43 45 54 54 IA LICIO NENCETT
13d50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c I</td>..</tr>..<
13d60 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
13d70 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13d80 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
13d90 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
13da0 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 gn="right">6</td
13db0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13dc0 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 t">0</td><td>Rou
13dd0 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c te</td><td>NULL<
13de0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13df0 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 >183882</td><td
13e00 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
13e10 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
13e20 67 6e 3d 22 72 69 67 68 74 22 3e 31 35 34 2e 37 gn="right">154.7
13e30 35 30 38 33 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 50839</td><td>BL
13e40 4f 42 20 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 OB sz=240 GEOMET
13e50 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
13e60 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
13e70 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
13e80 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13e90 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
13ea0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
13eb0 3d 22 72 69 67 68 74 22 3e 37 3c 2f 74 64 3e 3c ="right">7</td><
13ec0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13ed0 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >1</td><td>Link<
13ee0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13ef0 69 67 68 74 22 3e 32 32 35 35 32 37 3c 2f 74 64 ight">225527</td
13f00 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13f10 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c 74 t">183882</td><t
13f20 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13f30 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 182000</td><td a
13f40 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 31 2e lign="right">51.
13f50 30 31 35 31 31 37 3c 2f 74 64 3e 3c 74 64 3e 4e 015117</td><td>N
13f60 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
13f70 4c 49 43 49 4f 20 4e 45 4e 43 45 54 54 49 3c 2f LICIO NENCETTI</
13f80 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
13f90 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
13fa0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
13fb0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
13fc0 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
13fd0 22 72 69 67 68 74 22 3e 37 3c 2f 74 64 3e 3c 74 "right">7</td><t
13fe0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13ff0 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 2</td><td>Link</
14000 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
14010 67 68 74 22 3e 32 32 32 36 33 36 3c 2f 74 64 3e ght">222636</td>
14020 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14030 22 3e 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 ">182000</td><td
14040 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
14050 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
14060 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 33 2e ign="right">103.
14070 37 33 35 37 32 32 3c 2f 74 64 3e 3c 74 64 3e 4e 735722</td><td>N
14080 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
14090 50 49 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f PIETRO ARETINO</
140a0 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 td>..</tr>..</ta
140b0 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 74 27 ble>..<br>..Let'
140c0 73 20 6e 6f 77 20 71 75 69 63 6b 6c 79 20 65 78 s now quickly ex
140d0 61 6d 69 6e 65 20 74 68 65 20 72 65 73 75 6c 74 amine the result
140e0 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 set returned by
140f0 61 6e 79 20 54 53 50 20 71 75 65 72 79 3a 0d 0a any TSP query:..
14100 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 20 67 65 <ul>..<li>the ge
14110 6e 65 72 61 6c 20 6c 61 79 6f 75 74 20 69 73 20 neral layout is
14120 6d 6f 72 65 20 6f 72 20 6c 65 73 73 20 74 68 65 more or less the
14130 20 73 61 6d 65 20 61 73 20 79 6f 75 27 76 65 20 same as you've
14140 61 6c 72 65 61 64 79 20 73 65 65 6e 20 69 6e 20 already seen in
14150 74 68 65 20 63 61 73 65 20 6f 66 20 3c 62 3e 53 the case of <b>S
14160 68 6f 72 74 65 73 74 50 61 74 68 3c 2f 62 3e 20 hortestPath</b>
14170 71 75 65 72 69 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c queries.</li>..<
14180 6c 69 3e 74 68 65 20 3c 62 3e 66 69 72 73 74 20 li>the <b>first
14190 72 6f 77 3c 2f 62 3e 20 6f 66 20 74 68 65 20 72 row</b> of the r
141a0 65 73 75 6c 74 73 65 74 20 69 73 20 73 6f 6d 65 esultset is some
141b0 77 61 79 20 65 78 63 65 70 74 69 6f 6e 61 6c 2c way exceptional,
141c0 20 61 6e 64 20 69 73 20 74 68 65 20 75 6e 69 71 and is the uniq
141d0 75 65 20 72 6f 77 20 6f 66 20 74 68 65 20 72 65 ue row of the re
141e0 73 75 6c 74 73 65 74 20 70 72 65 73 65 6e 74 69 sultset presenti
141f0 6e 67 20 3c 62 3e 4e 4f 54 20 4e 55 4c 4c 3c 2f ng <b>NOT NULL</
14200 62 3e 20 76 61 6c 75 65 73 20 69 6e 20 74 68 65 b> values in the
14210 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 <b>Algorithm</b
14220 3e 2c 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f 62 >, <b>Request</b
14230 3e 2c 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 >, <b>Options</b
14240 3e 20 61 6e 64 20 3c 62 3e 44 65 6c 69 6d 69 74 > and <b>Delimit
14250 65 72 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 2e 3c er</b> columns.<
14260 62 72 3e 0d 0a 49 74 20 63 6f 6e 74 61 69 6e 73 br>..It contains
14270 20 74 68 65 20 3c 62 3e 54 53 50 20 73 6f 6c 75 the <b>TSP solu
14280 74 69 6f 6e 3c 2f 62 3e 20 61 73 20 61 20 77 68 tion</b> as a wh
14290 6f 6c 65 3a 20 63 6f 6c 75 6d 6e 20 3c 62 3e 43 ole: column <b>C
142a0 6f 73 74 3c 2f 62 3e 20 69 73 20 74 68 65 20 3c ost</b> is the <
142b0 75 3e 74 6f 74 61 6c 20 63 6f 73 74 3c 2f 75 3e u>total cost</u>
142c0 20 61 6e 64 20 63 6f 6c 75 6d 6e 20 3c 62 3e 47 and column <b>G
142d0 65 6f 6d 65 74 72 79 3c 2f 62 3e 20 69 73 20 74 eometry</b> is t
142e0 68 65 20 3c 75 3e 6f 76 65 72 61 6c 6c 20 73 6f he <u>overall so
142f0 6c 75 74 69 6f 6e 20 70 61 74 68 3c 2f 75 3e 2e lution path</u>.
14300 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d </li>..<li>colum
14310 6e 73 20 3c 62 3e 52 6f 75 74 65 49 64 3c 2f 62 ns <b>RouteId</b
14320 3e 20 61 6e 64 20 3c 62 3e 52 6f 75 74 65 52 6f > and <b>RouteRo
14330 77 3c 2f 62 3e 20 68 61 76 65 20 74 68 65 20 73 w</b> have the s
14340 61 6d 65 20 69 6e 74 65 72 70 72 65 74 61 74 69 ame interpretati
14350 6f 6e 20 61 73 20 69 6e 20 3c 62 3e 6d 75 6c 74 on as in <b>mult
14360 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 i-destination Sh
14370 6f 72 74 65 73 74 50 61 74 68 3c 2f 62 3e 20 71 ortestPath</b> q
14380 75 65 72 69 65 73 2c 20 62 75 74 20 69 6e 20 74 ueries, but in t
14390 68 69 73 20 73 70 65 63 69 66 69 63 20 63 61 73 his specific cas
143a0 65 20 65 61 63 68 20 3c 75 3e 3c 69 3e 72 6f 75 e each <u><i>rou
143b0 74 65 3c 2f 69 3e 3c 2f 75 3e 20 63 6f 72 72 65 te</i></u> corre
143c0 73 70 6f 6e 64 73 20 74 6f 20 61 20 63 6f 6e 6e sponds to a conn
143d0 65 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 74 ection between t
143e0 77 6f 20 3c 69 3e 3c 75 3e 63 69 74 69 65 73 3c wo <i><u>cities<
143f0 2f 75 3e 3c 2f 69 3e 2e 3c 62 72 3e 0d 0a 41 6c /u></i>.<br>..Al
14400 6c 20 3c 69 3e 3c 75 3e 72 6f 75 74 65 73 3c 2f l <i><u>routes</
14410 75 3e 3c 2f 69 3e 20 61 72 65 20 6f 72 64 65 72 u></i> are order
14420 20 61 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 accordingly to
14430 74 68 65 20 72 75 6e 6e 69 6e 67 20 73 65 71 75 the running sequ
14440 65 6e 63 65 20 6f 66 20 74 68 65 20 54 53 50 20 ence of the TSP
14450 73 6f 6c 75 74 69 6f 6e 2e 20 3c 62 3e 52 6f 75 solution. <b>Rou
14460 74 65 49 64 3d 30 3c 2f 62 3e 20 69 64 65 6e 74 teId=0</b> ident
14470 69 66 69 65 73 20 74 68 65 20 6f 76 65 72 61 6c ifies the overal
14480 6c 20 54 53 50 20 73 6f 6c 75 74 69 6f 6e 2e 3c l TSP solution.<
14490 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 62 72 3e 3c /li>..</ul><br><
144a0 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d br>..<verbatim>.
144b0 0a 55 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 .UPDATE byfoot S
144c0 45 54 20 52 65 71 75 65 73 74 20 3d 20 27 54 53 ET Request = 'TS
144d0 50 20 47 41 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 P GA';....SELECT
144e0 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 65 71 75 Algorithm, Requ
144f0 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c 20 44 65 est, Options, De
14500 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 65 49 64 limiter, RouteId
14510 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 , RouteRow, Role
14520 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 , LinkRowid, Nod
14530 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 eFrom, NodeTo, C
14540 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e ost, Geometry, N
14550 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 ame..FROM byfoot
14560 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d ..WHERE NodeFrom
14570 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e 6f = 178731 AND No
14580 64 65 54 6f 20 3d 20 27 31 38 33 32 38 36 2c 31 deTo = '183286,1
14590 38 31 39 39 39 2c 31 38 34 30 33 30 2c 31 38 33 81999,184030,183
145a0 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 0a 3c 2f 882,178754';..</
145b0 76 65 72 62 61 74 69 6d 3e 0d 0a 49 66 20 79 6f verbatim>..If yo
145c0 75 20 77 68 69 73 68 20 74 6f 20 67 65 74 20 61 u whish to get a
145d0 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e 20 73 <b>TSP GA</b> s
145e0 6f 6c 75 74 69 6f 6e 20 79 6f 75 20 73 69 6d 70 olution you simp
145f0 6c 65 20 68 61 76 65 20 74 6f 20 73 65 74 20 3c le have to set <
14600 62 3e 52 65 71 75 65 73 74 3c 2f 62 3e 20 61 73 b>Request</b> as
14610 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e 3b 20 <b>TSP GA</b>;
14620 61 6e 64 20 79 6f 75 20 63 61 6e 20 73 65 74 20 and you can set
14630 61 67 61 69 6e 20 3c 62 3e 52 65 71 75 65 73 74 again <b>Request
14640 3c 2f 62 3e 20 61 73 20 3c 62 3e 54 53 50 3c 2f </b> as <b>TSP</
14650 62 3e 20 6f 72 20 3c 62 3e 54 53 50 20 4e 4e 3c b> or <b>TSP NN<
14660 2f 62 3e 20 74 6f 20 72 65 76 65 72 74 20 62 61 /b> to revert ba
14670 63 6b 20 74 6f 20 74 68 65 20 73 69 6d 70 6c 65 ck to the simple
14680 72 20 2f 20 66 61 73 74 65 72 20 61 6c 67 6f 72 r / faster algor
14690 69 74 68 6d 2e 0d 0a 3c 62 72 3e 0d 0a 41 6c 73 ithm...<br>..Als
146a0 6f 20 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 o in the case of
146b0 20 54 53 50 20 79 6f 75 20 63 61 6e 20 65 76 65 TSP you can eve
146c0 6e 74 75 61 6c 6c 79 20 61 63 74 69 76 61 74 65 ntually activate
146d0 20 74 68 65 20 75 73 75 61 6c 20 3c 62 3e 4f 70 the usual <b>Op
146e0 74 69 6f 6e 73 3c 2f 62 3e 20 61 6c 72 65 61 64 tions</b> alread
146f0 79 20 65 78 70 6c 61 69 6e 65 64 20 69 6e 20 74 y explained in t
14700 68 65 20 53 68 6f 72 74 65 73 74 50 61 74 68 20 he ShortestPath
14710 65 78 61 6d 70 6c 65 73 2e 0d 0a 3c 76 65 72 62 examples...<verb
14720 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 atim>..UPDATE by
14730 66 6f 6f 74 20 53 45 54 20 52 65 71 75 65 73 74 foot SET Request
14740 20 3d 20 27 54 53 50 27 2c 20 4f 70 74 69 6f 6e = 'TSP', Option
14750 73 20 3d 20 27 4e 4f 20 4c 49 4e 4b 53 27 3b 0d s = 'NO LINKS';.
14760 0a 0d 0a 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 ...SELECT Algori
14770 74 68 6d 2c 20 52 65 71 75 65 73 74 2c 20 4f 70 thm, Request, Op
14780 74 69 6f 6e 73 2c 20 44 65 6c 69 6d 69 74 65 72 tions, Delimiter
14790 2c 20 52 6f 75 74 65 49 64 2c 20 52 6f 75 74 65 , RouteId, Route
147a0 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 Row, Role, LinkR
147b0 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 owid, NodeFrom,
147c0 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 NodeTo, Cost, Ge
147d0 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 ometry, Name..FR
147e0 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 OM byfoot..WHERE
147f0 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 NodeFrom = 1787
14800 33 31 20 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 31 AND NodeTo =
14810 27 31 38 33 32 38 36 2c 31 38 31 39 39 39 2c 31 '183286,181999,1
14820 38 34 30 33 30 2c 31 38 33 38 38 32 2c 31 37 38 84030,183882,178
14830 37 35 34 27 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 754';..</verbati
14840 6d 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e m>..The followin
14850 67 20 74 61 62 6c 65 20 73 68 6f 77 73 20 74 68 g table shows th
14860 65 20 72 65 73 75 6c 74 73 65 74 20 72 65 74 75 e resultset retu
14870 72 6e 65 64 20 62 79 20 74 68 65 20 73 61 6d 65 rned by the same
14880 20 54 53 50 20 71 75 65 72 79 20 75 73 65 64 20 TSP query used
14890 69 6e 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 in the previous
148a0 65 78 61 6d 70 6c 65 20 61 66 74 65 72 20 65 6e example after en
148b0 61 62 6c 69 6e 67 20 74 68 65 20 3c 62 3e 4e 4f abling the <b>NO
148c0 20 4c 49 4e 4b 53 3c 2f 62 3e 20 6f 70 74 69 6f LINKS</b> optio
148d0 6e 2e 20 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 n. <br><br>..<ta
148e0 62 6c 65 20 62 6f 72 64 65 72 3d 22 31 22 20 62 ble border="1" b
148f0 67 63 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 gcolor="#ffffcf"
14900 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 cellspacing="4"
14910 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 cellpadding="6"
14920 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c >..<tr><th bgcol
14930 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 41 6c 67 or="#d0d0a0">Alg
14940 6f 72 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 orithm</th><th b
14950 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
14960 3e 52 65 71 75 65 73 74 3c 2f 74 68 3e 3c 74 68 >Request</th><th
14970 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
14980 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 0">Options</th><
14990 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
149a0 30 61 30 22 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 0a0">Delimiter</
149b0 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
149c0 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 49 64 #d0d0a0">RouteId
149d0 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
149e0 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 ="#d0d0a0">Route
149f0 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f Row</th><th bgco
14a00 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f lor="#d0d0a0">Ro
14a10 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c le</th><th bgcol
14a20 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e or="#d0d0a0">Lin
14a30 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 kRowid</th><th b
14a40 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
14a50 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 >NodeFrom</th><t
14a60 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
14a70 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c a0">NodeTo</th><
14a80 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
14a90 30 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 0a0">Cost</th><t
14aa0 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
14ab0 61 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 a0">Geometry</th
14ac0 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
14ad0 30 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 0d0a0">Name</th>
14ae0 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
14af0 3e 44 69 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 >Dijkstra</td><t
14b00 64 3e 54 53 50 20 4e 4e 3c 2f 74 64 3e 3c 74 64 d>TSP NN</td><td
14b10 3e 4e 6f 20 4c 69 6e 6b 73 3c 2f 74 64 3e 3c 74 >No Links</td><t
14b20 64 3e 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 2c d>, [dec=44,
14b30 20 68 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 64 hex=2c]</td
14b40 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14b50 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">0</td><td ali
14b60 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
14b70 3e 3c 74 64 3e 54 53 50 20 53 6f 6c 75 74 69 6f ><td>TSP Solutio
14b80 6e 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f n</td><td>NULL</
14b90 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
14ba0 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
14bb0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14bc0 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 ">178731</td><td
14bd0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
14be0 32 35 34 2e 34 33 33 39 33 33 3c 2f 74 64 3e 3c 254.433933</td><
14bf0 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 30 30 30 20 td>BLOB sz=2000
14c00 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 GEOMETRY</td><td
14c10 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
14c20 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
14c30 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
14c40 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
14c50 3c 74 64 3e 4e 55 4c 4c 3c 74 64 20 61 6c 69 67 <td>NULL<td alig
14c60 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e n="right">1</td>
14c70 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14c80 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 ">0</td><td>Rout
14c90 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f e</td><td>NULL</
14ca0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
14cb0 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
14cc0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14cd0 22 3e 31 38 34 30 33 30 3c 2f 74 64 3e 3c 74 64 ">184030</td><td
14ce0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
14cf0 37 36 2e 33 36 34 37 35 35 3c 2f 74 64 3e 3c 74 76.364755</td><t
14d00 64 3e 42 4c 4f 42 20 73 7a 3d 33 30 34 20 47 45 d>BLOB sz=304 GE
14d10 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e OMETRY</td><td>N
14d20 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
14d30 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
14d40 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
14d50 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
14d60 64 3e 4e 55 4c 4c 3c 74 64 20 61 6c 69 67 6e 3d d>NULL<td align=
14d70 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 "right">2</td><t
14d80 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14d90 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 0</td><td>Route<
14da0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
14db0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14dc0 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 3e 3c 74 t">184030</td><t
14dd0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14de0 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 181999</td><td a
14df0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 39 lign="right">139
14e00 2e 31 31 34 39 33 38 3c 2f 74 64 3e 3c 74 64 3e .114938</td><td>
14e10 42 4c 4f 42 20 73 7a 3d 34 39 36 20 47 45 4f 4d BLOB sz=496 GEOM
14e20 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c ETRY</td><td>NUL
14e30 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c L</td>..</tr>..<
14e40 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
14e50 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
14e60 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
14e70 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
14e80 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 gn="right">3</td
14e90 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14ea0 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 t">0</td><td>Rou
14eb0 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c te</td><td>NULL<
14ec0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14ed0 69 67 68 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 ight">181999</td
14ee0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14ef0 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 t">183286</td><t
14f00 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14f10 32 31 37 2e 36 37 32 38 38 35 3c 2f 74 64 3e 3c 217.672885</td><
14f20 74 64 3e 42 4c 4f 42 20 73 7a 3d 36 38 38 20 47 td>BLOB sz=688 G
14f30 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e EOMETRY</td><td>
14f40 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e NULL</td>..</tr>
14f50 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
14f60 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14f70 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
14f80 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
14f90 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c align="right">4<
14fa0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14fb0 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
14fc0 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
14fd0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
14fe0 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c ="right">183286<
14ff0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
15000 69 67 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 ight">178754</td
15010 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
15020 74 22 3e 33 37 38 2e 33 31 33 36 38 34 3c 2f 74 t">378.313684</t
15030 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 d><td>BLOB sz=27
15040 32 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 2 GEOMETRY</td><
15050 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
15060 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
15070 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
15080 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
15090 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
150a0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
150b0 3e 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >5</td><td align
150c0 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
150d0 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 td>Route</td><td
150e0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
150f0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
15100 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 54</td><td align
15110 3d 22 72 69 67 68 74 22 3e 31 38 33 38 38 32 3c ="right">183882<
15120 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
15130 69 67 68 74 22 3e 31 38 38 2e 32 31 36 38 33 31 ight">188.216831
15140 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a </td><td>BLOB sz
15150 3d 34 30 30 20 47 45 4f 4d 45 54 52 59 3c 2f 74 =400 GEOMETRY</t
15160 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
15170 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
15180 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
15190 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
151a0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
151b0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
151c0 68 74 22 3e 36 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">6</td><td al
151d0 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
151e0 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
151f0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
15200 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
15210 38 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 83882</td><td al
15220 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
15230 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
15240 3d 22 72 69 67 68 74 22 3e 31 35 34 2e 37 35 30 ="right">154.750
15250 38 33 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 839</td><td>BLOB
15260 20 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 sz=240 GEOMETRY
15270 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
15280 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 d>..</tr>..</tab
15290 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 le>..<br><br><br
152a0 3e 0d 0a 54 68 65 20 6d 61 70 20 62 65 6c 6f 77 >..The map below
152b0 20 67 72 61 70 68 69 63 61 6c 6c 79 20 73 68 6f graphically sho
152c0 77 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 ws the previous
152d0 3c 62 3e 54 53 50 3c 2f 62 3e 20 71 75 65 72 69 <b>TSP</b> queri
152e0 65 73 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c es...<br><br>..<
152f0 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f img src="https:/
15300 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 /www.gaia-gis.it
15310 2f 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 74 69 /gaia-sins/routi
15320 6e 67 2d 66 69 67 73 2f 74 73 70 31 2e 6a 70 67 ng-figs/tsp1.jpg
15330 22 20 61 6c 74 3d 22 66 69 67 34 22 3e 0d 0a 3c " alt="fig4">..<
15340 75 6c 3e 0d 0a 3c 6c 69 3e 52 65 64 20 73 74 61 ul>..<li>Red sta
15350 72 3a 20 74 68 65 20 3c 75 3e 3c 69 3e 62 61 73 r: the <u><i>bas
15360 65 2d 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e 20 28 e-city</i></u> (
15370 66 72 6f 6d 20 77 68 65 72 65 20 74 68 65 20 3c from where the <
15380 75 3e 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c 2f 69 u><i>salesman</i
15390 3e 3c 2f 75 3e 29 20 62 65 67 69 6e 73 20 68 69 ></u>) begins hi
153a0 73 2f 68 65 72 20 74 72 69 70 2e 3c 2f 6c 69 3e s/her trip.</li>
153b0 0d 0a 3c 6c 69 3e 47 72 65 65 6e 20 64 6f 74 73 ..<li>Green dots
153c0 3a 20 74 68 65 20 3c 75 3e 3c 69 3e 63 69 74 69 : the <u><i>citi
153d0 65 73 3c 2f 69 3e 3c 2f 75 3e 20 74 6f 20 62 65 es</i></u> to be
153e0 20 76 69 73 69 74 65 64 2e 3c 2f 6c 69 3e 0d 0a visited.</li>..
153f0 3c 6c 69 3e 59 65 6c 6c 6f 77 20 6c 69 6e 65 3a <li>Yellow line:
15400 20 74 68 65 20 54 53 50 20 73 6f 6c 75 74 69 6f the TSP solutio
15410 6e 20 28 74 68 61 74 20 69 73 20 61 6c 77 61 79 n (that is alway
15420 73 20 61 20 63 69 72 63 75 6c 61 72 20 70 61 74 s a circular pat
15430 68 29 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c h).</li>..</ul><
15440 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f br>..<table bgco
15450 6c 6f 72 3d 22 23 66 66 62 30 36 30 22 20 63 65 lor="#ffb060" ce
15460 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 llspacing="10" c
15470 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c ellpadding="6"><
15480 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 57 61 72 tr><td>..<h3>War
15490 6e 69 6e 67 3a 20 68 6f 77 20 74 6f 20 63 6f 72 ning: how to cor
154a0 72 65 63 74 6c 79 20 68 61 6e 64 6c 69 6e 67 20 rectly handling
154b0 54 53 50 20 72 65 73 75 6c 74 73 65 74 73 20 77 TSP resultsets w
154c0 69 74 68 20 73 70 61 74 69 61 6c 69 74 65 5f 67 ith spatialite_g
154d0 75 69 3c 2f 68 33 3e 0d 0a 59 6f 75 20 73 68 6f ui</h3>..You sho
154e0 75 6c 64 20 6e 65 76 65 72 20 66 6f 72 67 65 74 uld never forget
154f0 20 6f 72 20 6f 76 65 72 6c 6f 6f 6b 20 74 68 61 or overlook tha
15500 74 20 62 6f 74 68 20 3c 62 3e 54 53 50 20 4e 4e t both <b>TSP NN
15510 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 54 53 50 20 </b> and <b>TSP
15520 47 41 3c 2f 62 3e 20 61 72 65 20 3c 75 3e 3c 69 GA</b> are <u><i
15530 3e 68 65 75 72 69 73 74 69 63 20 61 6c 67 6f 72 >heuristic algor
15540 69 74 68 6d 73 3c 2f 69 3e 3c 2f 75 3e 20 68 65 ithms</i></u> he
15550 61 76 69 6c 79 20 72 65 6c 79 69 6e 67 20 6f 6e avily relying on
15560 20 3c 75 3e 3c 69 3e 72 61 6e 64 6f 6d 3c 69 3e <u><i>random<i>
15570 3c 2f 75 3e 20 63 68 6f 69 63 65 73 2e 3c 62 72 </u> choices.<br
15580 3e 0d 0a 54 68 69 73 20 63 6f 75 6c 64 20 65 61 >..This could ea
15590 73 69 6c 79 20 68 61 76 65 20 74 68 65 20 70 72 sily have the pr
155a0 61 63 74 69 63 61 6c 20 63 6f 6e 73 65 71 75 65 actical conseque
155b0 6e 63 65 20 74 68 61 74 20 72 65 73 6f 6c 76 69 nce that resolvi
155c0 6e 67 20 74 77 69 63 65 20 28 6f 72 20 65 76 65 ng twice (or eve
155d0 6e 20 6d 6f 72 65 20 74 69 6d 65 73 29 20 74 68 n more times) th
155e0 65 20 73 61 6d 65 20 69 64 65 6e 74 69 63 61 6c e same identical
155f0 20 54 53 50 20 71 75 65 72 79 20 63 6f 75 6c 64 TSP query could
15600 20 65 76 65 6e 74 75 61 6c 6c 79 20 72 65 74 75 eventually retu
15610 72 6e 20 64 69 66 66 65 72 65 6e 74 20 72 65 73 rn different res
15620 75 6c 74 73 65 74 73 2e 3c 62 72 3e 0d 0a 54 68 ultsets.<br>..Th
15630 65 72 65 20 69 73 20 6e 6f 74 68 69 6e 67 20 69 ere is nothing i
15640 6e 74 72 69 6e 73 69 63 61 6c 6c 79 20 77 72 6f ntrinsically wro
15650 6e 67 20 69 6e 20 74 68 69 73 2c 20 69 74 20 73 ng in this, it s
15660 69 6d 70 6c 79 20 69 73 20 61 20 64 69 72 65 63 imply is a direc
15670 74 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 t consequence of
15680 20 75 73 69 6e 67 20 3c 75 3e 3c 69 3e 72 61 6e using <u><i>ran
15690 64 6f 6d 6e 65 73 73 3c 2f 69 3e 3c 2f 75 3e 3b domness</i></u>;
156a0 20 77 65 20 61 72 65 20 73 69 6d 70 6c 79 20 62 we are simply b
156b0 61 72 67 61 69 6e 69 6e 67 20 3c 62 3e 65 78 61 argaining <b>exa
156c0 63 74 6e 65 73 73 3c 2f 62 3e 20 61 6e 64 20 3c ctness</b> and <
156d0 62 3e 72 65 70 72 6f 64 75 63 69 62 69 6c 69 74 b>reproducibilit
156e0 3c 2f 62 3e 20 66 6f 72 20 3c 62 3e 71 75 69 63 </b> for <b>quic
156f0 6b 6e 65 73 73 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 kness</b>.<br><b
15700 72 3e 0d 0a 3c 62 3e 73 70 61 74 69 61 6c 69 74 r>..<b>spatialit
15710 65 5f 67 75 69 3c 2f 62 3e 20 6f 6e 20 69 74 73 e_gui</b> on its
15720 20 6f 77 6e 20 61 64 6f 70 74 73 20 61 20 3c 62 own adopts a <b
15730 3e 70 61 67 65 64 20 73 74 72 61 74 65 67 79 3c >paged strategy<
15740 2f 62 3e 20 77 68 65 6e 20 73 68 6f 77 69 6e 67 /b> when showing
15750 20 68 75 67 65 20 72 65 73 75 6c 74 73 65 74 73 huge resultsets
15760 2c 20 74 68 61 74 20 72 65 71 75 69 72 65 73 20 , that requires
15770 74 6f 20 72 65 70 65 61 74 20 61 67 61 69 6e 20 to repeat again
15780 74 68 65 20 69 6e 69 74 69 61 6c 20 53 51 4c 20 the initial SQL
15790 71 75 65 72 79 20 65 61 63 68 20 74 69 6d 65 20 query each time
157a0 74 68 61 74 20 61 20 3c 62 3e 6e 65 77 20 70 61 that a <b>new pa
157b0 67 65 20 6f 66 20 35 30 30 20 72 6f 77 73 3c 2f ge of 500 rows</
157c0 62 3e 20 68 61 73 20 74 6f 20 62 65 20 73 68 6f b> has to be sho
157d0 77 6e 20 6f 6e 20 74 68 65 20 63 75 72 72 65 6e wn on the curren
157e0 74 20 77 69 6e 64 6f 77 20 70 61 6e 65 6c 2e 3c t window panel.<
157f0 62 72 3e 0d 0a 54 68 65 20 74 77 6f 20 74 68 69 br>..The two thi
15800 6e 67 73 20 64 6f 6e 27 74 20 67 6f 20 74 6f 67 ngs don't go tog
15810 65 74 68 65 72 20 77 65 6c 6c 3b 20 73 6f 20 64 ether well; so d
15820 6f 6e 27 74 20 62 65 20 73 75 72 70 72 69 73 65 on't be surprise
15830 64 20 77 68 65 6e 20 65 76 65 6e 74 75 61 6c 6c d when eventuall
15840 79 20 64 69 73 63 6f 76 65 72 69 6e 67 20 74 68 y discovering th
15850 61 74 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 at <b>spatialite
15860 5f 67 75 69 3c 2f 62 3e 20 77 69 6c 6c 20 62 65 _gui</b> will be
15870 68 61 76 65 20 62 69 7a 7a 61 72 65 6c 79 20 77 have bizzarely w
15880 68 69 6c 65 20 70 72 65 73 65 6e 74 69 6e 67 20 hile presenting
15890 73 6f 6d 65 20 72 65 73 75 6c 74 73 65 74 20 72 some resultset r
158a0 65 74 75 72 6e 65 64 20 62 79 20 61 20 54 53 50 eturned by a TSP
158b0 20 71 75 65 72 79 2e 20 0d 0a 3c 76 65 72 62 61 query. ..<verba
158c0 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 tim>..UPDATE byf
158d0 6f 6f 74 20 53 45 54 20 52 65 71 75 65 73 74 20 oot SET Request
158e0 3d 20 27 54 53 50 27 3b 0d 0a 0d 0a 43 52 45 41 = 'TSP';....CREA
158f0 54 45 20 54 41 42 4c 45 20 6d 79 5f 74 73 70 5f TE TABLE my_tsp_
15900 73 6f 6c 75 74 69 6f 6e 20 41 53 0d 0a 53 45 4c solution AS..SEL
15910 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 ECT Algorithm, R
15920 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c equest, Options,
15930 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 Delimiter, Rout
15940 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 eId, RouteRow, R
15950 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 ole, LinkRowid,
15960 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f NodeFrom, NodeTo
15970 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 , Cost, Geometry
15980 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 , Name..FROM byf
15990 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 oot..WHERE NodeF
159a0 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
159b0 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 38 NodeTo = '18328
159c0 36 2c 31 38 31 39 39 39 2c 31 38 34 30 33 30 2c 6,181999,184030,
159d0 31 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 183882,178754';.
159e0 0a 0d 0a 2e 2e 2e 20 20 3c 6e 6f 77 20 71 75 65 ...... <now que
159f0 72 79 20 22 6d 79 5f 74 73 70 5f 73 6f 6c 75 74 ry "my_tsp_solut
15a00 69 6f 6e 22 20 75 73 69 6e 67 20 73 70 61 74 69 ion" using spati
15a10 61 6c 69 74 65 5f 67 75 69 3e 20 20 2e 2e 2e 0d alite_gui> ....
15a20 0a 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6d 79 ...DROP TABLE my
15a30 5f 74 73 70 5f 73 6f 6c 75 74 69 6f 6e 3b 0d 0a _tsp_solution;..
15a40 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 3c 75 3e </verbatim>..<u>
15a50 48 69 6e 74 3c 2f 75 3e 3a 20 72 65 73 6f 6c 76 Hint</u>: resolv
15a60 69 6e 67 20 74 68 69 73 20 70 75 7a 7a 6c 69 6e ing this puzzlin
15a70 67 20 69 73 73 75 65 20 69 73 20 68 6f 77 65 76 g issue is howev
15a80 65 72 20 62 61 73 69 63 61 6c 6c 79 20 73 69 6d er basically sim
15a90 70 6c 65 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e ple:..<ol>..<li>
15aa0 79 6f 75 20 73 69 6d 70 6c 79 20 68 61 76 65 20 you simply have
15ab0 74 6f 20 74 61 6b 65 20 61 20 3c 62 3e 73 74 61 to take a <b>sta
15ac0 74 69 63 20 73 6e 61 70 73 68 6f 74 3c 2f 62 3e tic snapshot</b>
15ad0 20 6f 66 20 79 6f 75 72 20 54 53 50 20 72 65 73 of your TSP res
15ae0 75 6c 74 73 65 74 20 62 79 20 75 73 69 6e 67 20 ultset by using
15af0 74 68 65 20 3c 62 3e 43 52 45 41 54 45 20 54 41 the <b>CREATE TA
15b00 42 4c 45 20 3c 69 3e 6e 61 6d 65 3c 2f 69 3e 20 BLE <i>name</i>
15b10 41 53 3c 2f 62 3e 20 73 74 61 74 65 6d 65 6e 74 AS</b> statement
15b20 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 6e .</li>..<li>then
15b30 20 79 6f 75 20 63 61 6e 20 66 72 65 65 6c 79 20 you can freely
15b40 65 78 61 6d 69 6e 65 20 74 68 65 20 61 62 6f 76 examine the abov
15b50 65 20 73 6e 61 70 73 68 6f 74 2e 3c 2f 6c 69 3e e snapshot.</li>
15b60 0d 0a 3c 6c 69 3e 61 6e 64 20 66 69 6e 61 6c 6c ..<li>and finall
15b70 79 20 79 6f 75 20 63 61 6e 20 64 75 6c 79 20 3c y you can duly <
15b80 62 3e 44 52 4f 50 3c 2f 62 3e 20 74 68 65 20 73 b>DROP</b> the s
15b90 6e 61 70 73 68 6f 74 20 6f 6e 63 65 20 69 74 27 napshot once it'
15ba0 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 75 73 65 66 s no longer usef
15bb0 75 6c 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d ul.</li>..</ol>.
15bc0 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 2f 74 .</td></tr>..</t
15bd0 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 able>..<br>..<ta
15be0 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 ble bgcolor="#c0
15bf0 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e ffc0" cellspacin
15c00 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 g="10" cellpaddi
15c10 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d ng="6"><tr><td>.
15c20 0a 3c 68 33 3e 4d 6f 72 65 20 61 62 6f 75 74 20 .<h3>More about
15c30 4c 69 6e 65 61 72 20 52 65 66 65 72 65 6e 63 69 Linear Referenci
15c40 6e 67 20 61 6e 64 20 56 69 72 74 75 61 6c 52 6f ng and VirtualRo
15c50 75 74 69 6e 67 20 4c 69 6e 65 73 74 72 69 6e 67 uting Linestring
15c60 73 3c 2f 68 33 3e 20 0d 0a 59 6f 75 20 68 61 76 s</h3> ..You hav
15c70 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 69 e already seen i
15c80 6e 20 61 20 70 72 65 76 69 6f 75 73 20 65 78 61 n a previous exa
15c90 6d 70 6c 65 20 74 68 61 74 20 61 6c 6c 20 4c 49 mple that all LI
15ca0 4e 45 53 54 52 49 4e 47 73 20 63 72 65 61 74 65 NESTRINGs create
15cb0 64 20 62 79 20 56 69 72 74 75 61 6c 52 6f 75 74 d by VirtualRout
15cc0 69 6e 67 20 73 75 70 70 6f 72 74 20 74 68 65 20 ing support the
15cd0 3c 62 3e 4d 3c 2f 62 3e 20 28 3c 62 3e 3c 69 3e <b>M</b> (<b><i>
15ce0 6d 65 61 73 75 72 65 3c 2f 69 3e 3c 2f 62 3e 29 measure</i></b>)
15cf0 20 63 6f 6f 72 64 69 6e 61 74 65 20 69 6e 74 65 coordinate inte
15d00 6e 64 65 64 20 61 73 20 61 20 3c 62 3e 70 72 6f nded as a <b>pro
15d10 67 72 65 73 73 69 76 65 20 63 6f 73 74 3c 2f 62 gressive cost</b
15d20 3e 20 66 6f 72 20 65 61 63 68 20 76 65 72 74 65 > for each verte
15d30 78 2e 20 41 6e 64 20 79 6f 75 20 61 6c 72 65 61 x. And you alrea
15d40 64 79 20 6b 6e 6f 77 20 74 68 65 20 74 68 65 79 dy know the they
15d50 20 63 61 6e 20 73 75 70 70 6f 72 74 20 3c 62 3e can support <b>
15d60 3c 69 3e 6c 69 6e 65 61 72 20 72 65 66 65 72 65 <i>linear refere
15d70 6e 63 69 6e 67 3c 2f 69 3e 3c 2f 62 3e 20 28 3c ncing</i></b> (<
15d80 62 3e 4c 52 3c 2f 62 3e 29 20 53 51 4c 20 66 75 b>LR</b>) SQL fu
15d90 6e 63 74 69 6f 6e 73 2e 3c 62 72 3e 0d 0a 4c 65 nctions.<br>..Le
15da0 74 27 73 20 6e 6f 77 20 67 6f 20 69 6e 20 66 75 t's now go in fu
15db0 72 74 68 65 72 20 64 65 70 74 68 2e 0d 0a 3c 68 rther depth...<h
15dc0 33 3e 54 72 61 6a 65 63 74 6f 72 79 20 6f 62 6a 3>Trajectory obj
15dd0 65 63 74 73 3c 2f 68 33 3e 0d 0a 41 20 3c 62 3e ects</h3>..A <b>
15de0 54 72 61 6a 65 63 74 6f 72 79 3c 2f 62 3e 20 69 Trajectory</b> i
15df0 73 20 61 6e 79 20 4c 69 6e 65 73 74 72 69 6e 67 s any Linestring
15e00 20 73 75 70 70 6f 72 74 69 6e 67 20 3c 62 3e 4d supporting <b>M
15e10 20 63 6f 6f 72 64 69 6e 61 74 65 73 3c 2f 62 3e coordinates</b>
15e20 20 77 69 74 68 20 61 20 63 6f 6e 74 69 6e 75 6f with a continuo
15e30 75 73 6c 79 20 69 6e 63 72 65 61 73 69 6e 67 20 usly increasing
15e40 74 72 65 6e 64 2e 3c 62 72 3e 0d 0a 49 6e 20 73 trend.<br>..In s
15e50 69 6d 70 6c 65 72 20 77 6f 72 64 73 2c 20 74 68 impler words, th
15e60 65 20 3c 62 3e 4d 2d 76 61 6c 75 65 3c 2f 62 3e e <b>M-value</b>
15e70 20 6f 66 20 65 61 63 68 20 76 65 72 74 65 78 20 of each vertex
15e80 28 65 78 63 65 70 74 20 74 68 65 20 6c 61 73 74 (except the last
15e90 20 6f 6e 65 29 20 6d 75 73 74 20 62 65 20 3c 62 one) must be <b
15ea0 3e 6c 65 73 73 65 72 3c 2f 62 3e 20 74 68 61 6e >lesser</b> than
15eb0 20 74 68 65 20 4d 2d 56 61 6c 75 65 20 6f 66 20 the M-Value of
15ec0 74 68 65 20 6e 65 78 74 20 76 65 72 74 65 78 2e the next vertex.
15ed0 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 ..<verbatim>..SE
15ee0 4c 45 43 54 20 2a 20 46 52 4f 4d 20 6d 79 5f 74 LECT * FROM my_t
15ef0 73 70 5f 73 6f 6c 75 74 69 6f 6e 20 57 48 45 52 sp_solution WHER
15f00 45 20 53 54 5f 49 73 56 61 6c 69 64 54 72 61 6a E ST_IsValidTraj
15f10 65 63 74 6f 72 79 28 67 65 6f 6d 65 74 72 79 29 ectory(geometry)
15f20 20 3d 20 31 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d = 1;..---------
15f30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 31 0d 0a 3c ----------..1..<
15f40 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 73 20 79 /verbatim>..As y
15f50 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 63 68 ou can easily ch
15f60 65 63 6b 20 62 79 20 63 61 6c 6c 69 6e 67 20 3c eck by calling <
15f70 62 3e 53 54 5f 49 73 56 61 6c 69 64 54 72 61 6a b>ST_IsValidTraj
15f80 65 63 74 6f 72 79 28 29 3c 2f 62 3e 20 65 76 65 ectory()</b> eve
15f90 72 79 20 4c 69 6e 65 73 74 72 69 6e 67 20 63 72 ry Linestring cr
15fa0 65 61 74 65 64 20 62 79 20 56 69 72 74 75 61 6c eated by Virtual
15fb0 52 6f 75 74 69 6e 67 20 69 73 20 61 20 3c 62 3e Routing is a <b>
15fc0 76 61 6c 69 64 20 54 72 61 6a 65 63 74 6f 72 79 valid Trajectory
15fd0 3c 2f 62 3e 2e 0d 0a 3c 76 65 72 62 61 74 69 6d </b>...<verbatim
15fe0 3e 0d 0a 53 45 4c 45 43 54 20 53 54 5f 54 72 61 >..SELECT ST_Tra
15ff0 6a 65 63 74 6f 72 79 49 6e 74 65 72 70 6f 6c 61 jectoryInterpola
16000 74 65 50 6f 69 6e 74 28 47 65 6f 6d 65 74 72 79 tePoint(Geometry
16010 2c 20 31 30 30 2e 30 29 0d 0a 46 52 4f 4d 20 6d , 100.0)..FROM m
16020 79 5f 74 73 70 5f 73 6f 6c 75 74 69 6f 6e 0d 0a y_tsp_solution..
16030 57 48 45 52 45 20 52 6f 75 74 65 49 64 20 3d 20 WHERE RouteId =
16040 30 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0;..</verbatim>.
16050 0a 53 6f 20 79 6f 75 20 6a 75 73 74 20 68 61 76 .So you just hav
16060 65 20 74 6f 20 63 61 6c 6c 20 3c 62 3e 53 54 5f e to call <b>ST_
16070 54 72 61 6a 65 63 74 6f 72 79 49 6e 74 65 72 70 TrajectoryInterp
16080 6f 6c 61 74 65 50 6f 69 6e 74 28 29 3c 2f 62 3e olatePoint()</b>
16090 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 63 72 65 in order to cre
160a0 61 74 65 20 61 20 50 4f 49 4e 54 20 65 78 61 63 ate a POINT exac
160b0 74 6c 79 20 6c 6f 63 61 74 65 64 20 6f 6e 20 74 tly located on t
160c0 68 65 20 4c 69 6e 65 73 74 72 69 6e 67 20 61 74 he Linestring at
160d0 20 74 68 65 20 67 69 76 65 6e 20 3c 62 3e 63 6f the given <b>co
160e0 73 74 3c 2f 62 3e 2e 0d 0a 3c 62 72 3e 3c 62 72 st</b>...<br><br
160f0 3e 3c 68 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 54 ><hr><br><br>..T
16100 68 65 20 73 69 64 65 20 6d 61 70 20 67 72 61 70 he side map grap
16110 68 69 63 61 6c 6c 79 20 73 68 6f 77 73 20 74 68 hically shows th
16120 65 20 65 73 74 69 6d 61 74 65 64 20 70 6f 73 69 e estimated posi
16130 74 69 6f 6e 73 20 65 76 65 72 79 20 31 30 30 6d tions every 100m
16140 20 61 73 73 75 6d 69 6e 67 20 74 68 65 20 73 61 assuming the sa
16150 6d 65 20 70 61 74 68 20 72 65 74 75 72 6e 65 64 me path returned
16160 20 62 79 20 74 68 65 20 6c 61 74 65 73 74 20 54 by the latest T
16170 53 50 20 71 75 65 72 79 2e 0d 0a 3c 2f 74 64 3e SP query...</td>
16180 3c 74 64 3e 20 20 20 20 20 20 20 20 20 20 20 20 <td>
16190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
161a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
161b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
161c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
161d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
161e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
161f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
162a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
162b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
162c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
162d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
162e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
162f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
163a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
163b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
163c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
163d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
163e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
163f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
164a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
164b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
164c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
164d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
164e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
164f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
165a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
165b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
165c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
165d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
165e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
165f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
166a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
166b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
166c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
166d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
166e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
166f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
167a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
167b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
167c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
167d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
167e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
167f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
168a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
168b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
168c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
168d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
168e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
168f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
169a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
169b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
169c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
169d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
169e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
169f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16a90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16af0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16b90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16bb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16bd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16bf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16c90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16cb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16cd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16cf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16d90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16db0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16dd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16df0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16e90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16eb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16f90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16fb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16fd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
16ff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
170a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
170b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
170c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
170d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
170e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
170f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
171a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
171b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
171c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
171d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
171e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
171f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
172a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
172b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
172c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
172d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
172e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
172f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
173a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
173b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
173c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
173d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
173e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
173f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
174a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
174b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
174c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
174d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
174e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
174f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
175a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
175b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
175c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
175d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
175e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
175f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
176a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
176b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
176c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
176d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
176e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
176f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
177a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
177b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
177c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
177d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
177e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
177f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
178a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
178b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
178c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
178d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
178e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
178f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
179a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
179b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
179c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
179d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
179e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
179f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17a90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17af0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17b90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17bb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17bd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17bf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17c90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17cb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17cd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17cf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17d90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17db0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17dd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17df0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17e90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17eb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17f90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17fb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17fd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
17ff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
180a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
180b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
180c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
180d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
180e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
180f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
181a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
181b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
181c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
181d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
181e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
181f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
182a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
182b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
182c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
182d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
182e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
182f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
183a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
183b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
183c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
183d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
183e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
183f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
184a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
184b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
184c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
184d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
184e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
184f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
185a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
185b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
185c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
185d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
185e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
185f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
186a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
186b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
186c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
186d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
186e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
186f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
187a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
187b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
187c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
187d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
187e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
187f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
188a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
188b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
188c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
188d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
188e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
188f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
189a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
189b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
189c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
189d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
189e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
189f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18a90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18af0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18b90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18bb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18bd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18bf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18c90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18cb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18cd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18cf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18d90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18db0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18dd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18df0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18e90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18eb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18f90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18fb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18fd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
18ff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
190a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
190b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
190c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
190d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
190e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
190f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
191a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
191b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
191c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
191d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
191e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
191f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
192a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
192b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
192c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
192d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
192e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
192f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
193a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
193b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
193c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
193d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
193e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
193f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
194a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
194b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
194c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
194d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
194e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
194f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
195a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
195b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
195c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
195d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
195e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
195f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
196a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
196b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
196c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
196d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
196e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
196f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
197a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
197b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
197c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
197d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
197e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
197f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
198a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
198b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
198c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
198d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
198e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
198f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
199a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
199b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
199c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
199d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
199e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
199f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19a90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19af0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19bb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19bd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19bf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19c90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19cb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19cd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19cf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19d90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19db0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19dd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19df0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19e90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19eb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19f90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19fb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19fd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19ff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a0b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a0c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a0d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a0f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a1b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a1d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a1f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a2b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a2d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a2e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a2f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a3b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a3d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a3f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a4b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a4d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a4f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a5b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a5d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a5f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a6b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a6d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a6f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a7b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a7d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a7f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a8b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a8d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a8f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a9b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a9d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a9f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aa90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aaa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aaf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ab90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1abb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1abc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1abd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1abe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1abf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ac90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1acb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1acc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1acd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ace0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1acf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ad90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ada0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1adb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1adc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1add0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ade0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1adf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ae90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aeb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1af90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1afa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1afb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1afc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1afd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1afe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1aff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b0b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b0c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b0d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b0f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b1b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b1d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b1f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b2b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b2d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b2e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b2f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b3b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b3d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b3f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b4b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b4d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b4f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b5b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b5d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b5f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b6b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b6d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b6f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b7b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b7d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b7f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b8b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b8d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b8f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b9b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b9d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b9f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ba90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1baa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1baf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bbb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bbc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bbd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bbe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bbf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bc90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bcb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bcc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bcd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bcf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bd90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bdb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bdc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bdd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bde0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bdf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1beb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bf90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bfa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bfb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bfc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bfd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bfe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c0b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c0c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c0d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c0f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c1b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c1d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c1f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c2b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c2d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c2e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c2f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c3b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c3d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c3f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c4b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c4d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c4f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c5b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c5d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c5f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c6b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c6d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c6f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c7b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c7d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c7f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c8b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c8d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c8f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c9b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c9d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c9f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ca90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1caa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1caf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cb90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cbb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cbc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cbd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cbe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cbf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cc90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ccb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ccc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ccd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ccf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cd90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cdb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cdc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cdd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cde0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cdf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ce90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ceb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ced0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cf90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cfa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cfb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cfc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cfd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cfe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1cff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d0b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d0c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d0d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d0f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d1b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d1d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d1f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d2b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d2d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d2e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d2f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d3b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d3d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d3f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d4b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d4d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d4f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d5b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d5d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d5f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d6b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d6d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d6f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d7b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d7d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d7f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d8b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d8d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d8f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d9b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d9d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d9f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1da90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1daa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1daf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1db90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dbb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dbc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dbd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dbe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dbf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dcb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dcc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dcd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dcf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dd90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ddb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ddc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ddd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dde0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ddf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1de90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1deb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ded0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1def0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dfa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dfb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dfc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dfd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dfe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e0b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e0c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e0d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e0f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e1b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e1d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e1f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e2b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e2d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e2e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e2f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e3b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e3d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e3f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e4b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e4d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e4f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e5b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e5d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e5f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e6b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e6d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e6f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e7b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e7d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e7f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e8b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e8c0 20 20 20 20 20 20 20 20 20 20 20 0d 0a 3c 69 6d ..<im
1e8d0 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77 g src="https://w
1e8e0 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 67 ww.gaia-gis.it/g
1e8f0 61 69 61 2d 73 69 6e 73 2f 72 6f 75 74 69 6e 67 aia-sins/routing
1e900 2d 66 69 67 73 2f 74 73 70 32 2e 6a 70 67 22 20 -figs/tsp2.jpg"
1e910 61 6c 74 3d 22 66 69 67 35 22 3e 0d 0a 3c 2f 74 alt="fig5">..</t
1e920 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 6c 65 3e 0d d></tr></table>.
1e930 0a 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 61 20 68 72 .<hr><br>..<a hr
1e940 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e ef="https://www.
1e950 67 61 69 61 2d 67 69 73 2e 69 74 2f 66 6f 73 73 gaia-gis.it/foss
1e960 69 6c 2f 6c 69 62 73 70 61 74 69 61 6c 69 74 65 il/libspatialite
1e970 2f 77 69 6b 69 3f 6e 61 6d 65 3d 34 2e 33 2e 30 /wiki?name=4.3.0
1e980 2d 64 6f 63 22 3e 62 61 63 6b 3c 2f 61 3e 0a 5a -doc">back</a>.Z
1e990 20 38 37 34 32 66 35 61 34 35 66 64 31 38 32 64 8742f5a45fd182d
1e9a0 33 30 37 36 30 61 65 36 30 64 31 37 38 62 36 36 30760ae60d178b66
1e9b0 32 0a 2.