Wiki page
[VirtualRouting] by
sandro
2018-04-25 07:25:40.
0000: 44 20 32 30 31 38 2d 30 34 2d 32 35 54 30 37 3a D 2018-04-25T07:
0010: 32 35 3a 34 30 2e 36 33 31 0a 4c 20 56 69 72 74 25:40.631.L Virt
0020: 75 61 6c 52 6f 75 74 69 6e 67 0a 50 20 37 34 39 ualRouting.P 749
0030: 63 63 35 32 62 36 32 37 39 32 30 61 63 38 38 66 cc52b627920ac88f
0040: 65 34 62 39 63 66 35 33 36 38 31 39 34 39 38 39 e4b9cf5368194989
0050: 64 35 66 33 61 0a 55 20 73 61 6e 64 72 6f 0a 57 d5f3a.U sandro.W
0060: 20 31 35 30 39 35 38 0a 3c 61 20 68 72 65 66 3d 150958.<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: 69 73 6f 63 68 72 6f 6e 65 22 3e 53 6f 6c 76 69 isochrone">Solvi
0230: 6e 67 20 49 73 6f 63 68 72 6f 6e 65 20 70 72 6f ng Isochrone pro
0240: 62 6c 65 6d 73 3c 2f 61 3e 3c 62 72 3e 0d 0a 37 blems</a><br>..7
0250: 20 2d 20 3c 61 20 68 72 65 66 3d 22 23 74 73 70 - <a href="#tsp
0260: 22 3e 53 6f 6c 76 69 6e 67 20 54 53 50 20 28 74 ">Solving TSP (t
0270: 72 61 76 65 6c 69 6e 67 20 73 61 6c 65 73 6d 61 raveling salesma
0280: 6e 29 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c n) problems</a><
0290: 62 72 3e 0d 0a 38 20 2d 20 3c 61 20 68 72 65 66 br>..8 - <a href
02a0: 3d 22 23 70 32 70 22 3e 53 6f 6c 76 69 6e 67 20 ="#p2p">Solving
02b0: 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 70 Point-to-Point p
02c0: 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 62 72 3e 0d roblems</a><br>.
02d0: 0a 3c 62 72 3e 3c 68 72 3e 0d 0a 3c 68 31 3e 3c .<br><hr>..<h1><
02e0: 61 20 6e 61 6d 65 3d 22 69 6e 74 72 6f 22 3e 31 a name="intro">1
02f0: 20 2d 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3c - Introduction<
0300: 2f 61 3e 3c 2f 68 31 3e 0d 0a 50 72 65 76 69 6f /a></h1>..Previo
0310: 75 73 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 53 us versions of S
0320: 70 61 74 69 61 4c 69 74 65 20 74 72 61 64 69 74 patiaLite tradit
0330: 69 6f 6e 61 6c 6c 79 20 73 75 70 70 6f 72 74 65 ionally supporte
0340: 64 20 61 20 3c 62 3e 70 75 72 65 20 53 51 4c 20 d a <b>pure SQL
0350: 72 6f 75 74 69 6e 67 20 6d 6f 64 75 6c 65 3c 2f routing module</
0360: 62 3e 20 74 68 61 74 20 77 61 73 20 6e 61 6d 65 b> that was name
0370: 64 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 d <a href="https
0380: 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e ://www.gaia-gis.
0390: 69 74 2f 66 6f 73 73 69 6c 2f 6c 69 62 73 70 61 it/fossil/libspa
03a0: 74 69 61 6c 69 74 65 2f 77 69 6b 69 3f 6e 61 6d tialite/wiki?nam
03b0: 65 3d 56 69 72 74 75 61 6c 4e 65 74 77 6f 72 6b e=VirtualNetwork
03c0: 2b 72 65 6c 6f 61 64 65 64 22 3e 56 69 72 74 75 +reloaded">Virtu
03d0: 61 6c 4e 65 74 77 6f 72 6b 3c 2f 61 3e 2e 3c 62 alNetwork</a>.<b
03e0: 72 3e 3c 62 72 3e 0d 0a 53 69 6e 63 65 20 76 65 r><br>..Since ve
03f0: 72 73 69 6f 6e 20 3c 62 3e 35 2e 30 2e 30 3c 2f rsion <b>5.0.0</
0400: 62 3e 20 61 20 62 72 61 6e 64 20 6e 65 77 20 3c b> a brand new <
0410: 62 3e 72 6f 75 74 69 6e 67 20 6d 6f 64 75 6c 65 b>routing module
0420: 3c 2f 62 3e 20 28 6d 6f 72 65 20 61 64 76 61 6e </b> (more advan
0430: 63 65 64 20 61 6e 64 20 73 6f 70 68 69 73 74 69 ced and sophisti
0440: 63 61 74 65 64 29 20 69 73 20 61 76 61 69 6c 61 cated) is availa
0450: 62 6c 65 2c 20 74 68 61 74 20 69 73 20 63 61 6c ble, that is cal
0460: 6c 65 64 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f led <b>VirtualRo
0470: 75 74 69 6e 67 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a uting</b>.<br>..
0480: 54 68 65 20 6e 6f 77 20 6f 62 73 6f 6c 65 74 65 The now obsolete
0490: 20 3c 62 3e 56 69 72 74 75 61 6c 4e 65 74 77 6f <b>VirtualNetwo
04a0: 72 6b 3c 2f 62 3e 20 69 73 20 73 74 69 6c 6c 20 rk</b> is still
04b0: 73 75 70 70 6f 72 74 65 64 20 62 79 20 76 65 72 supported by ver
04c0: 73 69 6f 6e 20 3c 62 3e 35 2e 30 2e 30 3c 2f 62 sion <b>5.0.0</b
04d0: 3e 20 73 6f 20 61 73 20 74 6f 20 6e 6f 74 20 63 > so as to not c
04e0: 61 75 73 65 20 61 6e 20 61 62 72 75 70 74 20 62 ause an abrupt b
04f0: 72 65 61 6b 20 74 6f 20 61 6c 72 65 61 64 79 20 reak to already
0500: 65 78 69 73 74 69 6e 67 20 61 70 70 6c 69 63 61 existing applica
0510: 74 69 6f 6e 73 2c 20 62 75 74 20 77 69 6c 6c 20 tions, but will
0520: 70 72 65 73 75 6d 61 62 6c 79 20 62 65 20 64 69 presumably be di
0530: 73 63 6f 6e 74 69 6e 75 65 64 20 69 6e 20 66 75 scontinued in fu
0540: 74 75 72 65 20 76 65 72 73 69 6f 6e 73 2e 3c 62 ture versions.<b
0550: 72 3e 0d 0a 55 73 69 6e 67 20 3c 62 3e 56 69 72 r>..Using <b>Vir
0560: 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e 20 tualRouting</b>
0570: 69 6e 73 74 65 61 64 20 6f 66 20 3c 62 3e 56 69 instead of <b>Vi
0580: 72 74 75 61 6c 4e 65 74 77 69 72 6b 3c 2f 62 3e rtualNetwirk</b>
0590: 20 69 73 20 77 61 72 6d 6c 79 20 72 65 63 6f 6d is warmly recom
05a0: 6d 65 6e 64 65 64 20 66 6f 72 20 61 6e 79 20 6e mended for any n
05b0: 65 77 20 64 65 76 65 6c 6f 70 6d 65 6e 74 2e 20 ew development.
05c0: 0d 0a 3c 68 32 3e 54 68 65 6f 72 65 74 69 63 61 ..<h2>Theoretica
05d0: 6c 20 66 6f 75 6e 64 61 74 69 6f 6e 73 20 2d 20 l foundations -
05e0: 61 6e 20 75 6c 74 72 61 2d 71 75 69 63 6b 20 72 an ultra-quick r
05f0: 65 63 61 6c 6c 3c 2f 68 32 3e 0d 0a 41 6c 6c 20 ecall</h2>..All
0600: 3c 62 3e 52 6f 75 74 69 6e 67 20 61 6c 67 6f 72 <b>Routing algor
0610: 69 74 68 6d 73 3c 2f 62 3e 20 28 3c 69 3e 61 6b ithms</b> (<i>ak
0620: 61 3c 2f 69 3e 20 3c 62 3e 53 68 6f 72 74 65 73 a</i> <b>Shortes
0630: 74 20 50 61 74 68 3c 2f 62 3e 20 61 6c 67 6f 72 t Path</b> algor
0640: 69 74 68 6d 73 29 20 61 72 65 20 62 61 73 65 64 ithms) are based
0650: 20 6f 6e 20 74 68 65 20 6d 61 74 68 65 6d 61 74 on the mathemat
0660: 69 63 73 20 6f 66 20 74 68 65 20 3c 61 20 68 72 ics of the <a hr
0670: 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 ef="https://en.w
0680: 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b ikipedia.org/wik
0690: 69 2f 47 72 61 70 68 5f 74 68 65 6f 72 79 22 3e i/Graph_theory">
06a0: 47 72 61 70 68 20 74 68 65 6f 72 79 3c 2f 61 3e Graph theory</a>
06b0: 20 6f 72 20 74 6f 20 62 65 20 6d 6f 72 65 20 70 or to be more p
06c0: 72 65 63 69 73 65 3a 20 6f 6e 20 3c 62 3e 57 65 recise: on <b>We
06d0: 69 67 68 74 65 64 20 47 72 61 70 68 73 3c 2f 62 ighted Graphs</b
06e0: 3e 2e 0d 0a 3c 62 72 3e 0d 0a 3c 69 6d 67 20 73 >...<br>..<img s
06f0: 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e rc="https://www.
0700: 67 61 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 gaia-gis.it/gaia
0710: 2d 73 69 6e 73 2f 72 6f 75 74 69 6e 67 2d 66 69 -sins/routing-fi
0720: 67 73 2f 6e 65 74 77 6f 72 6b 2e 70 6e 67 22 20 gs/network.png"
0730: 61 6c 74 3d 22 6e 65 74 77 6f 72 6b 22 3e 0d 0a alt="network">..
0740: 3c 62 72 3e 0d 0a 41 20 74 6f 70 6f 6c 6f 67 69 <br>..A topologi
0750: 63 61 6c 6c 79 20 76 61 6c 69 64 20 3c 62 3e 4e cally valid <b>N
0760: 65 74 77 6f 72 6b 3c 2f 62 3e 20 69 73 20 61 20 etwork</b> is a
0770: 64 61 74 61 73 65 74 20 74 68 61 74 20 66 75 6c dataset that ful
0780: 66 69 6c 6c 73 20 74 68 65 20 66 6f 6c 6c 6f 77 fills the follow
0790: 69 6e 67 20 72 65 71 75 69 72 65 6d 65 6e 74 73 ing requirements
07a0: 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 41 6c 6c :..<ul>..<li>All
07b0: 20 69 74 65 6d 73 20 69 6e 20 74 68 65 20 64 61 items in the da
07c0: 74 61 73 65 74 20 61 72 65 20 63 61 6c 6c 65 64 taset are called
07d0: 20 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 28 3c <b>Links</b> (<
07e0: 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 41 72 63 i>aka</i> <b>Arc
07f0: 73 3c 2f 62 3e 29 2c 20 61 6e 64 20 61 72 65 20 s</b>), and are
0800: 65 78 70 65 63 74 65 64 20 74 6f 20 72 65 70 72 expected to repr
0810: 65 73 65 6e 74 20 73 6f 6d 65 20 6f 72 69 65 6e esent some orien
0820: 74 65 64 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 6a ted connection j
0830: 6f 69 6e 69 6e 67 20 74 77 6f 20 3c 62 3e 4e 6f oining two <b>No
0840: 64 65 73 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 des</b>.<br>..<u
0850: 3e 45 78 61 6d 70 6c 65 3c 2f 75 3e 3a 20 69 6e >Example</u>: in
0860: 20 74 68 65 20 61 62 6f 76 65 20 66 69 67 75 72 the above figur
0870: 65 20 4c 69 6e 6b 20 3c 62 3e 4c 33 3c 2f 62 3e e Link <b>L3</b>
0880: 20 63 6f 6e 6e 65 63 74 73 20 4e 6f 64 65 73 20 connects Nodes
0890: 3c 62 3e 4e 32 3c 2f 62 3e 20 61 6e 64 20 3c 62 <b>N2</b> and <b
08a0: 3e 4e 35 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c >N5</b>.</li>..<
08b0: 6c 69 3e 54 68 65 72 65 66 6f 72 65 20 61 6c 6c li>Therefore all
08c0: 20 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 61 72 <b>Links</b> ar
08d0: 65 20 61 6c 77 61 79 73 20 65 78 70 65 63 74 65 e always expecte
08e0: 64 20 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 d to explicitly
08f0: 72 65 66 65 72 65 6e 63 65 20 61 20 3c 62 3e 53 reference a <b>S
0900: 74 61 72 74 2d 4e 6f 64 65 3c 2f 62 3e 20 28 3c tart-Node</b> (<
0910: 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 4e 6f 64 i>aka</i> <b>Nod
0920: 65 2d 46 72 6f 6d 3c 2f 62 3e 29 20 61 6e 64 20 e-From</b>) and
0930: 61 6e 20 3c 62 3e 45 6e 64 2d 4e 6f 64 65 3c 2f an <b>End-Node</
0940: 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c b> (<i>aka</i> <
0950: 62 3e 4e 6f 64 65 2d 54 6f 3c 2f 62 3e 29 2e 0d b>Node-To</b>)..
0960: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 4c 69 6e 6b 73 .<ul>..<li>Links
0970: 20 61 72 65 20 61 6c 77 61 79 73 20 3c 62 3e 6f are always <b>o
0980: 72 69 65 6e 74 65 64 3c 2f 62 3e 2c 20 61 6e 64 riented</b>, and
0990: 20 74 68 65 69 72 20 6e 61 74 75 72 61 6c 20 64 their natural d
09a0: 69 72 65 63 74 69 6f 6e 20 69 73 20 3c 62 3e 46 irection is <b>F
09b0: 72 6f 6d 2d 54 6f 3c 2f 62 3e 3a 0d 0a 3c 75 6c rom-To</b>:..<ul
09c0: 3e 0d 0a 3c 6c 69 3e 69 6e 20 61 6e 20 3c 62 3e >..<li>in an <b>
09d0: 75 6e 69 64 69 72 65 63 74 69 6f 6e 61 6c 3c 2f unidirectional</
09e0: 62 3e 20 4e 65 74 77 6f 72 6b 20 65 61 63 68 20 b> Network each
09f0: 4c 69 6e 6b 20 69 73 20 61 6e 20 3c 62 3e 6f 6e Link is an <b>on
0a00: 65 2d 77 61 79 3c 2f 62 3e 20 63 6f 6e 6e 65 63 e-way</b> connec
0a10: 74 69 6f 6e 2e 3c 62 72 3e 0d 0a 49 66 20 74 68 tion.<br>..If th
0a20: 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 69 73 20 e connection is
0a30: 74 6f 20 62 65 20 61 76 61 69 6c 61 62 6c 65 20 to be available
0a40: 69 6e 20 74 68 65 20 6f 70 70 6f 73 69 74 65 20 in the opposite
0a50: 64 69 72 65 63 74 69 6f 6e 2c 20 61 20 73 65 63 direction, a sec
0a60: 6f 6e 64 20 4c 69 6e 6b 20 6d 75 73 74 20 62 65 ond Link must be
0a70: 20 65 78 70 6c 69 63 69 74 6c 79 20 64 65 63 6c explicitly decl
0a80: 61 72 65 64 2e 3c 62 72 3e 0d 0a 3c 75 3e 45 78 ared.<br>..<u>Ex
0a90: 61 6d 70 6c 65 3c 2f 75 3e 3a 20 4c 69 6e 6b 20 ample</u>: Link
0aa0: 3c 62 3e 58 31 3c 2f 62 3e 20 67 6f 65 73 20 66 <b>X1</b> goes f
0ab0: 72 6f 6d 20 4e 6f 64 65 20 3c 62 3e 41 3c 2f 62 rom Node <b>A</b
0ac0: 3e 20 74 6f 20 4e 6f 64 65 20 3c 62 3e 42 3c 2f > to Node <b>B</
0ad0: 62 3e 2c 20 61 6e 64 20 4c 69 6e 6b 20 3c 62 3e b>, and Link <b>
0ae0: 58 32 3c 2f 62 3e 20 67 6f 65 73 20 66 72 6f 6d X2</b> goes from
0af0: 20 4e 6f 64 65 20 3c 62 3e 42 3c 2f 62 3e 20 74 Node <b>B</b> t
0b00: 6f 20 4e 6f 64 65 20 3c 62 3e 41 3c 2f 62 3e 2e o Node <b>A</b>.
0b10: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 6e 20 61 20 </li>..<li>in a
0b20: 3c 62 3e 62 69 64 69 72 65 63 74 69 6f 6e 61 6c <b>bidirectional
0b30: 3c 2f 62 3e 20 4e 65 74 77 6f 72 6b 20 61 6c 6c </b> Network all
0b40: 20 4c 69 6e 6b 73 20 61 72 65 20 61 73 73 75 6d Links are assum
0b50: 65 64 20 74 6f 20 65 73 74 61 62 6c 69 73 68 20 ed to establish
0b60: 61 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 69 6e 20 a connection in
0b70: 62 6f 74 68 20 64 69 72 65 63 74 69 6f 6e 73 2e both directions.
0b80: 3c 62 72 3e 0d 0a 44 65 66 69 6e 69 74 69 6e 67 <br>..Definiting
0b90: 20 61 6e 20 3c 62 3e 6f 6e 65 2d 77 61 79 20 63 an <b>one-way c
0ba0: 6f 6e 6e 65 63 74 69 6f 6e 3c 2f 62 3e 20 72 65 onnection</b> re
0bb0: 71 75 69 72 65 73 20 61 6e 20 61 70 70 72 6f 70 quires an approp
0bc0: 72 69 61 74 65 20 61 74 74 72 69 62 75 74 65 20 riate attribute
0bd0: 74 6f 20 62 65 20 73 65 74 20 28 73 65 65 20 62 to be set (see b
0be0: 65 6c 6f 77 29 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 elow).</li>..</u
0bf0: 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 54 68 65 l></li>..<li>The
0c00: 20 3c 62 3e 53 74 61 72 74 2d 3c 2f 62 3e 20 61 <b>Start-</b> a
0c10: 6e 64 20 3c 62 3e 45 6e 64 2d 4e 6f 64 65 3c 2f nd <b>End-Node</
0c20: 62 3e 20 63 6f 75 6c 64 20 65 76 65 6e 74 75 61 b> could eventua
0c30: 6c 6c 79 20 62 65 20 74 68 65 20 73 61 6d 65 2c lly be the same,
0c40: 20 61 6e 64 20 69 6e 20 74 68 69 73 20 63 61 73 and in this cas
0c50: 65 20 77 65 27 6c 6c 20 68 61 76 65 20 61 20 3c e we'll have a <
0c60: 62 3e 73 65 6c 66 2d 63 6c 6f 73 65 64 3c 2f 62 b>self-closed</b
0c70: 3e 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c > Link.</li>..<l
0c80: 69 3e 4e 65 74 77 6f 72 6b 27 73 20 4c 69 6e 6b i>Network's Link
0c90: 73 20 3c 62 3e 63 61 6e 3c 2f 62 3e 20 65 76 65 s <b>can</b> eve
0ca0: 6e 74 75 61 6c 6c 79 20 64 65 66 69 6e 65 20 61 ntually define a
0cb0: 20 6c 69 6e 65 61 72 20 47 65 6f 6d 65 74 72 79 linear Geometry
0cc0: 20 28 3c 62 3e 4c 49 4e 45 53 54 52 49 4e 47 3c (<b>LINESTRING<
0cd0: 2f 62 3e 29 20 67 6f 69 6e 67 20 66 72 6f 6d 20 /b>) going from
0ce0: 74 68 65 20 3c 62 3e 53 74 61 72 74 2d 4e 6f 64 the <b>Start-Nod
0cf0: 65 3c 2f 62 3e 20 74 6f 20 74 68 65 20 3c 62 3e e</b> to the <b>
0d00: 45 6e 64 2d 4e 6f 64 65 3c 2f 62 3e 2c 20 62 75 End-Node</b>, bu
0d10: 74 20 74 68 69 73 20 69 73 20 61 6e 20 6f 70 74 t this is an opt
0d20: 69 6f 6e 61 6c 20 66 65 61 74 75 72 65 2c 20 6e ional feature, n
0d30: 6f 74 20 61 20 6d 61 6e 64 61 74 6f 72 79 20 72 ot a mandatory r
0d40: 65 71 75 69 72 65 6d 65 6e 74 2e 3c 2f 6c 69 3e equirement.</li>
0d50: 0d 0a 3c 6c 69 3e 57 68 61 74 20 69 73 20 61 62 ..<li>What is ab
0d60: 73 6f 6c 75 74 65 6c 79 20 72 65 71 75 69 72 65 solutely require
0d70: 64 20 69 73 20 74 68 61 74 20 65 61 63 68 20 3c d is that each <
0d80: 62 3e 4c 69 6e 6b 3c 2f 62 3e 20 6d 75 73 74 20 b>Link</b> must
0d90: 65 78 70 6c 69 63 69 74 6c 79 20 72 65 66 65 72 explicitly refer
0da0: 65 6e 63 65 20 69 74 73 20 3c 62 3e 4e 6f 64 65 ence its <b>Node
0db0: 73 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 s</b>.</li>..</u
0dc0: 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 41 20 4e l></li>..<li>A N
0dd0: 65 74 77 6f 72 6b 20 73 75 70 70 6f 72 74 69 6e etwork supportin
0de0: 67 20 47 65 6f 6d 65 74 72 69 65 73 20 69 73 20 g Geometries is
0df0: 61 20 3c 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 a <b>Spatial Net
0e00: 77 6f 72 6b 3c 2f 62 3e 3b 20 6f 74 68 65 72 77 work</b>; otherw
0e10: 69 73 65 20 61 20 4e 65 74 77 6f 72 6b 20 6c 61 ise a Network la
0e20: 63 6b 69 6e 67 20 61 6e 79 20 47 65 6f 6d 65 74 cking any Geomet
0e30: 72 79 20 69 73 20 61 20 3c 62 3e 4c 6f 67 69 63 ry is a <b>Logic
0e40: 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 2e 0d al Network</b>..
0e50: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 49 6e 20 61 20 .<ul>..<li>In a
0e60: 3c 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f <b>Spatial Netwo
0e70: 72 6b 3c 2f 62 3e 20 61 6c 6c 20 4c 69 6e 6b 73 rk</b> all Links
0e80: 20 3c 62 3e 6d 75 73 74 3c 2f 62 3e 20 68 61 76 <b>must</b> hav
0e90: 65 20 61 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e e a correspondin
0ea0: 67 20 47 65 6f 6d 65 74 72 79 2e 3c 2f 6c 69 3e g Geometry.</li>
0eb0: 0d 0a 3c 6c 69 3e 49 6e 20 61 20 3c 62 3e 4c 6f ..<li>In a <b>Lo
0ec0: 67 69 63 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 gical Network</b
0ed0: 3e 20 61 6c 6c 20 4c 69 6e 6b 73 20 3c 62 3e 61 > all Links <b>a
0ee0: 72 65 20 73 74 72 69 63 74 6c 79 20 66 6f 72 62 re strictly forb
0ef0: 69 64 64 65 6e 3c 2f 62 3e 20 74 6f 20 68 61 76 idden</b> to hav
0f00: 65 20 61 6e 79 20 47 65 6f 6d 65 74 72 79 2e 3c e any Geometry.<
0f10: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 49 6e 20 61 20 3c /li>..<li>In a <
0f20: 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 b>Spatial Networ
0f30: 6b 3c 2f 62 3e 20 62 6f 74 68 20 74 68 65 20 3c k</b> both the <
0f40: 62 3e 53 74 61 72 74 50 6f 69 6e 74 3c 2f 62 3e b>StartPoint</b>
0f50: 20 61 6e 64 20 3c 62 3e 45 6e 64 50 6f 69 6e 74 and <b>EndPoint
0f60: 3c 2f 62 3e 20 6f 66 20 65 61 63 68 20 4c 69 6e </b> of each Lin
0f70: 6b 27 73 20 3c 62 3e 4c 49 4e 45 53 54 52 49 4e k's <b>LINESTRIN
0f80: 47 3c 2f 62 3e 20 61 72 65 20 61 6c 77 61 79 73 G</b> are always
0f90: 20 65 78 70 65 63 74 65 64 20 74 6f 20 65 78 61 expected to exa
0fa0: 63 74 6c 79 20 63 6f 69 6e 63 69 64 65 20 77 69 ctly coincide wi
0fb0: 74 68 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e th the correspon
0fc0: 64 69 6e 67 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 ding <b>Nodes</b
0fd0: 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f >.</li>..</ul></
0fe0: 6c 69 3e 0d 0a 3c 6c 69 3e 49 6e 20 61 20 3c 62 li>..<li>In a <b
0ff0: 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 6b >Spatial Network
1000: 3c 2f 62 3e 20 61 6c 6c 20 72 65 66 65 72 65 6e </b> all referen
1010: 63 65 73 20 74 6f 20 74 68 65 20 73 61 6d 65 20 ces to the same
1020: 3c 62 3e 4e 6f 64 65 3c 2f 62 3e 20 62 79 20 64 <b>Node</b> by d
1030: 69 66 66 65 72 65 6e 74 20 4c 69 6e 6b 73 20 3c ifferent Links <
1040: 62 3e 6d 75 73 74 3c 2f 62 3e 20 62 65 20 61 6e b>must</b> be an
1050: 20 65 78 61 63 74 20 6d 61 74 63 68 2e 3c 62 72 exact match.<br
1060: 3e 0d 0a 3c 75 3e 45 78 61 6d 70 6c 65 3c 2f 75 >..<u>Example</u
1070: 3e 3a 20 4e 6f 64 65 20 3c 62 3e 4e 35 3c 2f 62 >: Node <b>N5</b
1080: 3e 20 69 73 20 73 68 61 72 65 64 20 62 79 20 4c > is shared by L
1090: 69 6e 6b 73 20 3c 62 3e 4c 33 3c 2f 62 3e 2c 20 inks <b>L3</b>,
10a0: 3c 62 3e 4c 36 3c 2f 62 3e 2c 20 3c 62 3e 4c 37 <b>L6</b>, <b>L7
10b0: 3c 2f 62 3e 2c 20 3c 62 3e 4c 39 3c 2f 62 3e 20 </b>, <b>L9</b>
10c0: 61 6e 64 20 3c 62 3e 4c 31 30 3c 2f 62 3e 2c 20 and <b>L10</b>,
10d0: 73 6f 20 61 6c 6c 20 74 68 65 69 72 20 63 6f 72 so all their cor
10e0: 72 65 73 70 6f 6e 64 69 6e 67 20 4c 49 4e 45 53 responding LINES
10f0: 54 52 49 4e 47 53 20 61 72 65 20 65 78 70 65 63 TRINGS are expec
1100: 74 65 64 20 74 6f 20 68 61 76 65 20 74 68 65 20 ted to have the
1110: 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 65 78 corresponding ex
1120: 74 72 65 6d 69 74 79 20 28 3c 62 3e 53 74 61 72 tremity (<b>Star
1130: 74 2d 3c 2f 62 3e 20 6f 72 20 3c 62 3e 45 6e 64 t-</b> or <b>End
1140: 2d 3c 2f 62 3e 2c 20 64 65 70 65 6e 64 69 6e 67 -</b>, depending
1150: 20 6f 6e 20 74 68 65 20 6f 72 69 65 6e 74 61 74 on the orientat
1160: 69 6f 6e 29 20 70 6f 69 6e 74 73 20 74 68 61 74 ion) points that
1170: 20 6d 75 73 74 20 65 78 61 63 74 6c 79 20 6d 61 must exactly ma
1180: 74 63 68 20 74 68 65 20 6f 74 68 65 72 2e 3c 62 tch the other.<b
1190: 72 3e 0d 0a 41 20 3c 62 3e 74 6f 70 6f 6c 6f 67 r>..A <b>topolog
11a0: 69 63 61 6c 20 69 6e 63 6f 6e 73 69 73 74 65 6e ical inconsisten
11b0: 63 79 3c 2f 62 3e 20 65 78 69 73 74 73 20 69 66 cy</b> exists if
11c0: 20 61 6e 79 20 6f 66 20 74 68 65 73 65 20 63 6f any of these co
11d0: 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 nditions are not
11e0: 20 73 61 74 69 73 66 69 65 64 2c 20 77 68 69 63 satisfied, whic
11f0: 68 20 6c 65 61 64 73 20 74 6f 20 61 6e 20 3c 62 h leads to an <b
1200: 3e 69 6e 76 61 6c 69 64 3c 2f 62 3e 20 4e 65 74 >invalid</b> Net
1210: 77 6f 72 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e work.</li>..<li>
1220: 41 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 74 Accordingly to t
1230: 68 65 20 61 62 6f 76 65 20 70 72 65 6d 69 73 65 he above premise
1240: 73 2c 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 20 s, <b>Nodes</b>
1250: 61 72 65 20 6e 65 76 65 72 20 65 78 70 65 63 74 are never expect
1260: 65 64 20 74 6f 20 62 65 20 65 78 70 6c 69 63 69 ed to be explici
1270: 74 6c 79 20 64 65 63 6c 61 72 65 64 20 69 6e 20 tly declared in
1280: 61 20 73 65 70 61 72 61 74 65 20 54 61 62 6c 65 a separate Table
1290: 2e 3c 62 72 3e 0d 0a 4a 75 73 74 20 61 20 73 69 .<br>..Just a si
12a0: 6e 67 6c 65 20 54 61 62 6c 65 20 64 65 63 6c 61 ngle Table decla
12b0: 72 69 6e 67 20 61 6c 6c 20 3c 62 3e 4c 69 6e 6b ring all <b>Link
12c0: 73 3c 2f 62 3e 20 69 73 20 72 65 71 75 69 72 65 s</b> is require
12d0: 64 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 75 d in order to fu
12e0: 6c 6c 79 20 64 65 66 69 6e 65 20 61 20 74 6f 70 lly define a top
12f0: 6f 6c 6f 67 69 63 61 6c 6c 79 20 76 61 6c 69 64 ologically valid
1300: 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 41 Network.<br>..A
1310: 6c 6c 20 74 68 65 20 4e 6f 64 65 73 20 63 61 6e ll the Nodes can
1320: 20 74 68 65 6e 20 62 65 20 65 61 73 69 6c 79 20 then be easily
1330: 65 78 74 72 61 63 74 65 64 20 66 72 6f 6d 20 74 extracted from t
1340: 68 65 20 4c 69 6e 6b 27 73 20 64 65 66 69 6e 69 he Link's defini
1350: 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 20 63 6f tions and the co
1360: 6f 72 64 69 6e 61 74 65 73 20 66 6f 72 20 65 61 ordinates for ea
1370: 63 68 20 4e 6f 64 65 20 63 61 6e 20 62 65 20 64 ch Node can be d
1380: 69 72 65 63 74 6c 79 20 73 65 74 20 62 79 20 65 irectly set by e
1390: 78 74 72 61 63 74 69 6e 67 20 74 68 65 20 65 78 xtracting the ex
13a0: 74 72 65 6d 65 20 50 6f 69 6e 74 20 6f 66 20 74 treme Point of t
13b0: 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 he corresponding
13c0: 20 4c 69 6e 65 73 74 72 69 6e 67 73 2e 3c 62 72 Linestrings.<br
13d0: 3e 0d 0a 49 66 20 61 6e 79 20 6d 69 73 6d 61 74 >..If any mismat
13e0: 63 68 20 69 73 20 64 65 74 65 63 74 65 64 20 74 ch is detected t
13f0: 68 65 20 4e 65 74 77 6f 72 6b 20 77 69 6c 6c 20 he Network will
1400: 62 65 63 6f 6d 65 20 69 6e 76 61 6c 69 64 2e 3c become invalid.<
1410: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 41 20 3c 62 3e 4c /li>..<li>A <b>L
1420: 69 6e 6b 3c 2f 62 3e 20 6d 61 79 20 6c 65 67 69 ink</b> may legi
1430: 74 69 6d 61 74 65 6c 79 20 73 65 6c 66 2d 69 6e timately self-in
1440: 74 65 72 73 65 63 74 20 69 74 73 65 6c 66 20 28 tersect itself (
1450: 65 2e 67 2e 20 66 6f 72 6d 69 6e 67 20 61 20 6c e.g. forming a l
1460: 6f 6f 70 29 2c 20 61 73 20 73 68 6f 77 6e 20 69 oop), as shown i
1470: 6e 20 74 68 65 20 61 62 6f 76 65 20 66 69 67 75 n the above figu
1480: 72 65 20 62 79 20 4c 69 6e 6b 20 3c 62 3e 4c 31 re by Link <b>L1
1490: 35 3c 2f 62 3e 20 28 6f 72 61 6e 67 65 20 73 70 5</b> (orange sp
14a0: 6f 74 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 54 ot).</li>..<li>T
14b0: 77 6f 20 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 wo <b>Links</b>
14c0: 6d 61 79 20 6c 65 67 69 74 69 6d 61 74 65 6c 79 may legitimately
14d0: 20 69 6e 74 65 72 73 65 63 74 20 77 68 65 72 65 intersect where
14e0: 20 6e 6f 20 4e 6f 64 65 20 65 78 69 73 74 73 2c no Node exists,
14f0: 20 61 73 20 65 78 65 6d 70 6c 69 66 69 65 64 20 as exemplified
1500: 6f 6e 20 74 68 65 20 61 62 6f 76 65 20 66 69 67 on the above fig
1510: 75 72 65 20 62 79 20 4c 69 6e 6b 73 20 3c 62 3e ure by Links <b>
1520: 4c 34 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4c 37 L4</b> and <b>L7
1530: 3c 2f 62 3e 20 28 67 72 65 65 6e 20 73 70 6f 74 </b> (green spot
1540: 29 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 75 73 75 ).<br>..This usu
1550: 61 6c 6c 79 20 68 61 70 70 65 6e 73 20 77 68 65 ally happens whe
1560: 6e 20 6f 6e 65 20 6f 66 20 74 68 65 20 74 77 6f n one of the two
1570: 20 4c 69 6e 6b 73 20 6f 76 65 72 70 61 73 73 65 Links overpasse
1580: 73 20 74 68 65 20 6f 74 68 65 72 2c 20 6f 72 20 s the other, or
1590: 77 68 65 72 65 20 73 6f 6d 65 20 74 65 63 68 6e where some techn
15a0: 69 63 61 6c 20 72 65 73 74 72 69 63 74 69 6f 6e ical restriction
15b0: 20 65 78 69 73 74 73 20 28 65 2e 67 2e 20 74 77 exists (e.g. tw
15c0: 6f 20 69 6e 73 75 6c 61 74 65 64 20 77 69 72 65 o insulated wire
15d0: 73 20 69 6e 20 61 6e 20 45 6c 65 63 74 72 69 63 s in an Electric
15e0: 61 6c 20 4e 65 74 77 6f 72 6b 29 2e 3c 2f 6c 69 al Network).</li
15f0: 3e 0d 0a 3c 6c 69 3e 3c 62 3e 4c 69 6e 6b 73 3c >..<li><b>Links<
1600: 2f 62 3e 20 61 72 65 6e 27 74 20 73 74 72 69 63 /b> aren't stric
1610: 74 6c 79 20 72 65 71 75 69 72 65 64 20 74 6f 20 tly required to
1620: 62 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 be associated wi
1630: 74 68 20 61 6e 79 20 73 70 65 63 69 66 69 63 20 th any specific
1640: 61 74 74 72 69 62 75 74 65 2c 20 62 75 74 20 74 attribute, but t
1650: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 74 74 he following att
1660: 72 69 62 75 74 65 73 20 61 72 65 20 61 6c 6d 6f ributes are almo
1670: 73 74 20 75 6e 69 76 65 72 73 61 6c 6c 79 20 73 st universally s
1680: 75 70 70 6f 72 74 65 64 3a 0d 0a 3c 75 6c 3e 0d upported:..<ul>.
1690: 0a 3c 6c 69 3e 61 20 3c 62 3e 6e 61 6d 65 3c 2f .<li>a <b>name</
16a0: 62 3e 20 69 64 65 6e 74 69 66 79 69 6e 67 20 74 b> identifying t
16b0: 68 65 20 4c 69 6e 6b 2e 3c 62 72 3e 0d 0a 3c 75 he Link.<br>..<u
16c0: 3e 45 78 61 6d 70 6c 65 73 3c 2f 75 3e 3a 20 74 >Examples</u>: t
16d0: 68 65 20 3c 69 3e 72 6f 61 64 20 74 6f 70 6f 6e he <i>road topon
16e0: 79 6d 3c 2f 69 3e 20 69 6e 20 61 20 3c 62 3e 72 ym</i> in a <b>r
16f0: 6f 61 64 20 6e 65 74 77 6f 72 6b 3c 2f 62 3e 2c oad network</b>,
1700: 20 6f 72 20 74 68 65 20 3c 69 3e 72 69 76 65 72 or the <i>river
1710: 20 6e 61 6d 65 3c 2f 69 3e 20 69 6e 20 61 6e 20 name</i> in an
1720: 3c 62 3e 68 79 64 72 6f 67 72 61 70 68 69 63 20 <b>hydrographic
1730: 6e 65 74 77 6f 72 6b 3c 2f 62 3e 2e 3c 2f 6c 69 network</b>.</li
1740: 3e 0d 0a 3c 6c 69 3e 6f 6e 65 20 28 6f 72 20 65 >..<li>one (or e
1750: 76 65 6e 20 6d 6f 72 65 29 20 61 70 70 72 6f 70 ven more) approp
1760: 72 69 61 74 65 20 3c 62 3e 63 6f 73 74 20 76 61 riate <b>cost va
1770: 6c 75 65 3c 2f 62 3e 28 73 29 2e 3c 62 72 3e 0d lue</b>(s).<br>.
1780: 0a 3c 75 3e 45 78 61 6d 70 6c 65 3c 2f 75 3e 3a .<u>Example</u>:
1790: 20 74 68 65 20 3c 69 3e 74 69 6d 65 3c 2f 69 3e the <i>time</i>
17a0: 20 72 65 71 75 69 72 65 64 20 74 6f 20 74 72 61 required to tra
17b0: 76 65 72 73 65 20 74 68 65 20 4c 69 6e 6b 20 28 verse the Link (
17c0: 6d 61 79 20 62 65 20 64 69 73 74 69 6e 67 75 69 may be distingui
17d0: 73 68 65 64 20 62 65 74 77 65 65 6e 20 70 65 64 shed between ped
17e0: 65 73 74 72 69 61 6e 73 2c 20 62 69 63 79 63 6c estrians, bicycl
17f0: 65 73 2c 20 63 61 72 73 2c 20 6c 6f 72 72 69 65 es, cars, lorrie
1800: 73 20 61 6e 64 20 73 6f 20 6f 6e 29 2e 3c 2f 6c s and so on).</l
1810: 69 3e 0d 0a 3c 6c 69 3e 61 20 70 61 69 72 20 6f i>..<li>a pair o
1820: 66 20 3c 62 3e 62 6f 6f 6c 65 61 6e 20 66 6c 61 f <b>boolean fla
1830: 67 73 3c 2f 62 3e 20 28 3c 62 3e 66 72 6f 6d 2d gs</b> (<b>from-
1840: 74 6f 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 74 6f to</b> and <b>to
1850: 2d 66 72 6f 6d 3c 2f 62 3e 29 20 61 72 65 20 69 -from</b>) are i
1860: 6e 74 65 6e 64 65 6e 64 20 74 6f 20 73 70 65 63 ntendend to spec
1870: 69 66 79 20 69 66 20 74 68 65 20 4c 69 6e 6b 20 ify if the Link
1880: 63 61 6e 20 62 65 20 74 72 61 76 65 72 73 65 64 can be traversed
1890: 20 6f 6e 20 62 6f 74 68 20 64 69 72 65 63 74 69 on both directi
18a0: 6f 6e 73 20 6f 72 20 6a 75 73 74 20 69 6e 20 6f ons or just in o
18b0: 6e 65 20 28 3c 62 3e 6f 6e 65 2d 77 61 79 3c 2f ne (<b>one-way</
18c0: 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e b>).</li>..</ul>
18d0: 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 68 </li>..</ul>..<h
18e0: 34 3e 4c 6f 67 69 63 61 6c 20 63 6f 6e 63 6c 75 4>Logical conclu
18f0: 73 69 6f 6e 73 3c 2f 68 34 3e 0d 0a 41 6e 79 20 sions</h4>..Any
1900: 74 6f 70 6f 6c 6f 67 69 63 61 6c 6c 79 20 76 61 topologically va
1910: 6c 69 64 20 3c 62 3e 4e 65 74 77 6f 72 6b 3c 2f lid <b>Network</
1920: 62 3e 20 28 69 72 72 65 73 70 65 63 74 69 76 65 b> (irrespective
1930: 20 6f 66 20 77 68 65 74 68 65 72 20 69 74 20 69 of whether it i
1940: 73 20 61 20 3c 62 3e 53 70 61 74 69 61 6c 3c 2f s a <b>Spatial</
1950: 62 3e 20 6f 72 20 3c 62 3e 4c 6f 67 69 63 61 6c b> or <b>Logical
1960: 3c 2f 62 3e 20 74 79 70 65 29 20 69 73 20 61 20 </b> type) is a
1970: 76 61 6c 69 64 20 3c 62 3e 47 72 61 70 68 3c 2f valid <b>Graph</
1980: 62 3e 2e 3c 62 72 3e 0d 0a 41 20 4e 65 74 77 6f b>.<br>..A Netwo
1990: 72 6b 20 61 6c 6c 6f 77 69 6e 67 20 74 68 65 20 rk allowing the
19a0: 73 75 70 70 6f 72 74 20 28 64 69 72 65 63 74 20 support (direct
19b0: 6f 72 20 69 6e 64 69 72 65 63 74 29 20 6f 66 20 or indirect) of
19c0: 73 6f 6d 65 20 61 70 70 72 6f 70 72 69 61 74 65 some appropriate
19d0: 20 3c 62 3e 63 6f 73 74 20 76 61 6c 75 65 3c 2f <b>cost value</
19e0: 62 3e 20 69 73 20 61 20 76 61 6c 69 64 20 3c 62 b> is a valid <b
19f0: 3e 57 65 69 67 68 74 65 64 20 47 72 61 70 68 3c >Weighted Graph<
1a00: 2f 62 3e 2c 20 61 6e 64 20 63 61 6e 20 63 6f 6e /b>, and can con
1a10: 73 65 71 75 65 6e 74 6c 79 20 73 75 70 70 6f 72 sequently suppor
1a20: 74 20 3c 62 3e 52 6f 75 74 69 6e 67 20 61 6c 67 t <b>Routing alg
1a30: 6f 72 69 74 68 6d 73 3c 2f 62 3e 2e 3c 62 72 3e orithms</b>.<br>
1a40: 0d 0a 41 6c 6c 20 52 6f 75 74 69 6e 67 20 61 6c ..All Routing al
1a50: 67 6f 72 69 74 68 6d 73 20 61 72 65 20 69 6e 74 gorithms are int
1a60: 65 6e 64 65 64 20 74 6f 20 69 64 65 6e 74 69 66 ended to identif
1a70: 79 20 74 68 65 20 3c 62 3e 53 68 6f 72 74 65 73 y the <b>Shortes
1a80: 74 20 50 61 74 68 3c 2f 62 3e 20 73 6f 6c 75 74 t Path</b> solut
1a90: 69 6f 6e 20 63 6f 6e 6e 65 63 74 69 6e 67 20 74 ion connecting t
1aa0: 77 6f 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 20 wo <b>Nodes</b>
1ab0: 69 6e 20 61 20 3c 62 3e 77 65 69 67 68 74 65 64 in a <b>weighted
1ac0: 20 67 72 61 70 68 3c 2f 62 3e 20 28 3c 69 3e 61 graph</b> (<i>a
1ad0: 6b 61 3c 2f 69 3e 20 3c 62 3e 4e 65 74 77 6f 72 ka</i> <b>Networ
1ae0: 6b 3c 2f 62 3e 29 2e 3c 62 72 3e 3c 62 72 3e 0d k</b>).<br><br>.
1af0: 0a 3c 62 3e 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3c .<b><u>Note</u><
1b00: 2f 62 3e 3a 20 74 68 65 20 74 65 72 6d 20 3c 62 /b>: the term <b
1b10: 3e 3c 69 3e 53 68 6f 72 74 65 73 74 20 50 61 74 ><i>Shortest Pat
1b20: 68 3c 2f 69 3e 3c 2f 62 3e 20 63 61 6e 20 62 65 h</i></b> can be
1b30: 20 65 61 73 69 6c 79 20 6d 69 73 75 6e 64 65 72 easily misunder
1b40: 73 74 6f 6f 64 2e 3c 62 72 3e 0d 0a 44 75 65 20 stood.<br>..Due
1b50: 74 6f 20 68 69 73 74 6f 72 69 63 61 6c 20 72 65 to historical re
1b60: 61 73 6f 6e 73 20 74 68 65 20 6d 6f 73 74 20 63 asons the most c
1b70: 6f 6d 6d 6f 6e 20 61 70 70 6c 69 63 61 74 69 6f ommon applicatio
1b80: 6e 20 66 69 65 6c 64 20 66 6f 72 20 52 6f 75 74 n field for Rout
1b90: 69 6e 67 20 61 6c 67 6f 72 69 74 68 6d 73 20 69 ing algorithms i
1ba0: 73 20 72 65 6c 61 74 65 64 20 74 6f 20 3c 62 3e s related to <b>
1bb0: 52 6f 61 64 20 4e 65 74 77 6f 72 6b 73 3c 2f 62 Road Networks</b
1bc0: 3e 2c 20 62 75 74 20 61 6c 73 6f 20 6d 61 6e 79 >, but also many
1bd0: 20 6f 74 68 65 72 20 6b 69 6e 64 73 20 6f 66 20 other kinds of
1be0: 4e 65 74 77 6f 72 6b 73 20 65 78 69 73 74 3a 0d Networks exist:.
1bf0: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 48 79 64 72 6f .<ul>..<li>Hydro
1c00: 67 72 61 70 68 69 63 20 4e 65 74 77 6f 72 6b 73 graphic Networks
1c10: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 47 61 73 20 .</li>..<li>Gas
1c20: 2f 20 57 61 74 65 72 20 2f 20 4f 69 6c 20 4e 65 / Water / Oil Ne
1c30: 74 77 6f 72 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c tworks.</li>..<l
1c40: 69 3e 45 6c 65 63 74 72 69 63 61 6c 20 4e 65 74 i>Electrical Net
1c50: 77 6f 72 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 works.</li>..<li
1c60: 3e 54 65 6c 65 63 6f 6d 75 6e 69 63 61 74 69 6f >Telecomunicatio
1c70: 6e 20 4e 65 74 77 6f 72 6b 73 2e 3c 2f 6c 69 3e n Networks.</li>
1c80: 0d 0a 3c 6c 69 3e 53 6f 63 69 61 6c 20 6f 72 20 ..<li>Social or
1c90: 45 63 6f 6e 6f 6d 69 63 61 6c 20 4e 65 74 77 6f Economical Netwo
1ca0: 72 6b 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 rks representing
1cb0: 20 72 65 6c 61 74 69 6f 6e 73 68 69 70 73 20 62 relationships b
1cc0: 65 74 77 65 65 6e 20 69 6e 64 69 76 69 64 75 61 etween individua
1cd0: 6c 73 20 6f 72 20 63 6f 6d 70 61 6e 69 65 73 2e ls or companies.
1ce0: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 45 70 69 64 65 </li>..<li>Epide
1cf0: 6d 69 6f 6c 6f 67 69 63 61 6c 20 4e 65 74 77 6f miological Netwo
1d00: 72 6b 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 rks representing
1d10: 20 74 68 65 20 70 72 6f 70 61 67 61 74 69 6f 6e the propagation
1d20: 20 6f 66 20 69 6e 66 65 63 74 69 76 65 20 64 69 of infective di
1d30: 73 65 61 73 65 73 20 62 65 74 77 65 65 6e 20 69 seases between i
1d40: 6e 64 69 76 69 64 75 61 6c 73 20 6f 72 20 67 72 ndividuals or gr
1d50: 6f 75 70 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c oups.</li>..</ul
1d60: 3e 3c 2f 6c 69 3e 20 0d 0a 3c 62 72 3e 0d 0a 49 ></li> ..<br>..I
1d70: 6e 20 61 6c 6c 20 74 68 65 20 61 62 6f 76 65 20 n all the above
1d80: 63 61 73 65 73 20 77 65 20 63 65 72 74 61 69 6e cases we certain
1d90: 6c 79 20 68 61 76 65 20 76 61 6c 69 64 20 4e 65 ly have valid Ne
1da0: 74 77 6f 72 6b 73 20 73 75 70 70 6f 72 74 69 6e tworks supportin
1db0: 67 20 52 6f 75 74 69 6e 67 20 61 6c 67 6f 72 69 g Routing algori
1dc0: 74 68 6e 73 2c 20 62 75 74 20 6e 6f 74 20 61 6c thns, but not al
1dd0: 6c 20 6f 66 20 74 68 65 6d 20 63 61 6e 20 69 6d l of them can im
1de0: 70 6c 79 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 ply something li
1df0: 6b 65 20 61 20 3c 69 3e 73 70 61 74 69 61 6c 20 ke a <i>spatial
1e00: 64 69 73 74 61 6e 63 65 3c 2f 69 3e 20 28 3c 69 distance</i> (<i
1e10: 3e 67 65 6f 6d 65 74 72 69 63 20 6c 65 6e 67 74 >geometric lengt
1e20: 68 3c 2f 69 3e 29 20 6f 72 20 61 20 3c 69 3e 74 h</i>) or a <i>t
1e30: 72 61 76 65 6c 20 74 69 6d 65 3c 2f 69 3e 2e 3c ravel time</i>.<
1e40: 62 72 3e 0d 0a 49 6e 20 74 68 65 20 6d 6f 73 74 br>..In the most
1e50: 20 67 65 6e 65 72 61 6c 20 61 63 63 65 70 74 69 general accepti
1e60: 6f 6e 20 3c 62 3e 63 6f 73 74 73 3c 2f 62 3e 20 on <b>costs</b>
1e70: 63 61 6e 20 62 65 20 72 65 70 72 65 73 65 6e 74 can be represent
1e80: 65 64 20 62 79 20 61 6e 79 20 72 65 61 73 6f 6e ed by any reason
1e90: 61 62 6c 65 20 70 68 79 73 69 63 61 6c 20 71 75 able physical qu
1ea0: 61 6e 74 69 74 79 2e 3c 62 72 3e 0d 0a 53 6f 20 antity.<br>..So
1eb0: 61 20 6d 6f 72 65 20 67 65 6e 65 72 61 6c 69 7a a more generaliz
1ec0: 65 64 20 64 65 66 69 6e 69 74 69 6f 6e 20 69 73 ed definition is
1ed0: 20 61 73 73 75 6d 69 6e 67 20 74 68 61 74 20 52 assuming that R
1ee0: 6f 75 74 69 6e 67 20 61 6c 67 6f 72 69 74 68 6d outing algorithm
1ef0: 73 20 61 72 65 20 69 6e 74 65 6e 64 65 64 20 74 s are intended t
1f00: 6f 20 69 64 65 6e 74 69 66 79 20 3c 62 3e 6c 65 o identify <b>le
1f10: 73 73 65 72 20 63 6f 73 74 3c 2f 62 3e 20 73 6f sser cost</b> so
1f20: 6c 75 74 69 6f 6e 73 20 6f 6e 20 61 20 3c 62 3e lutions on a <b>
1f30: 77 65 69 67 68 74 65 64 20 67 72 61 70 68 3c 2f weighted graph</
1f40: 62 3e 2e 3c 62 72 3e 0d 0a 54 68 65 20 65 78 61 b>.<br>..The exa
1f50: 63 74 20 69 6e 74 65 72 70 72 65 74 61 74 69 6f ct interpretatio
1f60: 6e 20 6f 66 20 74 68 65 20 69 6e 76 6f 6c 76 65 n of the involve
1f70: 64 20 3c 62 3e 63 6f 73 74 73 3c 2f 62 3e 20 28 d <b>costs</b> (
1f80: 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 77 65 <i>aka</i> <b>we
1f90: 69 67 68 74 73 3c 2f 62 3e 29 20 73 74 72 69 63 ights</b>) stric
1fa0: 74 6c 79 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 tly depends on t
1fb0: 68 65 20 76 65 72 79 20 73 70 65 63 69 66 69 63 he very specific
1fc0: 20 6e 61 74 75 72 65 20 6f 66 20 65 61 63 68 20 nature of each
1fd0: 4e 65 74 77 6f 72 6b 2e 0d 0a 3c 68 33 3e 54 68 Network...<h3>Th
1fe0: 65 20 44 69 6a 6b 73 74 72 61 27 73 20 61 6c 67 e Dijkstra's alg
1ff0: 6f 72 69 74 68 6d 3c 2f 68 33 3e 0d 0a 54 68 69 orithm</h3>..Thi
2000: 73 20 77 65 6c 6c 20 6b 6e 6f 77 6e 20 3c 61 20 s well known <a
2010: 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e href="https://en
2020: 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 .wikipedia.org/w
2030: 69 6b 69 2f 44 69 6a 6b 73 74 72 61 25 32 37 73 iki/Dijkstra%27s
2040: 5f 61 6c 67 6f 72 69 74 68 6d 22 3e 61 6c 67 6f _algorithm">algo
2050: 72 69 74 68 6d 3c 2f 61 3e 20 69 73 6e 27 74 20 rithm</a> isn't
2060: 6e 65 63 65 73 73 61 72 69 6c 79 20 74 68 65 20 necessarily the
2070: 66 61 73 74 65 73 74 20 6f 6e 65 2c 20 62 75 74 fastest one, but
2080: 20 69 74 20 61 6c 77 61 79 73 20 65 6e 73 75 72 it always ensur
2090: 65 73 20 3c 62 3e 66 75 6c 6c 20 63 6f 72 72 65 es <b>full corre
20a0: 63 74 6e 65 73 73 3c 2f 62 3e 3a 0d 0a 3c 75 6c ctness</b>:..<ul
20b0: 3e 0d 0a 3c 6c 69 3e 41 6e 79 20 4e 6f 64 65 2d >..<li>Any Node-
20c0: 74 6f 2d 4e 6f 64 65 20 63 6f 6e 6e 65 63 74 69 to-Node connecti
20d0: 6f 6e 20 69 64 65 6e 74 69 66 69 65 64 20 62 79 on identified by
20e0: 20 44 69 6a 6b 73 74 72 61 27 73 20 69 73 20 63 Dijkstra's is c
20f0: 65 72 74 61 69 6e 6c 79 20 65 6e 73 75 72 65 64 ertainly ensured
2100: 20 74 6f 20 62 65 20 3c 62 3e 6f 70 74 69 6d 61 to be <b>optima
2110: 6c 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 49 6e 20 6f l</b>.<br>..In o
2120: 74 68 65 72 20 77 6f 72 64 73 2c 20 6e 6f 20 63 ther words, no c
2130: 6f 6e 6e 65 74 63 74 69 6f 6e 20 70 72 65 73 65 onnetction prese
2140: 6e 74 69 6e 67 20 61 20 6c 6f 77 65 72 20 63 6f nting a lower co
2150: 73 74 20 63 61 6e 20 63 6f 6e 63 65 70 74 75 61 st can conceptua
2160: 6c 6c 79 20 65 78 69 73 74 2e 3c 2f 6c 69 3e 0d lly exist.</li>.
2170: 0a 3c 6c 69 3e 57 68 65 6e 20 44 69 6a 73 6a 74 .<li>When Dijsjt
2180: 72 61 27 73 20 66 61 69 6c 73 20 74 6f 20 69 64 ra's fails to id
2190: 65 6e 74 69 66 79 20 61 20 73 6f 6c 75 74 69 6f entify a solutio
21a0: 6e 20 74 68 69 73 20 73 75 72 65 6c 79 20 6d 65 n this surely me
21b0: 61 6e 73 20 74 68 61 74 20 6e 6f 20 73 6f 6c 75 ans that no solu
21c0: 74 69 6f 6e 20 69 73 20 70 6f 73 73 69 62 6c 65 tion is possible
21d0: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c .</li>..</ul>..<
21e0: 68 33 3e 54 68 65 20 41 2a 20 61 6c 67 6f 72 69 h3>The A* algori
21f0: 74 68 6d 3c 2f 68 33 3e 0d 0a 4d 61 6e 79 20 61 thm</h3>..Many a
2200: 6c 74 65 72 6e 61 74 69 76 65 20 52 6f 75 74 69 lternative Routi
2210: 6e 67 20 61 6c 67 6f 72 69 74 68 6d 73 20 68 61 ng algorithms ha
2220: 76 65 20 62 65 65 6e 20 69 6e 76 65 6e 74 65 64 ve been invented
2230: 20 64 75 72 69 6e 67 20 74 68 65 20 79 65 61 72 during the year
2240: 73 2e 3c 62 72 3e 0d 0a 41 6c 6c 20 74 68 65 6d s.<br>..All them
2250: 20 61 72 65 20 62 61 73 65 64 20 6f 6e 20 68 65 are based on he
2260: 75 72 69 73 74 69 63 20 61 73 73 75 6d 70 74 69 uristic assumpti
2270: 6f 6e 73 20 61 6e 64 20 61 72 65 20 69 6e 74 65 ons and are inte
2280: 6e 64 65 64 20 74 6f 20 62 65 20 66 61 73 74 65 nded to be faste
2290: 72 20 74 68 61 6e 20 44 69 6a 6b 73 74 72 61 27 r than Dijkstra'
22a0: 73 2c 20 62 75 74 20 6e 6f 6e 65 20 6f 66 20 74 s, but none of t
22b0: 68 65 6d 20 63 61 6e 20 65 6e 73 75 72 65 20 3c hem can ensure <
22c0: 62 3e 66 75 6c 6c 20 63 6f 72 72 65 63 74 6e 65 b>full correctne
22d0: 73 73 3c 2f 62 3e 20 61 73 20 44 69 6a 6b 73 74 ss</b> as Dijkst
22e0: 72 61 27 73 20 64 6f 65 73 2e 3c 62 72 3e 0d 0a ra's does.<br>..
22f0: 54 68 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 The <a href="htt
2300: 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 ps://en.wikipedi
2310: 61 2e 6f 72 67 2f 77 69 6b 69 2f 41 2a 5f 73 65 a.org/wiki/A*_se
2320: 61 72 63 68 5f 61 6c 67 6f 72 69 74 68 6d 22 3e arch_algorithm">
2330: 41 2a 20 61 6c 67 6f 72 69 74 68 6d 3c 2f 61 3e A* algorithm</a>
2340: 20 61 70 70 6c 69 65 73 20 61 20 6d 69 6c 64 20 applies a mild
2350: 68 65 75 72 69 73 74 69 63 20 6f 70 74 69 6d 69 heuristic optimi
2360: 7a 61 74 69 6f 6e 2c 20 61 6e 64 20 63 61 6e 20 zation, and can
2370: 62 65 20 61 20 72 65 61 6c 69 73 74 69 63 20 61 be a realistic a
2380: 6c 74 65 72 6e 61 74 69 76 65 20 74 6f 20 44 69 lternative to Di
2390: 6a 6b 73 74 72 61 27 73 20 69 6e 20 6d 61 6e 79 jkstra's in many
23a0: 20 63 61 73 65 73 2e 3c 62 72 3e 3c 62 72 3e 0d cases.<br><br>.
23b0: 0a 3c 68 72 3e 0d 0a 3c 68 31 3e 3c 61 20 6e 61 .<hr>..<h1><a na
23c0: 6d 65 3d 22 73 61 6d 70 6c 65 22 3e 32 20 2d 20 me="sample">2 -
23d0: 54 68 65 20 73 61 6d 70 6c 65 2f 74 65 73 74 20 The sample/test
23e0: 44 42 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a 59 6f 75 DB</a></h1>..You
23f0: 20 61 72 65 20 65 78 70 65 63 74 65 64 20 74 6f are expected to
2400: 20 66 6f 6c 6c 6f 77 20 74 68 65 20 63 75 72 72 follow the curr
2410: 65 6e 74 20 74 75 74 6f 72 69 61 6c 20 61 62 6f ent tutorial abo
2420: 75 74 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 ut <b>VirtualRou
2430: 74 69 6e 67 3c 2f 62 3e 20 62 79 20 64 69 72 65 ting</b> by dire
2440: 63 74 6c 79 20 74 65 73 74 69 6e 67 20 61 6c 6c ctly testing all
2450: 20 53 51 4c 20 71 75 65 72 69 65 73 20 64 69 73 SQL queries dis
2460: 63 75 73 73 65 64 20 20 62 65 6c 6f 77 20 77 69 cussed below wi
2470: 74 68 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 th the <a href="
2480: 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 https://www.gaia
2490: 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e -gis.it/gaia-sin
24a0: 73 2f 72 6f 75 74 69 6e 67 2d 73 61 6d 70 6c 65 s/routing-sample
24b0: 2d 35 2e 30 2e 30 2e 37 7a 22 3e 73 61 6d 70 6c -5.0.0.7z">sampl
24c0: 65 2f 74 65 73 74 20 44 42 20 74 68 61 74 20 79 e/test DB that y
24d0: 6f 75 20 63 61 6e 20 64 6f 77 6e 6c 6f 61 64 20 ou can download
24e0: 66 72 6f 6d 20 68 65 72 65 3c 2f 61 3e 3c 62 72 from here</a><br
24f0: 3e 3c 62 72 3e 0d 0a 54 68 65 20 73 61 6d 70 6c ><br>..The sampl
2500: 65 20 44 42 20 63 6f 6e 74 61 69 6e 73 20 74 68 e DB contains th
2510: 65 20 66 75 6c 6c 20 3c 62 3e 72 6f 61 64 20 6e e full <b>road n
2520: 65 74 77 6f 72 6b 3c 2f 62 3e 20 6f 66 20 3c 62 etwork</b> of <b
2530: 3e 54 75 73 63 61 6e 79 20 52 65 67 69 6f 6e 20 >Tuscany Region
2540: 28 49 74 61 6c 79 29 3c 2f 62 3e 20 28 3c 61 20 (Italy)</b> (<a
2550: 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 href="http://www
2560: 35 30 32 2e 72 65 67 69 6f 6e 65 2e 74 6f 73 63 502.regione.tosc
2570: 61 6e 61 2e 69 74 2f 67 65 6f 73 63 6f 70 69 6f ana.it/geoscopio
2580: 2f 64 6f 77 6e 6c 6f 61 64 2f 67 72 61 66 6f 5f /download/grafo_
2590: 73 74 72 61 64 61 6c 65 2f 69 74 65 72 6e 65 74 stradale/iternet
25a0: 2e 7a 69 70 22 3e 49 74 65 72 2e 4e 65 74 20 64 .zip">Iter.Net d
25b0: 61 74 61 73 65 74 3c 2f 61 3e 29 20 6b 69 6e 64 ataset</a>) kind
25c0: 6c 79 20 72 65 6c 65 61 73 65 64 20 75 6e 64 65 ly released unde
25d0: 72 20 74 68 65 20 3c 62 3e 43 43 2d 42 59 2d 53 r the <b>CC-BY-S
25e0: 41 20 34 2e 30 3c 2f 62 3e 20 6c 69 63 65 6e 63 A 4.0</b> licenc
25f0: 65 20 74 65 72 6d 73 2e 3c 62 72 3e 0d 0a 41 6c e terms.<br>..Al
2600: 6c 74 68 6f 75 67 68 20 74 68 65 20 63 6f 6e 74 lthough the cont
2610: 65 6e 74 73 20 73 74 6f 72 65 64 20 69 6e 20 74 ents stored in t
2620: 68 65 20 73 61 6d 70 6c 65 20 64 61 74 61 62 61 he sample databa
2630: 73 65 20 68 61 76 65 20 62 65 65 6e 20 72 65 61 se have been rea
2640: 72 72 61 6e 67 65 64 2c 20 69 74 20 69 73 20 73 rranged, it is s
2650: 74 69 6c 6c 20 73 75 62 6a 65 63 74 20 74 6f 20 till subject to
2660: 74 68 65 20 69 6e 69 74 69 61 6c 20 3c 62 3e 43 the initial <b>C
2670: 43 2d 42 59 2d 53 41 20 34 2e 30 3c 2f 62 3e 20 C-BY-SA 4.0</b>
2680: 63 6c 61 75 73 65 73 20 28 3c 69 3e 64 65 72 69 clauses (<i>deri
2690: 76 65 64 20 77 6f 72 6b 3c 2f 69 3e 29 2e 0d 0a ved work</i>)...
26a0: 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 75 6c 3e 0d 0a <br><br>..<ul>..
26b0: 3c 6c 69 3e 61 6c 6c 20 72 6f 61 64 20 6e 61 6d <li>all road nam
26c0: 65 73 20 61 72 65 20 73 74 6f 72 65 64 20 77 69 es are stored wi
26d0: 74 68 69 6e 20 74 68 65 20 3c 62 3e 74 6f 70 6f thin the <b>topo
26e0: 6e 79 6d 73 3c 2f 62 3e 20 54 61 62 6c 65 2e 3c nyms</b> Table.<
26f0: 62 72 3e 0d 0a 73 69 6e 63 65 20 74 68 65 20 73 br>..since the s
2700: 61 6d 65 20 72 6f 61 64 20 6e 61 6d 65 73 20 63 ame road names c
2710: 6f 75 6c 64 20 62 65 20 75 73 65 64 20 69 6e 20 ould be used in
2720: 64 69 66 66 65 72 65 6e 74 20 4d 75 6e 69 63 69 different Munici
2730: 70 61 6c 69 74 69 65 73 2c 20 74 68 65 20 3c 62 palities, the <b
2740: 3e 74 6f 70 6f 6e 79 6d 73 3c 2f 62 3e 20 54 61 >toponyms</b> Ta
2750: 62 6c 65 20 72 65 6c 61 74 69 6f 6e 61 6c 6c 79 ble relationally
2760: 20 72 65 66 65 72 65 6e 63 65 73 20 74 68 65 20 references the
2770: 3c 62 3e 6d 75 6e 69 63 69 70 61 6c 69 74 69 65 <b>municipalitie
2780: 73 3c 2f 62 3e 20 54 61 62 6c 65 20 28 76 69 61 s</b> Table (via
2790: 20 3c 62 3e 50 52 49 4d 41 52 59 3c 2f 62 3e 20 <b>PRIMARY</b>
27a0: 2f 20 3c 62 3e 46 4f 52 45 49 47 4e 20 4b 45 59 / <b>FOREIGN KEY
27b0: 3c 2f 62 3e 20 72 65 6c 61 74 69 6f 6e 73 68 69 </b> relationshi
27c0: 70 73 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 ps).</li>..<li>t
27d0: 68 65 20 3c 62 3e 72 6f 61 64 73 3c 2f 62 3e 20 he <b>roads</b>
27e0: 53 70 61 74 69 61 6c 20 54 61 62 6c 65 20 63 6f Spatial Table co
27f0: 6e 74 61 69 6e 73 20 61 62 6f 75 74 20 3c 62 3e ntains about <b>
2800: 33 38 30 2c 30 30 30 3c 2f 62 3e 20 4c 69 6e 6b 380,000</b> Link
2810: 73 2c 20 61 6e 64 20 68 61 73 20 74 68 65 20 66 s, and has the f
2820: 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6c 75 6d 6e 73 ollowing columns
2830: 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e :..<ul>..<li><b>
2840: 69 64 3c 2f 62 3e 3a 20 75 6e 69 71 75 65 20 69 id</b>: unique i
2850: 64 65 6e 74 69 66 69 65 72 20 6f 66 20 65 61 63 dentifier of eac
2860: 68 20 4c 69 6e 6b 20 28 3c 62 3e 50 52 49 4d 41 h Link (<b>PRIMA
2870: 52 59 20 4b 45 59 3c 2f 62 3e 29 2e 3c 2f 6c 69 RY KEY</b>).</li
2880: 3e 0d 0a 3c 6c 69 3e 3c 62 3e 6e 6f 64 65 5f 66 >..<li><b>node_f
2890: 72 6f 6d 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 6e rom</b> and <b>n
28a0: 6f 64 65 5f 74 6f 3c 2f 62 3e 3a 20 4e 6f 64 65 ode_to</b>: Node
28b0: 20 69 64 65 6e 74 69 66 69 65 72 73 2e 0d 0a 54 identifiers...T
28c0: 68 65 20 6f 72 69 67 69 6e 61 6c 20 49 74 65 72 he original Iter
28d0: 2e 4e 65 74 20 64 61 74 61 73 65 74 20 61 64 6f .Net dataset ado
28e0: 70 74 73 20 76 65 72 79 20 6c 6f 6e 67 20 61 6e pts very long an
28f0: 20 63 6f 6d 70 6c 65 78 20 61 6c 70 68 61 6e 75 complex alphanu
2900: 6d 65 72 69 63 20 4e 6f 64 65 20 63 6f 64 65 73 meric Node codes
2910: 3b 20 74 68 65 20 69 6e 74 65 67 65 72 20 4e 6f ; the integer No
2920: 64 65 20 49 44 73 20 77 65 72 65 20 6f 62 74 61 de IDs were obta
2930: 69 6e 65 64 20 62 79 20 63 61 6c 6c 69 6e 67 20 ined by calling
2940: 74 68 65 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 the <b>CreateRou
2950: 74 69 6e 67 4e 6f 64 65 73 28 29 3c 2f 62 3e 20 tingNodes()</b>
2960: 53 51 4c 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 SQL function dis
2970: 63 75 73 73 65 64 20 69 6e 20 61 20 66 6f 6c 6c cussed in a foll
2980: 6f 77 69 6e 67 20 73 65 63 74 69 6f 6e 2e 3c 2f owing section.</
2990: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 5f 74 li>..<li><b>id_t
29a0: 6f 70 6f 6e 79 6d 3c 2f 62 3e 3a 20 72 65 6c 61 oponym</b>: rela
29b0: 74 69 6f 6e 61 6c 20 72 65 66 65 72 65 6e 63 65 tional reference
29c0: 20 74 6f 20 74 68 65 20 63 6f 72 72 65 73 70 6f to the correspo
29d0: 6e 64 69 6e 67 20 72 6f 61 64 20 6e 61 6d 65 20 nding road name
29e0: 63 6f 6e 74 61 69 6e 65 64 20 69 6e 74 6f 20 74 contained into t
29f0: 68 65 20 3c 62 3e 74 6f 70 6f 6e 79 6d 73 3c 2f he <b>toponyms</
2a00: 62 3e 20 54 61 62 6c 65 20 28 3c 62 3e 46 4f 52 b> Table (<b>FOR
2a10: 45 49 47 4e 20 4b 45 59 3c 2f 62 3e 29 2e 3c 2f EIGN KEY</b>).</
2a20: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 73 70 65 65 li>..<li><b>spee
2a30: 64 5f 6b 6d 68 3c 2f 62 3e 3a 20 74 68 65 20 65 d_kmh</b>: the e
2a40: 73 74 69 6d 61 74 65 64 20 61 76 65 72 61 67 65 stimated average
2a50: 20 73 70 65 65 64 20 73 75 70 70 6f 72 74 65 64 speed supported
2a60: 20 62 79 20 74 68 65 20 4c 69 6e 6b 2c 20 65 78 by the Link, ex
2a70: 70 72 65 73 73 65 64 20 69 6e 20 3c 62 3e 6b 6d pressed in <b>km
2a80: 2f 68 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e /h</b>.<br>..<u>
2a90: 4e 6f 74 65 3c 2f 75 3e 3a 20 3c 62 3e 6e 65 67 Note</u>: <b>neg
2aa0: 61 74 69 76 65 3c 2f 62 3e 20 73 70 65 65 64 73 ative</b> speeds
2ab0: 20 69 6e 74 65 6e 64 20 61 20 66 6f 72 62 69 64 intend a forbid
2ac0: 64 65 6e 20 4c 69 6e 6b 20 28 61 73 20 69 74 20 den Link (as it
2ad0: 63 6f 75 6c 64 20 62 65 20 74 68 65 20 63 61 73 could be the cas
2ae0: 65 20 6f 66 20 70 65 64 65 73 74 72 69 61 6e 20 e of pedestrian
2af0: 73 74 72 65 65 74 73 20 6f 72 20 62 69 63 79 63 streets or bicyc
2b00: 6c 65 20 6c 61 6e 65 73 20 65 78 6c 75 64 69 6e le lanes exludin
2b10: 67 20 6d 6f 74 6f 72 20 76 65 68 69 63 6c 65 73 g motor vehicles
2b20: 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e ).</li>..<li><b>
2b30: 6f 6e 65 77 61 79 5f 66 72 6f 6d 74 6f 3c 2f 62 oneway_fromto</b
2b40: 3e 20 61 6e 64 20 3c 62 3e 6f 6e 65 77 61 79 5f > and <b>oneway_
2b50: 74 6f 66 72 6f 6d 3c 2f 62 3e 3a 20 62 6f 6f 6c tofrom</b>: bool
2b60: 65 61 6e 20 66 6c 61 67 73 20 64 65 74 65 72 6d ean flags determ
2b70: 69 6e 65 20 69 66 20 61 20 4c 69 6e 6b 20 63 61 ine if a Link ca
2b80: 6e 20 62 65 20 74 72 61 76 65 72 73 65 64 20 69 n be traversed i
2b90: 6e 20 62 6f 74 68 20 64 69 72 65 63 74 69 6f 6e n both direction
2ba0: 73 20 6f 72 20 6a 75 73 74 20 69 6e 20 61 20 73 s or just in a s
2bb0: 69 6e 67 6c 65 20 64 69 72 65 63 74 69 6f 6e 20 ingle direction
2bc0: 28 3c 62 3e 6f 6e 65 2d 77 61 79 3c 2f 62 3e 29 (<b>one-way</b>)
2bd0: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f .<br>..<u>Note</
2be0: 75 3e 3a 20 61 6c 6c 20 4c 69 6e 6b 73 20 64 65 u>: all Links de
2bf0: 63 6c 61 72 69 6e 67 20 3c 62 3e 6f 6e 65 77 61 claring <b>onewa
2c00: 79 5f 66 72 6f 6d 74 6f 3d 30 3c 2f 62 3e 20 61 y_fromto=0</b> a
2c10: 6e 64 20 3c 62 3e 6f 6e 65 77 61 79 5f 74 6f 66 nd <b>oneway_tof
2c20: 72 6f 6d 3d 30 3c 2f 62 3e 20 61 72 65 20 69 6e rom=0</b> are in
2c30: 74 65 6e 64 65 64 20 74 6f 20 62 65 20 61 6c 77 tended to be alw
2c40: 61 79 73 20 66 6f 72 62 69 64 64 65 6e 2e 3c 2f ays forbidden.</
2c50: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 63 6f 73 74 li>..<li><b>cost
2c60: 3c 2f 62 3e 3a 20 74 68 65 20 3c 62 3e 74 69 6d </b>: the <b>tim
2c70: 65 3c 2f 62 3e 20 65 78 70 72 65 73 73 65 64 20 e</b> expressed
2c80: 69 6e 20 3c 62 3e 73 65 63 6f 6e 64 73 3c 2f 62 in <b>seconds</b
2c90: 3e 20 72 65 71 75 69 72 65 64 20 74 6f 20 74 72 > required to tr
2ca0: 61 76 65 72 73 65 20 65 61 63 68 20 4c 69 6e 6b averse each Link
2cb0: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 .<br>..<u>Note #
2cc0: 31 3c 2f 75 3e 20 61 6c 6c 20 63 6f 73 74 73 20 1</u> all costs
2cd0: 77 65 72 65 20 63 61 6c 63 75 6c 61 74 65 64 20 were calculated
2ce0: 61 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 74 accordingly to t
2cf0: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 6f 72 he following for
2d00: 6d 75 6c 61 3a 20 3c 62 3e 63 6f 73 74 20 3d 20 mula: <b>cost =
2d10: 28 28 53 54 5f 4c 65 6e 67 74 68 28 67 65 6f 6d ((ST_Length(geom
2d20: 29 20 2f 20 31 30 30 30 2e 30 29 20 2f 20 73 70 ) / 1000.0) / sp
2d30: 65 65 64 5f 6b 6d 68 29 20 2a 20 33 36 30 30 2e eed_kmh) * 3600.
2d40: 30 3c 2f 62 3e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 0</b><br>..<u>No
2d50: 74 65 20 23 32 3c 2f 75 3e 20 61 6c 6c 20 3c 62 te #2</u> all <b
2d60: 3e 38 36 2c 34 30 30 2e 30 3c 2f 62 3e 20 63 6f >86,400.0</b> co
2d70: 73 74 20 76 61 6c 75 65 73 20 28 65 71 75 69 76 st values (equiv
2d80: 61 6c 65 6e 74 20 74 6f 20 31 20 64 61 79 29 20 alent to 1 day)
2d90: 69 6d 70 6c 79 20 61 6e 20 3c 62 3e 69 6e 66 69 imply an <b>infi
2da0: 6e 69 74 69 76 65 20 63 6f 73 74 3c 2f 62 3e 20 nitive cost</b>
2db0: 74 68 75 73 20 69 6e 74 65 6e 64 69 6e 67 20 61 thus intending a
2dc0: 20 3c 62 3e 66 6f 72 62 69 64 64 65 6e 3c 2f 62 <b>forbidden</b
2dd0: 3e 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c > Link.</li>..<l
2de0: 69 3e 3c 62 3e 67 65 6f 6d 3c 2f 62 3e 3a 20 61 i><b>geom</b>: a
2df0: 20 3c 62 3e 33 44 20 4c 69 6e 65 73 74 72 69 6e <b>3D Linestrin
2e00: 67 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 69 g</b> representi
2e10: 6e 67 20 74 68 65 20 47 65 6f 6d 65 74 72 79 20 ng the Geometry
2e20: 6f 66 20 65 61 63 68 20 4c 69 6e 6b 2e 3c 62 72 of each Link.<br
2e30: 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 >..<u>Note</u>:
2e40: 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 3c 62 3e the original <b>
2e50: 49 74 65 72 2e 4e 65 74 3c 2f 62 3e 20 64 61 74 Iter.Net</b> dat
2e60: 61 73 65 74 20 69 73 20 6a 75 73 74 20 3c 62 3e aset is just <b>
2e70: 32 44 3c 2f 62 3e 3b 20 65 6c 65 76 61 74 69 6f 2D</b>; elevatio
2e80: 6e 73 20 28 3c 62 3e 5a 3c 2f 62 3e 20 63 6f 6f ns (<b>Z</b> coo
2e90: 72 64 69 6e 61 74 65 73 29 20 77 65 72 65 20 69 rdinates) were i
2ea0: 6e 74 65 72 70 6f 6c 61 74 65 64 20 62 79 20 64 nterpolated by d
2eb0: 72 61 70 69 6e 67 20 74 68 65 20 64 61 74 61 73 raping the datas
2ec0: 65 74 20 6f 76 65 72 20 61 6e 20 3c 61 20 68 72 et over an <a hr
2ed0: 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 35 30 ef="http://www50
2ee0: 32 2e 72 65 67 69 6f 6e 65 2e 74 6f 73 63 61 6e 2.regione.toscan
2ef0: 61 2e 69 74 2f 67 65 6f 73 63 6f 70 69 6f 2f 64 a.it/geoscopio/d
2f00: 6f 77 6e 6c 6f 61 64 2f 61 6c 74 69 6d 65 74 72 ownload/altimetr
2f10: 69 61 2f 64 61 5f 63 74 72 31 30 6b 2f 67 62 2f ia/da_ctr10k/gb/
2f20: 44 54 4d 5f 4f 72 6f 67 72 61 66 69 63 6f 2e 37 DTM_Orografico.7
2f30: 7a 22 3e 6f 72 6f 67 72 61 70 68 69 63 20 44 45 z">orographic DE
2f40: 4d 20 28 31 30 6d 20 58 20 31 30 6d 20 63 65 6c M (10m X 10m cel
2f50: 6c 73 29 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a 3c 2f ls)</a></li>..</
2f60: 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 ul></li>..<li>th
2f70: 65 20 3c 62 3e 72 6f 61 64 73 5f 76 77 3c 2f 62 e <b>roads_vw</b
2f80: 3e 20 53 70 61 74 69 61 6c 20 56 69 65 77 20 72 > Spatial View r
2f90: 65 73 6f 6c 76 65 73 20 61 6c 6c 20 72 65 6c 61 esolves all rela
2fa0: 74 69 6f 6e 61 6c 20 72 65 66 65 72 65 6e 63 65 tional reference
2fb0: 73 20 62 65 74 77 65 65 6e 20 3c 62 3e 72 6f 61 s between <b>roa
2fc0: 64 73 3c 2f 62 3e 2c 20 3c 62 3e 74 6f 70 6f 6e ds</b>, <b>topon
2fd0: 79 6d 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 6d yms</b> and <b>m
2fe0: 75 6e 69 63 69 70 61 6c 69 74 69 65 73 3c 2f 62 unicipalities</b
2ff0: 3e 2c 20 74 68 75 73 20 61 6c 6c 6f 77 69 6e 67 >, thus allowing
3000: 20 66 6f 72 20 65 61 73 69 65 72 20 53 51 4c 20 for easier SQL
3010: 71 75 65 72 69 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c queries.</li>..<
3020: 6c 69 3e 74 68 65 20 3c 62 3e 68 6f 75 73 65 5f li>the <b>house_
3030: 6e 72 3c 2f 62 3e 20 53 70 61 74 69 61 6c 20 54 nr</b> Spatial T
3040: 61 62 6c 65 20 63 6f 6e 74 61 69 6e 73 20 61 62 able contains ab
3050: 6f 75 74 20 3c 62 3e 31 2c 34 38 30 2c 30 30 30 out <b>1,480,000
3060: 3c 2f 62 3e 20 48 6f 75 73 65 20 4e 75 6d 62 65 </b> House Numbe
3070: 72 73 2c 20 61 6e 64 20 68 61 73 20 74 68 65 20 rs, and has the
3080: 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6c 75 6d 6e following column
3090: 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 s:..<ul>..<li><b
30a0: 3e 69 64 3c 2f 62 3e 3a 20 75 6e 69 71 75 65 20 >id</b>: unique
30b0: 69 64 65 6e 74 69 66 69 65 72 20 6f 66 20 65 61 identifier of ea
30c0: 63 68 20 48 6f 75 73 65 20 4e 75 6d 62 65 72 20 ch House Number
30d0: 28 3c 62 3e 50 52 49 4d 41 52 59 20 4b 45 59 3c (<b>PRIMARY KEY<
30e0: 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e /b>).</li>..<li>
30f0: 3c 62 3e 69 64 5f 72 6f 61 64 3c 2f 62 3e 3a 20 <b>id_road</b>:
3100: 72 65 6c 61 74 69 6f 6e 61 6c 20 72 65 66 65 72 relational refer
3110: 65 6e 63 65 20 74 6f 20 74 68 65 20 63 6f 72 72 ence to the corr
3120: 65 73 70 6f 6e 64 69 6e 67 20 4c 69 6e 6b 20 63 esponding Link c
3130: 6f 6e 74 61 69 6e 65 64 20 69 6e 74 6f 20 74 68 ontained into th
3140: 65 20 3c 62 3e 72 6f 61 64 73 3c 2f 62 3e 20 54 e <b>roads</b> T
3150: 61 62 6c 65 20 28 3c 62 3e 46 4f 52 45 49 47 4e able (<b>FOREIGN
3160: 20 4b 45 59 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d KEY</b>).</li>.
3170: 0a 3c 6c 69 3e 3c 62 3e 6c 61 62 65 6c 3c 2f 62 .<li><b>label</b
3180: 3e 3a 20 74 68 65 20 74 65 78 74 75 61 6c 20 6c >: the textual l
3190: 61 62 65 6c 20 66 75 6c 6c 79 20 71 75 61 6c 69 abel fully quali
31a0: 66 79 69 6e 67 20 65 61 63 68 20 48 6f 75 73 65 fying each House
31b0: 20 4e 75 6d 62 65 72 2e 3c 2f 6c 69 3e 0d 0a 3c Number.</li>..<
31c0: 6c 69 3e 3c 62 3e 67 65 6f 6d 3c 2f 62 3e 3a 20 li><b>geom</b>:
31d0: 61 20 3c 62 3e 33 44 20 50 6f 69 6e 74 3c 2f 62 a <b>3D Point</b
31e0: 3e 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 > representing t
31f0: 68 65 20 47 65 6f 6d 65 74 72 79 20 6f 66 20 65 he Geometry of e
3200: 61 63 68 20 48 6f 75 73 65 20 4e 75 6d 62 65 72 ach House Number
3210: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 .<br>..<u>Note #
3220: 31 3c 2f 75 3e 3a 20 61 6c 73 6f 20 69 6e 20 74 1</u>: also in t
3230: 68 69 73 20 63 61 73 65 20 61 6c 6c 20 65 6c 65 his case all ele
3240: 76 61 74 69 6f 6e 73 20 28 3c 62 3e 5a 3c 2f 62 vations (<b>Z</b
3250: 3e 20 63 6f 6f 72 64 69 6e 61 74 65 73 29 20 77 > coordinates) w
3260: 65 72 65 20 69 6e 74 65 72 70 6f 6c 61 74 65 64 ere interpolated
3270: 20 62 79 20 64 72 61 70 69 6e 67 20 74 68 65 20 by draping the
3280: 64 61 74 61 73 65 74 20 6f 76 65 72 20 74 68 65 dataset over the
3290: 20 73 61 6d 65 20 44 45 4d 20 61 73 20 61 62 6f same DEM as abo
32a0: 76 65 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 ve.<br>..<u>Note
32b0: 20 23 32 3c 2f 75 3e 3a 20 73 74 72 69 63 74 6c #2</u>: strictl
32c0: 79 20 73 70 65 61 63 6b 69 6e 67 20 74 68 65 20 y speacking the
32d0: 48 6f 75 73 65 20 4e 75 6d 62 65 72 73 20 61 72 House Numbers ar
32e0: 65 20 6e 6f 74 20 70 61 72 74 20 6f 66 20 74 68 e not part of th
32f0: 65 20 52 6f 61 64 20 4e 65 74 77 6f 72 6b 3b 20 e Road Network;
3300: 74 68 65 79 20 61 72 65 20 69 6e 63 6c 75 64 65 they are include
3310: 64 20 69 6e 20 74 68 65 20 73 61 6d 70 6c 65 2f d in the sample/
3320: 74 65 73 74 20 64 61 74 61 62 61 73 65 20 61 73 test database as
3330: 20 75 73 65 66 75 6c 20 65 78 61 6d 70 6c 65 73 useful examples
3340: 20 65 78 70 6c 61 69 6e 65 64 20 6c 61 74 65 72 explained later
3350: 20 69 6e 20 74 68 69 73 20 74 65 78 74 2e 3c 2f in this text.</
3360: 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d li>..</ul></li>.
3370: 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 68 6f 75 73 .<li>the <b>hous
3380: 65 5f 6e 72 5f 76 77 3c 2f 62 3e 20 53 70 61 74 e_nr_vw</b> Spat
3390: 69 61 6c 20 56 69 65 77 20 72 65 73 6f 6c 76 65 ial View resolve
33a0: 73 20 61 6c 6c 20 72 65 6c 61 74 69 6f 6e 61 6c s all relational
33b0: 20 72 65 66 65 72 65 6e 63 65 73 20 62 65 74 77 references betw
33c0: 65 65 6e 20 3c 62 3e 68 6f 75 73 65 5f 6e 72 3c een <b>house_nr<
33d0: 2f 62 3e 2c 20 3c 62 3e 72 6f 61 64 73 3c 2f 62 /b>, <b>roads</b
33e0: 3e 2c 20 3c 62 3e 74 6f 70 6f 6e 79 6d 73 3c 2f >, <b>toponyms</
33f0: 62 3e 20 61 6e 64 20 3c 62 3e 6d 75 6e 69 63 69 b> and <b>munici
3400: 70 61 6c 69 74 69 65 73 3c 2f 62 3e 2c 20 74 68 palities</b>, th
3410: 75 73 20 61 6c 6c 6f 77 69 6e 67 20 66 6f 72 20 us allowing for
3420: 65 61 73 69 65 72 20 53 51 4c 20 71 75 65 72 69 easier SQL queri
3430: 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d es.</li>..</ul>.
3440: 0a 3c 62 72 3e 0d 0a 20 3c 68 72 3e 0d 0a 3c 68 .<br>.. <hr>..<h
3450: 31 3e 3c 61 20 6e 61 6d 65 3d 22 63 72 65 61 74 1><a name="creat
3460: 65 22 3e 33 20 2d 20 43 72 65 61 74 69 6e 67 20 e">3 - Creating
3470: 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 VirtualRouting T
3480: 61 62 6c 65 73 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a ables</a></h1>..
3490: 41 6c 6c 20 56 69 72 74 75 61 6c 52 6f 75 74 69 All VirtualRouti
34a0: 6e 67 20 71 75 65 72 69 65 73 20 61 72 65 20 62 ng queries are b
34b0: 61 73 65 64 20 6f 6e 20 73 6f 6d 65 20 3c 62 3e ased on some <b>
34c0: 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 VirtualRouting T
34d0: 61 62 6c 65 3c 2f 62 3e 2c 20 61 6e 64 20 69 6e able</b>, and in
34e0: 20 74 75 72 6e 20 61 6e 79 20 56 69 72 74 75 61 turn any Virtua
34f0: 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 69 lRouting Table i
3500: 73 20 62 61 73 65 64 20 6f 6e 20 73 6f 6d 65 20 s based on some
3510: 61 70 70 72 6f 70 72 69 61 74 65 20 3c 62 3e 42 appropriate <b>B
3520: 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 6c 65 inary Data Table
3530: 3c 2f 62 3e 20 73 75 70 70 6f 72 74 69 6e 67 20 </b> supporting
3540: 61 6e 20 65 66 66 69 63 69 65 6e 74 20 72 65 70 an efficient rep
3550: 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 resentation of t
3560: 68 65 20 75 6e 64 65 72 6c 79 69 6e 67 20 4e 65 he underlying Ne
3570: 74 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 53 6f 20 77 twork.<br>..So w
3580: 65 27 6c 6c 20 73 74 61 72 74 20 66 69 72 73 74 e'll start first
3590: 20 62 79 20 63 72 65 61 74 69 6e 67 20 73 75 63 by creating suc
35a0: 68 20 74 61 62 6c 65 73 2e 3c 62 72 3e 3c 62 72 h tables.<br><br
35b0: 3e 0d 0a 54 68 65 20 6f 6c 64 20 61 6e 64 20 6e >..The old and n
35c0: 6f 77 20 73 75 70 65 72 73 65 64 65 64 20 3c 62 ow superseded <b
35d0: 3e 56 69 72 74 75 61 6c 4e 65 74 77 6f 72 6b 3c >VirtualNetwork<
35e0: 2f 62 3e 20 72 65 71 75 69 72 65 64 20 75 73 69 /b> required usi
35f0: 6e 67 20 61 20 73 65 70 61 72 61 74 65 20 43 4c ng a separate CL
3600: 49 20 74 6f 6f 6c 20 28 3c 62 3e 73 70 61 74 69 I tool (<b>spati
3610: 61 6c 69 74 65 5f 6e 65 74 77 6f 72 6b 3c 2f 62 alite_network</b
3620: 3e 29 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 70 >) in order to p
3630: 72 6f 70 65 72 6c 79 20 69 6e 69 74 69 61 6c 69 roperly initiali
3640: 7a 65 20 61 20 56 69 72 74 75 61 6c 4e 65 74 77 ze a VirtualNetw
3650: 6f 72 6b 20 54 61 62 6c 65 20 61 6e 64 20 69 74 ork Table and it
3660: 73 20 63 6f 6d 70 61 6e 69 6f 6e 20 42 69 6e 61 s companion Bina
3670: 72 79 20 44 61 74 61 20 54 61 62 6c 65 3b 0d 0a ry Data Table;..
3680: 61 6c 74 65 72 6e 61 74 69 76 65 6c 79 20 3c 62 alternatively <b
3690: 3e 73 70 61 74 69 61 6c 69 74 65 5f 67 75 69 3c >spatialite_gui<
36a0: 2f 62 3e 20 73 75 70 70 6f 72 74 65 64 20 61 20 /b> supported a
36b0: 3c 62 3e 47 55 49 20 77 69 7a 61 72 64 3c 2f 62 <b>GUI wizard</b
36c0: 3e 20 66 6f 72 20 74 68 65 20 73 61 6d 65 20 74 > for the same t
36d0: 61 73 6b 2e 20 53 69 6e 63 65 20 76 65 72 73 69 ask. Since versi
36e0: 6f 6e 20 3c 62 3e 35 2e 30 2e 30 3c 2f 62 3e 20 on <b>5.0.0</b>
36f0: 6e 6f 77 20 53 70 61 74 69 61 4c 69 74 65 20 64 now SpatiaLite d
3700: 69 72 65 63 74 6c 79 20 73 75 70 70 6f 72 74 73 irectly supports
3710: 20 61 20 73 70 65 63 69 66 69 63 20 3c 62 3e 43 a specific <b>C
3720: 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f reateRouting()</
3730: 62 3e 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 2e b> SQL function.
3740: 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 ..<verbatim>..SE
3750: 4c 45 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 LECT CreateRouti
3760: 6e 67 28 27 62 79 66 6f 6f 74 5f 64 61 74 61 27 ng('byfoot_data'
3770: 2c 20 27 62 79 66 6f 6f 74 27 2c 20 27 72 6f 61 , 'byfoot', 'roa
3780: 64 73 5f 76 77 27 2c 20 27 6e 6f 64 65 5f 66 72 ds_vw', 'node_fr
3790: 6f 6d 27 2c 20 27 6e 6f 64 65 74 6f 27 2c 20 27 om', 'nodeto', '
37a0: 67 65 6f 6d 27 2c 20 4e 55 4c 4c 29 3b 0d 0a 0d geom', NULL);...
37b0: 0a 53 45 4c 45 43 54 20 43 72 65 61 74 65 52 6f .SELECT CreateRo
37c0: 75 74 69 6e 67 5f 47 65 74 4c 61 73 74 45 72 72 uting_GetLastErr
37d0: 6f 72 28 29 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d or();..---------
37e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
37f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 54 6f 4e -----------..ToN
3800: 6f 64 65 20 43 6f 6c 75 6d 6e 20 22 6e 6f 64 65 ode Column "node
3810: 74 6f 22 20 69 73 20 6e 6f 74 20 64 65 66 69 6e to" is not defin
3820: 65 64 20 69 6e 20 74 68 65 20 49 6e 70 75 74 20 ed in the Input
3830: 54 61 62 6c 65 0d 0a 3c 2f 76 65 72 62 61 74 69 Table..</verbati
3840: 6d 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a m>..<u>Note</u>:
3850: 20 74 68 69 73 20 66 69 72 73 74 20 71 75 65 72 this first quer
3860: 79 20 28 62 61 73 65 64 20 6f 6e 20 74 68 65 20 y (based on the
3870: 3c 69 3e 72 65 64 75 63 65 64 20 66 6f 72 6d 3c <i>reduced form<
3880: 2f 69 3e 20 6f 66 20 3c 62 3e 43 72 65 61 74 65 /i> of <b>Create
3890: 52 6f 75 74 69 6e 67 3c 2f 62 3e 29 20 63 6f 6e Routing</b>) con
38a0: 74 61 69 6e 73 20 61 6e 20 69 6e 74 65 6e 64 65 tains an intende
38b0: 64 20 65 72 72 6f 72 20 63 61 75 73 69 6e 67 20 d error causing
38c0: 61 20 66 61 69 6c 75 72 65 20 61 6e 64 20 74 68 a failure and th
38d0: 75 73 20 72 61 69 73 69 6e 67 20 61 6e 20 65 78 us raising an ex
38e0: 63 65 70 74 69 6f 6e 2e 3c 62 72 3e 0d 0a 43 72 ception.<br>..Cr
38f0: 65 61 74 65 52 6f 75 74 69 6e 67 28 29 20 63 61 eateRouting() ca
3900: 6e 20 66 61 69 6c 20 66 6f 72 20 6d 75 6c 74 69 n fail for multi
3910: 70 6c 65 20 72 65 61 73 6f 6e 73 2c 20 61 6e 64 ple reasons, and
3920: 20 62 79 20 63 61 6c 6c 69 6e 67 20 3c 62 3e 43 by calling <b>C
3930: 72 65 61 74 65 52 6f 75 74 69 6e 67 5f 47 65 74 reateRouting_Get
3940: 4c 61 73 74 45 72 72 6f 72 28 29 3c 2f 62 3e 20 LastError()</b>
3950: 79 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 69 you can easily i
3960: 64 65 6e 74 69 66 79 20 74 68 65 20 65 78 61 63 dentify the exac
3970: 74 20 72 65 61 73 6f 6e 20 77 68 79 20 74 68 65 t reason why the
3980: 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 63 61 6c most recent cal
3990: 6c 20 74 6f 20 43 72 65 61 74 65 52 6f 75 74 69 l to CreateRouti
39a0: 6e 67 28 29 20 66 61 69 6c 65 64 2e 3c 62 72 3e ng() failed.<br>
39b0: 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 ..<verbatim>..SE
39c0: 4c 45 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 LECT CreateRouti
39d0: 6e 67 28 27 62 79 66 6f 6f 74 5f 64 61 74 61 27 ng('byfoot_data'
39e0: 2c 20 27 62 79 66 6f 6f 74 27 2c 20 27 72 6f 61 , 'byfoot', 'roa
39f0: 64 73 5f 76 77 27 2c 20 27 6e 6f 64 65 5f 66 72 ds_vw', 'node_fr
3a00: 6f 6d 27 2c 20 27 6e 6f 64 65 5f 74 6f 27 2c 20 om', 'node_to',
3a10: 27 67 65 6f 6d 27 2c 20 4e 55 4c 4c 2c 20 27 74 'geom', NULL, 't
3a20: 6f 70 6f 6e 79 6d 27 2c 20 31 2c 20 31 29 3b 0d oponym', 1, 1);.
3a30: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a .-------------..
3a40: 31 0d 0a 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 1....SELECT Crea
3a50: 74 65 52 6f 75 74 69 6e 67 5f 47 65 74 4c 61 73 teRouting_GetLas
3a60: 74 45 72 72 6f 72 28 29 3b 0d 0a 2d 2d 2d 2d 2d tError();..-----
3a70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3a80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d ---------------.
3a90: 0a 4e 55 4c 4c 0d 0a 3c 2f 76 65 72 62 61 74 69 .NULL..</verbati
3aa0: 6d 3e 0d 0a 54 68 69 73 20 73 65 63 6f 6e 64 20 m>..This second
3ab0: 61 74 74 65 6d 70 74 20 69 73 20 66 69 6e 61 6c attempt is final
3ac0: 6c 79 20 73 75 63 63 65 73 73 66 75 6c 2c 20 61 ly successful, a
3ad0: 6e 64 20 6e 6f 77 20 43 72 65 61 74 65 52 6f 75 nd now CreateRou
3ae0: 74 69 6e 67 28 29 20 72 65 74 75 72 6e 73 20 3c ting() returns <
3af0: 62 3e 31 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c b>1</b> (<i>aka<
3b00: 2f 69 3e 20 3c 62 3e 54 52 55 45 3c 2f 62 3e 29 /i> <b>TRUE</b>)
3b10: 2c 20 61 6e 64 20 61 73 20 79 6f 75 20 63 61 6e , and as you can
3b20: 20 65 61 73 69 6c 79 20 63 68 65 63 6b 20 6e 6f easily check no
3b30: 77 20 74 68 65 20 44 61 74 61 62 61 73 65 20 63 w the Database c
3b40: 6f 6e 74 61 69 6e 73 20 74 77 6f 20 6e 65 77 20 ontains two new
3b50: 54 61 62 6c 65 73 3a 20 3c 62 3e 62 79 66 6f 6f Tables: <b>byfoo
3b60: 74 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 62 79 66 t</b> and <b>byf
3b70: 6f 6f 74 5f 64 61 74 61 3c 2f 62 3e 2e 3c 62 72 oot_data</b>.<br
3b80: 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 >..<u>Note</u>:
3b90: 61 66 74 65 72 20 61 20 73 75 63 63 65 73 73 66 after a successf
3ba0: 75 6c 20 63 61 6c 6c 20 74 6f 20 43 72 65 61 74 ul call to Creat
3bb0: 65 52 6f 75 74 69 6e 67 28 29 20 3c 62 3e 43 72 eRouting() <b>Cr
3bc0: 65 61 74 65 52 6f 75 74 69 6e 67 5f 47 65 74 4c eateRouting_GetL
3bd0: 61 73 74 45 72 72 6f 72 28 29 3c 2f 62 3e 20 77 astError()</b> w
3be0: 69 6c 6c 20 61 6c 77 61 79 73 20 72 65 74 75 72 ill always retur
3bf0: 6e 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 2e 3c 62 n <b>NULL</b>.<b
3c00: 72 3e 3c 62 72 3e 0d 0a 59 6f 75 27 76 65 20 6a r><br>..You've j
3c10: 75 73 74 20 75 73 65 64 20 6f 6e 65 20 6f 66 20 ust used one of
3c20: 74 68 65 20 3c 69 3e 70 61 72 74 69 61 6c 6c 79 the <i>partially
3c30: 20 72 65 64 75 63 65 64 20 66 6f 72 6d 3c 2f 69 reduced form</i
3c40: 3e 20 6f 66 20 43 72 65 61 74 65 52 6f 75 74 69 > of CreateRouti
3c50: 6e 67 28 29 3b 20 6c 65 74 27 73 20 73 65 65 20 ng(); let's see
3c60: 69 6e 20 6d 6f 72 65 20 64 65 70 74 68 20 61 6c in more depth al
3c70: 6c 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 l the arguments
3c80: 61 6e 64 20 74 68 65 69 72 20 6d 65 61 6e 69 6e and their meanin
3c90: 67 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 3c 69 g:..<ol>..<li><i
3ca0: 3e 62 79 66 6f 6f 74 5f 64 61 74 61 3c 2f 69 3e >byfoot_data</i>
3cb0: 3a 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 : the name of th
3cc0: 65 20 4e 65 74 77 6f 72 6b 20 42 69 6e 61 72 79 e Network Binary
3cd0: 20 44 61 74 61 20 54 61 62 6c 65 20 74 6f 20 62 Data Table to b
3ce0: 65 20 63 72 65 61 74 65 64 2e 3c 2f 6c 69 3e 0d e created.</li>.
3cf0: 0a 3c 6c 69 3e 3c 69 3e 62 79 66 6f 6f 74 3c 2f .<li><i>byfoot</
3d00: 69 3e 3a 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 i>: the name of
3d10: 74 68 65 20 56 69 72 74 75 61 6c 52 6f 75 74 69 the VirtualRouti
3d20: 6e 67 20 54 61 62 6c 65 20 74 6f 20 62 65 20 63 ng Table to be c
3d30: 72 65 61 74 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c reated.</li>..<l
3d40: 69 3e 3c 69 3e 72 6f 61 64 73 5f 76 77 3c 2f 69 i><i>roads_vw</i
3d50: 3e 3a 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 >: the name of t
3d60: 68 65 20 3c 62 3e 53 70 61 74 69 61 6c 20 54 61 he <b>Spatial Ta
3d70: 62 6c 65 3c 2f 62 3e 20 6f 72 20 3c 62 3e 53 70 ble</b> or <b>Sp
3d80: 61 74 69 61 6c 20 56 69 65 77 3c 2f 62 3e 20 72 atial View</b> r
3d90: 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 epresenting the
3da0: 75 6e 64 65 72 6c 79 69 6e 67 20 4e 65 74 77 6f underlying Netwo
3db0: 72 6b 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 rk.<br>..<u>Note
3dc0: 3c 2f 75 3e 3a 20 69 6e 20 74 68 69 73 20 63 61 </u>: in this ca
3dd0: 73 65 20 77 65 20 61 63 74 75 61 6c 6c 79 20 75 se we actually u
3de0: 73 65 64 20 61 20 53 70 61 74 69 61 6c 20 56 69 sed a Spatial Vi
3df0: 65 77 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 ew.</li>..<li><i
3e00: 3e 6e 6f 64 65 5f 66 72 6f 6d 3c 2f 69 3e 3a 20 >node_from</i>:
3e10: 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 name of the colu
3e20: 6d 6e 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 mn (in the above
3e30: 20 54 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 Table or View)
3e40: 65 78 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 expected to cont
3e50: 61 69 6e 20 3c 62 3e 6e 6f 64 65 2d 66 72 6f 6d ain <b>node-from
3e60: 3c 2f 62 3e 20 76 61 6c 75 65 73 2e 3c 2f 6c 69 </b> values.</li
3e70: 3e 0d 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 5f 74 >..<li><i>node_t
3e80: 6f 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 74 o</i>: name of t
3e90: 68 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 68 he column (in th
3ea0: 65 20 61 62 6f 76 65 20 54 61 62 6c 65 20 6f 72 e above Table or
3eb0: 20 56 69 65 77 29 20 65 78 70 65 63 74 65 64 20 View) expected
3ec0: 74 6f 20 63 6f 6e 74 61 69 6e 20 3c 62 3e 6e 6f to contain <b>no
3ed0: 64 65 2d 74 6f 3c 2f 62 3e 20 76 61 6c 75 65 73 de-to</b> values
3ee0: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 67 .</li>..<li><i>g
3ef0: 65 6f 6d 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 eom</i>: name of
3f00: 20 74 68 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 the column (in
3f10: 74 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 20 the above Table
3f20: 6f 72 20 56 69 65 77 29 20 65 78 70 65 63 74 65 or View) expecte
3f30: 64 20 74 6f 20 63 6f 6e 74 61 69 6e 20 3c 62 3e d to contain <b>
3f40: 4c 69 6e 65 73 74 72 69 6e 67 73 3c 2f 62 3e 2e Linestrings</b>.
3f50: 3c 62 72 3e 0d 0a 57 65 20 63 6f 75 6c 64 20 68 <br>..We could h
3f60: 61 76 65 20 6c 65 67 69 74 69 6d 61 74 65 6c 79 ave legitimately
3f70: 20 70 61 73 73 65 64 20 61 20 3c 62 3e 4e 55 4c passed a <b>NUL
3f80: 4c 3c 2f 62 3e 20 76 61 6c 75 65 20 66 6f 72 20 L</b> value for
3f90: 74 68 69 73 20 61 72 67 75 6d 65 6e 74 20 69 6e this argument in
3fa0: 20 74 68 65 20 63 61 73 65 20 6f 66 20 61 20 3c the case of a <
3fb0: 62 3e 4c 6f 67 69 63 61 6c 20 4e 65 74 77 6f 72 b>Logical Networ
3fc0: 6b 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 k</b>.</li>..<li
3fd0: 3e 3c 69 3e 4e 55 4c 4c 3c 2f 69 3e 3a 20 6e 61 ><i>NULL</i>: na
3fe0: 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e me of the column
3ff0: 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 (in the above T
4000: 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 65 78 able or View) ex
4010: 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 pected to contai
4020: 6e 20 3c 62 3e 63 6f 73 74 3c 2f 62 3e 20 76 61 n <b>cost</b> va
4030: 6c 75 65 73 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 lues.<br>..In th
4040: 69 73 20 63 61 73 65 20 77 65 20 68 61 76 65 20 is case we have
4050: 70 61 73 73 65 64 20 61 20 3c 62 3e 4e 55 4c 4c passed a <b>NULL
4060: 3c 2f 62 3e 20 76 61 6c 75 65 2c 20 61 6e 64 20 </b> value, and
4070: 63 6f 6e 73 65 71 75 65 6e 74 6c 79 20 74 68 65 consequently the
4080: 20 3c 62 3e 63 6f 73 74 3c 2f 62 3e 20 6f 66 20 <b>cost</b> of
4090: 65 61 63 68 20 4c 69 6e 6b 20 77 69 6c 6c 20 62 each Link will b
40a0: 65 20 61 73 73 75 6d 65 64 20 74 6f 20 62 65 20 e assumed to be
40b0: 72 65 70 72 65 73 65 6e 74 65 64 20 62 79 20 74 represented by t
40c0: 68 65 20 3c 62 3e 67 65 6f 6d 65 74 72 69 63 20 he <b>geometric
40d0: 6c 65 6e 67 74 68 3c 2f 62 3e 20 6f 66 20 74 68 length</b> of th
40e0: 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 e corresponding
40f0: 4c 69 6e 65 73 74 72 69 6e 67 2e 3c 62 72 3e 0d Linestring.<br>.
4100: 0a 3c 75 3e 4e 6f 74 65 20 23 31 3c 2f 75 3e 3a .<u>Note #1</u>:
4110: 20 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 in the case of
4120: 4e 65 74 77 6f 72 6b 73 20 62 61 73 65 64 20 6f Networks based o
4130: 6e 20 3c 62 3e 6c 6f 6e 67 69 74 75 64 65 73 3c n <b>longitudes<
4140: 2f 62 3e 20 61 6e 64 20 3c 62 3e 6c 61 74 69 74 /b> and <b>latit
4150: 75 64 65 73 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 udes</b> (<i>aka
4160: 3c 2f 69 3e 20 3c 62 3e 67 65 6f 67 72 61 70 68 </i> <b>geograph
4170: 69 63 3c 2f 62 3e 20 52 65 66 65 72 65 6e 63 65 ic</b> Reference
4180: 20 53 79 73 74 65 6d 73 29 20 74 68 65 20 67 65 Systems) the ge
4190: 6f 6d 65 74 72 79 20 6c 65 6e 67 74 68 20 6f 66 ometry length of
41a0: 20 61 6c 6c 20 4c 69 6e 65 73 74 72 69 6e 67 73 all Linestrings
41b0: 20 77 69 6c 6c 20 62 65 20 70 72 65 63 69 73 65 will be precise
41c0: 6c 79 20 3c 62 3e 6d 65 61 73 75 72 65 64 20 6f ly <b>measured o
41d0: 6e 20 74 68 65 20 65 6c 6c 69 70 73 6f 69 64 3c n the ellipsoid<
41e0: 2f 62 3e 20 62 79 20 61 70 70 6c 79 69 6e 67 20 /b> by applying
41f0: 74 68 65 20 6d 6f 73 74 20 61 63 63 75 72 61 74 the most accurat
4200: 65 20 3c 62 3e 67 65 6f 64 65 73 69 63 20 66 6f e <b>geodesic fo
4210: 72 6d 75 6c 61 65 3c 2f 62 3e 20 61 6e 64 20 77 rmulae</b> and w
4220: 69 6c 6c 20 62 65 20 63 6f 6e 73 65 71 75 65 6e ill be consequen
4230: 74 6c 79 20 65 78 70 72 65 73 73 65 64 20 69 6e tly expressed in
4240: 20 3c 62 3e 6d 65 74 65 72 73 3c 2f 62 3e 2e 20 <b>meters</b>.
4250: 49 6e 20 61 6e 79 20 6f 74 68 65 72 20 63 61 73 In any other cas
4260: 65 20 28 3c 62 3e 70 72 6f 6a 65 63 74 65 64 3c e (<b>projected<
4270: 2f 62 3e 20 52 65 66 65 72 65 6e 63 65 20 53 79 /b> Reference Sy
4280: 73 74 65 6d 73 29 20 6c 65 6e 67 74 68 73 20 77 stems) lengths w
4290: 69 6c 6c 20 62 65 20 65 78 70 72 65 73 73 65 64 ill be expressed
42a0: 20 69 6e 20 74 68 65 20 3c 62 3e 6d 65 61 73 75 in the <b>measu
42b0: 72 65 20 75 6e 69 74 3c 2f 62 3e 20 64 65 66 69 re unit</b> defi
42c0: 6e 65 64 20 62 79 20 74 68 65 20 52 65 66 65 72 ned by the Refer
42d0: 65 6e 63 65 20 53 79 73 74 65 6d 20 28 65 2e 67 ence System (e.g
42e0: 2e 20 3c 62 3e 6d 65 74 65 72 73 3c 2f 62 3e 20 . <b>meters</b>
42f0: 66 6f 72 20 3c 62 3e 55 54 4d 3c 2f 62 3e 20 70 for <b>UTM</b> p
4300: 72 6f 6a 65 63 74 69 6f 6e 73 20 61 6e 64 20 3c rojections and <
4310: 62 3e 66 65 65 74 3c 2f 62 3e 20 66 6f 72 20 3c b>feet</b> for <
4320: 62 3e 4e 41 44 2d 66 74 3c 2f 62 3e 20 70 72 6f b>NAD-ft</b> pro
4330: 6a 65 63 74 69 6f 6e 73 29 2e 3c 62 72 3e 0d 0a jections).<br>..
4340: 3c 75 3e 4e 6f 74 65 20 23 32 3c 2f 75 3e 3a 20 <u>Note #2</u>:
4350: 74 68 65 20 3c 62 3e 67 65 6f 6d 2d 63 6f 6c 75 the <b>geom-colu
4360: 6d 6e 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 63 6f mn</b> and <b>co
4370: 73 74 2d 63 6f 6c 75 6d 6e 3c 2f 62 3e 20 61 72 st-column</b> ar
4380: 67 75 6d 65 6e 74 73 20 61 72 65 20 6e 65 76 65 guments are neve
4390: 72 20 61 6c 6c 6f 77 65 64 20 74 6f 20 62 65 20 r allowed to be
43a0: 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 61 74 20 74 <b>NULL</b> at t
43b0: 68 65 20 73 61 6d 65 20 74 69 6d 65 2e 3c 2f 6c he same time.</l
43c0: 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 74 6f 70 6f 6e i>..<li><i>topon
43d0: 79 6d 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 ym</i>: name of
43e0: 74 68 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 the column (in t
43f0: 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 20 6f he above Table o
4400: 72 20 56 69 65 77 29 20 65 78 70 65 63 74 65 64 r View) expected
4410: 20 74 6f 20 63 6f 6e 74 61 69 6e 20 3c 62 3e 72 to contain <b>r
4420: 6f 61 64 2d 6e 61 6d 65 3c 2f 62 3e 20 76 61 6c oad-name</b> val
4430: 75 65 73 2e 3c 62 72 3e 0d 0a 49 74 20 63 6f 75 ues.<br>..It cou
4440: 6c 64 20 62 65 20 6c 65 67 69 74 69 6d 61 74 65 ld be legitimate
4450: 6c 79 20 73 65 74 20 74 6f 20 3c 62 3e 4e 55 4c ly set to <b>NUL
4460: 4c 3c 2f 62 3e 20 69 66 20 61 6c 6c 20 4c 69 6e L</b> if all Lin
4470: 6b 73 20 61 72 65 20 61 6e 6f 6e 79 6d 6f 75 73 ks are anonymous
4480: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 31 .</li>..<li><i>1
4490: 3c 2f 69 3e 3a 20 61 20 62 6f 6f 6c 65 61 6e 20 </i>: a boolean
44a0: 66 6c 61 67 20 69 6e 74 65 6e 64 65 64 20 74 6f flag intended to
44b0: 20 73 70 65 63 69 66 79 20 69 66 20 74 68 65 20 specify if the
44c0: 4e 65 74 77 6f 72 6b 20 6d 75 73 74 20 73 75 70 Network must sup
44d0: 70 6f 72 74 20 74 68 65 20 3c 62 3e 41 2a 20 61 port the <b>A* a
44e0: 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 20 6f 72 20 lgorithm</b> or
44f0: 6e 6f 74 20 28 73 65 74 20 74 6f 20 3c 62 3e 54 not (set to <b>T
4500: 52 55 45 3c 2f 62 3e 20 62 79 20 64 65 66 61 75 RUE</b> by defau
4510: 6c 74 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c lt).</li>..<li><
4520: 69 3e 31 3c 2f 69 3e 3a 20 61 20 62 6f 6f 6c 65 i>1</i>: a boole
4530: 61 6e 20 66 6c 61 67 20 69 6e 74 65 6e 64 65 64 an flag intended
4540: 20 74 6f 20 73 70 65 63 69 66 79 20 69 66 20 61 to specify if a
4550: 6c 6c 20 4e 65 74 77 6f 72 6b 27 73 20 4c 69 6e ll Network's Lin
4560: 6b 73 20 61 72 65 20 61 73 73 75 6d 65 64 20 74 ks are assumed t
4570: 6f 20 62 65 20 3c 62 3e 62 69 64 69 72 65 63 74 o be <b>bidirect
4580: 69 6f 6e 61 6c 3c 2f 62 3e 20 6f 72 20 6e 6f 74 ional</b> or not
4590: 20 28 61 73 73 75 6d 65 64 20 74 6f 20 62 65 20 (assumed to be
45a0: 3c 62 3e 54 52 55 45 3c 2f 62 3e 20 62 79 20 64 <b>TRUE</b> by d
45b0: 65 66 61 75 6c 74 29 2e 3c 2f 6c 69 3e 20 0d 0a efault).</li> ..
45c0: 3c 2f 6f 6c 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 </ol>..<table bg
45d0: 63 6f 6c 6f 72 3d 22 23 63 30 66 66 63 30 22 20 color="#c0ffc0"
45e0: 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 cellspacing="10"
45f0: 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 cellpadding="6"
4600: 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 54 ><tr><td>..<h3>T
4610: 65 63 68 6e 69 63 61 6c 20 6e 6f 74 65 3c 2f 68 echnical note</h
4620: 33 3e 0d 0a 54 68 65 20 69 6e 74 65 72 6e 61 6c 3>..The internal
4630: 20 65 6e 63 6f 64 69 6e 67 20 61 64 6f 70 74 65 encoding adopte
4640: 64 20 62 79 20 74 68 65 20 3c 62 3e 42 69 6e 61 d by the <b>Bina
4650: 72 79 20 44 61 74 61 20 54 61 62 6c 65 3c 2f 62 ry Data Table</b
4660: 3e 20 69 73 20 75 6e 63 68 61 6e 67 65 64 20 61 > is unchanged a
4670: 6e 64 20 69 73 20 74 68 65 20 73 61 6d 65 20 66 nd is the same f
4680: 6f 72 20 62 6f 74 68 20 3c 62 3e 56 69 72 74 75 or both <b>Virtu
4690: 61 6c 4e 65 74 77 6f 6b 3c 2f 62 3e 20 61 6e 64 alNetwok</b> and
46a0: 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 74 69 <b>VirtualRouti
46b0: 6e 67 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 59 6f 75 ng</b>.<br>..You
46c0: 20 63 61 6e 20 73 61 66 65 6c 79 20 62 61 73 65 can safely base
46d0: 20 61 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 a <b>VirtualRou
46e0: 74 69 6e 67 20 54 61 62 6c 65 3c 2f 62 3e 20 6f ting Table</b> o
46f0: 6e 20 61 6e 79 20 65 78 69 73 74 69 6e 67 20 42 n any existing B
4700: 69 6e 61 72 79 20 44 61 74 61 0d 0a 54 61 62 6c inary Data..Tabl
4710: 65 20 63 72 65 61 74 65 64 20 62 79 20 74 68 65 e created by the
4720: 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 2d 6e <b>spatialite-n
4730: 65 74 77 6f 72 6b 3c 2f 62 3e 20 43 4c 49 20 74 etwork</b> CLI t
4740: 6f 6f 6c 2c 20 65 78 61 63 74 6c 79 20 61 73 20 ool, exactly as
4750: 79 6f 75 20 63 61 6e 20 62 61 73 65 20 61 20 3c you can base a <
4760: 62 3e 56 69 72 74 75 61 6c 4e 65 74 77 6f 72 6b b>VirtualNetwork
4770: 20 54 61 62 6c 65 3c 2f 62 3e 20 6f 6e 20 61 6e Table</b> on an
4780: 79 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 y Binary Data Ta
4790: 62 6c 65 20 63 72 65 61 74 65 64 20 62 79 20 74 ble created by t
47a0: 68 65 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 he <b>CreateRout
47b0: 69 6e 67 28 29 3c 2f 62 3e 20 53 51 4c 20 66 75 ing()</b> SQL fu
47c0: 6e 63 74 69 6f 6e 2e 0d 0a 3c 76 65 72 62 61 74 nction...<verbat
47d0: 69 6d 3e 0d 0a 43 52 45 41 54 45 20 56 49 52 54 im>..CREATE VIRT
47e0: 55 41 4c 20 54 41 42 4c 45 20 74 65 73 74 5f 6e UAL TABLE test_n
47f0: 65 74 77 6f 72 6b 20 55 53 49 4e 47 20 56 69 72 etwork USING Vir
4800: 74 75 61 6c 4e 65 74 77 6f 72 6b 28 27 73 6f 6d tualNetwork('som
4810: 65 5f 64 61 74 61 5f 74 61 62 6c 65 27 29 3b 0d e_data_table');.
4820: 0a 0d 0a 43 52 45 41 54 45 20 56 49 52 54 55 41 ...CREATE VIRTUA
4830: 4c 20 54 41 42 4c 45 20 74 65 73 74 5f 72 6f 75 L TABLE test_rou
4840: 74 69 6e 67 20 55 53 49 4e 47 20 56 69 72 74 75 ting USING Virtu
4850: 61 6c 52 6f 75 74 69 6e 67 28 27 73 6f 6d 65 5f alRouting('some_
4860: 64 61 74 61 5f 74 61 62 6c 65 27 29 3b 0d 0a 3c data_table');..<
4870: 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 49 6e 20 6f /verbatim>..In o
4880: 72 64 65 72 20 74 6f 20 6d 61 6e 75 61 6c 6c 79 rder to manually
4890: 20 63 72 65 61 74 65 20 79 6f 75 72 20 56 69 72 create your Vir
48a0: 74 75 61 6c 20 54 61 62 6c 65 73 20 79 6f 75 20 tual Tables you
48b0: 6a 75 73 74 20 68 61 76 65 20 74 6f 20 65 78 65 just have to exe
48c0: 63 75 74 65 20 61 6e 20 61 70 70 72 6f 70 72 69 cute an appropri
48d0: 61 74 65 20 3c 62 3e 43 52 45 41 54 45 20 56 49 ate <b>CREATE VI
48e0: 52 54 55 41 4c 20 54 41 42 4c 45 20 2e 2e 2e 20 RTUAL TABLE ...
48f0: 55 53 49 4e 47 20 56 69 72 74 75 61 6c 2e 2e 2e USING Virtual...
4900: 20 28 2e 2e 2e 29 3c 2f 62 3e 20 73 74 61 74 65 (...)</b> state
4910: 6d 65 6e 74 2e 0d 0a 3c 68 34 3e 57 61 72 6e 69 ment...<h4>Warni
4920: 6e 67 3c 2f 68 34 3e 0d 0a 49 6e 20 74 68 65 20 ng</h4>..In the
4930: 63 61 73 65 20 6f 66 20 3c 62 3e 53 70 61 74 69 case of <b>Spati
4940: 61 6c 20 4e 65 74 77 6f 72 6b 73 3c 2f 62 3e 20 al Networks</b>
4950: 62 61 73 65 64 20 6f 6e 20 61 6e 79 20 3c 62 3e based on any <b>
4960: 67 65 6f 67 72 61 70 68 69 63 3c 2f 62 3e 20 52 geographic</b> R
4970: 65 66 65 72 65 6e 63 65 20 53 79 73 74 65 6d 20 eference System
4980: 28 75 73 69 6e 67 20 3c 62 3e 6c 6f 6e 67 69 74 (using <b>longit
4990: 75 64 65 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e udes</b> and <b>
49a0: 6c 61 74 69 74 75 64 65 73 3c 2f 62 3e 29 20 74 latitudes</b>) t
49b0: 68 65 72 65 20 69 73 20 61 6e 20 69 6d 70 6f 72 here is an impor
49c0: 74 61 6e 74 20 64 69 66 66 65 72 65 6e 63 65 20 tant difference
49d0: 62 65 74 77 65 65 6e 20 42 69 6e 61 72 79 20 44 between Binary D
49e0: 61 74 61 20 54 61 62 6c 65 73 20 63 72 65 61 74 ata Tables creat
49f0: 65 64 20 62 79 20 74 68 65 20 3c 62 3e 73 70 61 ed by the <b>spa
4a00: 74 69 61 6c 69 74 65 5f 6e 65 74 77 6f 72 6b 3c tialite_network<
4a10: 2f 62 3e 20 47 55 49 20 74 6f 6f 6c 20 61 6e 64 /b> GUI tool and
4a20: 20 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 Binary Data Ta
4a30: 62 6c 65 73 20 63 72 65 61 74 65 64 20 62 79 20 bles created by
4a40: 74 68 65 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 the <b>CreateRou
4a50: 74 69 6e 67 28 29 3c 2f 62 3e 20 53 51 4c 20 66 ting()</b> SQL f
4a60: 75 6e 63 74 69 6f 6e 20 77 68 65 6e 20 3c 62 3e unction when <b>
4a70: 63 6f 73 74 73 3c 2f 62 3e 20 61 72 65 20 69 6d costs</b> are im
4a80: 70 6c 69 63 69 74 6c 79 20 62 61 73 65 64 20 6f plicitly based o
4a90: 6e 20 74 68 65 20 67 65 6f 6d 65 74 72 69 63 20 n the geometric
4aa0: 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 4c 69 length of the Li
4ab0: 6e 6b 27 73 20 4c 69 6e 65 73 74 72 69 6e 67 3a nk's Linestring:
4ac0: 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 20 ..<ul>..<li>the
4ad0: 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 5f 6e 65 <b>spatialite_ne
4ae0: 74 77 6f 72 6b 3c 2f 62 3e 20 43 4c 49 20 74 6f twork</b> CLI to
4af0: 6f 6c 20 28 61 6e 64 20 74 68 65 20 3c 62 3e 47 ol (and the <b>G
4b00: 55 49 20 77 69 7a 61 72 64 3c 2f 62 3e 20 69 6d UI wizard</b> im
4b10: 70 6c 65 6d 65 6e 74 65 64 20 62 79 20 70 72 65 plemented by pre
4b20: 76 69 6f 75 73 20 76 65 72 73 69 6f 6e 73 20 6f vious versions o
4b30: 66 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 5f f <b>spatialite_
4b40: 67 75 69 3c 2f 62 3e 29 20 63 6f 6d 70 75 74 65 gui</b>) compute
4b50: 20 74 68 65 20 4c 69 6e 65 73 74 72 69 6e 67 27 the Linestring'
4b60: 73 20 6c 65 6e 67 74 68 20 61 73 20 61 6e 20 3c s length as an <
4b70: 62 3e 61 6e 67 75 6c 61 72 20 64 69 73 74 61 6e b>angular distan
4b80: 63 65 3c 2f 62 3e 20 65 78 70 72 65 73 73 65 64 ce</b> expressed
4b90: 20 69 6e 20 3c 62 3e 64 65 67 72 65 65 73 3c 2f in <b>degrees</
4ba0: 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 b>.</li>..<li>th
4bb0: 65 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 e <b>CreateRouti
4bc0: 6e 67 28 29 3c 2f 62 3e 20 53 51 4c 20 66 75 6e ng()</b> SQL fun
4bd0: 63 74 69 6f 6e 20 63 6f 6d 70 75 74 65 73 20 74 ction computes t
4be0: 68 65 20 4c 69 6e 65 73 74 72 69 6e 67 27 73 20 he Linestring's
4bf0: 6c 65 6e 67 74 68 20 61 73 20 61 20 3c 62 3e 6c length as a <b>l
4c00: 69 6e 65 61 72 20 64 69 73 74 61 6e 63 65 3c 2f inear distance</
4c10: 62 3e 20 65 78 70 72 65 73 73 65 64 20 69 6e 20 b> expressed in
4c20: 3c 62 3e 6d 65 74 72 65 73 3c 2f 62 3e 20 62 79 <b>metres</b> by
4c30: 20 61 70 70 6c 79 69 6e 67 20 74 68 65 20 6d 6f applying the mo
4c40: 73 74 20 61 63 63 75 72 61 74 65 20 3c 62 3e 67 st accurate <b>g
4c50: 65 6f 64 65 73 69 63 20 66 6f 72 6d 75 6c 61 65 eodesic formulae
4c60: 3c 2f 62 3e 20 6f 6e 20 74 68 65 20 65 6c 6c 69 </b> on the elli
4c70: 70 73 6f 69 64 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 psoid.</li>..</u
4c80: 6c 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f l>..</td></tr></
4c90: 74 61 62 6c 65 3e 3c 62 72 3e 3c 62 72 3e 0d 0a table><br><br>..
4ca0: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 <verbatim>..SELE
4cb0: 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 6e 67 CT CreateRouting
4cc0: 28 27 62 79 63 61 72 5f 64 61 74 61 27 2c 20 27 ('bycar_data', '
4cd0: 62 79 63 61 72 27 2c 20 27 72 6f 61 64 73 5f 76 bycar', 'roads_v
4ce0: 77 27 2c 20 27 6e 6f 64 65 5f 66 72 6f 6d 27 2c w', 'node_from',
4cf0: 20 27 6e 6f 64 65 5f 74 6f 27 2c 20 27 67 65 6f 'node_to', 'geo
4d00: 6d 27 2c 20 27 63 6f 73 74 27 2c 20 27 74 6f 70 m', 'cost', 'top
4d10: 6f 6e 79 6d 27 2c 20 31 2c 20 31 2c 20 27 6f 6e onym', 1, 1, 'on
4d20: 65 77 61 79 5f 66 72 6f 6d 74 6f 27 2c 20 27 6f eway_fromto', 'o
4d30: 6e 65 77 61 79 5f 74 6f 66 72 6f 6d 27 2c 20 30 neway_tofrom', 0
4d40: 29 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d );..------------
4d50: 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 31 0d 0a 3c 2f 76 --------..1..</v
4d60: 65 72 62 61 74 69 6d 3e 0d 0a 41 66 74 65 72 20 erbatim>..After
4d70: 63 61 6c 6c 69 6e 67 20 79 65 74 20 61 6e 6f 74 calling yet anot
4d80: 68 65 72 20 74 69 6d 65 20 3c 62 3e 43 72 65 61 her time <b>Crea
4d90: 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 3e 20 teRouting()</b>
4da0: 6e 6f 77 20 74 68 65 20 44 61 74 61 62 61 73 65 now the Database
4db0: 20 63 6f 6e 74 61 69 6e 73 20 74 77 6f 20 66 75 contains two fu
4dc0: 72 74 68 65 72 20 54 61 62 6c 65 73 3a 20 3c 62 rther Tables: <b
4dd0: 3e 62 79 63 61 72 3c 2f 62 3e 20 61 6e 64 20 3c >bycar</b> and <
4de0: 62 3e 62 79 63 61 72 5f 64 61 74 61 3c 2f 62 3e b>bycar_data</b>
4df0: 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 74 69 6d 65 .<br>..This time
4e00: 20 79 6f 75 27 76 65 20 75 73 65 64 20 74 68 65 you've used the
4e10: 20 3c 69 3e 63 6f 6d 70 6c 65 74 65 20 66 6f 72 <i>complete for
4e20: 6d 3c 2f 69 3e 20 6f 66 20 43 72 65 61 74 65 52 m</i> of CreateR
4e30: 6f 75 74 69 6e 67 28 29 3b 20 6c 65 74 27 73 20 outing(); let's
4e40: 73 65 65 20 69 6e 20 6d 6f 72 65 20 64 65 70 74 see in more dept
4e50: 68 20 61 6c 6c 20 74 68 65 20 61 72 67 75 6d 65 h all the argume
4e60: 6e 74 73 20 61 6e 64 20 74 68 65 69 72 20 6d 65 nts and their me
4e70: 61 6e 69 6e 67 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c aning:..<ol>..<l
4e80: 69 3e 3c 69 3e 62 79 63 61 72 5f 64 61 74 61 3c i><i>bycar_data<
4e90: 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 6f /i>: same as abo
4ea0: 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 ve.</li>..<li><i
4eb0: 3e 62 79 63 61 72 3c 2f 69 3e 3a 20 73 61 6d 65 >bycar</i>: same
4ec0: 20 61 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d as above.</li>.
4ed0: 0a 3c 6c 69 3e 3c 69 3e 72 6f 61 64 73 5f 76 77 .<li><i>roads_vw
4ee0: 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 </i>: same as ab
4ef0: 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c ove.</li>..<li><
4f00: 69 3e 6e 6f 64 65 5f 66 72 6f 6d 3c 2f 69 3e 3a i>node_from</i>:
4f10: 20 73 61 6d 65 20 61 73 20 61 62 6f 76 65 2e 3c same as above.<
4f20: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 /li>..<li><i>nod
4f30: 65 5f 74 6f 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 e_to</i>: same a
4f40: 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c s above.</li>..<
4f50: 6c 69 3e 3c 69 3e 67 65 6f 6d 3c 2f 69 3e 3a 20 li><i>geom</i>:
4f60: 73 61 6d 65 20 61 73 20 61 62 6f 76 65 2e 3c 2f same as above.</
4f70: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 63 6f 73 74 li>..<li><i>cost
4f80: 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 </i>: same as ab
4f90: 6f 76 65 2e 0d 0a 49 6e 20 74 68 69 73 20 63 61 ove...In this ca
4fa0: 73 65 20 77 65 20 68 61 76 65 20 72 65 66 65 72 se we have refer
4fb0: 65 6e 63 65 64 20 61 20 63 6f 6c 75 6d 6e 20 70 enced a column p
4fc0: 72 65 6c 6f 61 64 65 64 20 77 69 74 68 20 76 61 reloaded with va
4fd0: 6c 75 65 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 lues correspondi
4fe0: 6e 67 20 74 6f 20 74 68 65 20 3c 62 3e 74 69 6d ng to the <b>tim
4ff0: 65 3c 2f 62 3e 20 6d 65 61 73 75 72 65 64 20 69 e</b> measured i
5000: 6e 20 3c 62 3e 73 65 63 6f 6e 64 73 3c 2f 62 3e n <b>seconds</b>
5010: 20 72 65 71 75 69 72 65 64 20 74 6f 20 74 72 61 required to tra
5020: 76 65 72 73 65 20 65 61 63 68 20 4c 69 6e 6b 2e verse each Link.
5030: 3c 2f 6c 69 3e 20 0d 0a 3c 6c 69 3e 3c 69 3e 74 </li> ..<li><i>t
5040: 6f 70 6f 6e 79 6d 3c 2f 69 3e 3a 20 73 61 6d 65 oponym</i>: same
5050: 20 61 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d as above.</li>.
5060: 0a 3c 6c 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 73 .<li><i>1</i>: s
5070: 61 6d 65 20 61 73 20 61 62 6f 76 65 20 28 3c 69 ame as above (<i
5080: 3e 41 2a 20 65 6e 61 62 6c 65 64 3c 2f 69 3e 29 >A* enabled</i>)
5090: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 31 .</li>..<li><i>1
50a0: 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 </i>: same as ab
50b0: 6f 76 65 20 28 3c 69 3e 62 69 64 69 72 65 63 74 ove (<i>bidirect
50c0: 69 6f 6e 61 6c 20 4c 69 6e 6b 73 3c 2f 69 3e 29 ional Links</i>)
50d0: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 6f .</li>..<li><i>o
50e0: 6e 65 77 61 79 5f 66 72 6f 6d 74 6f 3c 2f 69 3e neway_fromto</i>
50f0: 3a 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f : name of the co
5100: 6c 75 6d 6e 20 28 69 6e 20 74 68 65 20 61 62 6f lumn (in the abo
5110: 76 65 20 54 61 62 6c 65 20 6f 72 20 56 69 65 77 ve Table or View
5120: 29 20 65 78 70 65 63 74 65 64 20 74 6f 20 63 6f ) expected to co
5130: 6e 74 61 69 6e 20 62 6f 6f 6c 65 61 6e 20 66 6c ntain boolean fl
5140: 61 67 73 20 73 70 65 63 69 66 79 69 6e 67 20 69 ags specifying i
5150: 66 20 65 61 63 68 20 4c 69 6e 6b 20 63 61 6e 20 f each Link can
5160: 62 65 20 74 72 61 76 65 72 73 65 64 20 69 6e 20 be traversed in
5170: 74 68 65 20 3c 62 3e 66 72 6f 6d 2d 74 6f 3c 2f the <b>from-to</
5180: 62 3e 20 64 69 72 65 63 74 69 6f 6e 20 6f 72 20 b> direction or
5190: 6e 6f 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c not.</li>..<li><
51a0: 69 3e 6f 6e 65 77 61 79 5f 74 6f 66 72 6f 6d 3c i>oneway_tofrom<
51b0: 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 74 68 65 /i>: name of the
51c0: 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 68 65 20 column (in the
51d0: 61 62 6f 76 65 20 54 61 62 6c 65 20 6f 72 20 56 above Table or V
51e0: 69 65 77 29 20 65 78 70 65 63 74 65 64 20 74 6f iew) expected to
51f0: 20 63 6f 6e 74 61 69 6e 20 62 6f 6f 6c 65 61 6e contain boolean
5200: 20 66 6c 61 67 73 20 73 70 65 63 69 66 79 69 6e flags specifyin
5210: 67 20 69 66 20 65 61 63 68 20 4c 69 6e 6b 20 63 g if each Link c
5220: 61 6e 20 62 65 20 74 72 61 76 65 72 73 65 64 20 an be traversed
5230: 69 6e 20 74 68 65 20 3c 62 3e 74 6f 2d 66 72 6f in the <b>to-fro
5240: 6d 3c 2f 62 3e 20 64 69 72 65 63 74 69 6f 6e 20 m</b> direction
5250: 6f 72 20 6e 6f 74 2e 3c 62 72 3e 0d 0a 3c 75 3e or not.<br>..<u>
5260: 4e 6f 74 65 20 23 31 3c 2f 75 3e 3a 20 62 6f 74 Note #1</u>: bot
5270: 68 20 3c 62 3e 66 72 6f 6d 2d 74 6f 3c 2f 62 3e h <b>from-to</b>
5280: 20 61 6e 64 20 3c 62 3e 74 6f 2d 66 72 6f 6d 3c and <b>to-from<
5290: 2f 62 3e 20 63 6f 6c 75 6d 6e 20 6e 61 6d 65 73 /b> column names
52a0: 20 63 61 6e 20 62 65 20 6c 65 67 69 74 69 6d 61 can be legitima
52b0: 74 65 6c 79 20 73 65 74 20 61 73 20 3c 62 3e 4e tely set as <b>N
52c0: 55 4c 4c 3c 2f 62 3e 20 69 66 20 6e 6f 20 3c 62 ULL</b> if no <b
52d0: 3e 6f 6e 65 2d 77 61 79 3c 2f 62 3e 20 72 65 73 >one-way</b> res
52e0: 74 72 69 63 74 69 6f 6e 73 20 61 70 70 6c 79 20 trictions apply
52f0: 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 4e to the current N
5300: 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 3c 75 3e etwork.<br>..<u>
5310: 4e 6f 74 65 20 23 32 3c 2f 75 3e 3a 20 4e 65 74 Note #2</u>: Net
5320: 77 6f 72 6b 73 20 6f 66 20 74 68 65 20 3c 62 3e works of the <b>
5330: 75 6e 69 64 69 72 65 63 74 69 6f 6e 61 6c 3c 2f unidirectional</
5340: 62 3e 20 74 79 70 65 20 61 72 65 20 6e 65 76 65 b> type are neve
5350: 72 20 65 6e 61 62 6c 65 64 20 74 6f 20 72 65 66 r enabled to ref
5360: 65 72 65 6e 63 65 20 3c 62 3e 6f 6e 65 2d 77 61 erence <b>one-wa
5370: 79 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 20 28 74 y</b> columns (t
5380: 68 65 79 20 73 68 6f 75 6c 64 20 61 6c 77 61 79 hey should alway
5390: 73 20 62 65 20 73 65 74 20 74 6f 20 3c 62 3e 4e s be set to <b>N
53a0: 55 4c 4c 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a ULL</b>).</li>..
53b0: 3c 6c 69 3e 3c 69 3e 30 3c 2f 69 3e 3a 20 61 20 <li><i>0</i>: a
53c0: 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 20 69 6e 74 boolean flag int
53d0: 65 6e 64 69 6e 67 20 61 6e 20 3c 62 3e 6f 76 65 ending an <b>ove
53e0: 72 77 72 69 74 65 20 61 75 74 68 6f 72 69 7a 61 rwrite authoriza
53f0: 74 69 6f 6e 3c 2f 62 3e 2e 0d 0a 3c 75 6c 3e 0d tion</b>...<ul>.
5400: 0a 3c 6c 69 3e 49 66 20 73 65 74 20 74 6f 20 3c .<li>If set to <
5410: 62 3e 46 41 4c 53 45 3c 2f 62 3e 20 61 6e 20 65 b>FALSE</b> an e
5420: 78 63 65 70 74 69 6f 6e 20 77 69 6c 6c 20 62 65 xception will be
5430: 20 72 61 69 73 65 64 20 69 66 20 74 68 65 20 3c raised if the <
5440: 62 3e 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 b>Binary Data Ta
5450: 62 6c 65 3c 2f 62 3e 20 61 6e 64 2f 6f 72 20 74 ble</b> and/or t
5460: 68 65 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 he <b>VirtualRou
5470: 74 69 6e 67 20 54 61 62 6c 65 3c 2f 62 3e 20 64 ting Table</b> d
5480: 6f 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 2e o already exist.
5490: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 49 66 20 73 65 </li>..<li>If se
54a0: 74 20 74 6f 20 3c 62 3e 54 52 55 45 3c 2f 62 3e t to <b>TRUE</b>
54b0: 20 65 76 65 6e 74 75 61 6c 6c 79 20 65 78 69 73 eventually exis
54c0: 74 69 6e 67 20 54 61 62 6c 65 73 20 77 69 6c 6c ting Tables will
54d0: 20 62 65 20 70 72 65 76 65 6e 74 69 76 65 6c 79 be preventively
54e0: 20 64 72 6f 70 70 65 64 20 69 6d 6d 65 64 69 61 dropped immedia
54f0: 74 65 6c 79 20 62 65 66 6f 72 65 20 73 74 61 72 tely before star
5500: 74 69 6e 67 20 74 68 65 20 65 78 65 63 75 74 69 ting the executi
5510: 6f 6e 20 6f 66 20 3c 62 3e 43 72 65 61 74 65 52 on of <b>CreateR
5520: 6f 75 74 69 6e 67 28 29 3c 2f 62 3e 2e 3c 2f 6c outing()</b>.</l
5530: 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a i>..</ul></li>..
5540: 3c 2f 6f 6c 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 </ol>..<br>..<ta
5550: 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 ble bgcolor="#ff
5560: 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e ffc0" cellspacin
5570: 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 g="10" cellpaddi
5580: 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d ng="6"><tr><td>.
5590: 0a 3c 68 33 3e 48 69 67 68 6c 69 67 68 74 3a 20 .<h3>Highlight:
55a0: 77 68 65 72 65 20 79 6f 75 20 61 72 65 3c 2f 68 where you are</h
55b0: 33 3e 0d 0a 59 6f 75 27 76 65 20 6a 75 73 74 20 3>..You've just
55c0: 63 72 65 61 74 65 64 20 74 77 6f 20 56 69 72 74 created two Virt
55d0: 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 ualRouting Table
55e0: 73 20 62 61 73 65 64 20 6f 6e 20 64 69 66 66 65 s based on diffe
55f0: 72 65 6e 74 20 73 65 74 74 69 6e 67 73 3b 20 62 rent settings; b
5600: 6f 74 68 20 74 68 65 6d 20 61 72 65 20 70 65 72 oth them are per
5610: 66 65 63 74 6c 79 20 76 61 6c 69 64 20 61 6e 64 fectly valid and
5620: 20 72 65 61 73 6f 6e 61 62 6c 65 2c 20 62 75 74 reasonable, but
5630: 20 74 68 65 79 20 61 72 65 20 69 6e 74 65 6e 64 they are intend
5640: 65 64 20 66 6f 72 20 64 69 66 66 65 72 65 6e 74 ed for different
5650: 20 70 75 72 70 6f 73 65 73 3a 0d 0a 3c 75 6c 3e purposes:..<ul>
5660: 0d 0a 3c 6c 69 3e 3c 62 3e 62 79 66 6f 6f 74 3c ..<li><b>byfoot<
5670: 2f 62 3e 20 69 73 20 73 70 65 63 69 66 69 63 61 /b> is specifica
5680: 6c 6c 79 20 69 6e 74 65 6e 64 65 64 20 66 6f 72 lly intended for
5690: 20 3c 62 3e 70 65 64 65 73 74 72 69 61 6e 73 3c <b>pedestrians<
56a0: 2f 62 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e /b>:..<ul>..<li>
56b0: 61 6c 6c 20 4c 69 6e 6b 73 20 61 72 65 20 61 6c all Links are al
56c0: 77 61 79 73 20 61 73 73 75 6d 65 64 20 74 6f 20 ways assumed to
56d0: 62 65 20 61 63 63 65 73 73 69 62 6c 65 20 69 6e be accessible in
56e0: 20 3c 62 3e 62 6f 74 68 20 64 69 72 65 63 74 69 <b>both directi
56f0: 6f 6e 73 3c 2f 62 3e 3b 20 74 68 65 72 65 20 61 ons</b>; there a
5700: 72 65 20 6e 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 re no <b>one-way
5710: 73 3c 2f 62 3e 20 61 6e 64 20 6e 6f 20 3c 62 3e s</b> and no <b>
5720: 66 6f 72 62 69 64 64 65 6e 3c 2f 62 3e 20 4c 69 forbidden</b> Li
5730: 6e 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 nks.</li>..<li>t
5740: 68 65 20 3c 62 3e 63 6f 73 74 3c 2f 62 3e 20 6f he <b>cost</b> o
5750: 66 20 65 61 63 68 20 4c 69 6e 6b 20 69 73 20 64 f each Link is d
5760: 69 72 65 63 74 6c 79 20 72 65 70 72 65 73 65 6e irectly represen
5770: 74 65 64 20 62 79 20 69 74 73 20 67 65 6f 6d 65 ted by its geome
5780: 74 72 69 63 20 3c 62 3e 6c 65 6e 67 74 68 3c 2f tric <b>length</
5790: 62 3e 2c 20 77 68 69 63 68 20 69 73 20 63 6f 6e b>, which is con
57a0: 73 69 73 74 65 6e 74 20 77 69 74 68 20 74 68 65 sistent with the
57b0: 20 61 73 73 75 6d 70 74 69 6f 6e 20 6f 66 20 61 assumption of a
57c0: 6e 20 61 6c 6d 6f 73 74 20 63 6f 6e 73 74 61 6e n almost constan
57d0: 74 20 73 70 65 65 64 20 73 75 62 73 74 61 6e 74 t speed substant
57e0: 69 61 6c 6c 79 20 69 6d 6d 75 6e 65 20 66 72 6f ially immune fro
57f0: 6d 20 61 64 76 65 72 73 65 20 72 6f 61 64 20 63 m adverse road c
5800: 6f 6e 64 69 74 69 6f 6e 73 20 61 6e 64 20 74 72 onditions and tr
5810: 61 66 66 69 63 20 63 6f 6e 67 65 73 74 69 6f 6e affic congestion
5820: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c .</li>..</ul></l
5830: 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 62 79 63 61 72 i>..<li><b>bycar
5840: 3c 2f 62 3e 20 69 73 20 73 70 65 63 69 66 69 63 </b> is specific
5850: 61 6c 6c 79 20 69 6e 74 65 6e 64 65 64 20 66 6f ally intended fo
5860: 72 20 3c 62 3e 6d 6f 74 6f 72 20 76 65 68 69 63 r <b>motor vehic
5870: 6c 65 73 3c 2f 62 3e 3a 0d 0a 3c 75 6c 3e 0d 0a les</b>:..<ul>..
5880: 3c 6c 69 3e 6d 61 6e 79 20 4c 69 6e 6b 73 20 61 <li>many Links a
5890: 72 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 re expected to b
58a0: 65 20 61 63 63 65 73 73 69 62 6c 65 20 69 6e 20 e accessible in
58b0: 3c 62 3e 62 6f 74 68 20 64 69 72 65 63 74 69 6f <b>both directio
58c0: 6e 73 3c 2f 62 3e 20 62 75 74 20 6f 74 68 65 72 ns</b> but other
58d0: 73 20 63 6f 75 6c 64 20 65 61 73 69 6c 79 20 62 s could easily b
58e0: 65 20 73 75 62 6a 65 63 74 20 74 6f 20 3c 62 3e e subject to <b>
58f0: 6f 6e 65 2d 77 61 79 3c 2f 62 3e 20 72 65 73 74 one-way</b> rest
5900: 72 69 63 74 69 6f 6e 73 20 6f 72 20 65 76 65 6e rictions or even
5910: 20 62 65 20 63 6f 6d 70 6c 65 74 65 6c 79 20 3c be completely <
5920: 62 3e 66 6f 72 62 69 64 64 65 6e 3c 2f 62 3e 2e b>forbidden</b>.
5930: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 63 </li>..<li>the c
5940: 6f 73 74 20 6f 66 20 65 61 63 68 20 4c 69 6e 6b ost of each Link
5950: 20 69 73 20 65 78 70 72 65 73 73 65 64 20 61 73 is expressed as
5960: 20 61 6e 20 65 73 74 69 6d 61 74 65 64 20 3c 62 an estimated <b
5970: 3e 74 72 61 76 65 6c 20 74 69 6d 65 3c 2f 62 3e >travel time</b>
5980: 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 65 78 , because the ex
5990: 70 65 63 74 65 64 20 73 70 65 65 64 73 20 63 61 pected speeds ca
59a0: 6e 20 67 72 65 61 74 6c 79 20 76 61 72 79 20 61 n greatly vary a
59b0: 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 73 70 ccordingly to sp
59c0: 65 63 69 66 69 63 20 72 6f 61 64 20 63 6f 6e 64 ecific road cond
59d0: 69 74 69 6f 6e 73 2c 20 74 72 61 66 66 69 63 20 itions, traffic
59e0: 63 6f 6e 67 65 73 74 69 6f 6e 20 61 6e 64 20 6c congestion and l
59f0: 65 67 61 6c 20 72 65 67 75 6c 61 74 69 6f 6e 73 egal regulations
5a00: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c .</li>..</ul></l
5a10: 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d i>..</ul>..<br>.
5a20: 0a 3c 75 3e 43 6f 6e 63 6c 75 73 69 6f 6e 3c 2f .<u>Conclusion</
5a30: 75 3e 3a 20 61 20 73 69 6e 67 6c 65 20 56 69 72 u>: a single Vir
5a40: 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c tualRouting Tabl
5a50: 65 20 63 61 6e 27 74 20 62 65 20 61 62 6c 65 20 e can't be able
5a60: 74 6f 20 61 64 65 71 75 61 74 65 6c 79 20 73 75 to adequately su
5a70: 70 70 6f 72 74 20 73 75 70 70 6f 72 74 20 74 68 pport support th
5a80: 65 20 73 70 65 63 69 66 69 63 20 72 65 71 75 69 e specific requi
5a90: 72 65 6d 65 6e 74 73 20 61 6e 64 20 65 78 70 65 rements and expe
5aa0: 63 74 61 74 69 6f 6e 73 20 6f 66 20 64 69 66 66 ctations of diff
5ab0: 65 72 65 6e 74 20 75 73 65 72 73 2e 3c 62 72 3e erent users.<br>
5ac0: 0d 0a 44 65 66 69 6e 69 6e 67 20 6d 6f 72 65 20 ..Defining more
5ad0: 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 73 20 77 Routing Tables w
5ae0: 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 73 65 ith different se
5af0: 74 74 69 6e 67 73 20 66 6f 72 20 74 68 65 20 73 ttings for the s
5b00: 61 6d 65 20 4e 65 74 77 6f 72 6b 20 75 73 75 61 ame Network usua
5b10: 6c 6c 79 20 69 73 20 61 20 67 6f 6f 64 20 64 65 lly is a good de
5b20: 73 69 67 6e 20 63 68 6f 69 63 65 20 6c 65 61 64 sign choice lead
5b30: 69 6e 67 20 74 6f 20 6d 6f 72 65 20 72 65 61 6c ing to more real
5b40: 69 73 74 69 63 20 72 65 73 75 6c 74 73 2e 3c 62 istic results.<b
5b50: 72 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a r>..</td></tr>..
5b60: 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 </table>..<br><b
5b70: 72 3e 0d 0a 3c 68 33 3e 55 74 69 6c 69 74 79 20 r>..<h3>Utility
5b80: 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 61 75 74 function for aut
5b90: 6f 6d 61 74 69 63 61 6c 6c 79 20 73 65 74 74 69 omatically setti
5ba0: 6e 67 20 4e 6f 64 65 46 72 6f 6d 20 61 6e 64 20 ng NodeFrom and
5bb0: 4e 6f 64 65 54 6f 20 49 44 73 3c 2f 68 33 3e 0d NodeTo IDs</h3>.
5bc0: 0a 53 6f 6d 65 74 69 6d 65 73 20 69 74 20 63 6f .Sometimes it co
5bd0: 75 6c 64 20 65 76 65 6e 74 75 61 6c 6c 79 20 68 uld eventually h
5be0: 61 70 70 65 6e 20 74 6f 20 65 6e 63 6f 75 6e 74 appen to encount
5bf0: 65 72 20 73 6f 6d 65 20 3c 62 3e 53 70 61 74 69 er some <b>Spati
5c00: 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 72 al Network</b> r
5c10: 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 62 65 epresentation be
5c20: 69 6e 67 20 66 75 6c 6c 79 20 74 6f 70 6f 6c 6f ing fully topolo
5c30: 67 69 63 61 6c 6c 79 20 63 6f 6e 73 69 73 74 65 gically consiste
5c40: 6e 74 20 62 75 74 20 63 6f 6d 70 6c 65 74 65 6c nt but completel
5c50: 79 20 6c 61 63 6b 69 6e 67 20 61 6e 79 20 64 65 y lacking any de
5c60: 66 69 6e 69 74 69 6f 6e 20 61 62 6f 75 74 20 3c finition about <
5c70: 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 61 b>NodeFrom</b> a
5c80: 6e 64 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e nd <b>NodeTo</b>
5c90: 20 69 64 65 6e 74 69 66 69 65 72 73 2e 3c 62 72 identifiers.<br
5ca0: 3e 0d 0a 49 6e 20 74 68 69 73 20 73 70 65 63 69 >..In this speci
5cb0: 66 69 63 20 63 61 73 65 20 79 6f 75 20 63 61 6e fic case you can
5cc0: 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 72 65 successfully re
5cd0: 63 6f 76 65 72 20 61 20 70 65 72 66 65 63 74 6c cover a perfectl
5ce0: 79 20 76 61 6c 69 64 20 4e 65 74 77 6f 72 6b 20 y valid Network
5cf0: 62 79 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 3c by calling the <
5d00: 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 4e b>CreateRoutingN
5d10: 6f 64 65 73 28 29 3c 2f 62 3e 20 53 51 4c 20 66 odes()</b> SQL f
5d20: 75 6e 63 74 69 6f 6e 2e 0d 0a 3c 76 65 72 62 61 unction...<verba
5d30: 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 tim>..SELECT Cre
5d40: 61 74 65 52 6f 75 74 69 6e 67 4e 6f 64 65 73 28 ateRoutingNodes(
5d50: 4e 55 4c 4c 2c 20 27 74 61 62 6c 65 5f 6e 61 6d NULL, 'table_nam
5d60: 65 27 2c 20 27 67 65 6f 6d 27 2c 20 27 6e 6f 64 e', 'geom', 'nod
5d70: 65 5f 66 72 6f 6d 27 2c 20 27 6e 6f 64 65 5f 74 e_from', 'node_t
5d80: 6f 27 29 3b 0d 0a 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f o');..__________
5d90: 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 0d _______________.
5da0: 0a 31 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d .1..</verbatim>.
5db0: 0a 4c 65 74 27 73 20 65 78 61 6d 69 6e 65 20 61 .Let's examine a
5dc0: 6c 6c 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 ll arguments and
5dd0: 20 74 68 65 69 72 20 6d 65 61 6e 69 6e 67 3a 0d their meaning:.
5de0: 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 3c 69 3e 4e 55 .<ol>..<li><i>NU
5df0: 4c 4c 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 LL</i>: name of
5e00: 74 68 65 20 3c 62 3e 41 74 74 61 63 68 65 64 2d the <b>Attached-
5e10: 44 42 3c 2f 62 3e 20 63 6f 6e 74 61 69 6e 69 6e DB</b> containin
5e20: 67 20 74 68 65 20 53 70 61 74 69 61 6c 20 54 61 g the Spatial Ta
5e30: 62 6c 65 2e 3c 62 72 3e 0d 0a 49 74 20 63 61 6e ble.<br>..It can
5e40: 20 62 65 20 6c 65 67 69 74 69 6d 61 74 65 6c 79 be legitimately
5e50: 20 73 65 74 20 74 6f 20 3c 62 3e 4e 55 4c 4c 3c set to <b>NULL<
5e60: 2f 62 3e 2c 20 61 6e 64 20 69 6e 20 74 68 69 73 /b>, and in this
5e70: 20 63 61 73 65 20 74 68 65 20 3c 62 3e 4d 41 49 case the <b>MAI
5e80: 4e 3c 2f 62 3e 20 44 42 20 69 73 20 61 73 73 75 N</b> DB is assu
5e90: 6d 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c med.</li>..<li><
5ea0: 69 3e 74 61 62 6c 65 5f 6e 61 6d 65 3c 2f 69 3e i>table_name</i>
5eb0: 3a 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 53 70 : name of the Sp
5ec0: 61 74 69 61 6c 20 54 61 62 6c 65 2e 3c 2f 6c 69 atial Table.</li
5ed0: 3e 0d 0a 3c 6c 69 3e 3c 69 3e 67 65 6f 6d 3c 2f >..<li><i>geom</
5ee0: 6c 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 74 68 65 li>: name of the
5ef0: 20 63 6f 6c 75 6d 6e 20 28 28 69 6e 20 74 68 65 column ((in the
5f00: 20 61 62 6f 76 65 20 54 61 62 6c 65 29 20 63 6f above Table) co
5f10: 6e 74 61 69 6e 69 6e 67 20 3c 62 3e 4c 69 6e 65 ntaining <b>Line
5f20: 73 74 72 69 6e 67 73 3c 2f 62 3e 2e 3c 2f 6c 69 strings</b>.</li
5f30: 3e 0d 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 5f 66 >..<li><i>node_f
5f40: 72 6f 6d 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 rom</i>: name of
5f50: 20 74 68 65 20 63 6f 6c 75 6d 6e 20 74 6f 20 62 the column to b
5f60: 65 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 61 e added to the a
5f70: 62 6f 76 65 20 54 61 62 6c 65 20 61 6e 64 20 70 bove Table and p
5f80: 6f 70 75 6c 61 74 65 64 20 77 69 74 68 20 61 70 opulated with ap
5f90: 70 72 6f 70 72 69 61 74 65 20 3c 62 3e 4e 6f 64 propriate <b>Nod
5fa0: 65 46 72 6f 6d 3c 2f 62 3e 20 49 44 73 2e 3c 2f eFrom</b> IDs.</
5fb0: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 li>..<li><i>node
5fc0: 5f 74 6f 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 _to</i>: name of
5fd0: 20 74 68 65 20 63 6f 6c 75 6d 6e 20 74 6f 20 62 the column to b
5fe0: 65 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 61 e added to the a
5ff0: 62 6f 76 65 20 54 61 62 6c 65 20 61 6e 64 20 70 bove Table and p
6000: 6f 70 75 6c 61 74 65 64 20 77 69 74 68 20 61 70 opulated with ap
6010: 70 72 6f 70 72 69 61 74 65 20 3c 62 3e 4e 6f 64 propriate <b>Nod
6020: 65 54 6f 3c 2f 62 3e 20 49 44 73 2e 3c 62 72 3e eTo</b> IDs.<br>
6030: 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 62 ..<u>Note</u>: b
6040: 6f 74 68 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c oth <b>NodeFrom<
6050: 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f 64 65 54 /b> and <b>NodeT
6060: 6f 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 20 73 68 o</b> columns sh
6070: 6f 75 6c 64 20 6e 6f 74 20 62 65 20 61 6c 72 65 ould not be alre
6080: 61 64 79 20 64 65 66 69 6e 65 64 20 69 6e 20 74 ady defined in t
6090: 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 2e 3c he above Table.<
60a0: 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 62 3e /li>..</ol>..<b>
60b0: 43 72 65 61 74 65 52 6f 75 74 69 6e 67 4e 6f 64 CreateRoutingNod
60c0: 65 73 28 29 3c 2f 62 3e 20 77 69 6c 6c 20 72 65 es()</b> will re
60d0: 74 75 72 6e 20 3c 62 3e 31 3c 2f 62 3e 20 28 3c turn <b>1</b> (<
60e0: 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 54 52 55 i>aka</i> <b>TRU
60f0: 45 3c 2f 62 3e 29 20 6f 6e 20 73 75 63 63 65 73 E</b>) on succes
6100: 73 3b 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 20 s; an exception
6110: 77 69 6c 6c 20 62 65 20 72 61 69 73 65 64 20 6f will be raised o
6120: 6e 20 66 61 69 6c 75 72 65 2e 3c 62 72 3e 0d 0a n failure.<br>..
6130: 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 79 6f 75 <u>Note</u>: you
6140: 20 63 61 6e 20 63 61 6c 6c 20 3c 62 3e 43 72 65 can call <b>Cre
6150: 61 74 65 52 6f 75 74 69 6e 67 5f 47 65 74 4c 61 ateRouting_GetLa
6160: 73 74 45 72 72 6f 72 28 29 3c 2f 62 3e 20 73 6f stError()</b> so
6170: 20 74 6f 20 70 72 65 63 69 73 65 6c 79 20 69 64 to precisely id
6180: 65 6e 74 69 66 79 20 74 68 65 20 63 61 75 73 65 entify the cause
6190: 20 61 63 63 6f 75 6e 74 69 6e 67 20 66 6f 72 20 accounting for
61a0: 66 61 69 6c 75 72 65 2e 3c 62 72 3e 3c 62 72 3e failure.<br><br>
61b0: 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 <br>..<table bgc
61c0: 6f 6c 6f 72 3d 22 23 63 30 66 66 63 30 22 20 63 olor="#c0ffc0" c
61d0: 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 20 ellspacing="10"
61e0: 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e cellpadding="6">
61f0: 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 48 61 <tr><td>..<h3>Ha
6200: 6e 64 6c 69 6e 67 20 64 79 6e 61 6d 69 63 20 4e ndling dynamic N
6210: 65 74 77 6f 72 6b 73 3c 2f 68 33 3e 0d 0a 53 6f etworks</h3>..So
6220: 6d 65 74 69 6d 65 73 20 69 74 20 68 61 70 70 65 metimes it happe
6230: 6e 73 20 74 68 61 74 20 61 20 4e 65 74 77 6f 72 ns that a Networ
6240: 6b 20 63 6f 75 6c 64 20 62 65 20 73 75 62 6a 65 k could be subje
6250: 63 74 20 74 6f 20 72 61 74 68 65 72 20 66 72 65 ct to rather fre
6260: 71 75 65 6e 74 20 63 68 61 6e 67 65 73 3a 20 73 quent changes: s
6270: 6f 6d 65 20 6e 65 77 20 4c 69 6e 6b 73 20 72 65 ome new Links re
6280: 71 75 69 72 65 20 74 6f 20 62 65 20 61 64 64 65 quire to be adde
6290: 64 2c 20 6f 62 73 6f 6c 65 74 65 20 4c 69 6e 6b d, obsolete Link
62a0: 73 20 72 65 71 75 69 72 65 20 74 6f 20 62 65 20 s require to be
62b0: 72 65 6d 6f 76 65 64 2c 20 6f 74 68 65 72 20 4c removed, other L
62c0: 69 6e 6b 73 20 6d 61 79 20 61 73 73 75 6d 65 20 inks may assume
62d0: 61 20 64 69 66 66 65 72 65 6e 74 20 43 6f 73 74 a different Cost
62e0: 2c 20 6f 6e 65 2d 77 61 79 73 20 63 6f 75 6c 64 , one-ways could
62f0: 20 62 65 20 72 65 76 65 72 73 65 64 2c 20 74 68 be reversed, th
6300: 65 20 64 69 73 63 69 70 6c 69 6e 65 20 6f 66 20 e discipline of
6310: 70 65 64 65 73 74 72 69 61 6e 20 61 72 65 61 73 pedestrian areas
6320: 20 63 6f 75 6c 64 20 62 65 20 6d 6f 64 69 66 69 could be modifi
6330: 65 64 20 61 6e 64 20 73 6f 20 6f 6e 2e 3c 62 72 ed and so on.<br
6340: 3e 0d 0a 41 20 56 69 72 74 75 61 6c 52 6f 75 74 >..A VirtualRout
6350: 69 6e 67 20 54 61 62 6c 65 20 69 73 20 61 6c 77 ing Table is alw
6360: 61 79 73 20 62 61 73 65 64 20 6f 6e 20 61 20 63 ays based on a c
6370: 6f 6d 70 61 6e 69 6f 6e 20 42 69 6e 61 72 79 20 ompanion Binary
6380: 44 61 74 61 20 54 61 62 6c 65 2c 20 74 68 61 74 Data Table, that
6390: 20 69 73 20 69 6e 74 72 69 6e 73 69 63 61 6c 6c is intrinsicall
63a0: 79 20 3c 62 3e 73 74 61 74 69 63 3c 2f 62 3e 2c y <b>static</b>,
63b0: 20 61 6e 64 20 63 6f 6e 73 65 71 75 65 6e 74 6c and consequentl
63c0: 79 20 79 6f 75 20 61 72 65 20 72 65 71 75 69 72 y you are requir
63d0: 65 64 20 74 6f 20 72 65 2d 63 72 65 61 74 65 20 ed to re-create
63e0: 62 6f 74 68 20 74 68 65 6d 20 66 72 6f 6d 20 74 both them from t
63f0: 69 6d 65 20 74 6f 20 74 69 6d 65 20 69 6e 20 6f ime to time in o
6400: 72 64 65 72 20 74 6f 20 73 75 70 70 6f 72 74 20 rder to support
6410: 61 6c 6c 20 72 65 63 65 6e 74 20 63 68 61 6e 67 all recent chang
6420: 65 73 20 61 66 66 65 63 74 69 6e 67 20 74 68 65 es affecting the
6430: 20 75 6e 64 65 72 6c 61 79 69 6e 67 20 4e 65 74 underlaying Net
6440: 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 54 68 65 20 6f work.<br>..The o
6450: 70 74 69 6d 61 6c 20 66 72 65 71 75 65 6e 63 79 ptimal frequency
6460: 20 66 6f 72 20 63 79 63 6c 69 63 61 6c 6c 79 20 for cyclically
6470: 72 65 66 72 65 73 68 69 6e 67 20 74 68 65 20 52 refreshing the R
6480: 6f 75 74 69 6e 67 20 54 61 62 6c 65 73 20 73 74 outing Tables st
6490: 72 69 63 74 6c 79 20 64 65 70 65 6e 64 73 20 6f rictly depends o
64a0: 6e 20 73 70 65 63 69 66 69 63 20 72 65 71 75 69 n specific requi
64b0: 72 65 6d 65 6e 74 73 2c 20 62 75 74 20 74 68 65 rements, but the
64c0: 20 74 77 6f 20 6f 76 65 72 61 6c 6c 20 61 70 70 two overall app
64d0: 72 6f 61 63 68 65 73 20 61 72 65 20 63 6f 6d 6d roaches are comm
64e0: 6f 6e 6c 79 20 61 64 6f 70 74 65 64 3a 0d 0a 3c only adopted:..<
64f0: 6f 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 6c 6f 77 20 ol>..<li><b>low
6500: 66 72 65 71 75 65 6e 63 79 20 72 65 66 72 65 73 frequency refres
6510: 68 3c 2f 62 3e 3a 20 62 65 73 74 20 66 69 74 20 h</b>: best fit
6520: 66 6f 72 20 73 6c 6f 77 6c 79 20 65 76 6f 6c 76 for slowly evolv
6530: 69 6e 67 20 4e 65 74 77 6f 72 6b 73 2e 3c 62 72 ing Networks.<br
6540: 3e 0d 0a 49 6e 20 74 68 69 73 20 63 61 73 65 20 >..In this case
6550: 72 65 2d 63 72 65 61 74 69 6e 67 20 74 68 65 20 re-creating the
6560: 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 73 20 6f Network Tables o
6570: 6e 63 65 20 61 20 6d 6f 6e 74 68 20 2f 20 77 65 nce a month / we
6580: 65 6b 20 2f 20 64 61 79 20 63 6f 75 6c 64 20 62 ek / day could b
6590: 65 20 72 65 61 73 6f 6e 61 62 6c 79 20 65 6e 6f e reasonably eno
65a0: 75 67 68 2e 0d 0a 52 65 63 72 65 61 74 69 6e 67 ugh...Recreating
65b0: 20 74 68 65 20 54 61 62 6c 65 73 20 66 72 6f 6d the Tables from
65c0: 20 73 63 72 61 74 63 68 20 75 73 75 61 6c 6c 79 scratch usually
65d0: 20 72 65 71 75 69 72 65 73 20 73 65 76 65 72 61 requires severa
65e0: 6c 20 73 65 63 6f 6e 64 73 20 28 6f 72 20 65 76 l seconds (or ev
65f0: 65 6e 20 6c 65 73 73 2c 20 64 65 70 65 6e 64 69 en less, dependi
6600: 6e 67 20 6f 6e 20 74 68 65 20 6e 75 6d 62 65 72 ng on the number
6610: 20 6f 66 20 4c 69 6e 6b 73 29 2e 3c 62 72 3e 0d of Links).<br>.
6620: 0a 54 68 65 20 72 65 66 72 65 73 68 20 61 63 74 .The refresh act
6630: 69 76 69 74 69 65 73 20 63 6f 75 6c 64 20 62 65 ivities could be
6640: 20 6f 70 70 6f 72 74 75 6e 65 6c 79 20 70 6c 61 opportunely pla
6650: 6e 6e 65 64 20 61 74 20 6c 6f 77 20 74 72 61 66 nned at low traf
6660: 66 69 63 20 68 6f 75 72 73 20 28 65 2e 67 2e 20 fic hours (e.g.
6670: 64 75 72 69 6e 67 20 74 68 65 20 6e 69 67 68 74 during the night
6680: 29 2c 20 61 6e 64 20 3c 62 3e 43 72 65 61 74 65 ), and <b>Create
6690: 52 6f 75 74 69 6e 67 28 29 3c 2f 62 3e 20 63 6f Routing()</b> co
66a0: 75 6c 64 20 62 65 20 75 73 65 66 75 6c 6c 79 20 uld be usefully
66b0: 63 61 6c 6c 65 64 20 62 79 20 65 6e 61 62 6c 69 called by enabli
66c0: 6e 67 20 74 68 65 20 3c 62 3e 6f 76 65 72 77 72 ng the <b>overwr
66d0: 69 74 65 3c 2f 62 3e 20 6f 70 74 69 6f 6e 2e 3c ite</b> option.<
66e0: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 6d 65 64 /li>..<li><b>med
66f0: 69 75 6d 2d 68 69 67 68 20 66 72 65 71 75 65 6e ium-high frequen
6700: 63 79 20 72 65 66 72 65 73 68 3c 2f 62 3e 3a 20 cy refresh</b>:
6710: 62 65 73 74 20 66 69 74 20 66 6f 72 20 71 75 69 best fit for qui
6720: 63 6b 6c 79 20 65 76 6f 6c 76 69 6e 67 20 4e 65 ckly evolving Ne
6730: 74 77 6f 72 6b 73 2e 3c 62 72 3e 0d 0a 52 65 2d tworks.<br>..Re-
6740: 63 72 65 61 74 69 6e 67 20 74 68 65 20 4e 65 74 creating the Net
6750: 77 6f 72 6b 20 54 61 62 6c 65 73 20 6f 6e 63 65 work Tables once
6760: 20 70 65 72 20 68 6f 75 72 20 28 6f 72 20 65 76 per hour (or ev
6770: 65 6e 20 6d 6f 72 65 20 66 72 65 71 75 65 6e 74 en more frequent
6780: 6c 79 29 20 63 6f 75 6c 64 20 62 65 20 73 74 72 ly) could be str
6790: 69 63 74 6c 79 20 72 65 71 75 69 72 65 64 2c 20 ictly required,
67a0: 61 6e 64 20 66 72 65 71 75 65 6e 74 20 3c 62 3e and frequent <b>
67b0: 6f 75 74 20 6f 66 20 73 65 72 76 69 63 65 3c 2f out of service</
67c0: 62 3e 20 70 65 72 69 6f 64 73 20 77 68 69 6c 65 b> periods while
67d0: 20 77 61 69 74 69 6e 67 20 66 6f 72 20 74 68 65 waiting for the
67e0: 20 72 65 66 72 65 73 68 20 70 72 6f 63 65 73 73 refresh process
67f0: 20 74 6f 20 63 6f 6d 70 6c 65 74 65 20 63 6f 75 to complete cou
6800: 6c 64 20 65 61 73 69 6c 79 20 62 65 20 75 6e 61 ld easily be una
6810: 63 63 65 70 74 61 62 6c 65 2e 3c 62 72 3e 0d 0a cceptable.<br>..
6820: 49 6e 20 74 68 69 73 20 63 61 73 65 20 79 6f 75 In this case you
6830: 20 63 6f 75 6c 64 20 75 73 65 66 75 6c 6c 79 20 could usefully
6840: 61 64 6f 70 74 20 61 20 3c 62 3e 6d 75 6c 74 69 adopt a <b>multi
6850: 2d 74 68 72 65 61 64 65 64 20 73 74 72 61 74 65 -threaded strate
6860: 67 79 3c 2f 62 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c gy</b>:..<ul>..<
6870: 6c 69 3e 3c 62 3e 74 68 72 65 61 64 20 23 31 3c li><b>thread #1<
6880: 2f 62 3e 20 28 3c 69 3e 74 68 65 20 72 65 61 64 /b> (<i>the read
6890: 65 72 3c 2f 69 3e 29 3a 20 74 68 69 73 20 66 69 er</i>): this fi
68a0: 72 73 74 20 74 68 72 65 61 64 20 69 73 20 69 6e rst thread is in
68b0: 74 65 6e 64 65 64 20 74 6f 20 73 65 72 76 69 63 tended to servic
68c0: 65 20 61 6e 79 20 69 6e 63 6f 6d 69 6e 67 20 52 e any incoming R
68d0: 6f 75 74 69 6e 67 20 72 65 71 75 65 73 74 2e 20 outing request.
68e0: 49 74 20 77 69 6c 6c 20 62 65 20 61 6c 77 61 79 It will be alway
68f0: 73 20 61 63 74 69 76 65 2c 20 61 6e 64 20 77 69 s active, and wi
6900: 6c 6c 20 74 61 72 67 65 74 20 61 20 77 65 6c 6c ll target a well
6910: 20 6b 6e 6f 77 6e 20 56 69 72 74 75 61 6c 52 6f known VirtualRo
6920: 75 74 69 6e 67 20 54 61 62 6c 65 20 28 65 2e 67 uting Table (e.g
6930: 2e 20 3c 62 3e 6d 79 5f 72 6f 75 74 69 6e 67 3c . <b>my_routing<
6940: 2f 62 3e 20 62 61 73 65 64 20 6f 6e 20 3c 62 3e /b> based on <b>
6950: 6d 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 3c my_routing_data<
6960: 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e /b>).</li>..<li>
6970: 3c 62 3e 74 68 72 65 61 64 20 23 32 3c 2f 62 3e <b>thread #2</b>
6980: 20 28 3c 69 3e 74 68 65 20 77 72 69 74 65 72 3c (<i>the writer<
6990: 2f 69 3e 29 3a 20 74 68 69 73 20 73 65 63 6f 6e /i>): this secon
69a0: 64 20 74 68 72 65 61 64 20 69 73 20 6a 75 73 74 d thread is just
69b0: 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 72 65 2d intended to re-
69c0: 63 72 65 61 74 65 20 62 6f 74 68 20 4e 65 74 77 create both Netw
69d0: 6f 72 6b 20 54 61 62 6c 65 73 20 61 74 20 70 72 ork Tables at pr
69e0: 65 64 65 66 69 6e 65 64 20 69 6e 74 65 72 76 61 edefined interva
69f0: 6c 73 2c 20 61 6e 64 20 69 74 20 77 69 6c 6c 20 ls, and it will
6a00: 73 6c 65 65 70 20 62 65 74 77 65 65 6e 20 61 6e sleep between an
6a10: 20 69 6e 74 65 72 76 61 6c 20 61 6e 64 20 74 68 interval and th
6a20: 65 20 6f 74 68 65 72 2e 3c 62 72 3e 0d 0a 57 68 e other.<br>..Wh
6a30: 65 6e 20 74 68 69 73 20 74 68 72 65 61 64 20 61 en this thread a
6a40: 77 61 6b 65 6e 73 20 77 69 6c 6c 20 72 65 2d 63 wakens will re-c
6a50: 72 65 61 74 65 20 62 6f 74 68 20 4e 65 74 77 6f reate both Netwo
6a60: 72 6b 20 54 61 62 6c 65 73 20 62 79 20 75 73 69 rk Tables by usi
6a70: 6e 67 20 64 69 66 66 65 72 65 6e 74 20 6e 61 6d ng different nam
6a80: 65 73 2c 20 61 6e 64 20 77 69 6c 6c 20 6f 76 65 es, and will ove
6a90: 72 77 72 69 74 65 20 74 68 65 20 73 74 61 6e 64 rwrite the stand
6aa0: 61 72 64 20 6f 6e 65 73 20 6a 75 73 74 20 61 74 ard ones just at
6ab0: 20 74 68 65 20 76 65 72 79 20 65 6e 64 20 6f 66 the very end of
6ac0: 20 74 68 65 20 70 72 6f 63 65 73 73 20 28 61 63 the process (ac
6ad0: 74 69 76 61 74 69 6e 67 20 61 20 73 65 6d 61 70 tivating a semap
6ae0: 68 6f 72 65 20 64 75 72 69 6e 67 20 74 68 69 73 hore during this
6af0: 20 73 68 6f 72 74 2d 74 69 6d 65 64 20 6c 61 73 short-timed las
6b00: 74 20 73 74 65 70 20 69 73 20 68 69 67 68 6c 79 t step is highly
6b10: 20 72 65 63 6f 6d 6d 65 6e 64 65 64 29 2e 3c 62 recommended).<b
6b20: 72 3e 0d 0a 53 6f 6d 65 74 68 69 6e 67 20 6c 69 r>..Something li
6b30: 6b 65 20 74 68 69 73 20 70 73 65 75 64 6f 2d 63 ke this pseudo-c
6b40: 6f 64 65 20 65 78 65 6d 70 6c 69 66 69 65 73 3a ode exemplifies:
6b50: 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 ..<verbatim>..SE
6b60: 4c 45 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 LECT CreateRouti
6b70: 6e 67 28 27 6e 65 77 5f 6d 79 5f 72 6f 75 74 69 ng('new_my_routi
6b80: 6e 67 5f 64 61 74 61 27 2c 20 27 6e 65 77 5f 6d ng_data', 'new_m
6b90: 79 5f 72 6f 75 74 69 6e 67 27 2c 20 2e 2e 2e 29 y_routing', ...)
6ba0: 3b 0d 0a 0d 0a 2d 2d 3e 20 73 74 61 72 74 20 74 ;....--> start t
6bb0: 68 65 20 73 65 6d 61 70 68 6f 72 65 20 73 6f 20 he semaphore so
6bc0: 74 6f 20 6c 6f 63 6b 20 74 68 65 20 6f 74 68 65 to lock the othe
6bd0: 72 20 74 68 72 65 61 64 0d 0a 0d 0a 42 45 47 49 r thread....BEGI
6be0: 4e 3b 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6d N;..DROP TABLE m
6bf0: 79 5f 72 6f 75 74 69 6e 67 3b 0d 0a 44 52 4f 50 y_routing;..DROP
6c00: 20 54 41 42 4c 45 20 6d 79 5f 72 6f 75 74 69 6e TABLE my_routin
6c10: 67 5f 64 61 74 61 3b 0d 0a 53 45 4c 45 43 54 20 g_data;..SELECT
6c20: 43 6c 6f 6e 65 54 61 62 6c 65 28 27 4d 41 49 4e CloneTable('MAIN
6c30: 27 2c 20 27 6e 65 77 5f 6d 79 5f 72 6f 75 74 69 ', 'new_my_routi
6c40: 6e 67 5f 64 61 74 61 27 2c 20 27 6d 79 5f 72 6f ng_data', 'my_ro
6c50: 75 74 69 6e 67 5f 64 61 74 61 27 2c 20 30 29 3b uting_data', 0);
6c60: 0d 0a 43 52 45 41 54 45 20 56 49 52 54 55 41 4c ..CREATE VIRTUAL
6c70: 20 54 41 42 4c 45 20 6d 79 5f 72 6f 75 74 69 6e TABLE my_routin
6c80: 67 20 55 53 49 4e 47 20 56 69 72 74 75 61 6c 52 g USING VirtualR
6c90: 6f 75 74 69 6e 67 28 27 6d 79 5f 72 6f 75 74 69 outing('my_routi
6ca0: 6e 67 5f 64 61 74 61 27 29 3b 0d 0a 44 52 4f 50 ng_data');..DROP
6cb0: 20 54 41 42 4c 45 20 6e 65 77 5f 6d 79 5f 72 6f TABLE new_my_ro
6cc0: 75 74 69 6e 67 3b 0d 0a 44 52 4f 50 20 54 41 42 uting;..DROP TAB
6cd0: 4c 45 20 6e 65 77 5f 6d 79 5f 72 6f 75 74 69 6e LE new_my_routin
6ce0: 67 5f 64 61 74 61 3b 0d 0a 43 4f 4d 4d 49 54 3b g_data;..COMMIT;
6cf0: 0d 0a 0d 0a 2d 2d 3e 20 72 65 6d 6f 76 65 20 74 ....--> remove t
6d00: 68 65 20 73 65 6d 61 70 68 6f 72 65 0d 0a 3c 2f he semaphore..</
6d10: 76 65 72 62 61 74 69 6d 3e 0d 0a 3c 75 3e 4e 6f verbatim>..<u>No
6d20: 74 65 3c 2f 75 3e 3a 20 73 74 72 69 63 74 6c 79 te</u>: strictly
6d30: 20 72 65 73 70 65 63 74 69 6e 67 20 74 68 65 20 respecting the
6d40: 61 62 6f 76 65 20 73 65 71 75 65 6e 63 65 20 6f above sequence o
6d50: 66 20 53 51 4c 20 6f 70 65 72 61 74 69 6f 6e 73 f SQL operations
6d60: 20 69 73 20 61 62 73 6f 6c 75 74 65 6c 79 20 72 is absolutely r
6d70: 65 71 75 69 72 65 64 2e 3c 2f 6c 69 3e 20 0d 0a equired.</li> ..
6d80: 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c </ul></li>..</ol
6d90: 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c >..</td></tr>..<
6da0: 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c /table>..<br>..<
6db0: 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 table bgcolor="#
6dc0: 66 66 62 30 36 30 22 20 63 65 6c 6c 73 70 61 63 ffb060" cellspac
6dd0: 69 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 ing="10" cellpad
6de0: 64 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 ding="6"><tr><td
6df0: 3e 0d 0a 3c 68 33 3e 57 61 72 6e 69 6e 67 3a 20 >..<h3>Warning:
6e00: 68 6f 77 20 74 6f 20 63 6f 72 72 65 63 74 6c 79 how to correctly
6e10: 20 64 72 6f 70 20 4e 65 74 77 6f 72 6b 20 54 61 drop Network Ta
6e20: 62 6c 65 73 3c 2f 68 33 3e 0d 0a 57 68 65 6e 20 bles</h3>..When
6e30: 64 72 6f 70 70 69 6e 67 20 61 20 56 69 72 74 75 dropping a Virtu
6e40: 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 alRouting Table
6e50: 61 6e 64 20 69 74 73 20 63 6f 6d 70 61 6e 69 6f and its companio
6e60: 6e 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 n Binary Data Ta
6e70: 62 6c 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 ble following th
6e80: 65 20 63 6f 72 72 65 63 74 20 73 65 71 75 65 6e e correct sequen
6e90: 63 65 20 6f 66 20 53 51 4c 20 63 6f 6d 6d 61 6e ce of SQL comman
6ea0: 64 73 20 69 73 20 70 61 72 61 6d 6f 75 6e 74 2e ds is paramount.
6eb0: 3c 62 72 3e 0d 0a 46 61 69 6c 69 6e 67 20 74 6f <br>..Failing to
6ec0: 20 73 74 72 69 63 74 6c 79 20 72 65 73 70 65 63 strictly respec
6ed0: 74 20 74 68 65 20 65 78 70 65 63 74 65 64 20 73 t the expected s
6ee0: 65 71 75 65 6e 63 65 20 77 69 6c 6c 20 73 75 72 equence will sur
6ef0: 65 6c 79 20 63 61 75 73 65 20 79 6f 75 20 73 65 ely cause you se
6f00: 76 65 72 61 6c 20 74 72 6f 75 62 6c 65 73 20 61 veral troubles a
6f10: 6e 64 20 73 65 76 65 72 65 20 68 65 61 64 61 63 nd severe headac
6f20: 68 65 73 2c 20 61 6e 64 20 77 69 6c 6c 20 70 6f hes, and will po
6f30: 73 73 69 62 6c 79 20 6c 65 61 64 20 74 6f 20 61 ssibly lead to a
6f40: 6e 20 69 72 72 65 6d 65 64 69 61 62 6c 79 20 63 n irremediably c
6f50: 6f 72 72 75 70 74 65 64 20 64 61 74 61 62 61 73 orrupted databas
6f60: 65 2e 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 79 6f e...<ol>..<li>yo
6f70: 75 20 61 72 65 20 61 6c 77 61 79 73 20 65 78 70 u are always exp
6f80: 65 63 74 65 64 20 74 6f 20 44 52 4f 50 20 66 69 ected to DROP fi
6f90: 72 73 74 20 74 68 65 20 56 69 72 74 75 61 6c 52 rst the VirtualR
6fa0: 6f 75 74 69 6e 67 20 54 61 62 6c 65 2e 3c 2f 6c outing Table.</l
6fb0: 69 3e 0d 0a 3c 6c 69 3e 79 6f 75 20 63 61 6e 20 i>..<li>you can
6fc0: 73 61 66 65 6c 79 20 44 52 4f 50 20 74 68 65 20 safely DROP the
6fd0: 63 6f 6d 70 61 6e 69 6f 6e 20 42 69 6e 61 72 79 companion Binary
6fe0: 20 44 61 74 61 20 54 61 62 6c 65 20 6f 6e 6c 79 Data Table only
6ff0: 20 6f 6e 63 65 20 69 74 27 73 20 6e 6f 20 6c 6f once it's no lo
7000: 6e 67 65 72 20 72 65 66 65 72 65 6e 63 65 64 20 nger referenced
7010: 62 79 20 74 68 65 20 56 69 72 74 75 61 6c 52 6f by the VirtualRo
7020: 75 74 69 6e 67 20 54 61 62 6c 65 2e 3c 2f 6c 69 uting Table.</li
7030: 3e 0d 0a 3c 6c 69 3e 62 79 20 66 6f 6c 6c 6f 77 >..<li>by follow
7040: 69 6e 67 20 74 68 65 20 72 65 76 65 72 73 65 20 ing the reverse
7050: 73 65 71 75 65 6e 63 65 20 79 6f 75 27 6c 6c 20 sequence you'll
7060: 64 69 72 65 63 74 6c 79 20 63 72 65 61 74 65 20 directly create
7070: 61 6e 20 3c 62 3e 6f 72 70 68 61 6e 3c 2f 62 3e an <b>orphan</b>
7080: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
7090: 54 61 62 6c 65 20 74 68 61 74 20 63 61 6e 6e 6f Table that canno
70a0: 74 20 62 65 20 61 63 63 65 73 73 65 64 20 61 6e t be accessed an
70b0: 79 20 6c 6f 6e 67 65 72 2c 20 61 6e 64 20 74 68 y longer, and th
70c0: 61 74 20 77 69 6c 6c 20 63 6f 6e 73 65 71 75 65 at will conseque
70d0: 6e 74 6c 79 20 72 65 66 75 73 65 20 74 6f 20 62 ntly refuse to b
70e0: 65 20 64 72 6f 70 70 65 64 2e 3c 62 72 3e 0d 0a e dropped.<br>..
70f0: 42 65 20 77 61 72 6e 65 64 20 21 21 3c 2f 6c 69 Be warned !!</li
7100: 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 2f 74 64 3e 3c >..</ol>..</td><
7110: 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a /tr>..</table>..
7120: 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 3c 62 <br><br>..<hr><b
7130: 72 3e 0d 0a 3c 68 31 3e 3c 61 20 6e 61 6d 65 3d r>..<h1><a name=
7140: 22 66 72 6f 6d 5f 74 6f 22 3e 34 20 2d 20 53 6f "from_to">4 - So
7150: 6c 76 69 6e 67 20 63 6c 61 73 73 69 63 20 53 68 lving classic Sh
7160: 6f 72 74 65 73 74 20 50 61 74 68 20 70 72 6f 62 ortest Path prob
7170: 6c 65 6d 73 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a 54 lems</a></h1>..T
7180: 68 65 20 6d 6f 73 74 20 63 6c 61 73 73 69 63 20 he most classic
7190: 53 68 6f 72 74 65 73 74 20 50 61 74 68 20 70 72 Shortest Path pr
71a0: 6f 62 6c 65 6d 20 72 65 71 75 69 72 65 73 20 74 oblem requires t
71b0: 6f 20 69 64 65 6e 74 69 66 79 20 74 68 65 20 6f o identify the o
71c0: 70 74 69 6d 61 6c 20 63 6f 6e 6e 65 63 74 69 6f ptimal connectio
71d0: 6e 20 62 65 74 77 65 65 6e 20 61 6e 20 3c 62 3e n between an <b>
71e0: 4f 72 69 67 69 6e 20 4e 6f 64 65 3c 2f 62 3e 20 Origin Node</b>
71f0: 61 6e 64 20 61 20 3c 62 3e 44 65 73 74 69 6e 61 and a <b>Destina
7200: 74 69 6f 6e 20 4e 6f 64 65 3c 2f 62 3e 2e 3c 62 tion Node</b>.<b
7210: 72 3e 0d 0a 57 65 20 63 61 6e 20 65 61 73 69 6c r>..We can easil
7220: 79 20 74 72 61 6e 73 6c 61 74 65 20 73 75 63 68 y translate such
7230: 20 61 20 70 72 6f 62 6c 65 6d 20 69 6e 74 6f 20 a problem into
7240: 61 20 73 69 6d 70 6c 65 20 53 51 4c 20 71 75 65 a simple SQL que
7250: 72 79 20 74 61 72 67 65 74 69 6e 67 20 73 6f 6d ry targeting som
7260: 65 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 e VirtualRouting
7270: 20 54 61 62 6c 65 2e 0d 0a 3c 76 65 72 62 61 74 Table...<verbat
7280: 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 2a 20 0d 0a im>..SELECT * ..
7290: 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 FROM byfoot..WHE
72a0: 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 37 RE NodeFrom = 17
72b0: 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 54 6f 20 8731 AND NodeTo
72c0: 3d 20 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 = 183286;..</ver
72d0: 62 61 74 69 6d 3e 0d 0a 3c 74 61 62 6c 65 20 62 batim>..<table b
72e0: 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f order="1" bgcolo
72f0: 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c r="#ffffcf" cell
7300: 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c spacing="4" cell
7310: 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 padding="6">..<t
7320: 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 r><th bgcolor="#
7330: 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 d0d0a0">Algorith
7340: 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f m</th><th bgcolo
7350: 72 3d 22 23 64 30 64 30 61 30 22 3e 52 65 71 75 r="#d0d0a0">Requ
7360: 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f est</th><th bgco
7370: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 lor="#d0d0a0">Op
7380: 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 tions</th><th bg
7390: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
73a0: 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 3e 3c 74 Delimiter</th><t
73b0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
73c0: 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 74 68 3e a0">RouteId</th>
73d0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
73e0: 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 2f d0a0">RouteRow</
73f0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
7400: 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 #d0d0a0">Role</t
7410: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
7420: 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 d0d0a0">LinkRowi
7430: 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f d</th><th bgcolo
7440: 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 r="#d0d0a0">Node
7450: 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 From</th><th bgc
7460: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
7470: 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 odeTo</th><th bg
7480: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
7490: 50 6f 69 6e 74 46 72 6f 6d 3c 2f 74 68 3e 3c 74 PointFrom</th><t
74a0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
74b0: 61 30 22 3e 50 6f 69 6e 74 54 6f 3c 2f 74 68 3e a0">PointTo</th>
74c0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
74d0: 64 30 61 30 22 3e 54 6f 6c 65 72 61 6e 63 65 3c d0a0">Tolerance<
74e0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
74f0: 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 3c 2f "#d0d0a0">Cost</
7500: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
7510: 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 72 #d0d0a0">Geometr
7520: 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f y</th><th bgcolo
7530: 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 6d 65 r="#d0d0a0">Name
7540: 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e </th></tr>..<tr>
7550: 0d 0a 3c 74 64 3e 44 69 6a 6b 73 74 72 61 3c 2f ..<td>Dijkstra</
7560: 74 64 3e 3c 74 64 3e 53 68 6f 72 74 65 73 74 20 td><td>Shortest
7570: 50 61 74 68 3c 2f 74 64 3e 3c 74 64 3e 46 75 6c Path</td><td>Ful
7580: 6c 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 23 39 31 l</td><td>, [
7590: 3b 64 65 63 3d 34 34 2c 20 68 65 78 3d 32 63 26 ;dec=44, hex=2c&
75a0: 23 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 #93;</td><td ali
75b0: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
75c0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
75d0: 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 t">0</td><td>Rou
75e0: 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c te</td><td>NULL<
75f0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
7600: 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
7610: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
7620: 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 t">183286</td><t
7630: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
7640: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
7650: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
7660: 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 32 30 right">300.91220
7670: 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 8</td><td>BLOB s
7680: 7a 3d 32 37 32 20 47 45 4f 4d 45 54 52 59 3c 2f z=272 GEOMETRY</
7690: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
76a0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
76b0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
76c0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
76d0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
76e0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
76f0: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 ght">0</td><td a
7700: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f lign="right">1</
7710: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
7720: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
7730: 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 64 ">224014</td><td
7740: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
7750: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
7760: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 ign="right">1828
7770: 38 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 85</td><td>NULL<
7780: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
7790: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
77a0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
77b0: 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e 3c 74 94.812424</td><t
77c0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
77d0: 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 4e IA PIETRO ARETIN
77e0: 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c O</td>..</tr>..<
77f0: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
7800: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
7810: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
7820: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
7830: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
7840: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
7850: 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">2</td><td>Lin
7860: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
7870: 22 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c 2f "right">224446</
7880: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
7890: 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e ght">182885</td>
78a0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
78b0: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
78c0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
78d0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
78e0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
78f0: 69 67 68 74 22 3e 36 39 2e 37 32 37 37 32 36 3c ight">69.727726<
7900: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
7910: 3e 3c 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 ><td>VIA MARGARI
7920: 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e TONE</td>..</tr>
7930: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
7940: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
7950: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
7960: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
7970: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
7980: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
7990: 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e ight">3</td><td>
79a0: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
79b0: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 34 31 gn="right">22441
79c0: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
79d0: 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c 2f "right">178880</
79e0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
79f0: 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e ght">183286</td>
7a00: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
7a10: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
7a20: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
7a30: 3d 22 72 69 67 68 74 22 3e 31 33 36 2e 33 37 32 ="right">136.372
7a40: 30 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 057</td><td>NULL
7a50: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 </td><td>VIA MAR
7a60: 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c GARITONE</td>..<
7a70: 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a /tr>..</table>..
7a80: 3c 62 72 3e 0d 0a 4c 65 74 27 73 20 71 75 69 63 <br>..Let's quic
7a90: 6b 6c 79 20 65 78 61 6d 69 6e 65 20 74 68 65 20 kly examine the
7aa0: 72 65 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e resultset return
7ab0: 65 64 20 62 79 20 74 68 65 20 61 62 6f 76 65 20 ed by the above
7ac0: 52 6f 75 74 69 6e 67 20 71 75 65 72 79 3a 0d 0a Routing query:..
7ad0: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 <ul>..<li>the <b
7ae0: 3e 66 69 72 73 74 20 72 6f 77 3c 2f 62 3e 20 28 >first row</b> (
7af0: 3c 69 3e 61 6b 61 3c 2f 69 3e 20 68 65 61 64 65 <i>aka</i> heade
7b00: 72 20 72 6f 77 29 20 68 61 73 20 61 20 73 70 65 r row) has a spe
7b10: 63 69 61 6c 20 69 6e 74 65 72 70 72 65 74 61 74 cial interpretat
7b20: 69 6f 6e 2c 20 61 6e 64 20 69 73 20 69 6e 74 65 ion, and is inte
7b30: 6e 64 65 64 20 74 6f 20 73 75 6d 6d 61 72 69 7a nded to summariz
7b40: 65 20 74 68 65 20 74 72 61 76 65 6c 20 73 6f 6c e the travel sol
7b50: 75 74 69 6f 6e 20 61 73 20 61 20 77 68 6f 6c 65 ution as a whole
7b60: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 6c 6c 20 .</li>..<li>all
7b70: 74 68 65 20 3c 62 3e 66 6f 6c 6c 6f 77 69 6e 67 the <b>following
7b80: 20 72 6f 77 73 3c 2f 62 3e 20 72 65 70 72 65 73 rows</b> repres
7b90: 65 6e 74 20 61 20 73 69 6e 67 6c 65 20 4c 69 6e ent a single Lin
7ba0: 6b 20 72 65 71 75 69 72 65 64 20 74 6f 20 62 75 k required to bu
7bb0: 69 6c 64 20 74 68 65 20 73 6f 6c 75 74 69 6f 6e ild the solution
7bc0: 20 28 6f 70 74 69 6d 61 20 70 61 74 68 29 3b 20 (optima path);
7bd0: 4c 69 6e 6b 73 20 61 72 65 20 6f 72 64 65 72 65 Links are ordere
7be0: 64 20 61 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f d accordingly to
7bf0: 20 74 68 65 20 74 72 61 76 65 6c 20 64 69 72 65 the travel dire
7c00: 63 74 69 6f 6e 20 63 6f 6e 6e 65 63 74 69 6e 67 ction connecting
7c10: 20 74 68 65 20 4f 72 69 67 69 6e 20 61 6e 64 20 the Origin and
7c20: 74 68 65 20 44 65 73 74 69 6e 61 74 69 6f 6e 2e the Destination.
7c30: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d </li>..<li>colum
7c40: 6e 73 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d 3c ns <b>Algorithm<
7c50: 2f 62 3e 2c 20 3c 62 3e 52 65 71 75 65 73 74 3c /b>, <b>Request<
7c60: 2f 62 3e 2c 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c /b>, <b>Options<
7c70: 2f 62 3e 2c 20 3c 62 3e 44 65 6c 69 6d 69 74 65 /b>, <b>Delimite
7c80: 72 3c 2f 62 3e 2c 20 3c 62 3e 50 6f 69 6e 74 46 r</b>, <b>PointF
7c90: 72 6f 6d 3c 2f 62 3e 2c 20 3c 62 3e 50 6f 69 6e rom</b>, <b>Poin
7ca0: 74 54 6f 3c 2f 62 3e 2c 20 3c 62 3e 54 6f 6c 65 tTo</b>, <b>Tole
7cb0: 72 61 6e 63 65 3c 2f 62 3e 20 61 6e 64 20 3c 62 rance</b> and <b
7cc0: 3e 47 65 6f 6d 65 74 72 79 3c 2f 62 3e 20 61 72 >Geometry</b> ar
7cd0: 65 20 61 6c 77 61 79 73 20 73 65 74 20 74 6f 20 e always set to
7ce0: 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 65 78 63 65 <b>NULL</b> exce
7cf0: 70 74 20 74 68 61 74 20 69 6e 20 74 68 65 20 66 pt that in the f
7d00: 69 72 73 74 20 72 6f 77 20 6f 66 20 74 68 65 20 irst row of the
7d10: 72 65 73 75 6c 74 73 65 74 3a 0d 0a 3c 75 6c 3e resultset:..<ul>
7d20: 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e ..<li>column <b>
7d30: 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 20 61 63 Algorithm</b> ac
7d40: 63 6f 75 6e 74 73 20 66 6f 72 20 74 68 65 20 52 counts for the R
7d50: 6f 75 74 69 6e 67 20 41 6c 67 6f 72 69 74 68 6d outing Algorithm
7d60: 20 75 73 65 64 20 62 79 20 74 68 65 20 63 75 72 used by the cur
7d70: 72 65 6e 74 20 71 75 65 72 79 20 28 3c 69 3e 44 rent query (<i>D
7d80: 69 6a 6b 73 74 72 61 27 73 3c 2f 69 3e 20 6f 72 ijkstra's</i> or
7d90: 20 3c 69 3e 41 2a 3c 2f 69 3e 29 2e 3c 2f 6c 69 <i>A*</i>).</li
7da0: 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 >..<li>column <b
7db0: 3e 52 65 71 75 65 73 74 3c 2f 62 3e 20 73 70 65 >Request</b> spe
7dc0: 63 69 66 69 65 73 20 74 68 65 20 65 78 61 63 74 cifies the exact
7dd0: 20 6e 61 74 75 72 65 20 6f 66 20 74 68 65 20 63 nature of the c
7de0: 75 72 72 65 6e 74 20 71 75 65 72 79 20 28 69 6e urrent query (in
7df0: 20 74 68 69 73 20 73 70 65 63 69 66 69 63 20 63 this specific c
7e00: 61 73 65 20 3c 69 3e 53 68 6f 72 74 65 73 74 20 ase <i>Shortest
7e10: 50 61 74 68 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d Path</i>).</li>.
7e20: 0a 3c 6c 69 3e 77 65 27 6c 6c 20 69 67 6e 6f 72 .<li>we'll ignor
7e30: 65 20 66 6f 72 20 6e 6f 77 20 63 6f 6c 75 6d 6e e for now column
7e40: 73 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e s <b>Options</b>
7e50: 2c 20 3c 62 3e 44 65 6c 69 6d 69 74 65 72 3c 2f , <b>Delimiter</
7e60: 62 3e 2c 20 3c 62 3e 50 6f 69 6e 74 46 72 6f 6d b>, <b>PointFrom
7e70: 3c 2f 62 3e 2c 20 3c 62 3e 50 6f 69 6e 74 54 6f </b>, <b>PointTo
7e80: 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 54 6f 6c 65 </b> and <b>Tole
7e90: 72 61 6e 63 65 3c 2f 62 3e 3a 20 74 68 65 69 72 rance</b>: their
7ea0: 20 72 65 73 70 65 63 74 69 76 65 20 6d 65 61 6e respective mean
7eb0: 69 6e 67 73 20 77 69 6c 6c 20 62 65 20 65 78 70 ings will be exp
7ec0: 6c 61 69 6e 65 64 20 69 6e 20 66 6f 6c 6c 6f 77 lained in follow
7ed0: 69 6e 67 20 70 61 72 61 67 72 61 70 68 73 2e 3c ing paragraphs.<
7ee0: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e /li>..<li>column
7ef0: 20 3c 62 3e 47 65 6f 6d 65 74 72 79 3c 2f 62 3e <b>Geometry</b>
7f00: 20 63 6f 6e 74 61 69 6e 73 20 61 20 3c 62 3e 4c contains a <b>L
7f10: 49 4e 45 53 54 52 49 4e 47 3c 2f 62 3e 20 72 65 INESTRING</b> re
7f20: 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 presentation of
7f30: 74 68 65 20 77 68 6f 6c 65 20 74 72 61 76 65 6c the whole travel
7f40: 20 73 6f 6c 75 74 69 6f 6e 2e 3c 62 72 3e 0d 0a solution.<br>..
7f50: 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 6f 6e 20 <u>Note</u>: on
7f60: 3c 62 3e 4c 6f 67 69 63 61 6c 20 4e 65 74 77 6f <b>Logical Netwo
7f70: 72 6b 73 3c 2f 62 3e 20 28 6e 6f 74 20 73 75 70 rks</b> (not sup
7f80: 70 6f 72 74 69 6e 67 20 47 65 6f 6d 65 74 72 69 porting Geometri
7f90: 65 73 29 20 3c 62 3e 47 65 6f 6d 65 74 72 79 3c es) <b>Geometry<
7fa0: 2f 62 3e 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 /b> will always
7fb0: 62 65 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 2e 3c be <b>NULL</b>.<
7fc0: 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e /li>..</ul></li>
7fd0: 0d 0a 3c 6c 69 3e 77 65 27 6c 6c 20 69 67 6e 6f ..<li>we'll igno
7fe0: 72 65 20 66 6f 72 20 6e 6f 77 20 63 6f 6c 75 6d re for now colum
7ff0: 6e 20 3c 62 3e 52 6f 75 74 65 49 64 3c 2f 62 3e n <b>RouteId</b>
8000: 3b 20 69 74 73 20 6d 65 61 6e 69 6e 67 20 77 69 ; its meaning wi
8010: 6c 6c 20 62 65 20 65 78 70 6c 61 69 6e 65 64 20 ll be explained
8020: 69 6e 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 72 in following par
8030: 61 67 72 61 70 68 73 2e 3c 2f 6c 69 3e 0d 0a 3c agraphs.</li>..<
8040: 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 52 6f 75 li>column <b>Rou
8050: 74 65 52 6f 77 3c 2f 62 3e 20 73 69 6d 70 6c 79 teRow</b> simply
8060: 20 69 73 20 74 68 65 20 70 72 6f 67 72 65 73 73 is the progress
8070: 69 76 65 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 ive number of th
8080: 65 20 72 6f 77 20 69 6e 20 74 68 65 20 74 72 61 e row in the tra
8090: 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 20 28 61 6c vel solution (al
80a0: 77 61 79 73 20 3c 62 3e 30 3c 2f 62 3e 20 69 6e ways <b>0</b> in
80b0: 20 74 68 65 20 68 65 61 64 65 72 20 72 6f 77 29 the header row)
80c0: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 .</li>..<li>colu
80d0: 6d 6e 20 3c 62 3e 52 6f 6c 65 3c 2f 62 3e 20 63 mn <b>Role</b> c
80e0: 61 6e 20 62 65 20 3c 69 3e 52 6f 75 74 65 3c 2f an be <i>Route</
80f0: 69 3e 20 28 68 65 61 64 65 72 20 72 6f 77 29 20 i> (header row)
8100: 6f 72 20 3c 69 3e 4c 69 6e 6b 3c 2f 69 3e 20 28 or <i>Link</i> (
8110: 61 6c 6c 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 6f all following ro
8120: 77 73 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 ws).</li>..<li>c
8130: 6f 6c 75 6d 6e 20 3c 62 3e 4c 69 6e 6b 52 6f 77 olumn <b>LinkRow
8140: 69 64 3c 2f 62 3e 20 72 65 66 65 72 65 6e 63 65 id</b> reference
8150: 73 20 74 68 65 20 3c 62 3e 52 4f 57 49 44 3c 2f s the <b>ROWID</
8160: 62 3e 20 6f 66 20 74 68 65 20 63 6f 72 72 65 73 b> of the corres
8170: 70 6f 6e 64 69 6e 67 20 4c 69 6e 6b 20 28 61 6c ponding Link (al
8180: 77 61 79 73 20 73 65 74 20 74 6f 20 3c 62 3e 4e ways set to <b>N
8190: 55 4c 4c 3c 2f 62 3e 20 69 6e 20 74 68 65 20 68 ULL</b> in the h
81a0: 65 61 64 65 72 20 72 6f 77 29 2e 3c 2f 6c 69 3e eader row).</li>
81b0: 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e ..<li>column <b>
81c0: 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 NodeFrom</b> and
81d0: 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 68 <b>NodeTo</b> h
81e0: 61 76 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e ave the followin
81f0: 67 20 69 6e 74 65 72 70 72 65 74 61 74 69 6f 6e g interpretation
8200: 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 69 6e 20 :..<ul>..<li>in
8210: 74 68 65 20 68 65 61 64 65 72 20 72 6f 77 20 74 the header row t
8220: 68 65 79 20 63 6f 72 72 65 73 70 6f 6e 64 20 74 hey correspond t
8230: 6f 20 68 65 20 3c 62 3e 4f 72 69 67 69 6e 3c 2f o he <b>Origin</
8240: 62 3e 20 61 6e 64 20 3c 62 3e 44 65 73 74 69 6e b> and <b>Destin
8250: 61 74 69 6f 6e 3c 2f 62 3e 20 4e 6f 64 65 73 2e ation</b> Nodes.
8260: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 6e 20 61 6c </li>..<li>in al
8270: 6c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 l the following
8280: 72 6f 77 73 20 74 68 65 79 20 61 72 65 20 69 6e rows they are in
8290: 74 65 6e 64 65 64 20 74 6f 20 73 70 65 63 69 66 tended to specif
82a0: 79 20 74 68 65 20 64 69 72 65 63 74 69 6f 6e 20 y the direction
82b0: 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 4c of the current L
82c0: 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e ink.</li>..</ul>
82d0: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d </li>..<li>colum
82e0: 6e 20 3c 62 3e 43 6f 73 74 3c 2f 62 3e 20 68 61 n <b>Cost</b> ha
82f0: 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 s the following
8300: 69 6e 74 65 72 70 72 65 74 61 74 69 6f 6e 3a 0d interpretation:.
8310: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 69 6e 20 74 68 .<ul>..<li>in th
8320: 65 20 68 65 61 64 65 72 20 74 6f 77 20 69 74 20 e header tow it
8330: 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 corresponds to t
8340: 68 65 20 3c 62 3e 74 6f 74 61 6c 20 63 6f 73 74 he <b>total cost
8350: 3c 2f 62 3e 20 6f 66 20 74 68 65 20 74 72 61 76 </b> of the trav
8360: 65 6c 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 6e el.</li>..<li>in
8370: 20 61 6c 6c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 all the followi
8380: 6e 67 20 72 6f 77 73 20 69 74 20 72 65 70 72 65 ng rows it repre
8390: 73 65 6e 74 73 20 74 68 65 20 73 70 65 63 69 66 sents the specif
83a0: 69 63 20 63 6f 73 74 20 6f 66 20 74 68 65 20 63 ic cost of the c
83b0: 75 72 72 65 6e 74 20 4c 69 6e 6b 2e 3c 2f 6c 69 urrent Link.</li
83c0: 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c >..</ul></li>..<
83d0: 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 4e 61 6d li>column <b>Nam
83e0: 65 3c 2f 62 3e 20 63 6f 6e 74 61 69 6e 73 20 74 e</b> contains t
83f0: 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f he description o
8400: 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 4c 69 f the current Li
8410: 6e 6b 20 28 75 73 75 61 6c 6c 79 20 61 20 72 6f nk (usually a ro
8420: 61 64 20 6e 61 6d 65 29 2c 20 61 6e 64 20 69 73 ad name), and is
8430: 20 61 6c 77 61 79 73 20 3c 62 3e 4e 55 4c 4c 3c always <b>NULL<
8440: 2f 62 3e 20 69 6e 20 74 68 65 20 68 65 61 64 65 /b> in the heade
8450: 72 20 72 6f 77 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e r row.<br>..<u>N
8460: 6f 74 65 3c 2f 75 3e 20 69 74 20 63 6f 75 6c 64 ote</u> it could
8470: 20 62 65 20 61 6c 77 61 79 73 20 62 65 20 3c 62 be always be <b
8480: 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 66 20 74 68 65 >NULL</b> if the
8490: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
84a0: 54 61 62 6c 65 20 64 6f 65 73 20 6e 6f 74 20 73 Table does not s
84b0: 75 70 70 6f 72 74 73 20 6e 61 6d 65 73 2e 3c 2f upports names.</
84c0: 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d li>..</ul></li>.
84d0: 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 3c 62 72 3e .</ul>..<br><br>
84e0: 0d 0a 54 65 73 74 69 6e 67 20 74 68 65 20 72 65 ..Testing the re
84f0: 74 75 72 6e 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 turn connection
8500: 6a 75 73 74 20 72 65 71 75 69 72 65 73 20 73 77 just requires sw
8510: 61 70 70 69 6e 67 20 74 68 65 20 4f 72 69 67 69 apping the Origi
8520: 6e 20 61 6e 64 20 74 68 65 20 44 65 73 74 69 6e n and the Destin
8530: 61 74 69 6f 6e 3b 20 69 6e 20 74 68 69 73 20 65 ation; in this e
8540: 78 61 6d 70 6c 65 20 79 6f 75 27 6c 6c 20 6a 75 xample you'll ju
8550: 73 74 20 72 65 71 75 65 73 74 20 74 68 65 20 6d st request the m
8560: 65 61 6e 69 6e 67 66 75 6c 20 63 6f 6c 75 6d 6e eaningful column
8570: 73 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a s:..<verbatim>..
8580: 53 45 4c 45 43 54 20 52 6f 75 74 65 52 6f 77 2c SELECT RouteRow,
8590: 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 Role, LinkRowid
85a0: 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 , NodeFrom, Node
85b0: 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 To, Cost, Geomet
85c0: 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 ry, Name..FROM b
85d0: 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 yfoot..WHERE Nod
85e0: 65 54 6f 20 3d 20 31 37 38 37 33 31 20 41 4e 44 eTo = 178731 AND
85f0: 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 38 33 32 NodeFrom = 1832
8600: 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 86;..</verbatim>
8610: 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d ..<table border=
8620: 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 "1" bgcolor="#ff
8630: 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e ffcf" cellspacin
8640: 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e g="4" cellpaddin
8650: 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 g="6">..<tr><th
8660: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
8670: 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c ">RouteRow</th><
8680: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
8690: 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 0a0">Role</th><t
86a0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
86b0: 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 a0">LinkRowid</t
86c0: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
86d0: 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d d0d0a0">NodeFrom
86e0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
86f0: 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 ="#d0d0a0">NodeT
8700: 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f o</th><th bgcolo
8710: 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 r="#d0d0a0">Cost
8720: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
8730: 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 ="#d0d0a0">Geome
8740: 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f try</th><th bgco
8750: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 lor="#d0d0a0">Na
8760: 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 me</th></tr>..<t
8770: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
8780: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
8790: 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
87a0: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
87b0: 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c ="right">183286<
87c0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
87d0: 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
87e0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
87f0: 74 22 3e 33 30 30 2e 39 31 32 32 30 38 3c 2f 74 t">300.912208</t
8800: 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 d><td>BLOB sz=27
8810: 32 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 2 GEOMETRY</td><
8820: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
8830: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 tr>..<tr>..<td a
8840: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f lign="right">1</
8850: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
8860: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
8870: 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 64 ">224414</td><td
8880: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
8890: 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 83286</td><td al
88a0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 ign="right">1788
88b0: 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 80</td><td align
88c0: 3d 22 72 69 67 68 74 22 3e 31 33 36 2e 33 37 32 ="right">136.372
88d0: 30 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 057</td><td>NULL
88e0: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 </td><td>VIA MAR
88f0: 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c GARITONE</td>..<
8900: 2f 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d /tr>..<td align=
8910: 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 "right">2</td><t
8920: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
8930: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
8940: 34 34 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 446</td><td alig
8950: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 n="right">178880
8960: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
8970: 72 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 right">182885</t
8980: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
8990: 68 74 22 3e 36 39 2e 37 32 37 37 32 36 3c 2f 74 ht">69.727726</t
89a0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
89b0: 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f td>VIA MARGARITO
89c0: 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NE</td>..</tr>..
89d0: 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d <tr>..<td align=
89e0: 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 "right">3</td><t
89f0: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
8a00: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
8a10: 30 31 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 014</td><td alig
8a20: 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 35 n="right">182885
8a30: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
8a40: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
8a50: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
8a60: 68 74 22 3e 39 34 2e 38 31 32 34 32 34 3c 2f 74 ht">94.812424</t
8a70: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
8a80: 74 64 3e 56 49 41 20 50 49 45 54 52 4f 20 41 52 td>VIA PIETRO AR
8a90: 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 ETINO</td>..</tr
8aa0: 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 >..</table>..<br
8ab0: 3e 0d 0a 49 66 20 79 6f 75 20 72 65 6d 65 6d 62 >..If you rememb
8ac0: 65 72 2c 20 74 68 65 20 3c 62 3e 62 79 66 6f 6f er, the <b>byfoo
8ad0: 74 3c 2f 62 3e 20 56 69 72 74 75 61 6c 52 6f 75 t</b> VirtualRou
8ae0: 74 69 6e 67 20 54 61 62 6c 65 20 68 61 73 20 6e ting Table has n
8af0: 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 73 3c 2f 62 o <b>one-ways</b
8b00: 3e 2c 20 61 6e 64 20 63 6f 6e 73 65 71 75 65 6e >, and consequen
8b10: 74 6c 79 20 74 68 65 20 72 65 74 75 72 6e 20 70 tly the return p
8b20: 61 74 68 20 65 78 61 63 74 6c 79 20 63 6f 72 72 ath exactly corr
8b30: 65 73 70 6f 6e 64 73 20 74 6f 20 74 68 65 20 66 esponds to the f
8b40: 69 72 73 74 20 6f 6e 65 2c 20 65 78 63 65 70 74 irst one, except
8b50: 20 69 6e 20 74 68 61 74 20 61 6c 6c 20 64 69 72 in that all dir
8b60: 65 63 74 69 6f 6e 73 20 61 72 65 20 6e 6f 77 20 ections are now
8b70: 72 65 76 65 72 73 65 64 2e 0d 0a 3c 62 72 3e 3c reversed...<br><
8b80: 62 72 3e 3c 62 72 3e 0d 0a 4e 6f 77 20 79 6f 75 br><br>..Now you
8b90: 27 6c 6c 20 67 6f 20 74 6f 20 74 65 73 74 20 74 'll go to test t
8ba0: 68 65 20 73 61 6d 65 20 63 6f 6e 6e 65 63 74 69 he same connecti
8bb0: 6f 6e 73 2c 20 62 75 74 20 74 68 69 73 20 74 69 ons, but this ti
8bc0: 6d 65 20 79 6f 75 27 6c 6c 20 74 61 72 67 65 74 me you'll target
8bd0: 20 74 68 65 20 3c 62 3e 62 79 63 61 72 3c 2f 62 the <b>bycar</b
8be0: 3e 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 > VirtualRouting
8bf0: 20 54 61 62 6c 65 20 74 68 61 74 20 66 75 6c 6c Table that full
8c00: 79 20 73 75 70 70 6f 72 74 73 20 3c 62 3e 6f 6e y supports <b>on
8c10: 65 2d 77 61 79 73 3c 2f 62 3e 3a 0d 0a 3c 76 65 e-ways</b>:..<ve
8c20: 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 rbatim>..SELECT
8c30: 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 RouteRow, Role,
8c40: 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 LinkRowid, NodeF
8c50: 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 rom, NodeTo, Cos
8c60: 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d t, Geometry, Nam
8c70: 65 0d 0a 46 52 4f 4d 20 62 79 63 61 72 0d 0a 57 e..FROM bycar..W
8c80: 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 HERE NodeFrom =
8c90: 31 37 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 54 178731 AND NodeT
8ca0: 6f 20 3d 20 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 o = 183286;..</v
8cb0: 65 72 62 61 74 69 6d 3e 0d 0a 3c 74 61 62 6c 65 erbatim>..<table
8cc0: 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f border="1" bgco
8cd0: 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 lor="#ffffcf" ce
8ce0: 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 llspacing="4" ce
8cf0: 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a llpadding="6">..
8d00: 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d <tr><th bgcolor=
8d10: 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 "#d0d0a0">RouteR
8d20: 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ow</th><th bgcol
8d30: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c or="#d0d0a0">Rol
8d40: 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f e</th><th bgcolo
8d50: 72 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b r="#d0d0a0">Link
8d60: 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 Rowid</th><th bg
8d70: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
8d80: 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 NodeFrom</th><th
8d90: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
8da0: 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 0">NodeTo</th><t
8db0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
8dc0: 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 a0">Cost</th><th
8dd0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
8de0: 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 0">Geometry</th>
8df0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
8e00: 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c d0a0">Name</th><
8e10: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
8e20: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
8e30: 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
8e40: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
8e50: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
8e60: 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
8e70: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
8e80: 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3286</td><td ali
8e90: 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 31 2e 38 gn="right">101.8
8ea0: 31 35 35 35 32 3c 2f 74 64 3e 3c 74 64 3e 42 4c 15552</td><td>BL
8eb0: 4f 42 20 73 7a 3d 32 30 33 32 20 47 45 4f 4d 45 OB sz=2032 GEOME
8ec0: 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c TRY</td><td>NULL
8ed0: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
8ee0: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
8ef0: 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e ight">1</td><td>
8f00: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
8f10: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 gn="right">22401
8f20: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
8f30: 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f "right">178731</
8f40: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
8f50: 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e ght">182885</td>
8f60: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
8f70: 22 3e 31 33 2e 31 32 37 38 37 34 3c 2f 74 64 3e ">13.127874</td>
8f80: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
8f90: 3e 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 >VIA PIETRO ARET
8fa0: 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d INO</td>..</tr>.
8fb0: 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
8fc0: 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
8fd0: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
8fe0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
8ff0: 34 34 34 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4446</td><td ali
9000: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 gn="right">18288
9010: 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
9020: 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c 2f "right">178880</
9030: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9040: 67 68 74 22 3e 39 2e 36 35 34 36 30 38 3c 2f 74 ght">9.654608</t
9050: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
9060: 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f td>VIA MARGARITO
9070: 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NE</td>..</tr>..
9080: 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d <tr>..<td align=
9090: 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 "right">3</td><t
90a0: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
90b0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 31 39 lign="right">219
90c0: 31 37 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 171</td><td alig
90d0: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 n="right">178880
90e0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
90f0: 72 69 67 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 right">178732</t
9100: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9110: 68 74 22 3e 37 2e 38 30 39 39 35 32 3c 2f 74 64 ht">7.809952</td
9120: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
9130: 64 3e 56 49 41 20 46 52 41 4e 43 45 53 43 4f 20 d>VIA FRANCESCO
9140: 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 CRISPI</td>..</t
9150: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c r>..<tr>..<td al
9160: 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 ign="right">4</t
9170: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
9180: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9190: 3e 32 31 39 30 35 38 3c 2f 74 64 3e 3c 74 64 20 >219058</td><td
91a0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
91b0: 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8732</td><td ali
91c0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 gn="right">17875
91d0: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
91e0: 22 72 69 67 68 74 22 3e 31 32 2e 34 34 35 36 32 "right">12.44562
91f0: 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 6</td><td>NULL</
9200: 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 td><td>VIA FRANC
9210: 45 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e ESCO CRISPI</td>
9220: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
9230: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9240: 3e 35 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >5</td><td>Link<
9250: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9260: 69 67 68 74 22 3e 32 32 35 38 38 38 3c 2f 74 64 ight">225888</td
9270: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9280: 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 t">178754</td><t
9290: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
92a0: 31 38 33 34 36 31 3c 2f 74 64 3e 3c 74 64 20 61 183461</td><td a
92b0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 2e 35 lign="right">1.5
92c0: 39 39 38 36 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 99865</td><td>NU
92d0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 LL</td><td>VIA F
92e0: 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c RANCESCO CRISPI<
92f0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
9300: 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 >..<td align="ri
9310: 67 68 74 22 3e 36 3c 2f 74 64 3e 3c 74 64 3e 4c ght">6</td><td>L
9320: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
9330: 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 38 38 37 n="right">225887
9340: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9350: 72 69 67 68 74 22 3e 31 38 33 34 36 31 3c 2f 74 right">183461</t
9360: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9370: 68 74 22 3e 31 38 32 38 30 30 3c 2f 74 64 3e 3c ht">182800</td><
9380: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9390: 3e 33 2e 33 30 30 35 39 30 3c 2f 74 64 3e 3c 74 >3.300590</td><t
93a0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
93b0: 49 41 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 IA FRANCESCO CRI
93c0: 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d SPI</td>..</tr>.
93d0: 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
93e0: 3d 22 72 69 67 68 74 22 3e 37 3c 2f 74 64 3e 3c ="right">7</td><
93f0: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
9400: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
9410: 33 39 33 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3935</td><td ali
9420: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 30 gn="right">18280
9430: 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
9440: 22 72 69 67 68 74 22 3e 31 38 32 37 39 39 3c 2f "right">182799</
9450: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9460: 67 68 74 22 3e 36 2e 36 38 38 37 38 36 3c 2f 74 ght">6.688786</t
9470: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
9480: 74 64 3e 56 49 41 4c 45 20 4c 55 43 41 20 53 49 td>VIALE LUCA SI
9490: 47 4e 4f 52 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c GNORELLI</td>..<
94a0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
94b0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 38 3c align="right">8<
94c0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
94d0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
94e0: 74 22 3e 32 32 36 30 33 38 3c 2f 74 64 3e 3c 74 t">226038</td><t
94f0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9500: 31 38 32 37 39 39 3c 2f 74 64 3e 3c 74 64 20 61 182799</td><td a
9510: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
9520: 34 35 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 456</td><td alig
9530: 6e 3d 22 72 69 67 68 74 22 3e 31 2e 32 39 34 30 n="right">1.2940
9540: 31 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 17</td><td>NULL<
9550: 2f 74 64 3e 3c 74 64 3e 56 49 41 4c 45 20 4c 55 /td><td>VIALE LU
9560: 43 41 20 53 49 47 4e 4f 52 45 4c 4c 49 3c 2f 74 CA SIGNORELLI</t
9570: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
9580: 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 .<td align="righ
9590: 74 22 3e 39 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">9</td><td>Lin
95a0: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
95b0: 22 72 69 67 68 74 22 3e 32 32 35 38 33 32 3c 2f "right">225832</
95c0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
95d0: 67 68 74 22 3e 31 38 33 34 35 36 3c 2f 74 64 3e ght">183456</td>
95e0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
95f0: 22 3e 31 38 33 34 34 34 3c 2f 74 64 3e 3c 74 64 ">183444</td><td
9600: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
9610: 2e 33 38 35 34 38 36 3c 2f 74 64 3e 3c 74 64 3e .385486</td><td>
9620: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
9630: 4c 45 20 4c 55 43 41 20 53 49 47 4e 4f 52 45 4c LE LUCA SIGNOREL
9640: 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LI</td>..</tr>..
9650: 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d <tr>..<td align=
9660: 22 72 69 67 68 74 22 3e 31 30 3c 2f 74 64 3e 3c "right">10</td><
9670: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
9680: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
9690: 35 38 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 5831</td><td ali
96a0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 34 34 gn="right">18344
96b0: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
96c0: 22 72 69 67 68 74 22 3e 31 38 33 35 35 34 3c 2f "right">183554</
96d0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
96e0: 67 68 74 22 3e 33 2e 31 36 30 36 36 32 3c 2f 74 ght">3.160662</t
96f0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
9700: 74 64 3e 56 49 41 4c 45 20 4c 55 43 41 20 53 49 td>VIALE LUCA SI
9710: 47 4e 4f 52 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c GNORELLI</td>..<
9720: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
9730: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 31 align="right">11
9740: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
9750: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9760: 68 74 22 3e 32 32 35 37 36 35 3c 2f 74 64 3e 3c ht">225765</td><
9770: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9780: 3e 31 38 33 35 35 34 3c 2f 74 64 3e 3c 74 64 20 >183554</td><td
9790: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
97a0: 33 39 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3954</td><td ali
97b0: 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 34 36 39 gn="right">7.469
97c0: 39 31 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 917</td><td>NULL
97d0: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 4c 45 20 4c </td><td>VIALE L
97e0: 55 43 41 20 53 49 47 4e 4f 52 45 4c 4c 49 3c 2f UCA SIGNORELLI</
97f0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
9800: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
9810: 68 74 22 3e 31 32 3c 2f 74 64 3e 3c 74 64 3e 4c ht">12</td><td>L
9820: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
9830: 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 37 36 36 n="right">225766
9840: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9850: 72 69 67 68 74 22 3e 31 38 33 39 35 34 3c 2f 74 right">183954</t
9860: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9870: 68 74 22 3e 31 38 33 39 30 35 3c 2f 74 64 3e 3c ht">183905</td><
9880: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9890: 3e 33 2e 32 33 36 33 38 39 3c 2f 74 64 3e 3c 74 >3.236389</td><t
98a0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
98b0: 49 41 4c 45 20 4c 55 43 41 20 53 49 47 4e 4f 52 IALE LUCA SIGNOR
98c0: 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ELLI</td>..</tr>
98d0: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 ..<tr>..<td alig
98e0: 6e 3d 22 72 69 67 68 74 22 3e 31 33 3c 2f 74 64 n="right">13</td
98f0: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
9900: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9910: 32 32 35 39 37 39 3c 2f 74 64 3e 3c 74 64 20 61 225979</td><td a
9920: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
9930: 39 30 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 905</td><td alig
9940: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 36 32 36 n="right">183626
9950: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9960: 72 69 67 68 74 22 3e 31 33 2e 39 38 33 36 32 39 right">13.983629
9970: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
9980: 64 3e 3c 74 64 3e 53 54 52 41 44 41 20 53 45 4e d><td>STRADA SEN
9990: 5a 41 20 4e 4f 4d 45 3c 2f 74 64 3e 0d 0a 3c 2f ZA NOME</td>..</
99a0: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 tr>..<tr>..<td a
99b0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 3c lign="right">14<
99c0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
99d0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
99e0: 74 22 3e 32 32 34 39 30 35 3c 2f 74 64 3e 3c 74 t">224905</td><t
99f0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9a00: 31 38 33 36 32 36 3c 2f 74 64 3e 3c 74 64 20 61 183626</td><td a
9a10: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
9a20: 31 32 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 128</td><td alig
9a30: 6e 3d 22 72 69 67 68 74 22 3e 35 2e 36 32 37 33 n="right">5.6273
9a40: 35 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 58</td><td>NULL<
9a50: 2f 74 64 3e 3c 74 64 3e 53 54 52 41 44 41 20 53 /td><td>STRADA S
9a60: 45 4e 5a 41 20 4e 4f 4d 45 3c 2f 74 64 3e 0d 0a ENZA NOME</td>..
9a70: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
9a80: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9a90: 35 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 5</td><td>Link</
9aa0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9ab0: 67 68 74 22 3e 32 32 34 38 39 37 3c 2f 74 64 3e ght">224897</td>
9ac0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9ad0: 22 3e 31 38 33 31 32 38 3c 2f 74 64 3e 3c 74 64 ">183128</td><td
9ae0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9af0: 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 83286</td><td al
9b00: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 2e 30 ign="right">10.0
9b10: 33 30 37 39 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 30792</td><td>NU
9b20: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d LL</td><td>VIA M
9b30: 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d ARGARITONE</td>.
9b40: 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e .</tr>..</table>
9b50: 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 ..<verbatim>..SE
9b60: 4c 45 43 54 20 52 6f 75 74 65 52 6f 77 2c 20 52 LECT RouteRow, R
9b70: 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 ole, LinkRowid,
9b80: 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f NodeFrom, NodeTo
9b90: 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 , Cost, Geometry
9ba0: 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 63 , Name..FROM byc
9bb0: 61 72 0d 0a 57 48 45 52 45 20 4e 6f 64 65 54 6f ar..WHERE NodeTo
9bc0: 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e 6f = 178731 AND No
9bd0: 64 65 46 72 6f 6d 20 3d 20 31 38 33 32 38 36 3b deFrom = 183286;
9be0: 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 3c ..</verbatim>..<
9bf0: 74 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 31 22 table border="1"
9c00: 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 66 63 bgcolor="#ffffc
9c10: 66 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 f" cellspacing="
9c20: 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 4" cellpadding="
9c30: 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6">..<tr><th bgc
9c40: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
9c50: 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 outeRow</th><th
9c60: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
9c70: 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 ">Role</th><th b
9c80: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
9c90: 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c >LinkRowid</th><
9ca0: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
9cb0: 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 0a0">NodeFrom</t
9cc0: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
9cd0: 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f d0d0a0">NodeTo</
9ce0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
9cf0: 23 64 30 64 30 61 30 22 3e 43 6f 73 74 3c 2f 74 #d0d0a0">Cost</t
9d00: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
9d10: 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 72 79 d0d0a0">Geometry
9d20: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
9d30: 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 6d 65 3c ="#d0d0a0">Name<
9d40: 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d /th></tr>..<tr>.
9d50: 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 .<td align="righ
9d60: 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 t">0</td><td>Rou
9d70: 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c te</td><td>NULL<
9d80: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9d90: 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
9da0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9db0: 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
9dc0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9dd0: 31 30 33 2e 33 30 35 32 35 39 3c 2f 74 64 3e 3c 103.305259</td><
9de0: 74 64 3e 42 4c 4f 42 20 73 7a 3d 39 34 34 20 47 td>BLOB sz=944 G
9df0: 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e EOMETRY</td><td>
9e00: 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e NULL</td>..</tr>
9e10: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 ..<tr>..<td alig
9e20: 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e n="right">1</td>
9e30: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
9e40: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
9e50: 32 34 34 31 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 24414</td><td al
9e60: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 ign="right">1832
9e70: 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 86</td><td align
9e80: 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c ="right">178880<
9e90: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9ea0: 69 67 68 74 22 3e 31 38 2e 38 38 32 32 38 35 3c ight">18.882285<
9eb0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
9ec0: 3e 3c 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 ><td>VIA MARGARI
9ed0: 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e TONE</td>..</tr>
9ee0: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 ..<tr>..<td alig
9ef0: 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e n="right">2</td>
9f00: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
9f10: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
9f20: 31 39 31 37 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 19171</td><td al
9f30: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 ign="right">1788
9f40: 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 80</td><td align
9f50: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 32 3c ="right">178732<
9f60: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9f70: 69 67 68 74 22 3e 37 2e 38 30 39 39 35 32 3c 2f ight">7.809952</
9f80: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
9f90: 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 53 43 <td>VIA FRANCESC
9fa0: 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c O CRISPI</td>..<
9fb0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
9fc0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
9fd0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
9fe0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9ff0: 74 22 3e 32 31 39 30 35 38 3c 2f 74 64 3e 3c 74 t">219058</td><t
a000: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a010: 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 178732</td><td a
a020: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
a030: 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 754</td><td alig
a040: 6e 3d 22 72 69 67 68 74 22 3e 31 32 2e 34 34 35 n="right">12.445
a050: 36 32 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 626</td><td>NULL
a060: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 </td><td>VIA FRA
a070: 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 NCESCO CRISPI</t
a080: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
a090: 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 .<td align="righ
a0a0: 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">4</td><td>Lin
a0b0: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
a0c0: 22 72 69 67 68 74 22 3e 32 32 34 35 33 38 3c 2f "right">224538</
a0d0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a0e0: 67 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e ght">178754</td>
a0f0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a100: 22 3e 31 38 31 39 37 32 3c 2f 74 64 3e 3c 74 64 ">181972</td><td
a110: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 align="right">7
a120: 2e 30 34 37 37 38 34 3c 2f 74 64 3e 3c 74 64 3e .047784</td><td>
a130: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
a140: 20 41 4e 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e ANTONIO GUADAGN
a150: 4f 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d OLI</td>..</tr>.
a160: 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
a170: 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c ="right">5</td><
a180: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
a190: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
a1a0: 32 35 37 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2575</td><td ali
a1b0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 37 gn="right">18197
a1c0: 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 2</td><td align=
a1d0: 22 72 69 67 68 74 22 3e 31 38 31 39 37 31 3c 2f "right">181971</
a1e0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a1f0: 67 68 74 22 3e 31 2e 38 35 32 32 38 33 3c 2f 74 ght">1.852283</t
a200: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
a210: 74 64 3e 56 49 41 20 41 4e 54 4f 4e 49 4f 20 47 td>VIA ANTONIO G
a220: 55 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 3e 0d 0a UADAGNOLI</td>..
a230: 3c 2f 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e </tr>..<td align
a240: 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 3e 3c ="right">6</td><
a250: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
a260: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
a270: 34 39 36 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4967</td><td ali
a280: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 37 gn="right">18197
a290: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
a2a0: 22 72 69 67 68 74 22 3e 31 38 32 38 39 31 3c 2f "right">182891</
a2b0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a2c0: 67 68 74 22 3e 31 34 2e 32 37 33 31 38 35 3c 2f ght">14.273185</
a2d0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
a2e0: 3c 74 64 3e 56 49 41 20 41 4e 54 4f 4e 49 4f 20 <td>VIA ANTONIO
a2f0: 47 55 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 3e 0d GUADAGNOLI</td>.
a300: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
a310: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a320: 37 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 7</td><td>Link</
a330: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a340: 67 68 74 22 3e 32 32 34 31 36 38 3c 2f 74 64 3e ght">224168</td>
a350: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a360: 22 3e 31 38 32 38 39 31 3c 2f 74 64 3e 3c 74 64 ">182891</td><td
a370: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
a380: 38 33 30 35 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 83057</td><td al
a390: 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 2e 36 34 ign="right">6.64
a3a0: 33 33 30 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 3309</td><td>NUL
a3b0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 L</td><td>VIA MA
a3c0: 43 41 4c 4c 45 27 3c 2f 74 64 3e 0d 0a 3c 2f 74 CALLE'</td>..</t
a3d0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c r>..<tr>..<td al
a3e0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 38 3c 2f 74 ign="right">8</t
a3f0: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
a400: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a410: 3e 32 32 34 31 36 37 3c 2f 74 64 3e 3c 74 64 20 >224167</td><td
a420: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
a430: 33 30 35 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3057</td><td ali
a440: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 30 35 gn="right">18305
a450: 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 6</td><td align=
a460: 22 72 69 67 68 74 22 3e 33 2e 31 35 31 32 37 32 "right">3.151272
a470: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
a480: 64 3e 3c 74 64 3e 56 49 41 20 4d 41 43 41 4c 4c d><td>VIA MACALL
a490: 45 27 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a E'</td>..</tr>..
a4a0: 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d <tr>..<td align=
a4b0: 22 72 69 67 68 74 22 3e 39 3c 2f 74 64 3e 3c 74 "right">9</td><t
a4c0: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
a4d0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
a4e0: 31 37 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 174</td><td alig
a4f0: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 30 35 36 n="right">183056
a500: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
a510: 72 69 67 68 74 22 3e 31 38 32 39 34 31 3c 2f 74 right">182941</t
a520: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a530: 68 74 22 3e 37 2e 39 36 36 38 37 30 3c 2f 74 64 ht">7.966870</td
a540: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
a550: 64 3e 56 49 41 20 52 4f 44 49 3c 2f 74 64 3e 0d d>VIA RODI</td>.
a560: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
a570: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a580: 31 30 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 10</td><td>Link<
a590: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a5a0: 69 67 68 74 22 3e 32 32 34 30 35 39 3c 2f 74 64 ight">224059</td
a5b0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a5c0: 74 22 3e 31 38 32 39 34 31 3c 2f 74 64 3e 3c 74 t">182941</td><t
a5d0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a5e0: 31 38 32 30 30 31 3c 2f 74 64 3e 3c 74 64 20 61 182001</td><td a
a5f0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 2e 33 lign="right">6.3
a600: 39 33 37 34 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 93747</td><td>NU
a610: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 52 LL</td><td>VIA R
a620: 4f 44 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ODI</td>..</tr>.
a630: 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
a640: 3d 22 72 69 67 68 74 22 3e 31 31 3c 2f 74 64 3e ="right">11</td>
a650: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
a660: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
a670: 32 32 36 33 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 22637</td><td al
a680: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 30 ign="right">1820
a690: 30 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 01</td><td align
a6a0: 3d 22 72 69 67 68 74 22 3e 31 38 32 30 30 30 3c ="right">182000<
a6b0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a6c0: 69 67 68 74 22 3e 32 2e 34 37 35 35 33 38 3c 2f ight">2.475538</
a6d0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
a6e0: 3c 74 64 3e 56 49 41 20 50 49 45 54 52 4f 20 41 <td>VIA PIETRO A
a6f0: 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 RETINO</td>..</t
a700: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c r>..<tr>..<td al
a710: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 32 3c 2f ign="right">12</
a720: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
a730: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a740: 22 3e 32 32 32 36 33 36 3c 2f 74 64 3e 3c 74 64 ">222636</td><td
a750: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
a760: 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 82000</td><td al
a770: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
a780: 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
a790: 3d 22 72 69 67 68 74 22 3e 31 34 2e 33 36 33 34 ="right">14.3634
a7a0: 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 08</td><td>NULL<
a7b0: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 /td><td>VIA PIET
a7c0: 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d RO ARETINO</td>.
a7d0: 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e .</tr>..</table>
a7e0: 0d 0a 3c 62 72 3e 0d 0a 41 73 20 79 6f 75 20 63 ..<br>..As you c
a7f0: 61 6e 20 65 61 73 69 6c 79 20 6e 6f 74 69 63 65 an easily notice
a800: 2c 20 74 68 65 20 6f 70 74 69 6d 61 6c 20 70 61 , the optimal pa
a810: 74 68 73 20 72 65 74 75 72 6e 65 64 20 62 79 20 ths returned by
a820: 74 68 65 20 3c 62 3e 62 79 63 61 72 3c 2f 62 3e the <b>bycar</b>
a830: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
a840: 54 61 62 6c 65 20 74 68 65 20 70 61 74 68 73 20 Table the paths
a850: 69 6e 20 6f 70 70 6f 73 69 74 65 20 64 69 72 65 in opposite dire
a860: 63 74 69 6f 6e 73 20 73 74 72 6f 6e 67 6c 79 20 ctions strongly
a870: 64 69 66 66 65 72 20 62 65 74 77 65 65 6e 20 74 differ between t
a880: 68 65 6d 2c 20 61 6e 64 20 62 6f 74 68 20 61 72 hem, and both ar
a890: 65 20 63 6f 6d 70 6c 65 74 65 6c 79 20 64 69 66 e completely dif
a8a0: 66 65 72 65 6e 74 20 66 72 6f 6d 20 74 68 65 20 ferent from the
a8b0: 70 61 74 68 20 72 65 74 75 72 6e 65 64 20 62 79 path returned by
a8c0: 20 71 75 65 72 79 69 6e 67 20 3c 62 3e 62 79 66 querying <b>byf
a8d0: 6f 6f 74 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 41 20 oot</b>.<br>..A
a8e0: 71 75 69 63 6b 20 67 6c 61 6e 63 65 20 61 74 20 quick glance at
a8f0: 74 68 65 20 62 65 6c 6f 77 20 6d 61 70 20 77 69 the below map wi
a900: 6c 6c 20 73 75 72 65 6c 79 20 68 65 6c 70 20 74 ll surely help t
a910: 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 62 65 74 o understand bet
a920: 74 65 72 20 77 68 61 74 27 73 20 72 65 61 6c 6c ter what's reall
a930: 79 20 68 61 70 70 65 6e 69 6e 67 2e 3c 62 72 3e y happening.<br>
a940: 0d 0a 54 68 69 73 20 69 73 20 61 20 63 65 6e 74 ..This is a cent
a950: 72 61 6c 20 61 72 65 61 20 6f 66 20 74 68 65 20 ral area of the
a960: 74 6f 77 6e 20 6f 66 20 41 72 65 7a 7a 6f 20 61 town of Arezzo a
a970: 72 6f 75 6e 64 20 74 68 65 20 61 72 63 68 61 65 round the archae
a980: 6f 6c 6f 67 69 63 61 6c 20 72 75 69 6e 73 20 6f ological ruins o
a990: 66 20 74 68 65 20 52 6f 6d 61 6e 20 41 6d 70 68 f the Roman Amph
a9a0: 69 74 68 65 61 74 65 72 3b 20 63 69 72 63 75 6c itheater; circul
a9b0: 61 74 69 6e 67 20 62 79 20 63 61 72 20 69 73 20 ating by car is
a9c0: 64 69 73 63 6f 75 72 61 67 65 64 20 61 6e 64 20 discouraged and
a9d0: 69 73 20 73 75 62 6a 65 63 74 20 74 6f 20 6d 61 is subject to ma
a9e0: 6e 79 20 6f 6e 65 2d 77 61 79 20 72 65 73 74 72 ny one-way restr
a9f0: 69 63 74 69 6f 6e 73 2e 20 4e 6f 74 20 73 75 72 ictions. Not sur
aa00: 70 72 69 73 69 6e 67 6c 79 2c 20 6d 6f 76 69 6e prisingly, movin
aa10: 67 20 62 79 20 66 6f 6f 74 20 69 73 20 74 68 65 g by foot is the
aa20: 20 66 61 73 74 65 72 20 6f 70 74 69 6f 6e 2e 0d faster option..
aa30: 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 69 6d 67 20 .<br><br>..<img
aa40: 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 src="https://www
aa50: 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 .gaia-gis.it/gai
aa60: 61 2d 73 69 6e 73 2f 72 6f 75 74 69 6e 67 2d 66 a-sins/routing-f
aa70: 69 67 73 2f 72 6f 75 74 69 6e 67 31 2e 6a 70 67 igs/routing1.jpg
aa80: 22 20 61 6c 74 3d 22 66 69 67 31 22 3e 0d 0a 3c " alt="fig1">..<
aa90: 75 6c 3e 0d 0a 3c 6c 69 3e 79 65 6c 6c 6f 77 20 ul>..<li>yellow
aaa0: 70 61 74 68 3a 20 70 65 64 65 73 74 72 69 61 6e path: pedestrian
aab0: 73 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 67 72 65 65 s</li>..<li>gree
aac0: 6e 20 70 61 74 68 3a 20 63 61 72 2c 20 64 69 72 n path: car, dir
aad0: 65 63 74 20 64 69 72 65 63 74 69 6f 6e 3c 2f 6c ect direction</l
aae0: 69 3e 0d 0a 3c 6c 69 3e 72 65 64 20 70 61 74 68 i>..<li>red path
aaf0: 3a 20 63 61 72 2c 20 72 65 74 75 72 6e 20 64 69 : car, return di
ab00: 72 65 63 74 69 6f 6e 3c 2f 6c 69 3e 0d 0a 3c 2f rection</li>..</
ab10: 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 62 6c ul>..<br>..<tabl
ab20: 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 66 66 e bgcolor="#c0ff
ab30: 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d c0" cellspacing=
ab40: 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 "10" cellpadding
ab50: 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c ="6"><tr><td>..<
ab60: 68 33 3e 4c 69 6e 65 73 74 72 69 6e 67 73 20 72 h3>Linestrings r
ab70: 65 74 75 72 6e 65 64 20 62 79 20 56 69 72 74 75 eturned by Virtu
ab80: 61 6c 52 6f 75 74 69 6e 67 3c 2f 68 33 3e 0d 0a alRouting</h3>..
ab90: 41 6c 6c 20 4c 49 4e 45 53 54 52 49 4e 47 20 47 All LINESTRING G
aba0: 65 6f 6d 65 74 72 69 65 73 20 63 72 65 61 74 65 eometries create
abb0: 64 20 62 79 20 61 6e 79 20 56 69 72 74 75 61 6c d by any Virtual
abc0: 52 6f 75 74 69 6e 67 20 77 69 6c 6c 20 61 6c 77 Routing will alw
abd0: 61 79 73 20 63 6f 6e 74 61 69 6e 20 3c 62 3e 4d ays contain <b>M
abe0: 20 76 61 6c 75 65 73 3c 2f 62 3e 3a 0d 0a 3c 75 values</b>:..<u
abf0: 6c 3e 0d 0a 3c 6c 69 3e 69 66 20 74 68 65 20 75 l>..<li>if the u
ac00: 6e 64 65 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f nderlaying Netwo
ac10: 72 6b 27 73 20 47 65 6f 6d 65 74 72 69 65 73 20 rk's Geometries
ac20: 61 72 65 20 3c 62 3e 58 59 3c 2f 62 3e 20 74 68 are <b>XY</b> th
ac30: 65 6e 20 3c 62 3e 58 59 4d 3c 2f 62 3e 20 4c 69 en <b>XYM</b> Li
ac40: 6e 65 73 74 72 69 6e 67 73 20 77 69 6c 6c 20 62 nestrings will b
ac50: 65 20 72 65 74 75 72 6e 65 64 2e 3c 2f 6c 69 3e e returned.</li>
ac60: 0d 0a 3c 6c 69 3e 69 66 20 74 68 65 20 75 6e 64 ..<li>if the und
ac70: 65 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f 72 6b erlaying Network
ac80: 27 73 20 47 65 6f 6d 65 74 72 69 65 73 20 61 72 's Geometries ar
ac90: 65 20 3c 62 3e 58 59 5a 3c 2f 62 3e 20 74 68 65 e <b>XYZ</b> the
aca0: 6e 20 3c 62 3e 58 59 5a 4d 3c 2f 62 3e 20 4c 69 n <b>XYZM</b> Li
acb0: 6e 65 73 74 72 69 6e 67 73 20 77 69 6c 6c 20 62 nestrings will b
acc0: 65 20 72 65 74 75 72 6e 65 64 2e 3c 2f 6c 69 3e e returned.</li>
acd0: 0d 0a 3c 6c 69 3e 69 66 20 74 68 65 20 75 6e 64 ..<li>if the und
ace0: 65 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f 72 6b erlaying Network
acf0: 27 73 20 47 65 6f 6d 65 74 72 69 65 73 20 61 72 's Geometries ar
ad00: 65 20 3c 62 3e 58 59 4d 3c 2f 62 3e 20 6f 72 20 e <b>XYM</b> or
ad10: 3c 62 3e 58 59 5a 4d 3c 2f 62 3e 20 74 68 65 6e <b>XYZM</b> then
ad20: 20 20 4c 69 6e 65 73 74 72 69 6e 67 73 20 72 65 Linestrings re
ad30: 74 75 72 6e 65 64 20 69 6e 74 6f 20 74 68 65 20 turned into the
ad40: 72 65 73 75 6c 74 73 65 74 20 77 69 6c 6c 20 6d resultset will m
ad50: 61 69 6e 74 61 69 6e 20 74 68 65 20 73 61 6d 65 aintain the same
ad60: 20 64 69 6d 65 6e 73 69 6f 6e 73 20 61 73 20 69 dimensions as i
ad70: 6e 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 6e n the underlayin
ad80: 67 20 4e 65 74 77 6f 72 6b 2e 3c 2f 6c 69 3e 0d g Network.</li>.
ad90: 0a 3c 6c 69 3e 69 6e 20 61 6e 79 20 63 61 73 65 .<li>in any case
ada0: 20 74 68 65 20 3c 62 3e 4d 3c 2f 62 3e 20 76 61 the <b>M</b> va
adb0: 6c 75 65 73 20 77 69 6c 6c 20 62 65 20 61 70 70 lues will be app
adc0: 72 6f 70 72 69 61 74 65 6c 79 20 73 65 74 20 73 ropriately set s
add0: 6f 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 74 o to represent t
ade0: 68 65 20 3c 75 3e 70 61 72 74 69 61 6c 20 63 6f he <u>partial co
adf0: 73 74 3c 2f 75 3e 20 63 6f 72 72 65 73 70 6f 6e st</u> correspon
ae00: 64 69 6e 67 20 74 6f 20 65 61 63 68 20 76 65 72 ding to each ver
ae10: 74 65 78 2e 0d 0a 28 69 66 20 74 68 65 20 69 6e tex...(if the in
ae20: 70 75 74 20 4c 69 6e 65 73 74 72 69 6e 67 73 20 put Linestrings
ae30: 61 6c 72 65 61 64 79 20 63 6f 6e 74 61 69 6e 73 already contains
ae40: 20 4d 2d 76 61 6c 75 65 73 20 74 68 65 79 27 6c M-values they'l
ae50: 6c 20 62 65 20 6f 76 65 72 77 72 69 74 74 65 6e l be overwritten
ae60: 29 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a ).</li>..</ul>..
ae70: 3c 62 72 3e 0d 0a 49 6e 20 6f 74 68 65 72 20 77 <br>..In other w
ae80: 6f 72 64 73 2c 20 61 6c 6c 20 4c 69 6e 65 73 74 ords, all Linest
ae90: 72 69 6e 67 73 20 72 65 74 75 72 6e 65 64 20 62 rings returned b
aea0: 79 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 y VirtualRouting
aeb0: 20 63 61 6e 20 65 66 66 65 63 74 69 76 65 6c 79 can effectively
aec0: 20 73 75 70 70 6f 72 74 20 3c 62 3e 4c 52 3c 2f support <b>LR</
aed0: 62 3e 20 28 3c 69 3e 4c 69 6e 65 61 72 20 52 65 b> (<i>Linear Re
aee0: 66 65 72 65 6e 63 69 6e 67 3c 2f 69 3e 29 20 53 ferencing</i>) S
aef0: 51 4c 20 66 75 6e 63 74 69 6f 6e 73 2c 20 61 73 QL functions, as
af00: 20 69 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e in the followin
af10: 67 20 65 78 61 6d 70 6c 65 73 3a 0d 0a 3c 76 65 g examples:..<ve
af20: 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 rbatim>..SELECT
af30: 53 54 5f 4c 6f 63 61 74 65 5f 42 65 74 77 65 65 ST_Locate_Betwee
af40: 6e 5f 4d 65 61 73 75 72 65 73 28 3c 67 65 6f 6d n_Measures(<geom
af50: 65 74 72 79 3e 2c 20 33 30 2e 30 2c 20 34 35 2e etry>, 30.0, 45.
af60: 30 29 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 53 54 0);....SELECT ST
af70: 5f 4c 6f 63 61 74 65 5f 42 65 74 77 65 65 6e 5f _Locate_Between_
af80: 4d 65 61 73 75 72 65 73 28 3c 67 65 6f 6d 65 74 Measures(<geomet
af90: 72 79 3e 2c 20 38 30 2e 30 2c 20 39 35 2e 30 29 ry>, 80.0, 95.0)
afa0: 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a ;..</verbatim>..
afb0: 54 68 65 20 73 69 64 65 20 6d 61 70 20 67 72 61 The side map gra
afc0: 70 68 69 63 61 6c 6c 79 20 73 68 6f 77 73 20 74 phically shows t
afd0: 68 65 20 65 73 74 69 6d 61 74 65 64 20 70 6f 73 he estimated pos
afe0: 69 74 69 6f 6e 73 20 72 65 73 70 65 63 74 69 76 itions respectiv
aff0: 65 6c 79 20 3c 62 3e 33 30 3c 2f 62 3e 2d 3c 62 ely <b>30</b>-<b
b000: 3e 34 35 3c 2f 62 3e 20 73 65 63 6f 6e 64 73 20 >45</b> seconds
b010: 61 66 74 65 72 20 73 74 61 72 74 69 6e 67 20 28 after starting (
b020: 79 65 6c 6c 6f 77 20 64 6f 74 74 65 64 20 6c 69 yellow dotted li
b030: 6e 65 29 20 61 6e 64 20 3c 62 3e 38 30 3c 2f 62 ne) and <b>80</b
b040: 3e 2d 3c 62 3e 39 35 3c 2f 62 3e 20 73 65 63 6f >-<b>95</b> seco
b050: 6e 64 73 20 61 66 74 65 72 20 73 74 61 72 74 69 nds after starti
b060: 6e 67 20 28 67 72 65 65 6e 20 64 6f 74 74 65 64 ng (green dotted
b070: 20 6c 69 6e 65 29 2e 3c 62 72 3e 0d 0a 28 61 73 line).<br>..(as
b080: 73 75 6d 69 6e 67 20 74 68 65 20 73 61 6d 65 20 suming the same
b090: 70 61 74 68 20 72 65 74 75 72 6e 65 64 20 62 79 path returned by
b0a0: 20 74 68 65 20 6c 61 74 65 73 74 20 3c 62 3e 62 the latest <b>b
b0b0: 79 63 61 72 3c 2f 62 3e 20 71 75 65 72 79 29 2e ycar</b> query).
b0c0: 0d 0a 3c 2f 74 64 3e 0d 0a 3c 74 64 3e 3c 69 6d ..</td>..<td><im
b0d0: 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77 g src="https://w
b0e0: 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 67 ww.gaia-gis.it/g
b0f0: 61 69 61 2d 73 69 6e 73 2f 72 6f 75 74 69 6e 67 aia-sins/routing
b100: 2d 66 69 67 73 2f 72 6f 75 74 69 6e 67 32 2e 6a -figs/routing2.j
b110: 70 67 22 20 61 6c 74 3d 22 66 69 67 32 22 3e 3c pg" alt="fig2"><
b120: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 /td>..</tr>..</t
b130: 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c 68 32 able>..<br>..<h2
b140: 3e 50 6c 61 79 69 6e 67 20 77 69 74 68 20 56 69 >Playing with Vi
b150: 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 63 6f 6e rtualRouting con
b160: 66 69 67 75 72 61 62 6c 65 20 6f 70 74 69 6f 6e figurable option
b170: 73 3c 2f 68 32 3e 0d 0a 53 65 76 65 72 61 6c 20 s</h2>..Several
b180: 61 73 70 65 63 74 73 20 6f 66 20 56 69 72 74 75 aspects of Virtu
b190: 61 6c 52 6f 75 74 69 6e 67 20 63 61 6e 20 62 65 alRouting can be
b1a0: 20 66 72 65 65 6c 79 20 63 75 73 74 6f 6d 69 7a freely customiz
b1b0: 65 64 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d ed...<verbatim>.
b1c0: 0a 55 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 .UPDATE byfoot S
b1d0: 45 54 20 41 6c 67 6f 72 69 74 68 6d 20 3d 20 27 ET Algorithm = '
b1e0: 41 2a 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 41 A*';....SELECT A
b1f0: 6c 67 6f 72 69 74 68 6d 2c 20 4f 70 74 69 6f 6e lgorithm, Option
b200: 73 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c s, RouteRow, Rol
b210: 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f e, LinkRowid, No
b220: 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 deFrom, NodeTo,
b230: 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 Cost, Geometry,
b240: 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f Name..FROM byfoo
b250: 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f t..WHERE NodeFro
b260: 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e m = 178731 AND N
b270: 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 36 3b 0d odeTo = 183286;.
b280: 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 49 66 .</verbatim>..If
b290: 20 79 6f 75 20 72 65 6d 65 6d 62 65 72 20 69 6e you remember in
b2a0: 20 61 6c 6c 20 74 68 65 20 70 72 65 76 69 6f 75 all the previou
b2b0: 73 20 65 78 61 6d 70 6c 65 73 20 74 68 65 20 3c s examples the <
b2c0: 62 3e 44 69 6a 6b 73 74 72 61 27 73 3c 2f 62 3e b>Dijkstra's</b>
b2d0: 20 61 6c 67 6f 72 69 74 68 6d 20 77 61 73 20 75 algorithm was u
b2e0: 73 65 64 3b 20 6e 6f 77 20 28 61 66 74 65 72 20 sed; now (after
b2f0: 65 78 65 63 75 74 69 6e 67 20 74 68 65 20 61 62 executing the ab
b300: 6f 76 65 20 3c 62 3e 55 50 44 41 54 45 3c 2f 62 ove <b>UPDATE</b
b310: 3e 29 20 61 6c 6c 20 53 68 6f 72 74 65 73 74 20 >) all Shortest
b320: 50 61 74 68 20 71 75 65 72 69 65 73 20 77 69 6c Path queries wil
b330: 6c 20 62 65 20 62 61 73 65 64 20 6f 6e 20 74 68 l be based on th
b340: 65 20 61 6c 74 65 72 6e 61 74 69 76 65 20 3c 62 e alternative <b
b350: 3e 41 2a 3c 2f 62 3e 20 61 6c 67 6f 72 69 74 68 >A*</b> algorith
b360: 6d 2e 3c 62 72 3e 0d 0a 49 66 20 79 6f 75 20 77 m.<br>..If you w
b370: 69 73 68 20 74 6f 20 73 65 6c 65 63 74 20 61 67 ish to select ag
b380: 61 69 6e 20 74 68 65 20 44 69 6a 6b 73 74 72 61 ain the Dijkstra
b390: 27 73 20 61 6c 67 6f 72 69 74 68 6d 20 79 6f 75 's algorithm you
b3a0: 20 6a 75 73 74 20 68 61 76 65 20 74 6f 20 65 78 just have to ex
b3b0: 65 63 75 74 65 3c 62 72 3e 20 3c 62 3e 55 50 44 ecute<br> <b>UPD
b3c0: 41 54 45 20 62 79 66 6f 6f 74 20 53 45 54 20 41 ATE byfoot SET A
b3d0: 6c 67 6f 72 69 74 68 6d 20 3d 20 27 44 49 4a 4b lgorithm = 'DIJK
b3e0: 53 54 52 41 27 3b 3c 2f 62 3e 2e 3c 62 72 3e 3c STRA';</b>.<br><
b3f0: 62 72 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 br>..The followi
b400: 6e 67 20 74 61 62 6c 65 20 73 68 6f 77 73 20 74 ng table shows t
b410: 68 65 20 72 65 73 75 6c 74 73 65 74 20 72 65 74 he resultset ret
b420: 75 72 6e 65 64 20 62 79 20 74 68 65 20 70 72 65 urned by the pre
b430: 76 69 6f 75 73 20 53 68 6f 72 74 65 73 74 20 50 vious Shortest P
b440: 61 74 68 20 71 75 65 72 79 3b 20 70 6c 65 61 73 ath query; pleas
b450: 65 20 6e 6f 74 69 63 65 20 74 68 65 20 76 61 6c e notice the val
b460: 75 65 20 69 6e 20 74 68 65 20 3c 62 3e 41 6c 67 ue in the <b>Alg
b470: 6f 72 69 74 68 6d 3c 2f 62 3e 20 63 6f 6c 75 6d orithm</b> colum
b480: 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 n...<br><br>..<t
b490: 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 31 22 20 able border="1"
b4a0: 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 bgcolor="#ffffcf
b4b0: 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 " cellspacing="4
b4c0: 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 " cellpadding="6
b4d0: 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f ">..<tr><th bgco
b4e0: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 41 6c lor="#d0d0a0">Al
b4f0: 67 6f 72 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 gorithm</th><th
b500: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
b510: 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 ">Options</th><t
b520: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
b530: 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 a0">RouteRow</th
b540: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
b550: 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 0d0a0">Role</th>
b560: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
b570: 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c d0a0">LinkRowid<
b580: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
b590: 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 "#d0d0a0">NodeFr
b5a0: 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c om</th><th bgcol
b5b0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 or="#d0d0a0">Nod
b5c0: 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f eTo</th><th bgco
b5d0: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f lor="#d0d0a0">Co
b5e0: 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c st</th><th bgcol
b5f0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f or="#d0d0a0">Geo
b600: 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 metry</th><th bg
b610: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
b620: 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a Name</th></tr>..
b630: 3c 74 72 3e 3c 74 64 3e 41 2a 3c 2f 74 64 3e 3c <tr><td>A*</td><
b640: 74 64 3e 46 75 6c 6c 3c 2f 74 64 3e 3c 74 64 20 td>Full</td><td
b650: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
b660: 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
b670: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
b680: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
b690: 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
b6a0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
b6b0: 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3286</td><td ali
b6c0: 67 6e 3d 22 72 69 67 68 74 22 3e 33 30 30 2e 39 gn="right">300.9
b6d0: 31 32 32 30 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 12208</td><td>BL
b6e0: 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f 4d 45 54 OB sz=272 GEOMET
b6f0: 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
b700: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
b710: 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
b720: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
b730: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
b740: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
b750: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
b760: 68 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c ht">224014</td><
b770: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
b780: 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
b790: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
b7a0: 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2885</td><td ali
b7b0: 67 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 gn="right">94.81
b7c0: 32 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2424</td><td>NUL
b7d0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 L</td><td>VIA PI
b7e0: 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 ETRO ARETINO</td
b7f0: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
b800: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
b810: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
b820: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 ign="right">2</t
b830: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
b840: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
b850: 3e 32 32 34 34 34 36 3c 2f 74 64 3e 3c 74 64 20 >224446</td><td
b860: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
b870: 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2885</td><td ali
b880: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 gn="right">17888
b890: 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
b8a0: 22 72 69 67 68 74 22 3e 36 39 2e 37 32 37 37 32 "right">69.72772
b8b0: 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 6</td><td>NULL</
b8c0: 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 47 41 td><td>VIA MARGA
b8d0: 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 RITONE</td>..</t
b8e0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
b8f0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
b900: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
b910: 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e ight">3</td><td>
b920: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
b930: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 34 31 gn="right">22441
b940: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
b950: 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c 2f "right">178880</
b960: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
b970: 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e ght">183286</td>
b980: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
b990: 22 3e 31 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 ">136.372057</td
b9a0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
b9b0: 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e d>VIA MARGARITON
b9c0: 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c E</td>..</tr>..<
b9d0: 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 /table>..<br><br
b9e0: 3e 3c 62 72 3e 0d 0a 59 6f 75 20 63 61 6e 20 65 ><br>..You can e
b9f0: 76 65 6e 74 75 61 6c 6c 79 20 63 6f 6e 66 69 67 ventually config
ba00: 75 72 65 20 74 68 65 20 72 65 73 75 6c 74 73 65 ure the resultse
ba10: 74 20 72 65 74 75 72 6e 65 64 20 74 68 65 20 56 t returned the V
ba20: 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 71 75 irtualRouting qu
ba30: 65 72 69 65 73 2e 0d 0a 3c 76 65 72 62 61 74 69 eries...<verbati
ba40: 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f 6f m>..UPDATE byfoo
ba50: 74 20 53 45 54 20 4f 70 74 69 6f 6e 73 20 3d 20 t SET Options =
ba60: 27 4e 4f 20 4c 49 4e 4b 53 27 3b 0d 0a 0d 0a 53 'NO LINKS';....S
ba70: 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c ELECT Algorithm,
ba80: 20 4f 70 74 69 6f 6e 73 2c 20 52 6f 75 74 65 52 Options, RouteR
ba90: 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f ow, Role, LinkRo
baa0: 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e wid, NodeFrom, N
bab0: 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f odeTo, Cost, Geo
bac0: 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f metry, Name..FRO
bad0: 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 M byfoot..WHERE
bae0: 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 NodeFrom = 17873
baf0: 31 20 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 31 1 AND NodeTo = 1
bb00: 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 83286;..</verbat
bb10: 69 6d 3e 0d 0a 41 66 74 65 72 20 73 65 74 74 69 im>..After setti
bb20: 6e 67 20 3c 62 3e 4f 70 74 69 6f 6e 73 3d 27 4e ng <b>Options='N
bb30: 4f 20 4c 49 4e 4b 53 27 3c 2f 62 3e 20 74 68 65 O LINKS'</b> the
bb40: 20 72 65 73 75 6c 74 73 65 74 20 77 69 6c 6c 20 resultset will
bb50: 73 69 6d 70 6c 79 20 63 6f 6e 74 61 69 6e 20 74 simply contain t
bb60: 68 65 20 68 65 61 64 65 72 20 72 6f 77 2c 20 61 he header row, a
bb70: 6e 64 20 61 6c 6c 20 74 68 65 20 66 6f 6c 6c 6f nd all the follo
bb80: 77 69 6e 67 20 72 6f 77 73 20 77 69 6c 6c 20 62 wing rows will b
bb90: 65 20 73 75 70 70 72 65 73 73 65 64 2e 3c 62 72 e suppressed.<br
bba0: 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 >..<u>Note</u>:
bbb0: 70 72 6f 64 75 63 69 6e 67 20 61 20 72 65 64 75 producing a redu
bbc0: 63 65 64 20 72 65 73 75 6c 74 73 65 74 20 69 73 ced resultset is
bbd0: 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 expected to be
bbe0: 73 6f 6d 65 77 61 79 20 66 61 73 74 65 72 2e 3c someway faster.<
bbf0: 62 72 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 br>..The followi
bc00: 6e 67 20 74 61 62 6c 65 20 73 68 6f 77 73 20 74 ng table shows t
bc10: 68 65 20 72 65 73 75 6c 74 73 65 74 20 72 65 74 he resultset ret
bc20: 75 72 6e 65 64 20 62 79 20 74 68 65 20 70 72 65 urned by the pre
bc30: 76 69 6f 75 73 20 53 68 6f 72 74 65 73 74 20 50 vious Shortest P
bc40: 61 74 68 20 71 75 65 72 79 3b 20 70 6c 65 61 73 ath query; pleas
bc50: 65 20 6e 6f 74 69 63 65 20 74 68 65 20 76 61 6c e notice the val
bc60: 75 65 20 69 6e 20 74 68 65 20 3c 62 3e 4f 70 74 ue in the <b>Opt
bc70: 69 6f 6e 73 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 2e ions</b> column.
bc80: 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 ..<br><br>..<tab
bc90: 6c 65 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 le border="1" bg
bca0: 63 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 color="#ffffcf"
bcb0: 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 cellspacing="4"
bcc0: 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e cellpadding="6">
bcd0: 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f ..<tr><th bgcolo
bce0: 72 3d 22 23 64 30 64 30 61 30 22 3e 41 6c 67 6f r="#d0d0a0">Algo
bcf0: 72 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 rithm</th><th bg
bd00: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
bd10: 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 Options</th><th
bd20: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
bd30: 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c ">RouteRow</th><
bd40: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
bd50: 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 0a0">Role</th><t
bd60: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
bd70: 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 a0">LinkRowid</t
bd80: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
bd90: 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d d0d0a0">NodeFrom
bda0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
bdb0: 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 ="#d0d0a0">NodeT
bdc0: 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f o</th><th bgcolo
bdd0: 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 r="#d0d0a0">Cost
bde0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
bdf0: 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 ="#d0d0a0">Geome
be00: 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f try</th><th bgco
be10: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 lor="#d0d0a0">Na
be20: 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 me</th></tr>..<t
be30: 72 3e 0d 0a 3c 74 64 3e 41 2a 3c 2f 74 64 3e 3c r>..<td>A*</td><
be40: 74 64 3e 4e 6f 20 4c 69 6e 6b 73 3c 2f 74 64 3e td>No Links</td>
be50: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
be60: 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 ">0</td><td>Rout
be70: 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f e</td><td>NULL</
be80: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
be90: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
bea0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
beb0: 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 ">183286</td><td
bec0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
bed0: 30 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 00.912208</td><t
bee0: 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 d>BLOB sz=272 GE
bef0: 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e OMETRY</td><td>N
bf00: 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
bf10: 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c .</table>..<br><
bf20: 62 72 3e 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 br><br>..<verbat
bf30: 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f im>..UPDATE byfo
bf40: 6f 74 20 53 45 54 20 4f 70 74 69 6f 6e 73 20 3d ot SET Options =
bf50: 20 27 4e 4f 20 47 45 4f 4d 45 54 52 49 45 53 27 'NO GEOMETRIES'
bf60: 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 41 6c 67 6f ;....SELECT Algo
bf70: 72 69 74 68 6d 2c 20 4f 70 74 69 6f 6e 73 2c 20 rithm, Options,
bf80: 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 RouteRow, Role,
bf90: 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 LinkRowid, NodeF
bfa0: 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 rom, NodeTo, Cos
bfb0: 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d t, Geometry, Nam
bfc0: 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a e..FROM byfoot..
bfd0: 57 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d WHERE NodeFrom =
bfe0: 20 31 37 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 178731 AND Node
bff0: 54 6f 20 3d 20 31 38 33 32 38 36 3b 0d 0a 3c 2f To = 183286;..</
c000: 76 65 72 62 61 74 69 6d 3e 41 66 74 65 72 20 73 verbatim>After s
c010: 65 74 74 69 6e 67 20 3c 62 3e 4f 70 74 69 6f 6e etting <b>Option
c020: 73 3d 27 4e 4f 20 47 45 4f 4d 45 54 52 49 45 53 s='NO GEOMETRIES
c030: 27 3c 2f 62 3e 20 74 68 65 20 72 65 73 75 6c 74 '</b> the result
c040: 73 65 74 20 77 69 6c 6c 20 63 6f 6e 74 61 69 6e set will contain
c050: 20 61 6c 6c 20 72 6f 77 73 2c 20 62 75 74 20 61 all rows, but a
c060: 6c 6c 20 47 65 6f 6d 65 74 72 69 65 73 20 77 69 ll Geometries wi
c070: 6c 6c 20 62 65 20 73 75 70 70 72 65 73 73 65 64 ll be suppressed
c080: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f .<br>..<u>Note</
c090: 75 3e 3a 20 74 68 69 73 20 74 6f 6f 20 69 73 20 u>: this too is
c0a0: 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 73 expected to be s
c0b0: 6f 6d 65 77 61 79 20 66 61 73 74 65 72 2e 3c 62 omeway faster.<b
c0c0: 72 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e r>..The followin
c0d0: 67 20 74 61 62 6c 65 20 73 68 6f 77 73 20 74 68 g table shows th
c0e0: 65 20 72 65 73 75 6c 74 73 65 74 20 72 65 74 75 e resultset retu
c0f0: 72 6e 65 64 20 62 79 20 74 68 65 20 70 72 65 76 rned by the prev
c100: 69 6f 75 73 20 53 68 6f 72 74 65 73 74 20 50 61 ious Shortest Pa
c110: 74 68 20 71 75 65 72 79 3b 20 70 6c 65 61 73 65 th query; please
c120: 20 6e 6f 74 69 63 65 20 74 68 65 20 76 61 6c 75 notice the valu
c130: 65 20 69 6e 20 74 68 65 20 3c 62 3e 4f 70 74 69 e in the <b>Opti
c140: 6f 6e 73 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 2e 0d ons</b> column..
c150: 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c .<br><br>..<tabl
c160: 65 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 e border="1" bgc
c170: 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 olor="#ffffcf" c
c180: 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 ellspacing="4" c
c190: 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d ellpadding="6">.
c1a0: 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 .<tr><th bgcolor
c1b0: 3d 22 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 ="#d0d0a0">Algor
c1c0: 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 ithm</th><th bgc
c1d0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4f olor="#d0d0a0">O
c1e0: 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 ptions</th><th b
c1f0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
c200: 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 >RouteRow</th><t
c210: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
c220: 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 a0">Role</th><th
c230: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
c240: 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 0">LinkRowid</th
c250: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
c260: 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 0d0a0">NodeFrom<
c270: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
c280: 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f "#d0d0a0">NodeTo
c290: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
c2a0: 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 3c ="#d0d0a0">Cost<
c2b0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
c2c0: 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 "#d0d0a0">Geomet
c2d0: 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ry</th><th bgcol
c2e0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 6d or="#d0d0a0">Nam
c2f0: 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 e</th></tr>..<tr
c300: 3e 3c 74 64 3e 41 2a 3c 2f 74 64 3e 3c 74 64 3e ><td>A*</td><td>
c310: 4e 6f 20 47 65 6f 6d 65 74 72 69 65 73 3c 2f 74 No Geometries</t
c320: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
c330: 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
c340: 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
c350: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
c360: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
c370: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
c380: 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c ht">183286</td><
c390: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
c3a0: 3e 33 30 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e >300.912208</td>
c3b0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
c3c0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
c3d0: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
c3e0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
c3f0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
c400: 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c ght">1</td><td>L
c410: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
c420: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 n="right">224014
c430: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
c440: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
c450: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
c460: 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c ht">182885</td><
c470: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
c480: 3e 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e 3c >94.812424</td><
c490: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
c4a0: 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 VIA PIETRO ARETI
c4b0: 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NO</td>..</tr>..
c4c0: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
c4d0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
c4e0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
c4f0: 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">2</td><td>Link
c500: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
c510: 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c 2f 74 right">224446</t
c520: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
c530: 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c ht">182885</td><
c540: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
c550: 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 >178880</td><td
c560: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 39 align="right">69
c570: 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 3e .727726</td><td>
c580: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
c590: 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 MARGARITONE</td
c5a0: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
c5b0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
c5c0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
c5d0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
c5e0: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
c5f0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
c600: 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 64 20 >224414</td><td
c610: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
c620: 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8880</td><td ali
c630: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 gn="right">18328
c640: 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 6</td><td align=
c650: 22 72 69 67 68 74 22 3e 31 33 36 2e 33 37 32 30 "right">136.3720
c660: 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 57</td><td>NULL<
c670: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 47 /td><td>VIA MARG
c680: 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f ARITONE</td>..</
c690: 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c tr>..</table>..<
c6a0: 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 76 65 br><br><br>..<ve
c6b0: 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 rbatim>..UPDATE
c6c0: 62 79 66 6f 6f 74 20 53 45 54 20 4f 70 74 69 6f byfoot SET Optio
c6d0: 6e 73 20 3d 20 27 53 49 4d 50 4c 45 27 3b 0d 0a ns = 'SIMPLE';..
c6e0: 0d 0a 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 ..SELECT Algorit
c6f0: 68 6d 2c 20 4f 70 74 69 6f 6e 73 2c 20 52 6f 75 hm, Options, Rou
c700: 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e teRow, Role, Lin
c710: 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d kRowid, NodeFrom
c720: 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 , NodeTo, Cost,
c730: 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a Geometry, Name..
c740: 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 FROM byfoot..WHE
c750: 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 37 RE NodeFrom = 17
c760: 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 54 6f 20 8731 AND NodeTo
c770: 3d 20 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 = 183286;..</ver
c780: 62 61 74 69 6d 3e 53 65 74 74 69 6e 67 20 3c 62 batim>Setting <b
c790: 3e 4f 70 74 69 6f 6e 73 3d 27 53 49 4d 50 4c 45 >Options='SIMPLE
c7a0: 27 3c 2f 62 3e 20 68 61 73 20 74 68 65 20 73 61 '</b> has the sa
c7b0: 6d 65 20 65 66 66 65 63 74 20 74 68 61 6e 20 73 me effect than s
c7c0: 65 74 74 69 6e 67 20 62 6f 74 68 20 3c 62 3e 4e etting both <b>N
c7d0: 4f 20 4c 49 4e 4b 53 3c 2f 62 3e 20 61 6e 64 20 O LINKS</b> and
c7e0: 3c 62 3e 4e 4f 20 47 45 4f 4d 45 54 52 49 45 53 <b>NO GEOMETRIES
c7f0: 3c 2f 62 3e 20 61 74 20 74 68 65 20 73 61 6d 65 </b> at the same
c800: 20 74 69 6d 65 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e time.<br>..<u>N
c810: 6f 74 65 3c 2f 75 3e 3a 20 74 68 69 73 20 69 73 ote</u>: this is
c820: 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 expected to be
c830: 74 68 65 20 66 61 73 74 65 73 74 20 73 65 74 74 the fastest sett
c840: 69 6e 67 2e 3c 62 72 3e 0d 0a 54 68 65 20 66 6f ing.<br>..The fo
c850: 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 73 68 llowing table sh
c860: 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 73 65 ows the resultse
c870: 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 t returned by th
c880: 65 20 70 72 65 76 69 6f 75 73 20 53 68 6f 72 74 e previous Short
c890: 65 73 74 20 50 61 74 68 20 71 75 65 72 79 3b 20 est Path query;
c8a0: 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 please notice th
c8b0: 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 3c e value in the <
c8c0: 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 63 6f b>Options</b> co
c8d0: 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d lumn...<br><br>.
c8e0: 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 .<table border="
c8f0: 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 1" bgcolor="#fff
c900: 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 fcf" cellspacing
c910: 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 ="4" cellpadding
c920: 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 ="6">..<tr><th b
c930: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
c940: 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 3e 3c >Algorithm</th><
c950: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
c960: 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 0a0">Options</th
c970: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
c980: 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 0d0a0">RouteRow<
c990: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
c9a0: 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f "#d0d0a0">Role</
c9b0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
c9c0: 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 #d0d0a0">LinkRow
c9d0: 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c id</th><th bgcol
c9e0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 or="#d0d0a0">Nod
c9f0: 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 eFrom</th><th bg
ca00: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
ca10: 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 NodeTo</th><th b
ca20: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
ca30: 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 >Cost</th><th bg
ca40: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
ca50: 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 Geometry</th><th
ca60: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
ca70: 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 0">Name</th></tr
ca80: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 41 2a 3c >..<tr>..<td>A*<
ca90: 2f 74 64 3e 3c 74 64 3e 53 69 6d 70 6c 65 3c 2f /td><td>Simple</
caa0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
cab0: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 ght">0</td><td>R
cac0: 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c oute</td><td>NUL
cad0: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
cae0: 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f "right">178731</
caf0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
cb00: 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e ght">183286</td>
cb10: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
cb20: 22 3e 33 30 30 2e 39 31 32 32 30 38 3c 2f 74 64 ">300.912208</td
cb30: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
cb40: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 d>NULL</td>..</t
cb50: 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 r>..</table>..<b
cb60: 72 3e 0d 0a 46 69 6e 61 6c 6c 79 2c 20 69 66 20 r>..Finally, if
cb70: 79 6f 75 20 77 69 73 68 20 74 6f 20 73 65 6c 65 you wish to sele
cb80: 63 74 20 61 67 61 69 6e 20 74 68 65 20 69 6e 69 ct again the ini
cb90: 74 69 61 6c 20 73 74 61 6e 64 61 72 64 20 73 65 tial standard se
cba0: 74 74 69 6e 67 20 79 6f 75 20 6a 75 73 74 20 68 tting you just h
cbb0: 61 76 65 20 74 6f 20 65 78 65 63 75 74 65 3c 62 ave to execute<b
cbc0: 72 3e 20 3c 62 3e 55 50 44 41 54 45 20 62 79 66 r> <b>UPDATE byf
cbd0: 6f 6f 74 20 53 45 54 20 4f 70 74 69 6f 6e 73 20 oot SET Options
cbe0: 3d 20 27 46 55 4c 4c 27 3b 3c 2f 62 3e 2e 3c 62 = 'FULL';</b>.<b
cbf0: 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 3c 62 72 3e r><br>..<hr><br>
cc00: 0d 0a 3c 68 31 3e 3c 61 20 6e 61 6d 65 3d 22 6d ..<h1><a name="m
cc10: 75 6c 74 69 22 3e 35 20 2d 20 53 6f 6c 76 69 6e ulti">5 - Solvin
cc20: 67 20 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 g multi-destinat
cc30: 69 6f 6e 20 53 68 6f 72 74 65 73 74 20 50 61 74 ion Shortest Pat
cc40: 68 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 2f h problems</a></
cc50: 68 31 3e 0d 0a 41 20 76 65 72 79 20 69 6e 74 65 h1>..A very inte
cc60: 72 65 73 74 69 6e 67 20 66 65 61 74 75 72 65 20 resting feature
cc70: 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 65 supported by the
cc80: 20 44 69 6a 6b 73 74 72 61 27 73 20 41 6c 67 6f Dijkstra's Algo
cc90: 72 69 74 68 6d 20 69 73 20 74 68 61 74 20 69 74 rithm is that it
cca0: 20 72 6f 62 75 73 74 6c 79 20 65 6e 73 75 72 65 robustly ensure
ccb0: 73 20 74 68 61 74 20 77 68 65 6e 20 61 20 64 65 s that when a de
ccc0: 73 74 69 6e 61 74 69 6f 6e 20 69 73 20 72 65 61 stination is rea
ccd0: 63 68 65 64 20 61 6c 6c 20 74 68 65 20 64 65 73 ched all the des
cce0: 74 69 6e 61 74 69 6f 6e 73 20 70 72 65 73 65 6e tinations presen
ccf0: 74 69 6e 67 20 61 20 3c 62 3e 6c 65 73 73 65 72 ting a <b>lesser
cd00: 20 63 6f 73 74 3c 2f 62 3e 20 68 61 76 65 20 61 cost</b> have a
cd10: 6c 72 65 61 64 79 20 62 65 65 6e 20 72 65 61 63 lready been reac
cd20: 68 65 64 20 69 6e 20 73 6f 6d 65 20 70 72 65 76 hed in some prev
cd30: 69 6f 75 73 20 73 74 65 70 20 6f 66 20 74 68 65 ious step of the
cd40: 20 70 72 6f 63 65 73 73 2e 3c 62 72 3e 0d 0a 54 process.<br>..T
cd50: 68 69 73 20 61 6c 6c 6f 77 73 20 74 6f 20 65 66 his allows to ef
cd60: 66 69 63 69 65 6e 74 6c 79 20 73 75 70 70 6f 72 ficiently suppor
cd70: 74 20 3c 62 3e 6d 75 6c 74 69 70 6c 65 20 64 65 t <b>multiple de
cd80: 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 3e 20 53 stinations</b> S
cd90: 68 6f 72 74 65 73 74 20 50 61 74 68 20 71 75 65 hortest Path que
cda0: 72 69 65 73 2e 0d 0a 59 6f 75 20 73 69 6d 70 6c ries...You simpl
cdb0: 79 20 68 61 76 65 20 74 6f 20 73 70 65 63 69 66 y have to specif
cdc0: 79 20 61 20 3c 62 3e 73 69 6e 67 6c 65 20 6f 72 y a <b>single or
cdd0: 69 67 69 6e 20 4e 6f 64 65 3c 2f 62 3e 20 61 6e igin Node</b> an
cde0: 64 20 61 6e 20 3c 62 3e 61 72 62 69 74 72 61 72 d an <b>arbitrar
cdf0: 79 20 6c 69 73 74 20 6f 66 20 64 65 73 74 69 6e y list of destin
ce00: 61 74 69 6f 6e 20 4e 6f 64 65 73 3c 2f 62 3e 20 ation Nodes</b>
ce10: 69 6e 20 61 20 73 69 6e 67 6c 65 20 44 69 6a 6b in a single Dijk
ce20: 73 74 72 61 27 73 20 65 78 65 63 75 74 69 6f 6e stra's execution
ce30: 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f .<br><br>..<u>No
ce40: 74 65 3c 2f 75 3e 3a 20 65 78 65 63 75 74 69 6e te</u>: executin
ce50: 67 20 61 20 6d 75 6c 74 69 2d 64 65 73 74 69 6e g a multi-destin
ce60: 61 74 69 6f 6e 20 53 68 6f 72 74 65 73 74 20 50 ation Shortest P
ce70: 61 74 68 20 71 75 65 72 79 20 72 65 71 75 69 72 ath query requir
ce80: 65 73 20 61 20 3c 62 3e 70 72 6f 63 65 73 73 69 es a <b>processi
ce90: 6e 67 20 74 69 6d 65 3c 2f 62 3e 20 74 68 61 74 ng time</b> that
cea0: 20 69 73 6e 27 74 20 74 68 65 20 3c 75 3e 73 75 isn't the <u>su
ceb0: 6d 20 6f 66 20 61 6c 6c 20 69 6e 64 69 76 69 64 m of all individ
cec0: 75 61 6c 20 74 69 6d 69 6e 67 73 20 66 6f 72 20 ual timings for
ced0: 65 61 63 68 20 64 65 73 74 69 6e 61 74 69 6f 6e each destination
cee0: 3c 2f 75 3e 2c 20 62 75 74 20 73 69 6d 70 6c 79 </u>, but simply
cef0: 20 69 73 20 74 68 65 20 3c 75 3e 74 69 6d 65 20 is the <u>time
cf00: 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 61 63 required to reac
cf10: 68 20 74 68 65 20 6d 6f 73 74 20 63 6f 73 74 6c h the most costl
cf20: 79 20 6f 66 20 61 6c 6c 20 64 65 73 74 69 6e 61 y of all destina
cf30: 74 69 6f 6e 73 20 69 6e 20 74 68 65 20 6c 69 73 tions in the lis
cf40: 74 3c 2f 75 3e 2e 3c 62 72 3e 0d 0a 54 68 69 73 t</u>.<br>..This
cf50: 20 69 73 6e 27 74 20 72 69 67 6f 72 6f 75 73 6c isn't rigorousl
cf60: 79 20 74 72 75 65 20 69 6e 20 74 68 65 20 63 61 y true in the ca
cf70: 73 65 20 6f 66 20 74 68 65 20 56 69 72 74 75 61 se of the Virtua
cf80: 6c 52 6f 75 74 69 6e 67 20 73 70 65 63 69 66 69 lRouting specifi
cf90: 63 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e c implementation
cfa0: 2c 20 62 65 63 61 75 73 65 20 61 72 72 61 6e 67 , because arrang
cfb0: 69 6e 67 20 74 68 65 20 72 65 73 75 6c 74 73 65 ing the resultse
cfc0: 74 20 74 6f 20 62 65 20 72 65 74 75 72 6e 65 64 t to be returned
cfd0: 20 61 6e 64 20 63 72 65 61 74 69 6e 67 20 61 6c and creating al
cfe0: 6c 20 74 68 65 20 69 6e 64 69 76 69 64 75 61 6c l the individual
cff0: 20 4c 69 6e 65 73 74 72 69 6e 67 73 20 66 6f 72 Linestrings for
d000: 20 65 61 63 68 20 64 65 73 74 69 6e 61 74 69 6f each destinatio
d010: 6e 20 77 69 6c 6c 20 73 75 72 65 6c 79 20 69 6d n will surely im
d020: 70 6f 73 65 20 73 6f 6d 65 20 66 75 72 74 68 65 pose some furthe
d030: 72 20 6f 76 65 72 68 65 61 64 2c 20 62 75 74 20 r overhead, but
d040: 6e 6f 6e 65 74 68 65 6c 65 73 73 20 69 74 20 72 nonetheless it r
d050: 65 6d 61 69 6e 73 20 63 6f 6e 66 69 72 6d 65 64 emains confirmed
d060: 20 74 68 61 74 20 65 78 65 63 75 74 69 6e 67 20 that executing
d070: 61 20 73 69 6e 67 6c 65 20 6d 75 6c 74 69 2d 64 a single multi-d
d080: 65 73 74 69 6e 61 74 69 6f 6e 20 71 75 65 72 79 estination query
d090: 20 77 69 6c 6c 20 73 75 72 65 6c 79 20 62 65 20 will surely be
d0a0: 20 6e 6f 74 69 63 65 61 62 6c 79 20 66 61 73 74 noticeably fast
d0b0: 65 72 20 74 68 65 6e 20 65 78 65 63 75 74 69 6e er then executin
d0c0: 67 20 6d 61 6e 79 20 73 70 61 72 73 65 20 73 69 g many sparse si
d0d0: 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 6f 6e ngle-destination
d0e0: 20 71 75 65 72 69 65 73 2e 0d 0a 3c 76 65 72 62 queries...<verb
d0f0: 61 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 41 6c atim>..SELECT Al
d100: 67 6f 72 69 74 68 6d 2c 20 52 65 71 75 65 73 74 gorithm, Request
d110: 2c 20 4f 70 74 69 6f 6e 73 2c 20 44 65 6c 69 6d , Options, Delim
d120: 69 74 65 72 2c 20 52 6f 75 74 65 49 64 2c 20 52 iter, RouteId, R
d130: 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c outeRow, Role, L
d140: 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 inkRowid, NodeFr
d150: 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 om, NodeTo, Cost
d160: 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 , Geometry, Name
d170: 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 ..FROM byfoot..W
d180: 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 HERE NodeFrom =
d190: 31 37 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 54 178731 AND NodeT
d1a0: 6f 20 3d 20 27 31 38 33 32 38 36 2c 32 39 30 34 o = '183286,2904
d1b0: 35 38 2c 31 38 31 39 39 39 2c 31 38 34 30 33 30 58,181999,184030
d1c0: 2c 31 32 34 36 32 32 2c 31 38 33 38 38 32 2c 31 ,124622,183882,1
d1d0: 37 38 37 35 34 27 3b 0d 0a 3c 2f 76 65 72 62 61 78754';..</verba
d1e0: 74 69 6d 3e 0d 0a 41 73 20 79 6f 75 20 63 61 6e tim>..As you can
d1f0: 20 65 61 73 69 6c 79 20 6e 6f 74 69 63 65 2c 20 easily notice,
d200: 61 20 3c 62 3e 6d 75 6c 74 69 70 6c 65 2d 64 65 a <b>multiple-de
d210: 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 3e 20 71 stinations</b> q
d220: 75 65 72 79 20 68 61 73 20 74 68 65 20 73 61 6d uery has the sam
d230: 65 20 69 64 65 6e 74 69 63 61 6c 20 66 6f 72 6d e identical form
d240: 20 6f 66 20 61 6e 79 20 75 73 75 61 6c 20 53 68 of any usual Sh
d250: 6f 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 ortest Path quer
d260: 79 2c 20 65 78 63 65 70 74 20 69 6e 20 74 68 61 y, except in tha
d270: 74 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 t <b>NodeTo</b>
d280: 6e 6f 77 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 now corresponds
d290: 74 6f 20 61 20 63 6f 6d 6d 61 2d 73 65 70 61 72 to a comma-separ
d2a0: 61 74 65 64 20 6c 69 73 74 2e 3c 62 72 3e 0d 0a ated list.<br>..
d2b0: 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 The following ta
d2c0: 62 6c 65 20 73 68 6f 77 73 20 74 68 65 20 72 65 ble shows the re
d2d0: 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 sultset returned
d2e0: 20 62 79 20 74 68 65 20 70 72 65 76 69 6f 75 73 by the previous
d2f0: 20 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 multi-destinati
d300: 6f 6e 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 on Shortest Path
d310: 20 71 75 65 72 79 2e 0d 0a 3c 62 72 3e 3c 62 72 query...<br><br
d320: 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 >..<table border
d330: 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 ="1" bgcolor="#f
d340: 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 fffcf" cellspaci
d350: 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 ng="4" cellpaddi
d360: 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 ng="6">..<tr><th
d370: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
d380: 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 0">Algorithm</th
d390: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
d3a0: 30 64 30 61 30 22 3e 52 65 71 75 65 73 74 3c 2f 0d0a0">Request</
d3b0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
d3c0: 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 #d0d0a0">Options
d3d0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
d3e0: 3d 22 23 64 30 64 30 61 30 22 3e 44 65 6c 69 6d ="#d0d0a0">Delim
d3f0: 69 74 65 72 3c 2f 74 68 3e 3c 74 68 20 62 67 63 iter</th><th bgc
d400: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
d410: 6f 75 74 65 49 64 3c 2f 74 68 3e 3c 74 68 20 62 outeId</th><th b
d420: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
d430: 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 >RouteRow</th><t
d440: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
d450: 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 a0">Role</th><th
d460: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
d470: 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 0">LinkRowid</th
d480: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
d490: 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 0d0a0">NodeFrom<
d4a0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
d4b0: 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f "#d0d0a0">NodeTo
d4c0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
d4d0: 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 3c ="#d0d0a0">Cost<
d4e0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
d4f0: 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 "#d0d0a0">Geomet
d500: 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ry</th><th bgcol
d510: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 6d or="#d0d0a0">Nam
d520: 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 e</th></tr>..<tr
d530: 3e 0d 0a 3c 74 64 3e 44 69 6a 6b 73 74 72 61 3c >..<td>Dijkstra<
d540: 2f 74 64 3e 3c 74 64 3e 53 68 6f 72 74 65 73 74 /td><td>Shortest
d550: 20 50 61 74 68 3c 2f 74 64 3e 3c 74 64 3e 46 75 Path</td><td>Fu
d560: 6c 6c 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 23 39 ll</td><td>, 	
d570: 31 3b 64 65 63 3d 34 34 2c 20 68 65 78 3d 32 63 1;dec=44, hex=2c
d580: 26 23 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 61 6c ]</td><td al
d590: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
d5a0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
d5b0: 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
d5c0: 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
d5d0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
d5e0: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
d5f0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
d600: 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c ht">183882</td><
d610: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
d620: 3e 31 35 34 2e 37 35 30 38 33 39 3c 2f 74 64 3e >154.750839</td>
d630: 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 34 30 20 <td>BLOB sz=240
d640: 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 GEOMETRY</td><td
d650: 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
d660: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
d670: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
d680: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
d690: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
d6a0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 align="right">0
d6b0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
d6c0: 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 right">1</td><td
d6d0: 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
d6e0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 32 36 ign="right">2226
d6f0: 33 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 36</td><td align
d700: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
d710: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
d720: 69 67 68 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 ight">182000</td
d730: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
d740: 74 22 3e 31 30 33 2e 37 33 35 37 32 32 3c 2f 74 t">103.735722</t
d750: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
d760: 74 64 3e 56 49 41 20 50 49 45 54 52 4f 20 41 52 td>VIA PIETRO AR
d770: 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 ETINO</td>..</tr
d780: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
d790: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
d7a0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
d7b0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
d7c0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 align="right">0
d7d0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
d7e0: 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 right">2</td><td
d7f0: 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
d800: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 35 ign="right">2255
d810: 32 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 27</td><td align
d820: 3d 22 72 69 67 68 74 22 3e 31 38 32 30 30 30 3c ="right">182000<
d830: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
d840: 69 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 ight">183882</td
d850: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
d860: 74 22 3e 35 31 2e 30 31 35 31 31 37 3c 2f 74 64 t">51.015117</td
d870: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
d880: 64 3e 56 49 41 20 4c 49 43 49 4f 20 4e 45 4e 43 d>VIA LICIO NENC
d890: 45 54 54 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ETTI</td>..</tr>
d8a0: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
d8b0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</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 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
d8e0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c align="right">1<
d8f0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
d900: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
d910: 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
d920: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
d930: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
d940: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
d950: 69 67 68 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 ight">184030</td
d960: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
d970: 74 22 3e 31 37 36 2e 33 36 34 37 35 35 3c 2f 74 t">176.364755</t
d980: 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 33 30 d><td>BLOB sz=30
d990: 34 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 4 GEOMETRY</td><
d9a0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
d9b0: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
d9c0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
d9d0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
d9e0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
d9f0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
da00: 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >1</td><td align
da10: 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c ="right">1</td><
da20: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
da30: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
da40: 34 30 31 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4014</td><td ali
da50: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
da60: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
da70: 22 72 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f "right">182885</
da80: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
da90: 67 68 74 22 3e 39 34 2e 38 31 32 34 32 34 3c 2f ght">94.812424</
daa0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
dab0: 3c 74 64 3e 56 49 41 20 50 49 45 54 52 4f 20 41 <td>VIA PIETRO A
dac0: 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 RETINO</td>..</t
dad0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
dae0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
daf0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
db00: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
db10: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
db20: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
db30: 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 "right">2</td><t
db40: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
db50: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
db60: 38 36 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 862</td><td alig
db70: 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 35 n="right">182885
db80: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
db90: 72 69 67 68 74 22 3e 31 38 32 30 34 33 3c 2f 74 right">182043</t
dba0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
dbb0: 68 74 22 3e 33 37 2e 30 39 35 32 38 37 3c 2f 74 ht">37.095287</t
dbc0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
dbd0: 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f td>VIA MARGARITO
dbe0: 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NE</td>..</tr>..
dbf0: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
dc00: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
dc10: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
dc20: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
dc30: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 ign="right">1</t
dc40: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
dc50: 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">3</td><td>Li
dc60: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
dc70: 3d 22 72 69 67 68 74 22 3e 32 32 36 30 37 30 3c ="right">226070<
dc80: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
dc90: 69 67 68 74 22 3e 31 38 32 30 34 33 3c 2f 74 64 ight">182043</td
dca0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
dcb0: 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 3e 3c 74 t">184030</td><t
dcc0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
dcd0: 34 34 2e 34 35 37 30 34 34 3c 2f 74 64 3e 3c 74 44.457044</td><t
dce0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 50 d>NULL</td><td>P
dcf0: 49 41 5a 5a 41 20 53 41 4e 54 27 41 47 4f 53 54 IAZZA SANT'AGOST
dd00: 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d INO</td>..</tr>.
dd10: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
dd20: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
dd30: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
dd40: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
dd50: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f lign="right">2</
dd60: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
dd70: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 ght">0</td><td>R
dd80: 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c oute</td><td>NUL
dd90: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
dda0: 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f "right">178731</
ddb0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
ddc0: 67 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e ght">178754</td>
ddd0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
dde0: 22 3e 32 32 34 2e 36 37 37 30 39 35 3c 2f 74 64 ">224.677095</td
ddf0: 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 34 30 ><td>BLOB sz=240
de00: 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 GEOMETRY</td><t
de10: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 d>NULL</td>..</t
de20: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
de30: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
de40: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
de50: 3e 3c 74 64 3e 4e 55 4c 4c 3c 74 64 20 61 6c 69 ><td>NULL<td ali
de60: 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 gn="right">2</td
de70: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
de80: 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">1</td><td>Lin
de90: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
dea0: 22 72 69 67 68 74 22 3e 32 31 39 30 34 35 3c 2f "right">219045</
deb0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
dec0: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
ded0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
dee0: 22 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 ">178732</td><td
def0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 align="right">7
df00: 36 2e 30 32 31 30 30 37 3c 2f 74 64 3e 3c 74 64 6.021007</td><td
df10: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
df20: 41 20 41 53 53 41 42 3c 2f 74 64 3e 0d 0a 3c 2f A ASSAB</td>..</
df30: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
df40: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
df50: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
df60: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
df70: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
df80: 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >2</td><td align
df90: 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
dfa0: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
dfb0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 31 align="right">21
dfc0: 39 30 35 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 9058</td><td ali
dfd0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
dfe0: 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 2</td><td align=
dff0: 22 72 69 67 68 74 22 3e 31 37 38 37 35 34 3c 2f "right">178754</
e000: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e010: 67 68 74 22 3e 31 34 38 2e 36 35 36 30 38 39 3c ght">148.656089<
e020: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e030: 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 53 ><td>VIA FRANCES
e040: 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a CO CRISPI</td>..
e050: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
e060: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
e070: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
e080: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e090: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e0a0: 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">3</td><td ali
e0b0: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
e0c0: 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
e0d0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
e0e0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
e0f0: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
e100: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 gn="right">18199
e110: 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 9</td><td align=
e120: 22 72 69 67 68 74 22 3e 32 36 30 2e 31 33 32 33 "right">260.1323
e130: 35 34 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 54</td><td>BLOB
e140: 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 3c sz=240 GEOMETRY<
e150: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e160: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
e170: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e180: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
e190: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
e1a0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e1b0: 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 ight">3</td><td
e1c0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c align="right">1<
e1d0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
e1e0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e1f0: 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 t">224014</td><t
e200: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e210: 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
e220: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
e230: 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 885</td><td alig
e240: 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 32 n="right">94.812
e250: 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 424</td><td>NULL
e260: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 </td><td>VIA PIE
e270: 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e TRO ARETINO</td>
e280: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
e290: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e2a0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
e2b0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
e2c0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e2d0: 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 ght">3</td><td a
e2e0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f lign="right">2</
e2f0: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
e300: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e310: 22 3e 32 32 34 34 34 36 3c 2f 74 64 3e 3c 74 64 ">224446</td><td
e320: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
e330: 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 82885</td><td al
e340: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 ign="right">1788
e350: 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 80</td><td align
e360: 3d 22 72 69 67 68 74 22 3e 36 39 2e 37 32 37 37 ="right">69.7277
e370: 32 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 26</td><td>NULL<
e380: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 47 /td><td>VIA MARG
e390: 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f ARITONE</td>..</
e3a0: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
e3b0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
e3c0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
e3d0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
e3e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e3f0: 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >3</td><td align
e400: 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c ="right">3</td><
e410: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
e420: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
e430: 35 38 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 5800</td><td ali
e440: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 gn="right">17888
e450: 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
e460: 22 72 69 67 68 74 22 3e 31 38 31 39 39 39 3c 2f "right">181999</
e470: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e480: 67 68 74 22 3e 39 35 2e 35 39 32 32 30 34 3c 2f ght">95.592204</
e490: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e4a0: 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 53 43 <td>VIA FRANCESC
e4b0: 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c O CRISPI</td>..<
e4c0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
e4d0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
e4e0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
e4f0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e500: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e510: 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">4</td><td alig
e520: 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
e530: 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
e540: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
e550: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
e560: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
e570: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 n="right">183286
e580: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e590: 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 32 30 right">300.91220
e5a0: 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 8</td><td>BLOB s
e5b0: 7a 3d 32 37 32 20 47 45 4f 4d 45 54 52 59 3c 2f z=272 GEOMETRY</
e5c0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e5d0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
e5e0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e5f0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
e600: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
e610: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e620: 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 61 ght">4</td><td a
e630: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f lign="right">1</
e640: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
e650: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e660: 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 64 ">224014</td><td
e670: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
e680: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
e690: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 ign="right">1828
e6a0: 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 85</td><td align
e6b0: 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 32 34 ="right">94.8124
e6c0: 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 24</td><td>NULL<
e6d0: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 /td><td>VIA PIET
e6e0: 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d RO ARETINO</td>.
e6f0: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
e700: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e710: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
e720: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
e730: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e740: 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">4</td><td al
e750: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 ign="right">2</t
e760: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
e770: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e780: 3e 32 32 34 34 34 36 3c 2f 74 64 3e 3c 74 64 20 >224446</td><td
e790: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
e7a0: 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2885</td><td ali
e7b0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 gn="right">17888
e7c0: 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
e7d0: 22 72 69 67 68 74 22 3e 36 39 2e 37 32 37 37 32 "right">69.72772
e7e0: 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 6</td><td>NULL</
e7f0: 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 47 41 td><td>VIA MARGA
e800: 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 RITONE</td>..</t
e810: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
e820: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
e830: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e840: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e850: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e860: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
e870: 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 "right">3</td><t
e880: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
e890: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
e8a0: 34 31 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 414</td><td alig
e8b0: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 n="right">178880
e8c0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e8d0: 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 right">183286</t
e8e0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e8f0: 68 74 22 3e 31 33 36 2e 33 37 32 30 35 37 3c 2f ht">136.372057</
e900: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e910: 3c 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 <td>VIA MARGARIT
e920: 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ONE</td>..</tr>.
e930: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
e940: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e950: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e960: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e970: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
e980: 3c 2f 74 64 3e 3c 74 64 3e 55 6e 72 65 61 63 68 </td><td>Unreach
e990: 61 62 6c 65 20 4e 6f 64 65 54 6f 3c 2f 74 64 3e able NodeTo</td>
e9a0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e9b0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
e9c0: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
e9d0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 39 30 34 ign="right">2904
e9e0: 35 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 58</td><td>NULL<
e9f0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
ea00: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a ><td>NULL</td>..
ea10: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
ea20: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
ea30: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
ea40: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
ea50: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
ea60: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 55 d>NULL</td><td>U
ea70: 6e 72 65 61 63 68 61 62 6c 65 20 4e 6f 64 65 54 nreachable NodeT
ea80: 6f 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f o</td><td>NULL</
ea90: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
eaa0: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
eab0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
eac0: 22 3e 31 32 34 36 32 32 3c 2f 74 64 3e 3c 74 64 ">124622</td><td
ead0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
eae0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
eaf0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 /td>..</tr>..</t
eb00: 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 74 able>..<br>..Let
eb10: 27 73 20 71 75 69 63 6b 6c 79 20 65 78 61 6d 69 's quickly exami
eb20: 6e 65 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 ne the resultset
eb30: 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 returned by the
eb40: 20 61 62 6f 76 65 20 3c 62 3e 6d 75 6c 74 69 2d above <b>multi-
eb50: 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 3e destinations</b>
eb60: 20 71 75 65 72 79 2e 0d 0a 3c 75 6c 3e 0d 0a 3c query...<ul>..<
eb70: 6c 69 3e 74 68 65 20 6f 76 65 72 61 6c 6c 20 6c li>the overall l
eb80: 61 79 6f 75 74 20 69 73 20 61 6c 6d 6f 73 74 20 ayout is almost
eb90: 65 78 61 63 74 6c 79 20 74 68 65 20 73 61 6d 65 exactly the same
eba0: 20 61 73 20 79 6f 75 27 76 65 20 61 6c 72 65 61 as you've alrea
ebb0: 64 79 20 73 65 65 6e 20 69 6e 20 74 68 65 20 63 dy seen in the c
ebc0: 61 73 65 20 6f 66 20 3c 62 3e 73 69 6e 67 6c 65 ase of <b>single
ebd0: 2d 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 62 3e -destination</b>
ebe0: 20 71 75 65 72 69 65 73 2c 20 62 75 74 20 69 6e queries, but in
ebf0: 20 74 68 69 73 20 63 61 73 65 20 6d 6f 72 65 20 this case more
ec00: 69 6e 64 69 76 69 64 75 61 6c 20 74 72 61 76 65 individual trave
ec10: 6c 20 73 6f 6c 75 74 69 6f 6e 73 20 61 72 65 20 l solutions are
ec20: 67 72 6f 75 70 65 64 20 61 6c 74 6f 67 65 74 68 grouped altogeth
ec30: 65 72 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 er.</li>..<li>th
ec40: 65 20 3c 62 3e 66 69 72 73 74 20 72 6f 77 3c 2f e <b>first row</
ec50: 62 3e 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 b> of the result
ec60: 73 65 74 20 69 73 20 73 6f 6d 65 77 61 79 20 65 set is someway e
ec70: 78 63 65 70 74 69 6f 6e 61 6c 2c 20 61 6e 64 20 xceptional, and
ec80: 69 73 20 74 68 65 20 75 6e 69 71 75 65 20 72 6f is the unique ro
ec90: 77 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 73 w of the results
eca0: 65 74 20 70 72 65 73 65 6e 74 69 6e 67 20 3c 62 et presenting <b
ecb0: 3e 4e 4f 54 20 4e 55 4c 4c 3c 2f 62 3e 20 76 61 >NOT NULL</b> va
ecc0: 6c 75 65 73 20 69 6e 20 74 68 65 20 3c 62 3e 41 lues in the <b>A
ecd0: 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 2c 20 3c 62 lgorithm</b>, <b
ece0: 3e 52 65 71 75 65 73 74 3c 2f 62 3e 2c 20 3c 62 >Request</b>, <b
ecf0: 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 61 6e 64 >Options</b> and
ed00: 20 3c 62 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 62 <b>Delimiter</b
ed10: 3e 20 63 6f 6c 75 6d 6e 73 2e 3c 2f 6c 69 3e 0d > columns.</li>.
ed20: 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 52 6f 75 74 .<li>the <b>Rout
ed30: 65 49 64 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 20 69 eId</b> column i
ed40: 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 67 72 s intended to gr
ed50: 6f 75 70 20 74 6f 67 65 74 68 65 72 20 61 6c 6c oup together all
ed60: 20 72 6f 77 73 20 62 65 6c 6f 6e 67 69 6e 67 20 rows belonging
ed70: 74 6f 20 73 61 6d 65 20 74 72 61 76 65 6c 20 73 to same travel s
ed80: 6f 6c 75 74 69 6f 6e 20 28 3c 69 3e 61 6b 61 3c olution (<i>aka<
ed90: 2f 69 3e 20 3c 62 3e 52 6f 75 74 65 3c 2f 62 3e /i> <b>Route</b>
eda0: 29 2e 3c 62 72 3e 0d 0a 52 6f 75 74 65 73 20 61 ).<br>..Routes a
edb0: 72 65 20 70 72 6f 67 72 65 73 73 69 76 65 6c 79 re progressively
edc0: 20 6e 75 6d 62 65 72 65 64 20 61 6e 64 20 61 72 numbered and ar
edd0: 65 20 6f 72 64 65 72 65 64 20 61 63 63 6f 72 64 e ordered accord
ede0: 69 6e 67 6c 79 20 74 6f 20 74 68 65 69 72 20 3c ingly to their <
edf0: 62 3e 74 6f 74 61 6c 20 63 6f 73 74 3c 2f 62 3e b>total cost</b>
ee00: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 .</li>..<li>the
ee10: 3c 62 3e 52 6f 75 74 65 52 6f 77 3c 2f 62 3e 20 <b>RouteRow</b>
ee20: 63 6f 6c 75 6d 6e 20 68 61 73 20 74 68 65 20 73 column has the s
ee30: 61 6d 65 20 69 6e 74 65 72 70 72 65 74 61 74 69 ame interpretati
ee40: 6f 6e 20 61 73 20 69 6e 20 73 69 6e 67 6c 65 2d on as in single-
ee50: 64 65 73 74 69 6e 61 74 69 6f 6e 20 72 65 73 75 destination resu
ee60: 6c 74 73 65 74 73 2c 20 61 6e 64 20 69 73 20 69 ltsets, and is i
ee70: 6e 74 65 6e 64 65 64 20 74 6f 20 70 72 6f 67 72 ntended to progr
ee80: 65 73 73 69 76 65 6c 79 20 6f 72 64 65 72 20 69 essively order i
ee90: 6e 20 74 68 65 20 63 6f 72 72 65 63 74 20 73 65 n the correct se
eea0: 71 75 65 6e 63 65 20 61 6c 6c 20 4c 69 6e 6b 73 quence all Links
eeb0: 20 63 6f 6e 6e 65 63 74 69 6e 67 20 74 68 65 20 connecting the
eec0: 4f 72 69 67 69 6e 20 61 6e 64 20 74 68 65 20 44 Origin and the D
eed0: 65 73 74 69 6e 61 74 69 6f 6e 20 6f 66 20 65 61 estination of ea
eee0: 63 68 20 52 6f 75 74 65 2e 3c 62 72 3e 0d 0a 3c ch Route.<br>..<
eef0: 62 3e 52 6f 75 74 65 52 6f 77 3d 30 3c 2f 62 3e b>RouteRow=0</b>
ef00: 20 61 6c 77 61 79 73 20 69 64 65 6e 74 69 66 69 always identifi
ef10: 65 73 20 74 68 65 20 68 65 61 64 65 72 20 72 6f es the header ro
ef20: 77 20 6f 66 20 65 61 63 68 20 74 72 61 76 65 6c w of each travel
ef30: 20 73 6f 6c 75 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d solution.</li>.
ef40: 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 3c 75 .</ul>..<br>..<u
ef50: 3e 4e 6f 74 69 63 65 3c 2f 75 3e 3a 20 74 68 65 >Notice</u>: the
ef60: 20 6c 61 73 74 20 74 77 6f 20 72 6f 77 73 20 69 last two rows i
ef70: 6e 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 n the resultset
ef80: 72 65 70 6f 72 74 73 20 3c 62 3e 55 6e 72 65 61 reports <b>Unrea
ef90: 63 68 61 62 6c 65 20 4e 6f 64 65 54 6f 09 3c 2f chable NodeTo.</
efa0: 62 3e 20 69 6e 20 74 68 65 20 3c 62 3e 52 6f 6c b> in the <b>Rol
efb0: 65 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 2c 20 74 68 e</b> column, th
efc0: 75 73 20 69 6d 70 6c 79 69 6e 67 20 61 20 3c 62 us implying a <b
efd0: 3e 66 6f 72 62 69 64 64 65 6e 20 63 6f 6e 6e 65 >forbidden conne
efe0: 63 74 69 6f 6e 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a ction</b>.<br>..
eff0: 54 68 69 73 20 77 61 73 20 70 75 72 70 6f 73 65 This was purpose
f000: 6c 79 20 69 6e 74 65 6e 64 65 64 3a 20 4e 6f 64 ly intended: Nod
f010: 65 73 20 3c 62 3e 32 39 30 34 35 38 3c 2f 62 3e es <b>290458</b>
f020: 20 61 6e 64 20 3c 62 3e 31 32 34 36 32 32 3c 2f and <b>124622</
f030: 62 3e 20 61 72 65 20 6c 6f 63 61 74 65 64 20 6f b> are located o
f040: 6e 20 45 6c 62 61 20 61 6e 64 20 47 69 67 6c 69 n Elba and Gigli
f050: 6f 20 69 73 6c 61 6e 64 73 2e 20 54 68 65 20 75 o islands. The u
f060: 6e 64 65 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f nderlaying Netwo
f070: 72 6b 20 69 73 20 62 61 73 65 64 20 6f 6e 20 3c rk is based on <
f080: 62 3e 49 74 65 72 2e 4e 65 74 3c 2f 62 3e 20 74 b>Iter.Net</b> t
f090: 68 61 74 20 64 6f 6e 27 74 20 73 75 70 70 6f 72 hat don't suppor
f0a0: 74 73 20 66 65 72 72 79 20 63 6f 6e 6e 65 63 74 ts ferry connect
f0b0: 69 6f 6e 73 2c 20 73 6f 20 61 6e 79 20 74 72 61 ions, so any tra
f0c0: 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 20 62 65 74 vel solution bet
f0d0: 77 65 65 6e 20 74 68 65 20 69 73 6c 61 6e 64 73 ween the islands
f0e0: 20 61 6e 64 20 74 68 65 20 6d 61 69 6e 6c 61 6e and the mainlan
f0f0: 64 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 66 61 d will always fa
f100: 69 6c 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 il...<br><br><br
f110: 3e 0d 0a 41 6c 73 6f 20 3c 62 3e 6d 75 6c 74 69 >..Also <b>multi
f120: 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 -destinations</b
f130: 3e 20 71 75 65 72 69 65 73 20 63 61 6e 20 62 65 > queries can be
f140: 20 63 75 73 74 6f 6d 69 7a 65 64 2c 20 62 75 74 customized, but
f150: 20 74 68 65 20 63 6f 6e 66 69 67 75 72 61 74 69 the configurati
f160: 6f 6e 20 72 75 6c 65 73 20 73 6c 69 67 68 74 6c on rules slightl
f170: 79 20 64 69 66 66 65 72 20 66 72 6f 6d 20 77 68 y differ from wh
f180: 61 74 20 79 6f 75 20 68 61 76 65 20 61 6c 72 65 at you have alre
f190: 61 64 79 20 73 65 65 6e 20 69 6e 20 74 68 65 20 ady seen in the
f1a0: 63 61 73 65 20 6f 66 20 73 69 6e 67 6c 65 2d 64 case of single-d
f1b0: 65 73 74 69 6e 61 74 69 6f 6e 2e 0d 0a 3c 75 6c estination...<ul
f1c0: 3e 0d 0a 3c 6c 69 3e 3c 62 3e 41 6c 67 6f 72 69 >..<li><b>Algori
f1d0: 74 68 6d 3c 2f 62 3e 3a 20 6f 6e 6c 79 20 3c 62 thm</b>: only <b
f1e0: 3e 44 69 6a 6b 73 74 72 61 3c 2f 62 3e 20 69 73 >Dijkstra</b> is
f1f0: 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 6d 75 supported by mu
f200: 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 2c lti-destination,
f210: 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 69 6d 70 and will be imp
f220: 6c 69 63 69 74 6c 79 20 61 73 73 75 6d 65 64 20 licitly assumed
f230: 65 76 65 6e 20 77 68 65 6e 20 74 68 65 20 61 6c even when the al
f240: 74 65 72 6e 61 74 69 76 65 20 3c 62 3e 41 2a 3c ternative <b>A*<
f250: 2f 62 3e 20 61 6c 67 6f 72 69 74 68 6d 20 69 73 /b> algorithm is
f260: 20 63 75 72 72 65 6e 74 6c 79 20 73 65 6c 65 63 currently selec
f270: 74 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c ted.</li>..<li><
f280: 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 3a 20 74 b>Options</b>: t
f290: 68 65 20 75 73 75 61 6c 20 3c 62 3e 46 55 4c 4c he usual <b>FULL
f2a0: 3c 2f 62 3e 2c 20 3c 62 3e 53 49 4d 50 4c 45 3c </b>, <b>SIMPLE<
f2b0: 2f 62 3e 2c 20 3c 62 3e 4e 4f 20 4c 49 4e 4b 53 /b>, <b>NO LINKS
f2c0: 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 4f 20 47 </b> and <b>NO G
f2d0: 45 4f 4d 45 54 52 49 45 53 3c 2f 62 3e 20 61 72 EOMETRIES</b> ar
f2e0: 65 20 73 75 70 70 6f 72 74 65 64 20 61 6e 64 20 e supported and
f2f0: 77 69 6c 6c 20 68 61 76 65 20 74 68 65 20 73 61 will have the sa
f300: 6d 65 20 65 66 66 65 63 74 20 61 73 20 69 6e 20 me effect as in
f310: 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 single-destinati
f320: 6f 6e 20 71 75 65 72 69 65 73 2e 3c 2f 6c 69 3e on queries.</li>
f330: 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 76 65 72 62 61 74 ..</ul>..<verbat
f340: 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f im>..UPDATE byfo
f350: 6f 74 20 53 45 54 20 4f 70 74 69 6f 6e 73 20 3d ot SET Options =
f360: 20 27 53 49 4d 50 4c 45 27 3b 0d 0a 0d 0a 53 45 'SIMPLE';....SE
f370: 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 LECT Algorithm,
f380: 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 Request, Options
f390: 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 , Delimiter, Rou
f3a0: 74 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 teId, RouteRow,
f3b0: 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c Role, LinkRowid,
f3c0: 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 NodeFrom, NodeT
f3d0: 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 o, Cost, Geometr
f3e0: 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 y, Name..FROM by
f3f0: 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 foot..WHERE Node
f400: 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e From = 178731 AN
f410: 44 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 D NodeTo = '1832
f420: 38 36 2c 32 39 30 34 35 38 2c 31 38 31 39 39 39 86,290458,181999
f430: 2c 31 38 34 30 33 30 2c 31 32 34 36 32 32 2c 31 ,184030,124622,1
f440: 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 0a 83882,178754';..
f450: 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 54 68 65 </verbatim>..The
f460: 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 following table
f470: 20 73 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c shows the resul
f480: 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 tset returned by
f490: 20 74 68 65 20 73 61 6d 65 20 6d 75 6c 74 69 2d the same multi-
f4a0: 64 65 73 74 69 6e 61 74 69 6f 6e 20 71 75 65 72 destination quer
f4b0: 79 20 75 73 65 64 20 69 6e 20 74 68 65 20 70 72 y used in the pr
f4c0: 65 76 69 6f 75 73 20 65 78 61 6d 70 6c 65 20 61 evious example a
f4d0: 66 74 65 72 20 65 6e 61 62 6c 69 6e 67 20 74 68 fter enabling th
f4e0: 65 20 3c 62 3e 53 49 4d 50 4c 45 3c 2f 62 3e 20 e <b>SIMPLE</b>
f4f0: 6f 70 74 69 6f 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 option...<br><br
f500: 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 >..<table border
f510: 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 ="1" bgcolor="#f
f520: 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 fffcf" cellspaci
f530: 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 ng="4" cellpaddi
f540: 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 ng="6">..<tr><th
f550: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
f560: 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 0">Algorithm</th
f570: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
f580: 30 64 30 61 30 22 3e 52 65 71 75 65 73 74 3c 2f 0d0a0">Request</
f590: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
f5a0: 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 #d0d0a0">Options
f5b0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
f5c0: 3d 22 23 64 30 64 30 61 30 22 3e 44 65 6c 69 6d ="#d0d0a0">Delim
f5d0: 69 74 65 72 3c 2f 74 68 3e 3c 74 68 20 62 67 63 iter</th><th bgc
f5e0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
f5f0: 6f 75 74 65 49 64 3c 2f 74 68 3e 3c 74 68 20 62 outeId</th><th b
f600: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
f610: 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 >RouteRow</th><t
f620: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
f630: 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 a0">Role</th><th
f640: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
f650: 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 0">LinkRowid</th
f660: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
f670: 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 0d0a0">NodeFrom<
f680: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
f690: 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f "#d0d0a0">NodeTo
f6a0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
f6b0: 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 3c ="#d0d0a0">Cost<
f6c0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
f6d0: 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 "#d0d0a0">Geomet
f6e0: 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ry</th><th bgcol
f6f0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 6d or="#d0d0a0">Nam
f700: 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 e</th></tr>..<tr
f710: 3e 0d 0a 3c 74 64 3e 44 69 6a 6b 73 74 72 61 3c >..<td>Dijkstra<
f720: 2f 74 64 3e 3c 74 64 3e 53 68 6f 72 74 65 73 74 /td><td>Shortest
f730: 20 50 61 74 68 3c 2f 74 64 3e 3c 74 64 3e 46 75 Path</td><td>Fu
f740: 6c 6c 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 23 39 ll</td><td>, 	
f750: 31 3b 64 65 63 3d 34 34 2c 20 68 65 78 3d 32 63 1;dec=44, hex=2c
f760: 26 23 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 61 6c ]</td><td al
f770: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
f780: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
f790: 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
f7a0: 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
f7b0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
f7c0: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
f7d0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
f7e0: 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c ht">183882</td><
f7f0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
f800: 3e 31 35 34 2e 37 35 30 38 33 39 3c 2f 74 64 3e >154.750839</td>
f810: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
f820: 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
f830: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
f840: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
f850: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
f860: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
f870: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
f880: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
f890: 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 right">0</td><td
f8a0: 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e >Route</td><td>N
f8b0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
f8c0: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 n="right">178731
f8d0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
f8e0: 72 69 67 68 74 22 3e 31 38 34 30 33 30 3c 2f 74 right">184030</t
f8f0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
f900: 68 74 22 3e 31 37 36 2e 33 36 34 37 35 35 3c 2f ht">176.364755</
f910: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
f920: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c <td>NULL</td>..<
f930: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
f940: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
f950: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
f960: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
f970: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
f980: 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">2</td><td alig
f990: 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
f9a0: 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
f9b0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
f9c0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
f9d0: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
f9e0: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 34 n="right">178754
f9f0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
fa00: 72 69 67 68 74 22 3e 32 32 34 2e 36 37 37 30 39 right">224.67709
fa10: 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 5</td><td>NULL</
fa20: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
fa30: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
fa40: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
fa50: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
fa60: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
fa70: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
fa80: 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 ght">3</td><td a
fa90: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
faa0: 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 td><td>Route</td
fab0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
fac0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
fad0: 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
fae0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 lign="right">181
faf0: 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 999</td><td alig
fb00: 6e 3d 22 72 69 67 68 74 22 3e 32 36 30 2e 31 33 n="right">260.13
fb10: 32 33 35 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2354</td><td>NUL
fb20: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
fb30: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
fb40: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
fb50: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
fb60: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
fb70: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
fb80: 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 "right">4</td><t
fb90: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
fba0: 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 0</td><td>Route<
fbb0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
fbc0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
fbd0: 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
fbe0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
fbf0: 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 183286</td><td a
fc00: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 30 30 lign="right">300
fc10: 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 64 3e .912208</td><td>
fc20: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
fc30: 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c L</td>..</tr>..<
fc40: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
fc50: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
fc60: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
fc70: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
fc80: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
fc90: 74 64 3e 3c 74 64 3e 55 6e 72 65 61 63 68 61 62 td><td>Unreachab
fca0: 6c 65 20 4e 6f 64 65 54 6f 3c 2f 74 64 3e 3c 74 le NodeTo</td><t
fcb0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
fcc0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
fcd0: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
fce0: 6e 3d 22 72 69 67 68 74 22 3e 32 39 30 34 35 38 n="right">290458
fcf0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
fd00: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
fd10: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
fd20: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
fd30: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
fd40: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
fd50: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
fd60: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
fd70: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 55 6e 72 NULL</td><td>Unr
fd80: 65 61 63 68 61 62 6c 65 20 4e 6f 64 65 54 6f 3c eachable NodeTo<
fd90: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
fda0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
fdb0: 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
fdc0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
fdd0: 31 32 34 36 32 32 3c 2f 74 64 3e 3c 74 64 3e 4e 124622</td><td>N
fde0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
fdf0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
fe00: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 d>..</tr>..</tab
fe10: 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 54 68 65 20 6d le>..<br>..The m
fe20: 61 70 20 62 65 6c 6f 77 20 67 72 61 70 68 69 63 ap below graphic
fe30: 61 6c 6c 79 20 73 68 6f 77 73 20 74 68 65 20 70 ally shows the p
fe40: 72 65 76 69 6f 75 73 20 3c 62 3e 6d 75 6c 74 69 revious <b>multi
fe50: 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 -destinations</b
fe60: 3e 20 71 75 65 72 69 65 73 2e 0d 0a 3c 62 72 3e > queries...<br>
fe70: 3c 62 72 3e 0d 0a 3c 69 6d 67 20 73 72 63 3d 22 <br>..<img src="
fe80: 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 https://www.gaia
fe90: 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e -gis.it/gaia-sin
fea0: 73 2f 72 6f 75 74 69 6e 67 2d 66 69 67 73 2f 72 s/routing-figs/r
feb0: 6f 75 74 69 6e 67 33 2e 6a 70 67 22 20 61 6c 74 outing3.jpg" alt
fec0: 3d 22 66 69 67 33 22 3e 0d 0a 3c 75 6c 3e 0d 0a ="fig3">..<ul>..
fed0: 3c 6c 69 3e 52 65 64 20 73 74 61 72 3a 20 74 68 <li>Red star: th
fee0: 65 20 4f 72 69 67 69 6e 20 4e 6f 64 65 2e 3c 2f e Origin Node.</
fef0: 6c 69 3e 0d 0a 3c 6c 69 3e 47 72 65 65 6e 20 64 li>..<li>Green d
ff00: 6f 74 73 3a 20 74 68 65 20 44 65 73 74 69 6e 61 ots: the Destina
ff10: 74 69 6f 6e 20 4e 6f 64 65 73 2e 3c 2f 6c 69 3e tion Nodes.</li>
ff20: 0d 0a 3c 6c 69 3e 59 65 6c 6c 6f 77 20 6c 69 6e ..<li>Yellow lin
ff30: 65 73 3a 20 61 6c 6c 20 69 6e 64 69 76 69 64 75 es: all individu
ff40: 61 6c 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 al travel soluti
ff50: 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e ons.</li>..</ul>
ff60: 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 ..<br>..<table b
ff70: 67 63 6f 6c 6f 72 3d 22 23 66 66 62 30 36 30 22 gcolor="#ffb060"
ff80: 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 cellspacing="10
ff90: 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 " cellpadding="6
ffa0: 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e "><tr><td>..<h3>
ffb0: 44 61 6e 67 65 72 6f 75 73 20 70 69 74 66 61 6c Dangerous pitfal
ffc0: 6c 73 20 72 65 6c 61 74 65 64 20 74 6f 20 6d 75 ls related to mu
ffd0: 6c 74 69 70 6c 65 20 64 65 73 74 69 6e 61 74 69 ltiple destinati
ffe0: 6f 6e 20 6c 69 73 74 73 3c 2f 68 33 3e 0d 0a 53 on lists</h3>..S
fff0: 51 4c 20 73 79 6e 74 61 78 20 64 69 72 65 63 74 QL syntax direct
10000 6c 79 20 61 6c 6c 6f 77 73 20 74 6f 20 73 70 65 ly allows to spe
10010 63 69 66 79 20 6c 69 73 74 73 20 6f 66 20 20 6d cify lists of m
10020 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 2c 20 ultiple values,
10030 73 6f 20 6d 61 79 20 62 65 20 79 6f 75 20 61 72 so may be you ar
10040 65 20 6e 6f 77 20 77 6f 6e 64 65 72 69 6e 67 20 e now wondering
10050 61 62 6f 75 74 20 77 72 69 74 69 6e 67 20 74 68 about writing th
10060 65 20 3c 62 3e 6d 75 6c 74 69 70 6c 65 20 64 65 e <b>multiple de
10070 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 3e 20 71 stinations</b> q
10080 75 65 72 79 20 74 65 73 74 65 64 20 69 6e 20 74 uery tested in t
10090 68 65 20 70 72 65 76 69 6f 75 73 20 65 78 61 6d he previous exam
100a0 70 6c 65 73 20 74 68 69 73 20 77 61 79 3a 0d 0a ples this way:..
100b0 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 <verbatim>..SELE
100c0 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 65 CT Algorithm, Re
100d0 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c 20 quest, Options,
100e0 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 65 Delimiter, Route
100f0 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f Id, RouteRow, Ro
10100 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e le, LinkRowid, N
10110 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c odeFrom, NodeTo,
10120 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c Cost, Geometry,
10130 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f Name..FROM byfo
10140 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 ot..WHERE NodeFr
10150 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 om = 178731 AND
10160 4e 6f 64 65 54 6f 20 49 4e 20 28 31 38 33 32 38 NodeTo IN (18328
10170 36 2c 20 32 39 30 34 35 38 2c 20 31 38 31 39 39 6, 290458, 18199
10180 39 2c 20 31 38 34 30 33 30 2c 20 31 32 34 36 32 9, 184030, 12462
10190 32 2c 20 31 38 33 38 38 32 2c 20 31 37 38 37 35 2, 183882, 17875
101a0 34 29 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 4);..</verbatim>
101b0 0d 0a 54 68 65 72 65 20 69 73 20 61 20 76 65 72 ..There is a ver
101c0 79 20 67 6f 6f 64 20 72 65 61 73 6f 6e 20 64 69 y good reason di
101d0 73 63 6f 75 72 61 67 69 6e 67 20 66 72 6f 6d 20 scouraging from
101e0 64 6f 69 6e 67 20 73 75 63 68 20 61 20 74 68 69 doing such a thi
101f0 6e 67 2c 20 6c 65 74 27 73 20 73 65 65 20 77 68 ng, let's see wh
10200 79 2e 3c 62 72 3e 0d 0a 3c 62 3e 53 51 4c 69 74 y.<br>..<b>SQLit
10210 65 3c 2f 62 3e 20 77 69 6c 6c 20 70 72 6f 63 65 e</b> will proce
10220 73 73 20 61 20 72 65 71 75 65 73 74 20 77 72 69 ss a request wri
10230 74 74 65 6e 20 74 68 69 73 20 77 61 79 20 62 79 tten this way by
10240 20 72 65 70 65 61 74 65 64 6c 79 20 63 61 6c 6c repeatedly call
10250 69 6e 67 20 56 69 72 74 75 61 6c 52 6f 75 74 69 ing VirtualRouti
10260 6e 67 20 70 61 73 73 69 6e 67 20 65 61 63 68 20 ng passing each
10270 74 69 6d 65 20 61 20 73 69 6e 67 6c 65 20 44 65 time a single De
10280 73 74 69 6e 61 74 69 6f 6e 3b 20 61 6e 64 20 63 stination; and c
10290 6f 6e 73 65 71 75 65 6e 74 6c 79 20 3c 62 3e 56 onsequently <b>V
102a0 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 irtualRouting</b
102b0 3e 20 77 69 6c 6c 20 6e 65 76 65 72 20 72 65 63 > will never rec
102c0 65 69 76 65 20 74 68 65 20 63 72 69 74 69 63 61 eive the critica
102d0 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 68 l information th
102e0 61 74 20 61 20 73 69 6e 67 6c 65 20 6d 6f 6e 6f at a single mono
102f0 6c 69 74 68 69 63 20 72 65 71 75 65 73 74 20 77 lithic request w
10300 61 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 62 as intended to b
10310 65 20 65 78 65 63 75 74 65 64 20 69 6e 20 61 20 e executed in a
10320 73 69 6e 67 6c 65 20 73 68 6f 74 2e 20 53 6f 20 single shot. So
10330 74 68 65 20 72 65 71 75 65 73 74 20 63 6f 6e 74 the request cont
10340 65 78 74 20 77 69 6c 6c 20 62 65 20 65 61 73 69 ext will be easi
10350 6c 79 20 6d 69 73 69 6e 74 65 72 70 72 65 74 65 ly misinterprete
10360 64 2c 20 61 6e 64 20 61 6e 79 20 65 78 70 65 63 d, and any expec
10370 74 65 64 20 73 70 65 65 64 20 62 65 6e 65 66 69 ted speed benefi
10380 74 20 77 69 6c 6c 20 62 65 20 63 6f 6d 70 6c 65 t will be comple
10390 74 65 6c 79 20 66 72 75 73 74 72 61 74 65 64 2e tely frustrated.
103a0 0d 0a 3c 68 33 3e 42 65 77 61 72 65 3c 2f 68 33 ..<h3>Beware</h3
103b0 3e 0d 0a 3c 62 3e 4e 65 76 65 72 20 65 76 65 72 >..<b>Never ever
103c0 3c 2f 62 3e 20 61 74 74 65 6d 70 74 20 74 6f 20 </b> attempt to
103d0 64 65 66 69 6e 65 20 61 20 6c 69 73 74 20 6f 66 define a list of
103e0 20 6d 75 6c 74 69 70 6c 65 20 64 65 73 74 69 6e multiple destin
103f0 61 74 69 6f 6e 73 20 75 73 69 6e 67 20 74 68 65 ations using the
10400 20 73 74 61 6e 64 61 72 64 20 53 51 4c 20 73 79 standard SQL sy
10410 6e 74 61 78 20 3c 62 3e 3c 69 3e 57 48 45 52 45 ntax <b><i>WHERE
10420 20 4e 6f 64 65 54 6f 20 49 4e 20 28 2e 2e 2e 2e NodeTo IN (....
10430 2e 2e 29 3c 2f 69 3e 3c 2f 62 3e 2c 20 62 65 63 ..)</i></b>, bec
10440 61 75 73 65 20 74 68 69 73 20 77 69 6c 6c 20 63 ause this will c
10450 65 72 74 61 69 6e 6c 79 20 63 61 75 73 65 20 6d ertainly cause m
10460 61 6e 79 20 75 6e 65 78 70 65 63 74 65 64 20 74 any unexpected t
10470 72 6f 75 62 6c 65 73 2e 3c 62 72 3e 0d 0a 42 61 roubles.<br>..Ba
10480 64 6c 79 20 66 6f 72 6d 61 74 74 65 64 20 72 65 dly formatted re
10490 73 75 6c 74 73 65 74 73 20 77 69 6c 6c 20 62 65 sultsets will be
104a0 20 74 68 65 6e 20 72 65 74 75 72 6e 65 64 2c 20 then returned,
104b0 6d 61 79 20 62 65 20 63 6f 6e 74 61 69 6e 69 6e may be containin
104c0 67 20 77 72 6f 6e 67 20 72 65 73 75 6c 74 73 2e g wrong results.
104d0 20 3c 62 3e 59 6f 75 20 61 72 65 20 77 61 72 6e <b>You are warn
104e0 65 64 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d ed</b>.<br><br>.
104f0 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 .</td></tr></tab
10500 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 62 6c le>..<br>..<tabl
10510 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 66 66 e bgcolor="#c0ff
10520 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d c0" cellspacing=
10530 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 "10" cellpadding
10540 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c ="6"><tr><td>..<
10550 68 33 3e 48 6f 77 20 74 6f 20 63 6f 72 72 65 63 h3>How to correc
10560 74 6c 79 20 66 6f 72 6d 61 74 20 6d 75 6c 74 69 tly format multi
10570 70 6c 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 73 ple destinations
10580 20 6c 69 73 74 73 3c 2f 68 33 3e 0d 0a 56 69 72 lists</h3>..Vir
10590 74 75 61 6c 52 6f 75 74 69 6e 67 20 61 6c 77 61 tualRouting alwa
105a0 79 73 20 65 78 70 65 63 74 73 20 74 6f 20 72 65 ys expects to re
105b0 63 65 69 76 65 20 61 20 3c 62 3e 6d 75 6c 74 69 ceive a <b>multi
105c0 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 -destinations</b
105d0 3e 20 6c 69 73 74 20 61 73 20 61 20 3c 62 3e 54 > list as a <b>T
105e0 45 58 54 3c 2f 62 3e 20 73 74 72 69 6e 67 20 63 EXT</b> string c
105f0 6f 6e 74 61 69 6e 69 6e 67 20 74 69 67 68 74 6c ontaining tightl
10600 79 20 70 61 63 6b 65 64 20 76 61 6c 75 65 73 20 y packed values
10610 73 65 70 61 72 61 74 65 64 20 62 79 20 61 20 63 separated by a c
10620 6f 6e 76 65 6e 74 69 6f 6e 61 6c 20 3c 62 3e 64 onventional <b>d
10630 65 6c 69 6d 69 74 65 72 3c 2f 62 3e 20 28 75 73 elimiter</b> (us
10640 75 61 6c 6c 79 20 72 65 70 72 65 73 65 6e 74 65 ually represente
10650 64 20 62 79 20 61 20 3c 62 3e 63 6f 6d 6d 61 3c d by a <b>comma<
10660 2f 62 3e 29 2e 3c 62 72 3e 0d 0a 45 78 61 6d 70 /b>).<br>..Examp
10670 6c 65 73 20 6f 66 20 3c 62 3e 77 65 6c 6c 20 66 les of <b>well f
10680 6f 72 6d 61 74 74 65 64 3c 2f 62 3e 20 6d 75 6c ormatted</b> mul
10690 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 20 ti-destinations
106a0 6c 69 73 74 73 3a 0d 0a 3c 76 65 72 62 61 74 69 lists:..<verbati
106b0 6d 3e 0d 0a 27 31 2c 32 2c 33 2c 34 2c 35 2c 31 m>..'1,2,3,4,5,1
106c0 30 2c 31 30 30 2c 31 30 30 30 2c 31 30 30 30 30 0,100,1000,10000
106d0 30 27 20 20 20 2d 2d 20 69 6e 74 65 67 65 72 20 0' -- integer
106e0 4e 6f 64 65 20 49 44 73 0d 0a 0d 0a 27 41 31 30 Node IDs....'A10
106f0 30 42 2c 41 31 30 30 46 2c 42 32 35 30 5a 2c 43 0B,A100F,B250Z,C
10700 30 31 30 4d 2c 5a 39 39 39 41 27 20 20 2d 2d 20 010M,Z999A' --
10710 61 6c 70 68 61 6e 75 6d 65 72 69 63 20 4e 6f 64 alphanumeric Nod
10720 65 20 43 6f 64 65 73 0d 0a 3c 2f 76 65 72 62 61 e Codes..</verba
10730 74 69 6d 3e 0d 0a 45 78 61 6d 70 6c 65 73 20 6f tim>..Examples o
10740 66 20 3c 62 3e 62 61 64 6c 79 20 66 6f 72 6d 61 f <b>badly forma
10750 74 74 65 64 3c 2f 62 3e 20 6d 75 6c 74 69 2d 64 tted</b> multi-d
10760 65 73 74 69 6e 61 74 69 6f 6e 73 20 6c 69 73 74 estinations list
10770 73 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a s:..<verbatim>..
10780 27 20 20 31 2c 20 32 2c 20 33 2c 20 34 20 2c 20 ' 1, 2, 3, 4 ,
10790 35 20 2c 20 31 30 2c 20 31 30 30 2c 20 31 30 30 5 , 10, 100, 100
107a0 30 2c 20 31 30 30 30 30 30 20 20 27 20 20 20 2d 0, 100000 ' -
107b0 2d 20 69 6e 74 65 67 65 72 20 4e 6f 64 65 20 49 - integer Node I
107c0 44 73 0d 0a 0d 0a 27 20 20 41 31 30 30 42 2c 20 Ds....' A100B,
107d0 41 31 30 30 46 20 2c 20 42 32 35 30 5a 20 2c 20 A100F , B250Z ,
107e0 43 30 31 30 4d 2c 20 5a 39 39 39 41 20 20 27 20 C010M, Z999A '
107f0 20 20 20 20 20 2d 2d 20 61 6c 70 68 61 6e 75 6d -- alphanum
10800 65 72 69 63 20 4e 6f 64 65 20 43 6f 64 65 73 0d eric Node Codes.
10810 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 3c 75 .</verbatim>..<u
10820 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 61 6c 6c 20 77 >Note</u>: all w
10830 68 69 74 65 73 70 61 63 65 73 20 69 6d 6d 65 64 hitespaces immed
10840 69 61 74 65 6c 79 20 70 72 65 63 65 64 69 6e 67 iately preceding
10850 20 6f 72 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 or following th
10860 65 20 3c 62 3e 64 65 6c 69 6d 69 74 65 72 3c 2f e <b>delimiter</
10870 62 3e 20 77 69 6c 6c 20 62 65 20 63 6f 6e 73 69 b> will be consi
10880 64 65 72 65 64 20 74 6f 20 62 65 20 69 6e 74 65 dered to be inte
10890 67 72 61 6c 20 70 61 72 74 20 6f 66 20 74 68 65 gral part of the
108a0 20 76 61 6c 75 65 20 69 74 73 65 6c 66 2e 3c 62 value itself.<b
108b0 72 3e 0d 0a 54 68 69 73 20 77 69 6c 6c 20 68 61 r>..This will ha
108c0 76 65 20 6e 6f 20 61 64 76 65 72 73 65 20 63 6f ve no adverse co
108d0 6e 73 65 71 75 65 6e 63 65 73 20 69 6e 20 74 68 nsequences in th
108e0 65 20 63 61 73 65 20 6f 66 20 69 6e 74 65 67 65 e case of intege
108f0 72 20 76 61 6c 75 65 73 2c 20 62 75 74 20 63 61 r values, but ca
10900 6e 20 65 61 73 69 6c 79 20 68 61 76 65 20 63 61 n easily have ca
10910 74 61 73 74 72 6f 70 68 69 63 20 65 66 66 65 63 tastrophic effec
10920 74 73 20 6f 6e 20 61 6c 70 68 61 6e 75 6d 65 72 ts on alphanumer
10930 69 63 20 76 61 6c 75 65 73 2e 0d 0a 3c 68 33 3e ic values...<h3>
10940 44 65 66 69 6e 69 6e 67 20 61 20 63 75 73 74 6f Defining a custo
10950 6d 20 64 65 6c 69 6d 69 74 65 72 3c 2f 68 33 3e m delimiter</h3>
10960 0d 0a 53 6f 6d 65 74 69 6d 65 73 20 69 74 20 63 ..Sometimes it c
10970 6f 75 6c 64 20 62 65 20 75 73 65 66 75 6c 20 73 ould be useful s
10980 65 74 74 69 6e 67 20 75 70 20 61 20 64 65 6c 69 etting up a deli
10990 6d 69 74 65 72 20 64 69 66 66 65 72 65 6e 74 20 miter different
109a0 66 72 6f 6d 20 3c 62 3e 63 6f 6d 6d 61 3c 2f 62 from <b>comma</b
109b0 3e 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a >...<verbatim>..
109c0 55 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 45 UPDATE byfoot SE
109d0 54 20 44 65 6c 69 6d 69 74 65 72 20 3d 20 27 2a T Delimiter = '*
109e0 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 44 65 6c ';....SELECT Del
109f0 69 6d 69 74 65 72 20 46 52 4f 4d 20 62 79 66 6f imiter FROM byfo
10a00 6f 74 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ot;..-----------
10a10 2d 2d 2d 2d 2d 2d 2d 0d 0a 2a 20 5b 64 65 63 3d -------..* [dec=
10a20 34 32 2c 20 68 65 78 3d 32 61 5d 0d 0a 3c 2f 76 42, hex=2a]..</v
10a30 65 72 62 61 74 69 6d 3e 20 0d 0a 59 6f 75 20 73 erbatim> ..You s
10a40 69 6d 70 6c 79 20 68 61 76 65 20 74 6f 20 65 78 imply have to ex
10a50 65 63 75 74 65 20 61 6e 20 3c 62 3e 55 50 44 41 ecute an <b>UPDA
10a60 54 45 3c 2f 62 3e 20 73 74 61 74 65 6d 65 6e 74 TE</b> statement
10a70 20 62 79 20 73 70 65 63 69 66 79 69 6e 67 20 74 by specifying t
10a80 68 65 20 6e 65 77 20 64 65 6c 69 6d 69 74 65 72 he new delimiter
10a90 20 76 61 6c 75 65 2e 3c 62 72 3e 3c 62 72 3e 0d value.<br><br>.
10aa0 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 .</td></tr></tab
10ab0 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c le>..<br><br>..<
10ac0 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 3c 61 20 hr><br>..<h1><a
10ad0 6e 61 6d 65 3d 22 69 73 6f 63 68 72 6f 6e 65 22 name="isochrone"
10ae0 3e 36 20 2d 20 53 6f 6c 76 69 6e 67 20 49 73 6f >6 - Solving Iso
10af0 63 68 72 6f 6e 65 20 70 72 6f 62 6c 65 6d 73 3c chrone problems<
10b00 2f 61 3e 3c 2f 68 31 3e 0d 0a 3c 61 20 68 72 65 /a></h1>..<a hre
10b10 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 f="https://en.wi
10b20 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 kipedia.org/wiki
10b30 2f 49 73 6f 63 68 72 6f 6e 65 5f 6d 61 70 22 3e /Isochrone_map">
10b40 49 73 6f 63 68 72 6f 6e 65 73 3c 2f 61 3e 20 61 Isochrones</a> a
10b50 72 65 20 61 72 65 61 73 20 28 6f 72 20 63 75 72 re areas (or cur
10b60 76 65 73 29 20 63 6f 6e 6e 65 63 74 69 6e 67 20 ves) connecting
10b70 70 6f 69 6e 74 73 20 61 74 20 77 68 69 63 68 20 points at which
10b80 73 6f 6d 65 74 68 69 6e 67 20 6f 63 63 75 72 73 something occurs
10b90 20 6f 72 20 61 72 72 69 76 65 73 20 61 74 20 74 or arrives at t
10ba0 68 65 20 73 61 6d 65 20 74 69 6d 65 2e 3c 62 72 he same time.<br
10bb0 3e 0d 0a 49 73 6f 63 68 72 6f 6e 65 73 20 61 72 >..Isochrones ar
10bc0 65 20 75 73 75 61 6c 6c 79 20 72 65 6c 61 74 65 e usually relate
10bd0 64 20 74 6f 20 4e 65 74 77 6f 72 6b 20 41 6e 61 d to Network Ana
10be0 6c 79 73 69 73 20 61 6e 64 20 52 6f 75 74 69 6e lysis and Routin
10bf0 67 20 62 65 63 61 75 73 65 20 74 68 65 79 20 61 g because they a
10c00 6c 6c 6f 77 20 74 6f 20 65 61 73 69 6c 79 20 69 llow to easily i
10c10 64 65 6e 74 69 66 79 20 77 68 69 63 68 20 73 70 dentify which sp
10c20 65 63 69 66 69 63 20 70 6f 72 74 69 6f 6e 20 6f ecific portion o
10c30 66 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 63 61 f the Network ca
10c40 6e 20 62 65 20 72 65 61 63 68 65 64 20 73 74 61 n be reached sta
10c50 72 74 69 6e 67 20 62 79 20 73 6f 6d 65 20 3c 62 rting by some <b
10c60 3e 6f 72 69 67 69 6e 20 4e 6f 64 65 3c 2f 62 3e >origin Node</b>
10c70 20 73 70 65 6e 64 69 6e 67 20 6e 6f 20 6d 6f 72 spending no mor
10c80 65 20 74 68 61 6e 20 61 20 67 69 76 65 6e 20 3c e than a given <
10c90 62 3e 43 6f 73 74 3c 2f 62 3e 2e 3c 62 72 3e 3c b>Cost</b>.<br><
10ca0 62 72 3e 0d 0a 41 73 20 79 6f 75 20 68 61 76 65 br>..As you have
10cb0 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 61 62 already seen ab
10cc0 6f 75 74 20 3c 62 3e 6d 75 6c 74 69 2d 64 65 73 out <b>multi-des
10cd0 74 69 6e 61 74 69 6f 6e 3c 2f 62 3e 20 71 75 65 tination</b> que
10ce0 72 69 65 73 2c 20 74 68 65 20 44 69 6a 6b 73 74 ries, the Dijkst
10cf0 72 61 27 73 20 41 6c 67 6f 72 69 74 68 6d 20 72 ra's Algorithm r
10d00 6f 62 75 73 74 6c 79 20 65 6e 73 75 72 65 73 20 obustly ensures
10d10 74 68 61 74 20 77 68 65 6e 20 61 20 64 65 73 74 that when a dest
10d20 69 6e 61 74 69 6f 6e 20 69 73 20 72 65 61 63 68 ination is reach
10d30 65 64 20 61 6c 6c 20 74 68 65 20 64 65 73 74 69 ed all the desti
10d40 6e 61 74 69 6f 6e 73 20 70 72 65 73 65 6e 74 69 nations presenti
10d50 6e 67 20 61 20 3c 62 3e 6c 65 73 73 65 72 20 63 ng a <b>lesser c
10d60 6f 73 74 3c 2f 62 3e 20 68 61 76 65 20 61 6c 72 ost</b> have alr
10d70 65 61 64 79 20 62 65 65 6e 20 72 65 61 63 68 65 eady been reache
10d80 64 20 69 6e 20 73 6f 6d 65 20 70 72 65 76 69 6f d in some previo
10d90 75 73 20 73 74 65 70 20 6f 66 20 74 68 65 20 70 us step of the p
10da0 72 6f 63 65 73 73 2e 3c 62 72 3e 0d 0a 54 68 69 rocess.<br>..Thi
10db0 73 20 61 6c 6c 6f 77 73 20 74 6f 20 65 66 66 69 s allows to effi
10dc0 63 69 65 6e 74 6c 79 20 73 75 70 70 6f 72 74 20 ciently support
10dd0 3c 62 3e 49 73 6f 63 68 72 6f 6e 65 3c 2f 62 3e <b>Isochrone</b>
10de0 20 71 75 65 72 69 65 73 2e 0d 0a 59 6f 75 20 73 queries...You s
10df0 69 6d 70 6c 79 20 68 61 76 65 20 74 6f 20 73 70 imply have to sp
10e00 65 63 69 66 79 20 61 20 3c 62 3e 73 69 6e 67 6c ecify a <b>singl
10e10 65 20 6f 72 69 67 69 6e 20 4e 6f 64 65 3c 2f 62 e origin Node</b
10e20 3e 20 61 6e 64 20 61 20 3c 62 3e 43 6f 73 74 20 > and a <b>Cost
10e30 74 68 72 65 73 68 6f 6c 64 3c 2f 62 3e 2e 3c 62 threshold</b>.<b
10e40 72 3e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c r><br>..<u>Note<
10e50 2f 75 3e 3a 20 65 78 65 63 75 74 69 6e 67 20 61 /u>: executing a
10e60 6e 20 49 73 6f 63 68 72 6f 6e 65 20 71 75 65 72 n Isochrone quer
10e70 79 20 72 65 71 75 69 72 65 73 20 61 20 3c 62 3e y requires a <b>
10e80 70 72 6f 63 65 73 73 69 6e 67 20 74 69 6d 65 3c processing time<
10e90 2f 62 3e 20 74 68 61 74 20 69 73 6e 27 74 20 74 /b> that isn't t
10ea0 68 65 20 3c 75 3e 73 75 6d 20 6f 66 20 61 6c 6c he <u>sum of all
10eb0 20 69 6e 64 69 76 69 64 75 61 6c 20 74 69 6d 69 individual timi
10ec0 6e 67 73 20 66 6f 72 20 65 61 63 68 20 64 65 73 ngs for each des
10ed0 74 69 6e 61 74 69 6f 6e 3c 2f 75 3e 2c 20 62 75 tination</u>, bu
10ee0 74 20 73 69 6d 70 6c 79 20 69 73 20 74 68 65 20 t simply is the
10ef0 3c 75 3e 74 69 6d 65 20 72 65 71 75 69 72 65 64 <u>time required
10f00 20 74 6f 20 72 65 61 63 68 20 74 68 65 20 6d 6f to reach the mo
10f10 73 74 20 63 6f 73 74 6c 79 20 64 65 73 74 69 6e st costly destin
10f20 61 74 69 6f 6e 3c 2f 75 3e 2e 3c 62 72 3e 0d 0a ation</u>.<br>..
10f30 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 <verbatim>..SELE
10f40 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 65 CT Algorithm, Re
10f50 71 75 65 73 74 2c 20 52 6f 6c 65 2c 20 4e 6f 64 quest, Role, Nod
10f60 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 eFrom, NodeTo, C
10f70 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 0d 0a 46 ost, Geometry..F
10f80 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 ROM byfoot..WHER
10f90 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 38 31 E NodeFrom = 181
10fa0 39 39 39 20 41 4e 44 20 43 6f 73 74 20 3c 3d 20 999 AND Cost <=
10fb0 31 30 30 30 2e 30 3b 0d 0a 3c 2f 76 65 72 62 61 1000.0;..</verba
10fc0 74 69 6d 3e 0d 0a 41 6e 20 3c 62 3e 49 73 6f 63 tim>..An <b>Isoc
10fd0 68 72 6f 6e 65 3c 2f 62 3e 20 71 75 65 72 79 20 hrone</b> query
10fe0 61 73 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 as supported by
10ff0 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 74 69 6e <b>VirtualRoutin
11000 67 3c 2f 62 3e 20 6a 75 73 74 20 72 65 71 75 69 g</b> just requi
11010 72 65 73 20 74 6f 20 73 70 65 63 69 66 79 3a 0d res to specify:.
11020 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 4e 6f .<ul>..<li><b>No
11030 64 65 46 72 6f 6d 3c 2f 62 3e 3a 20 74 68 65 20 deFrom</b>: the
11040 3c 62 3e 3c 69 3e 49 44 3c 2f 69 3e 3c 2f 62 3e <b><i>ID</i></b>
11050 20 6f 72 20 3c 62 3e 3c 69 3e 43 6f 64 65 3c 2f or <b><i>Code</
11060 69 3e 3c 2f 62 3e 20 75 6e 69 71 75 65 6c 79 20 i></b> uniquely
11070 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 identifying the
11080 3c 62 3e 6f 72 69 67 69 6e 20 4e 6f 64 65 3c 2f <b>origin Node</
11090 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 b>.</li>..<li><b
110a0 3e 43 6f 73 74 3c 2f 62 3e 3a 20 74 68 65 20 6d >Cost</b>: the m
110b0 61 78 69 6d 75 6d 20 3c 62 3e 43 6f 73 74 20 74 aximum <b>Cost t
110c0 68 72 65 73 68 6f 6c 64 3c 2f 62 3e 20 6e 6f 74 hreshold</b> not
110d0 20 74 6f 20 62 65 20 65 78 63 65 65 64 65 64 2e to be exceeded.
110e0 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 <br>..<u>Note</u
110f0 3e 3a 20 61 6e 79 20 76 61 6c 69 64 20 49 73 6f >: any valid Iso
11100 63 68 72 6f 6e 65 20 71 75 65 72 79 20 3c 62 3e chrone query <b>
11110 6d 75 73 74 3c 2f 62 3e 20 6e 65 63 65 73 73 61 must</b> necessa
11120 72 69 6c 79 20 73 70 65 63 69 66 79 20 61 20 3c rily specify a <
11130 62 3e 3c 3d 3c 2f 62 3e 20 28 3c 75 3e 3c 69 3e b><=</b> (<u><i>
11140 6c 65 73 73 65 72 20 74 68 61 6e 20 6f 72 20 65 lesser than or e
11150 71 75 61 6c 20 74 6f 3c 2f 69 3e 3c 2f 75 3e 29 qual to</i></u>)
11160 20 63 6f 6d 70 61 72 69 73 6f 6e 20 6f 70 65 72 comparison oper
11170 61 74 6f 72 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c ator.</li>..</ul
11180 3e 0d 0a 3c 62 72 3e 0d 0a 54 68 65 20 66 6f 6c >..<br>..The fol
11190 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 73 68 6f lowing table sho
111a0 77 73 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 ws the resultset
111b0 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 returned by the
111c0 20 61 62 6f 76 65 20 49 73 6f 63 68 72 6f 6e 65 above Isochrone
111d0 20 71 75 65 72 79 2e 0d 0a 3c 62 72 3e 3c 62 72 query...<br><br
111e0 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 >..<table border
111f0 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 ="1" bgcolor="#f
11200 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 fffcf" cellspaci
11210 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 ng="4" cellpaddi
11220 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 ng="6">..<tr><th
11230 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
11240 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 0">Algorithm</th
11250 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
11260 30 64 30 61 30 22 3e 52 65 71 75 65 73 74 3c 2f 0d0a0">Request</
11270 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
11280 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 #d0d0a0">Role</t
11290 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
112a0 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d d0d0a0">NodeFrom
112b0 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
112c0 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 ="#d0d0a0">NodeT
112d0 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f o</th><th bgcolo
112e0 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 r="#d0d0a0">Cost
112f0 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
11300 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 ="#d0d0a0">Geome
11310 74 72 79 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c try</th></tr>..<
11320 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 tr>..<tr>..<td>D
11330 69 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e ijkstra</td><td>
11340 49 73 6f 63 68 72 6f 6e 65 3c 2f 74 64 3e 3c 74 Isochrone</td><t
11350 64 3e 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e 3c d>Solution</td><
11360 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
11370 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 >181999</td><td
11380 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
11390 38 37 31 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8717</td><td ali
113a0 67 6e 3d 22 72 69 67 68 74 22 3e 35 37 32 2e 34 gn="right">572.4
113b0 35 35 31 34 33 3c 2f 74 64 3e 3c 74 64 3e 42 4c 55143</td><td>BL
113c0 4f 42 20 73 7a 3d 36 30 20 47 45 4f 4d 45 54 52 OB sz=60 GEOMETR
113d0 59 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c Y</td>..</tr>..<
113e0 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
113f0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
11400 74 64 3e 53 6f 6c 75 74 69 6f 6e 3c 74 64 20 61 td>Solution<td a
11410 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 lign="right">181
11420 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 999</td><td alig
11430 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 31 38 n="right">178718
11440 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
11450 72 69 67 68 74 22 3e 35 38 37 2e 33 30 33 37 37 right">587.30377
11460 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 9</td><td>BLOB s
11470 7a 3d 36 30 20 47 45 4f 4d 45 54 52 59 3c 2f 74 z=60 GEOMETRY</t
11480 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
11490 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 63 65 6e 74 .<td align="cent
114a0 65 72 22 20 63 6f 6c 73 70 61 6e 3d 22 37 22 3e er" colspan="7">
114b0 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 3c 2f 74 .............</t
114c0 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
114d0 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
114e0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
114f0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 53 6f 6c lign="right">Sol
11500 75 74 69 6f 6e 3c 2f 74 64 3e 3c 74 64 20 61 6c ution</td><td al
11510 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 ign="right">1819
11520 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 99</td><td align
11530 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 35 3c ="right">184035<
11540 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
11550 69 67 68 74 22 3e 35 37 39 2e 37 38 36 37 32 34 ight">579.786724
11560 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a </td><td>BLOB sz
11570 3d 36 30 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 =60 GEOMETRY</td
11580 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
11590 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
115a0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 53 6f >NULL</td><td>So
115b0 6c 75 74 69 6f 6e 3c 2f 74 64 3e 3c 74 64 20 61 lution</td><td a
115c0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 lign="right">181
115d0 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 999</td><td alig
115e0 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 36 n="right">184036
115f0 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
11600 72 69 67 68 74 22 3e 36 34 32 2e 36 39 31 35 39 right">642.69159
11610 37 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7</td><td>BLOB s
11620 7a 3d 36 30 20 47 45 4f 4d 45 54 52 59 3c 2f 74 z=60 GEOMETRY</t
11630 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 d>..</tr>..</tab
11640 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 74 27 73 le>..<br>..Let's
11650 20 71 75 69 63 6b 6c 79 20 65 78 61 6d 69 6e 65 quickly examine
11660 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 72 the resultset r
11670 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 61 eturned by the a
11680 62 6f 76 65 20 3c 62 3e 69 73 6f 63 68 72 6f 6e bove <b>isochron
11690 65 3c 2f 62 3e 20 71 75 65 72 79 2e 0d 0a 3c 75 e</b> query...<u
116a0 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 66 l>..<li>the <b>f
116b0 69 72 73 74 20 72 6f 77 3c 2f 62 3e 20 6f 66 20 irst row</b> of
116c0 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 69 73 the resultset is
116d0 20 73 6f 6d 65 77 61 79 20 65 78 63 65 70 74 69 someway excepti
116e0 6f 6e 61 6c 2c 20 61 6e 64 20 69 73 20 74 68 65 onal, and is the
116f0 20 75 6e 69 71 75 65 20 72 6f 77 20 6f 66 20 74 unique row of t
11700 68 65 20 72 65 73 75 6c 74 73 65 74 20 70 72 65 he resultset pre
11710 73 65 6e 74 69 6e 67 20 3c 62 3e 4e 4f 54 20 4e senting <b>NOT N
11720 55 4c 4c 3c 2f 62 3e 20 76 61 6c 75 65 73 20 69 ULL</b> values i
11730 6e 20 74 68 65 20 3c 62 3e 41 6c 67 6f 72 69 74 n the <b>Algorit
11740 68 6d 3c 2f 62 3e 2c 20 3c 62 3e 52 65 71 75 65 hm</b>, <b>Reque
11750 73 74 3c 2f 62 3e 2c 20 3c 2f 62 3e 4f 70 74 69 st</b>, </b>Opti
11760 6f 6e 73 3c 2f 62 3e 20 28 61 6e 64 20 3c 2f 62 ons</b> (and </b
11770 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 62 3e 29 20 >Delimiter</b>)
11780 63 6f 6c 75 6d 6e 73 2e 3c 2f 6c 69 3e 0d 0a 3c columns.</li>..<
11790 6c 69 3e 61 6c 6c 20 72 6f 77 73 20 28 69 6e 63 li>all rows (inc
117a0 6c 75 64 69 6e 67 20 74 68 65 20 66 69 72 73 74 luding the first
117b0 20 6f 6e 65 29 20 68 61 76 65 20 3c 62 3e 52 6f one) have <b>Ro
117c0 6c 65 20 3d 20 53 6f 6c 75 74 69 6f 6e 3c 2f 62 le = Solution</b
117d0 3e 2c 20 61 6e 64 20 72 65 70 72 65 73 65 6e 74 >, and represent
117e0 20 61 20 73 69 6e 67 6c 65 20 63 6f 6e 6e 65 63 a single connec
117f0 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 3c 62 3e tion between <b>
11800 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 NodeFrom</b> and
11810 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 2c 20 <b>NodeTo</b>,
11820 77 69 74 68 20 74 68 65 20 63 6f 72 72 65 73 70 with the corresp
11830 6f 6e 64 69 6e 67 20 3c 62 3e 43 6f 73 74 3c 2f onding <b>Cost</
11840 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 b>.</li>..<li>th
11850 65 20 3c 62 3e 47 65 6f 6d 65 74 72 79 3c 2f 62 e <b>Geometry</b
11860 3e 20 63 6f 6c 75 6d 6e 20 61 6c 77 61 79 73 20 > column always
11870 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 corresponds to t
11880 68 65 20 3c 62 3e 32 44 20 50 6f 69 6e 74 3c 2f he <b>2D Point</
11890 62 3e 20 77 68 65 72 65 20 3c 62 3e 4e 6f 64 65 b> where <b>Node
118a0 54 6f 3c 2f 62 3e 20 69 73 20 6c 6f 63 61 74 65 To</b> is locate
118b0 64 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a d.</li>..</ul>..
118c0 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 <br>..<u>Note</u
118d0 3e 3a 20 3c 62 3e 69 73 6f 63 68 72 6f 6e 65 3c >: <b>isochrone<
118e0 2f 62 3e 20 71 75 65 72 69 65 73 20 61 72 65 20 /b> queries are
118f0 6e 6f 74 20 61 66 66 65 63 74 65 64 20 62 79 20 not affected by
11900 63 6f 6e 66 69 67 75 72 61 62 6c 65 20 6f 70 74 configurable opt
11910 69 6f 6e 73 2e 0d 0a 3c 62 3e 41 6c 67 6f 72 69 ions...<b>Algori
11920 74 68 6d 3c 2f 62 3e 20 77 69 6c 6c 20 62 65 20 thm</b> will be
11930 61 6c 77 61 79 73 20 61 73 73 75 6d 65 64 20 74 always assumed t
11940 6f 20 62 65 20 3c 62 3e 44 69 6a 73 6b 74 72 61 o be <b>Dijsktra
11950 3c 2f 62 3e 2c 20 61 6e 64 20 74 68 65 20 63 75 </b>, and the cu
11960 72 72 65 6e 74 20 3c 62 3e 4f 70 74 69 6f 6e 73 rrent <b>Options
11970 3c 2f 62 3e 20 73 65 74 74 69 6e 67 73 20 77 69 </b> settings wi
11980 6c 6c 20 62 65 20 73 69 6d 70 6c 79 20 69 67 6e ll be simply ign
11990 6f 72 65 64 2e 0d 0a 3c 76 65 72 62 61 74 69 6d ored...<verbatim
119a0 3e 0d 0a 53 45 4c 45 43 54 20 53 54 5f 43 6f 6e >..SELECT ST_Con
119b0 63 61 76 65 48 75 6c 6c 28 53 54 5f 43 6f 6c 6c caveHull(ST_Coll
119c0 65 63 74 28 47 65 6f 6d 65 74 72 79 29 29 0d 0a ect(Geometry))..
119d0 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 FROM byfoot..WHE
119e0 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 38 RE NodeFrom = 18
119f0 31 39 39 39 20 41 4e 44 20 43 6f 73 74 20 3c 3d 1999 AND Cost <=
11a00 20 31 30 30 30 2e 30 3b 0d 0a 3c 2f 76 65 72 62 1000.0;..</verb
11a10 61 74 69 6d 3e 0d 0a 41 6e 79 20 69 73 6f 63 68 atim>..Any isoch
11a20 72 6f 6e 65 20 71 75 65 72 79 20 77 69 6c 6c 20 rone query will
11a30 6a 75 73 74 20 72 65 74 75 72 6e 20 61 20 50 6f just return a Po
11a40 69 6e 74 2d 73 65 74 3b 20 69 66 20 79 6f 75 20 int-set; if you
11a50 65 76 65 6e 74 75 61 6c 6c 79 20 77 69 73 68 20 eventually wish
11a60 74 6f 20 6f 62 74 61 69 6e 20 74 68 65 20 63 6f to obtain the co
11a70 72 72 65 73 70 6f 6e 64 69 6e 67 20 61 72 65 61 rresponding area
11a80 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e l representation
11a90 20 79 6f 75 20 6a 75 73 74 20 68 61 76 65 20 74 you just have t
11aa0 6f 20 63 61 6c 6c 20 3c 62 3e 53 54 5f 43 6f 6c o call <b>ST_Col
11ab0 6c 65 63 74 28 29 3c 2f 62 3e 20 69 6e 20 6f 72 lect()</b> in or
11ac0 64 65 72 20 74 6f 20 67 65 74 20 61 20 6d 6f 6e der to get a mon
11ad0 6f 6c 69 74 68 69 63 20 4d 75 6c 74 69 50 6f 69 olithic MultiPoi
11ae0 6e 74 2c 20 74 68 65 6e 20 63 61 6c 6c 69 6e 67 nt, then calling
11af0 20 3c 62 3e 53 54 5f 43 6f 6e 63 61 76 65 48 75 <b>ST_ConcaveHu
11b00 6c 6c 28 29 3c 2f 62 3e 20 69 6e 20 6f 72 64 65 ll()</b> in orde
11b10 72 20 74 6f 20 67 65 74 20 61 20 50 6f 6c 79 67 r to get a Polyg
11b20 6f 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 on...<br><br><br
11b30 3e 0d 0a 54 68 65 20 6d 61 70 20 62 65 6c 6f 77 >..The map below
11b40 20 67 72 61 70 68 69 63 61 6c 6c 79 20 73 68 6f graphically sho
11b50 77 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 ws the previous
11b60 3c 62 3e 69 73 6f 63 68 72 6f 6e 65 3c 2f 62 3e <b>isochrone</b>
11b70 20 71 75 65 72 79 2e 0d 0a 3c 62 72 3e 3c 62 72 query...<br><br
11b80 3e 0d 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 >..<img src="htt
11b90 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 ps://www.gaia-gi
11ba0 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 s.it/gaia-sins/r
11bb0 6f 75 74 69 6e 67 2d 66 69 67 73 2f 69 73 6f 63 outing-figs/isoc
11bc0 68 72 6f 6e 65 2e 6a 70 67 22 20 61 6c 74 3d 22 hrone.jpg" alt="
11bd0 69 73 6f 63 68 72 6f 6e 65 22 3e 0d 0a 3c 75 6c isochrone">..<ul
11be0 3e 0d 0a 3c 6c 69 3e 59 65 6c 6c 6f 77 20 73 74 >..<li>Yellow st
11bf0 61 72 3a 20 74 68 65 20 4f 72 69 67 69 6e 20 4e ar: the Origin N
11c00 6f 64 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 42 ode.</li>..<li>B
11c10 6c 75 65 20 64 6f 74 73 3a 20 61 6c 6c 20 44 65 lue dots: all De
11c20 73 74 69 6e 61 74 69 6f 6e 20 4e 6f 64 65 73 20 stination Nodes
11c30 77 69 74 68 69 6e 20 74 68 65 20 67 69 76 65 6e within the given
11c40 20 43 6f 73 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 Cost.</li>..<li
11c50 3e 57 68 69 74 65 20 6c 69 6e 65 3a 20 74 68 65 >White line: the
11c60 20 62 6f 75 6e 64 61 72 79 20 6f 66 20 74 68 65 boundary of the
11c70 20 49 73 6f 63 68 72 6f 6e 65 2e 20 0d 0a 3c 62 Isochrone. ..<b
11c80 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 r><br>..<table b
11c90 67 63 6f 6c 6f 72 3d 22 23 63 30 66 66 63 30 22 gcolor="#c0ffc0"
11ca0 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 cellspacing="10
11cb0 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 " cellpadding="6
11cc0 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 62 72 3e "><tr><td>..<br>
11cd0 3c 62 72 3e 0d 0a 3c 75 3e 3c 62 3e 4e 6f 74 65 <br>..<u><b>Note
11ce0 3c 2f 62 3e 3c 2f 75 3e 3a 20 69 74 20 74 68 69 </b></u>: it thi
11cf0 73 20 65 78 61 6d 70 6c 65 20 79 6f 75 27 76 65 s example you've
11d00 20 75 73 65 64 20 74 68 65 20 3c 62 3e 62 79 66 used the <b>byf
11d10 6f 6f 74 3c 2f 62 3e 20 4e 65 74 77 6f 72 6b 2c oot</b> Network,
11d20 20 74 68 61 74 20 69 73 20 62 61 73 65 64 20 6f that is based o
11d30 6e 20 3c 62 3e 43 6f 73 74 73 3c 2f 62 3e 20 65 n <b>Costs</b> e
11d40 78 70 72 65 73 73 65 64 20 69 6e 20 3c 62 3e 6d xpressed in <b>m
11d50 65 74 65 72 73 3c 2f 62 3e 20 28 67 65 6f 6d 65 eters</b> (geome
11d60 74 72 69 63 20 6c 65 6e 67 74 68 20 6f 66 20 65 tric length of e
11d70 61 63 68 20 4c 69 6e 6b 29 2e 3c 62 72 3e 0d 0a ach Link).<br>..
11d80 54 68 69 73 20 4e 65 74 77 6f 72 6b 20 69 73 20 This Network is
11d90 6d 61 69 6e 6c 79 20 69 6e 74 65 6e 64 65 64 20 mainly intended
11da0 66 6f 72 20 3c 62 3e 70 65 64 65 73 74 72 69 61 for <b>pedestria
11db0 6e 73 3c 2f 62 3e 2c 20 73 6f 20 77 65 20 63 61 ns</b>, so we ca
11dc0 6e 20 73 61 66 65 6c 79 20 61 73 73 75 6d 65 20 n safely assume
11dd0 61 20 3c 75 3e 3c 69 3e 63 6f 6e 73 74 61 6e 74 a <u><i>constant
11de0 20 73 70 65 65 64 3c 2f 69 3e 3c 2f 75 3e 20 6f speed</i></u> o
11df0 66 20 61 62 6f 75 74 20 3c 62 3e 34 3c 2f 62 3e f about <b>4</b>
11e00 20 74 6f 20 3c 62 3e 36 20 6b 6d 2f 68 3c 2f 62 to <b>6 km/h</b
11e10 3e 2c 20 61 6e 64 20 63 6f 6e 73 65 71 75 65 6e >, and consequen
11e20 74 6c 79 20 74 68 65 20 3c 62 3e 49 73 6f 63 68 tly the <b>Isoch
11e30 72 6f 6e 65 3c 2f 62 3e 20 65 66 66 65 63 74 69 rone</b> effecti
11e40 76 65 6c 79 20 72 65 73 70 65 63 74 73 20 74 68 vely respects th
11e50 65 20 3c 75 3e 3c 69 3e 73 61 6d 65 20 74 69 6d e <u><i>same tim
11e60 65 3c 2f 69 3e 3c 2f 75 3e 20 72 65 71 75 69 73 e</i></u> requis
11e70 69 74 65 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 53 70 ite.<br><br>..Sp
11e80 65 61 6b 69 6e 67 20 69 6e 20 6d 6f 72 65 20 67 eaking in more g
11e90 65 6e 65 72 61 6c 20 74 65 72 6d 73 2c 20 61 6e eneral terms, an
11ea0 20 49 73 6f 63 68 72 6f 6e 65 20 63 61 6e 20 62 Isochrone can b
11eb0 65 20 69 6e 74 65 6e 64 65 64 20 61 73 20 61 20 e intended as a
11ec0 67 65 6e 65 72 69 63 20 73 79 6e 6f 6e 79 6d 20 generic synonym
11ed0 66 6f 72 20 3c 75 3e 3c 69 3e 73 61 6d 65 20 43 for <u><i>same C
11ee0 6f 73 74 3c 2f 69 3e 3c 2f 75 3e 2c 20 65 76 65 ost</i></u>, eve
11ef0 6e 20 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 n when there is
11f00 6e 6f 20 6f 62 76 69 6f 75 73 20 63 6f 6e 6e 65 no obvious conne
11f10 63 74 69 6f 6e 20 77 69 74 68 20 3c 62 3e 54 69 ction with <b>Ti
11f20 6d 65 2e 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e me.</b>.<br><br>
11f30 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 ..</td></tr></ta
11f40 62 6c 65 3e 0d 0a 3c 68 72 3e 3c 62 72 3e 0d 0a ble>..<hr><br>..
11f50 3c 68 31 3e 3c 61 20 6e 61 6d 65 3d 22 74 73 70 <h1><a name="tsp
11f60 22 3e 37 20 2d 20 53 6f 6c 76 69 6e 67 20 54 53 ">7 - Solving TS
11f70 50 20 28 74 72 61 76 65 6c 69 6e 67 20 73 61 6c P (traveling sal
11f80 65 73 6d 61 6e 29 20 70 72 6f 62 6c 65 6d 73 3c esman) problems<
11f90 2f 61 3e 3c 2f 68 31 3e 0d 0a 3c 62 3e 54 53 50 /a></h1>..<b>TSP
11fa0 3c 2f 62 3e 20 28 3c 61 20 68 72 65 66 3d 22 68 </b> (<a href="h
11fb0 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 ttps://en.wikipe
11fc0 64 69 61 2e 6f 72 67 2f 77 69 6b 69 2f 54 72 61 dia.org/wiki/Tra
11fd0 76 65 6c 6c 69 6e 67 5f 73 61 6c 65 73 6d 61 6e velling_salesman
11fe0 5f 70 72 6f 62 6c 65 6d 22 3e 54 72 61 76 65 6c _problem">Travel
11ff0 69 6e 67 20 53 61 6c 65 73 6d 61 6e 20 50 72 6f ing Salesman Pro
12000 62 6c 65 6d 3c 2f 61 3e 29 20 69 73 20 61 20 77 blem</a>) is a w
12010 65 6c 6c 20 6b 6e 6f 77 6e 20 4f 70 65 72 61 74 ell known Operat
12020 69 6f 6e 73 20 52 65 73 65 61 72 63 68 20 70 72 ions Research pr
12030 6f 62 6c 65 6d 2e 0d 0a 3c 62 72 3e 3c 62 72 3e oblem...<br><br>
12040 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 ..<table bgcolor
12050 3d 22 23 63 30 66 66 63 30 22 20 63 65 6c 6c 73 ="#c0ffc0" cells
12060 70 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c 6c pacing="10" cell
12070 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 3e padding="6"><tr>
12080 3c 74 64 3e 0d 0a 3c 68 33 3e 54 68 65 20 54 72 <td>..<h3>The Tr
12090 61 76 65 6c 69 6e 67 20 53 61 6c 65 73 6d 61 6e aveling Salesman
120a0 20 50 72 6f 62 6c 65 6d 3c 2f 68 33 3e 0d 0a 3c Problem</h3>..<
120b0 62 3e 3c 69 3e 47 69 76 65 6e 20 61 20 6c 69 73 b><i>Given a lis
120c0 74 20 6f 66 20 63 69 74 69 65 73 20 61 6e 64 20 t of cities and
120d0 74 68 65 20 64 69 73 74 61 6e 63 65 73 20 62 65 the distances be
120e0 74 77 65 65 6e 20 65 61 63 68 20 70 61 69 72 20 tween each pair
120f0 6f 66 20 63 69 74 69 65 73 2c 20 77 68 61 74 20 of cities, what
12100 69 73 20 74 68 65 20 73 68 6f 72 74 65 73 74 20 is the shortest
12110 70 6f 73 73 69 62 6c 65 20 72 6f 75 74 65 20 74 possible route t
12120 68 61 74 20 76 69 73 69 74 73 20 65 61 63 68 20 hat visits each
12130 63 69 74 79 20 61 6e 64 20 72 65 74 75 72 6e 73 city and returns
12140 20 74 6f 20 74 68 65 20 6f 72 69 67 69 6e 20 63 to the origin c
12150 69 74 79 20 3f 3c 2f 69 3e 3c 2f 62 3e 0d 0a 3c ity ?</i></b>..<
12160 62 72 3e 3c 62 72 3e 0d 0a 3c 2f 74 64 3e 3c 2f br><br>..</td></
12170 74 72 3e 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 tr></table>..<br
12180 3e 0d 0a 3c 75 3e 4e 6f 74 65 3a 3c 2f 75 3e 20 >..<u>Note:</u>
12190 74 68 65 20 74 65 72 6d 73 20 3c 69 3e 3c 75 3e the terms <i><u>
121a0 73 61 6c 65 73 6d 61 6e 3c 2f 75 3e 3c 2f 69 3e salesman</u></i>
121b0 20 61 6e 64 20 3c 69 3e 3c 75 3e 63 69 74 79 3c and <i><u>city<
121c0 2f 75 3e 3c 2f 69 3e 20 61 72 65 20 75 6e 69 76 /u></i> are univ
121d0 65 72 73 61 6c 6c 79 20 75 73 65 64 20 66 6f 72 ersally used for
121e0 20 68 69 73 74 6f 72 69 63 61 6c 20 72 65 61 73 historical reas
121f0 6f 6e 73 2c 20 62 75 74 20 79 6f 75 20 73 68 6f ons, but you sho
12200 75 6c 64 20 61 76 6f 69 64 20 74 6f 20 6c 69 74 uld avoid to lit
12210 65 72 61 6c 6c 79 20 69 6e 74 65 6e 64 20 62 6f erally intend bo
12220 74 68 20 74 68 65 6d 2e 3c 62 72 3e 0d 0a 54 68 th them.<br>..Th
12230 65 20 74 65 72 6d 20 3c 75 3e 3c 69 3e 73 61 6c e term <u><i>sal
12240 65 73 6d 61 6e 3c 2f 69 3e 3c 2f 75 3e 20 69 6e esman</i></u> in
12250 20 74 68 69 73 20 73 70 65 63 69 66 69 63 20 63 this specific c
12260 6f 6e 74 65 78 74 20 69 6e 74 65 6e 64 73 20 61 ontext intends a
12270 6e 79 20 70 6f 73 73 69 62 6c 65 20 6b 69 6e 64 ny possible kind
12280 20 6f 66 20 3c 75 3e 3c 69 3e 6d 6f 76 69 6e 67 of <u><i>moving
12290 20 61 67 65 6e 74 3c 2f 69 3e 3c 2f 75 3e 20 28 agent</i></u> (
122a0 70 65 64 65 73 74 72 69 61 6e 2c 20 76 65 68 69 pedestrian, vehi
122b0 63 6c 65 2c 20 70 61 73 73 65 6e 67 65 72 20 6f cle, passenger o
122c0 72 20 77 68 61 74 65 76 65 72 20 65 6c 73 65 29 r whatever else)
122d0 2c 20 65 78 61 63 74 6c 79 20 61 73 20 3c 69 3e , exactly as <i>
122e0 3c 75 3e 63 69 74 79 3c 2f 75 3e 3c 2f 69 3e 20 <u>city</u></i>
122f0 73 69 6d 70 6c 79 20 73 74 61 6e 64 73 20 66 6f simply stands fo
12300 72 20 61 6e 79 20 3c 69 3e 3c 75 3e 67 65 6e 65 r any <i><u>gene
12310 72 69 63 20 64 65 73 74 69 6e 61 74 69 6f 6e 3c ric destination<
12320 2f 75 3e 3c 2f 69 3e 20 6f 6e 20 61 20 67 69 76 /u></i> on a giv
12330 65 6e 20 4e 65 74 77 6f 72 6b 2e 0d 0a 3c 62 72 en Network...<br
12340 3e 3c 62 72 3e 0d 0a 57 65 20 63 61 6e 20 63 6f ><br>..We can co
12350 6e 63 65 70 74 75 61 6c 79 20 73 70 6c 69 74 20 nceptualy split
12360 54 50 53 20 69 6e 20 74 77 6f 20 68 61 6c 76 65 TPS in two halve
12370 73 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 63 6f s:..<ol>..<li>co
12380 6d 70 75 74 69 6e 67 20 61 6c 6c 20 64 69 73 74 mputing all dist
12390 61 6e 63 65 73 20 62 65 74 77 65 65 6e 20 70 61 ances between pa
123a0 69 72 73 20 6f 66 20 3c 69 3e 63 69 74 69 65 73 irs of <i>cities
123b0 3c 2f 69 3e 2e 20 54 68 69 73 20 69 73 20 61 20 </i>. This is a
123c0 74 79 70 69 63 61 6c 20 3c 62 3e 53 68 6f 72 74 typical <b>Short
123d0 65 73 74 50 61 74 68 3c 2f 62 3e 20 70 72 6f 62 estPath</b> prob
123e0 6c 65 6d 2c 20 61 6e 64 20 77 65 20 63 61 6e 20 lem, and we can
123f0 64 75 6c 79 20 75 73 65 20 74 68 65 20 44 69 6a duly use the Dij
12400 6b 73 74 72 61 27 73 20 61 6c 67 6f 72 69 74 68 kstra's algorith
12410 6d 20 66 6f 72 20 74 68 69 73 2e 3c 2f 6c 69 3e m for this.</li>
12420 0d 0a 3c 6c 69 3e 74 68 65 6e 20 77 65 20 68 61 ..<li>then we ha
12430 76 65 20 74 6f 20 63 68 65 63 6b 20 61 6c 6c 20 ve to check all
12440 70 6f 73 73 69 62 6c 65 20 3c 62 3e 70 65 72 6d possible <b>perm
12450 75 74 61 74 69 6f 6e 73 3c 2f 62 3e 20 2f 20 3c utations</b> / <
12460 62 3e 63 6f 6d 62 69 6e 61 74 69 6f 6e 73 3c 2f b>combinations</
12470 62 3e 20 73 6f 20 74 6f 20 69 64 65 6e 74 69 66 b> so to identif
12480 79 20 74 68 65 20 6f 70 74 69 6d 61 6c 20 54 53 y the optimal TS
12490 50 20 73 6f 6c 75 74 69 6f 6e 2e 3c 2f 6c 69 3e P solution.</li>
124a0 0d 0a 3c 2f 6f 6c 3e 0d 0a 55 6e 68 61 70 70 69 ..</ol>..Unhappi
124b0 6c 79 20 74 68 65 72 65 20 69 73 20 61 20 70 72 ly there is a pr
124c0 61 63 74 69 63 61 6c 20 64 69 66 66 69 63 75 6c actical difficul
124d0 74 79 20 69 6e 20 73 75 63 68 20 61 20 73 74 72 ty in such a str
124e0 61 69 67 68 74 20 61 70 70 72 6f 61 63 68 3b 20 aight approach;
124f0 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 63 6f the number of co
12500 6d 62 69 6e 61 74 69 6f 6e 73 20 77 69 6c 6c 20 mbinations will
12510 67 72 6f 77 20 65 78 74 72 65 6d 65 6c 79 20 66 grow extremely f
12520 61 73 74 20 61 73 20 74 68 65 20 6e 75 6d 62 65 ast as the numbe
12530 72 20 6f 66 20 3c 62 3e 3c 69 3e 63 69 74 69 65 r of <b><i>citie
12540 73 3c 2f 69 3e 3c 2f 62 3e 20 69 6e 63 72 65 61 s</i></b> increa
12550 73 65 73 2e 3c 62 72 3e 0d 0a 53 69 6d 70 6c 79 ses.<br>..Simply
12560 20 63 6f 6d 70 75 74 69 6e 67 20 74 68 65 20 63 computing the c
12570 6f 6d 70 6c 65 74 65 20 54 53 50 20 73 6f 6c 75 omplete TSP solu
12580 74 69 6f 6e 20 66 6f 72 20 61 62 6f 75 74 20 74 tion for about t
12590 65 6e 20 63 69 74 69 65 73 20 77 69 6c 6c 20 72 en cities will r
125a0 65 71 75 69 72 65 20 61 20 3c 62 3e 76 65 72 79 equire a <b>very
125b0 20 6c 6f 6e 67 20 74 69 6d 65 3c 2f 62 3e 20 65 long time</b> e
125c0 76 65 6e 20 75 73 69 6e 67 20 61 20 73 75 70 65 ven using a supe
125d0 72 63 6f 6d 70 75 74 65 72 2e 3c 62 72 3e 0d 0a rcomputer.<br>..
125e0 41 6e 64 20 61 74 74 65 6d 70 74 69 6e 67 20 74 And attempting t
125f0 6f 20 63 6f 6d 70 75 74 65 20 61 20 54 53 50 20 o compute a TSP
12600 73 6f 6c 75 74 69 6f 6e 20 66 6f 72 20 61 62 6f solution for abo
12610 75 74 20 68 75 6e 64 72 65 64 20 63 69 74 69 65 ut hundred citie
12620 73 20 77 69 6c 6c 20 72 65 71 75 69 72 65 20 61 s will require a
12630 20 3c 62 3e 70 72 61 63 74 69 63 61 6c 6c 79 20 <b>practically
12640 69 6e 66 69 6e 69 74 65 3c 2f 62 3e 20 74 69 6d infinite</b> tim
12650 65 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 48 6f e...<br><br>..Ho
12660 77 65 76 65 72 20 73 6f 6c 76 69 6e 67 20 54 53 wever solving TS
12670 50 20 69 73 20 68 69 67 68 6c 79 20 64 65 73 69 P is highly desi
12680 72 61 62 6c 65 20 69 6e 20 6d 61 6e 79 20 61 70 rable in many ap
12690 70 6c 69 63 61 74 69 6f 6e 20 66 69 65 6c 64 73 plication fields
126a0 3a 20 3c 62 3e 6c 6f 67 69 73 74 69 63 73 3c 2f : <b>logistics</
126b0 62 3e 20 28 6a 75 73 74 20 74 68 69 6e 6b 20 61 b> (just think a
126c0 62 6f 75 74 20 63 6f 75 72 69 65 72 20 63 6f 6d bout courier com
126d0 70 61 6e 69 65 73 20 61 73 20 44 48 4c 2c 20 46 panies as DHL, F
126e0 65 64 45 58 2c 20 55 50 53 20 6f 72 20 54 4e 54 edEX, UPS or TNT
126f0 29 2c 20 3c 62 3e 66 69 65 6c 64 20 6d 61 69 6e ), <b>field main
12700 74 65 6e 61 6e 63 65 3c 2f 62 3e 20 2f 20 3c 62 tenance</b> / <b
12710 3e 61 73 73 69 73 74 61 6e 63 65 3c 2f 62 3e 2c >assistance</b>,
12720 20 3c 62 3e 77 61 73 74 65 20 63 6f 6c 6c 65 63 <b>waste collec
12730 74 69 6f 6e 3c 2f 62 3e 2c 20 3c 62 3e 73 63 68 tion</b>, <b>sch
12740 6f 6f 6c 62 75 73 3c 2f 62 3e 20 2f 20 3c 62 3e oolbus</b> / <b>
12750 73 68 61 72 65 64 20 74 61 78 69 20 73 65 72 76 shared taxi serv
12760 69 63 65 73 3c 2f 62 3e 20 65 74 63 2e 3c 62 72 ices</b> etc.<br
12770 3e 0d 0a 4d 61 6e 79 20 61 6c 67 6f 72 69 74 68 >..Many algorith
12780 6d 73 20 68 61 76 65 20 62 65 65 6e 20 69 6e 76 ms have been inv
12790 65 6e 74 65 64 20 64 75 72 69 6e 67 20 6c 61 73 ented during las
127a0 74 20 64 65 63 61 64 65 73 20 69 6e 74 65 6e 64 t decades intend
127b0 65 64 20 74 6f 20 70 72 6f 64 75 63 65 20 70 72 ed to produce pr
127c0 61 63 74 69 63 61 6c 20 61 6c 74 68 6f 75 67 68 actical although
127d0 20 61 70 70 72 6f 78 69 6d 61 74 65 20 2f 20 69 approximate / i
127e0 6d 70 65 72 66 65 63 74 20 54 53 50 20 73 6f 6c mperfect TSP sol
127f0 75 74 69 6f 6e 73 20 69 6e 20 61 20 72 65 61 73 utions in a reas
12800 6f 6e 61 62 6c 79 20 73 68 6f 72 74 20 74 69 6d onably short tim
12810 65 2e 0d 0a 4d 61 6e 79 20 6f 66 20 74 68 65 6d e...Many of them
12820 20 73 74 72 6f 6e 67 6c 79 20 64 65 70 65 6e 64 strongly depend
12830 20 6f 6e 20 3c 61 20 68 72 65 66 3d 22 68 74 74 on <a href="htt
12840 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 ps://en.wikipedi
12850 61 2e 6f 72 67 2f 77 69 6b 69 2f 48 65 75 72 69 a.org/wiki/Heuri
12860 73 74 69 63 22 3e 68 65 75 72 69 73 74 69 63 3c stic">heuristic<
12870 2f 61 3e 20 61 6e 64 20 2f 20 6f 72 20 3c 61 20 /a> and / or <a
12880 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e href="https://en
12890 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 .wikipedia.org/w
128a0 69 6b 69 2f 52 61 6e 64 6f 6d 6e 65 73 73 22 3e iki/Randomness">
128b0 72 61 6e 64 6f 6d 6e 65 73 73 3c 2f 61 3e 2e 0d randomness</a>..
128c0 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 3e 56 69 .<br><br>..<b>Vi
128d0 72 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e rtualRouting</b>
128e0 20 73 75 70 70 6f 72 74 73 20 74 77 6f 20 64 69 supports two di
128f0 66 66 65 72 65 6e 74 20 54 53 50 20 61 6c 67 6f fferent TSP algo
12900 72 69 74 68 6d 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c rithms:..<ul>..<
12910 6c 69 3e 3c 62 3e 54 53 50 20 4e 4e 3c 2f 62 3e li><b>TSP NN</b>
12920 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e (<i>aka</i> <b>
12930 3c 69 3e 4e 65 61 72 65 73 74 20 4e 65 69 67 68 <i>Nearest Neigh
12940 62 6f 75 72 3c 2f 69 3e 3c 2f 62 3e 29 3c 62 72 bour</i></b>)<br
12950 3e 0d 0a 54 68 69 73 20 3c 61 20 68 72 65 66 3d >..This <a href=
12960 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 "https://en.wiki
12970 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 2f 4e pedia.org/wiki/N
12980 65 61 72 65 73 74 5f 6e 65 69 67 68 62 6f 75 72 earest_neighbour
12990 5f 61 6c 67 6f 72 69 74 68 6d 22 3e 66 69 72 73 _algorithm">firs
129a0 74 20 61 6c 67 6f 72 69 74 68 6d 3c 2f 61 3e 20 t algorithm</a>
129b0 69 73 20 73 74 72 61 69 67 68 74 66 6f 72 77 61 is straightforwa
129c0 72 64 20 73 69 6d 70 6c 65 20 61 6e 64 20 76 65 rd simple and ve
129d0 72 79 20 66 61 73 74 3b 20 69 74 20 63 61 6e 20 ry fast; it can
129e0 65 66 66 65 63 74 69 76 65 6c 79 20 73 6f 6c 76 effectively solv
129f0 65 20 68 75 67 65 20 54 53 50 20 73 6f 6c 75 74 e huge TSP solut
12a00 69 6f 6e 73 20 28 74 68 6f 75 73 61 6e 64 20 3c ions (thousand <
12a10 69 3e 63 69 74 69 65 73 3c 2f 69 3e 20 6f 72 20 i>cities</i> or
12a20 65 76 65 6e 20 6d 6f 72 65 29 20 69 6e 20 61 20 even more) in a
12a30 76 65 72 79 20 73 68 6f 72 74 20 74 69 6d 65 2e very short time.
12a40 3c 62 72 3e 0d 0a 3c 75 3e 53 68 6f 72 74 20 64 <br>..<u>Short d
12a50 65 73 63 72 69 70 74 69 6f 6e 3c 2f 75 3e 3a 0d escription</u>:.
12a60 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 73 74 61 72 74 .<ul>..<li>start
12a70 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 3c 75 3e ing from the <u>
12a80 3c 69 3e 62 61 73 65 20 63 69 74 79 3c 2f 69 3e <i>base city</i>
12a90 3c 2f 75 3e 20 74 68 65 20 3c 75 3e 3c 69 3e 73 </u> the <u><i>s
12aa0 61 6c 65 73 6d 61 6e 3c 2f 69 3e 3c 2f 75 3e 20 alesman</i></u>
12ab0 67 6f 65 73 20 74 6f 20 74 68 65 20 3c 75 3e 3c goes to the <u><
12ac0 69 3e 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e 20 70 i>city</i></u> p
12ad0 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 3c 69 resenting the <i
12ae0 3e 3c 75 3e 6c 65 73 73 65 72 20 63 6f 6e 6e 65 ><u>lesser conne
12af0 63 74 69 6f 6e 20 63 6f 73 74 3c 2f 75 3e 3c 2f ction cost</u></
12b00 69 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 i>.</li>..<li>th
12b10 65 20 61 6c 72 65 61 64 79 20 76 69 73 69 74 65 e already visite
12b20 64 20 3c 69 3e 3c 75 3e 63 69 74 79 3c 2f 75 3e d <i><u>city</u>
12b30 3c 2f 69 3e 20 69 73 20 63 61 6e 63 65 6c 6c 65 </i> is cancelle
12b40 64 20 66 72 6f 6d 20 74 68 65 20 6c 69 73 74 2c d from the list,
12b50 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 3c 75 and then the <u
12b60 3e 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c 2f 69 3e ><i>salesman</i>
12b70 3c 2f 75 3e 20 67 6f 65 73 20 74 6f 20 74 68 65 </u> goes to the
12b80 20 6e 65 78 74 20 3c 75 3e 3c 69 3e 63 69 74 79 next <u><i>city
12b90 3c 2f 69 3e 3c 2f 75 3e 20 70 72 65 73 65 6e 74 </i></u> present
12ba0 69 6e 67 20 74 68 65 20 3c 69 3e 3c 75 3e 6c 65 ing the <i><u>le
12bb0 73 73 65 72 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 sser connection
12bc0 63 6f 73 74 3c 2f 75 3e 3c 2f 69 3e 2e 3c 2f 6c cost</u></i>.</l
12bd0 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 63 79 63 6c i>..<li>the cycl
12be0 65 20 63 6f 6e 74 69 6e 75 65 73 20 75 6e 74 69 e continues unti
12bf0 6c 20 61 6c 6c 20 20 3c 69 3e 3c 75 3e 63 69 74 l all <i><u>cit
12c00 69 65 73 3c 2f 75 3e 3c 2f 69 3e 20 69 6e 20 74 ies</u></i> in t
12c10 68 65 20 6c 69 73 74 20 68 61 76 65 20 62 65 65 he list have bee
12c20 6e 20 76 69 73 69 74 65 64 2e 3c 2f 6c 69 3e 0d n visited.</li>.
12c30 0a 3c 6c 69 3e 66 69 6e 61 6c 6c 79 2c 20 74 68 .<li>finally, th
12c40 65 20 3c 75 3e 3c 69 3e 73 61 6c 65 73 6d 61 6e e <u><i>salesman
12c50 3c 2f 69 3e 3c 2f 75 3e 20 72 65 74 75 72 6e 73 </i></u> returns
12c60 20 74 6f 20 68 69 73 2f 68 65 72 20 69 6e 69 74 to his/her init
12c70 69 61 6c 20 3c 75 3e 3c 69 3e 62 61 73 65 20 63 ial <u><i>base c
12c80 69 74 79 3c 2f 69 3e 3c 2f 75 3e 3c 2f 6c 69 3e ity</i></u></li>
12c90 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 75 3e 4e 6f 74 65 ..</ul>..<u>Note
12ca0 3c 2f 75 3e 20 69 74 27 73 20 76 65 72 79 20 75 </u> it's very u
12cb0 6e 6c 69 6b 65 20 74 68 61 74 20 54 53 50 20 4e nlike that TSP N
12cc0 4e 20 63 6f 75 6c 64 20 66 69 6e 64 20 74 68 65 N could find the
12cd0 20 3c 62 3e 6f 70 74 69 6d 61 6c 3c 2f 62 3e 20 <b>optimal</b>
12ce0 73 6f 6c 75 74 69 6f 6e 2c 20 62 75 74 20 69 74 solution, but it
12cf0 20 63 61 6e 20 71 75 69 63 6b 6c 79 20 66 69 6e can quickly fin
12d00 64 20 73 6f 6d 65 20 72 65 61 73 6f 6e 61 62 6c d some reasonabl
12d10 65 20 3c 62 3e 61 70 70 72 6f 78 69 6d 61 74 65 e <b>approximate
12d20 3c 2f 62 3e 20 73 6f 6c 75 74 69 6f 6e 20 28 3c </b> solution (<
12d30 69 3e 66 65 77 20 69 73 20 73 75 72 65 6c 79 20 i>few is surely
12d40 62 65 74 74 65 72 20 74 68 61 6e 20 6e 6f 74 68 better than noth
12d50 69 6e 67 3c 2f 69 3e 29 2e 3c 62 72 3e 0d 0a 49 ing</i>).<br>..I
12d60 6e 20 74 68 65 20 6d 6f 73 74 20 75 6e 6c 75 63 n the most unluc
12d70 6b 79 20 63 61 73 65 20 54 53 50 20 4e 4e 20 63 ky case TSP NN c
12d80 6f 75 6c 64 20 70 6f 73 73 69 62 6c 79 20 72 65 ould possibly re
12d90 74 75 72 6e 20 74 68 65 20 3c 62 3e 77 6f 72 73 turn the <b>wors
12da0 74 20 73 6f 6c 75 74 69 6f 6e 3c 2f 62 3e 2c 20 t solution</b>,
12db0 62 75 74 20 74 68 65 20 73 70 65 63 69 66 69 63 but the specific
12dc0 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 implementation
12dd0 61 64 6f 70 74 65 64 20 62 79 20 56 69 72 74 75 adopted by Virtu
12de0 61 6c 52 6f 75 74 69 6e 67 20 63 68 65 63 6b 73 alRouting checks
12df0 20 61 67 61 69 6e 73 74 20 74 68 69 73 20 70 6f against this po
12e00 73 73 69 62 69 6c 69 74 79 3a 0d 0a 3c 75 6c 3e ssibility:..<ul>
12e10 0d 0a 3c 6c 69 3e 65 61 63 68 20 54 53 50 20 4e ..<li>each TSP N
12e20 4e 20 69 73 20 61 6c 77 61 79 73 20 63 6f 6d 70 N is always comp
12e30 75 74 65 64 20 74 77 69 63 65 20 62 79 20 72 61 uted twice by ra
12e40 6e 64 6f 6d 6c 79 20 63 68 6f 6f 73 69 6e 67 20 ndomly choosing
12e50 61 20 64 69 66 66 65 72 65 6e 74 20 3c 75 3e 3c a different <u><
12e60 69 3e 62 61 73 65 20 63 69 74 79 3c 2f 69 3e 3c i>base city</i><
12e70 2f 75 3e 20 61 6e 64 20 74 68 65 6e 20 6e 6f 72 /u> and then nor
12e80 6d 61 6c 69 7a 69 6e 67 20 74 68 65 20 73 6f 6c malizing the sol
12e90 75 74 69 6f 6e 3b 20 74 68 65 20 62 65 73 74 20 ution; the best
12ea0 6f 66 20 74 68 65 20 74 77 6f 20 73 6f 6c 75 74 of the two solut
12eb0 69 6f 6e 73 20 69 73 20 74 68 65 6e 20 72 65 74 ions is then ret
12ec0 75 72 6e 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 urned.</li>..<li
12ed0 3e 74 68 69 73 20 73 69 6d 70 6c 65 20 62 75 74 >this simple but
12ee0 20 65 66 66 65 63 74 69 76 65 20 70 72 65 63 61 effective preca
12ef0 75 74 69 6f 6e 20 72 6f 62 75 73 74 6c 79 20 65 ution robustly e
12f00 6e 73 75 72 65 73 20 74 68 61 74 20 74 68 65 20 nsures that the
12f10 3c 62 3e 77 6f 72 73 74 20 73 6f 6c 75 74 69 6f <b>worst solutio
12f20 6e 3c 2f 62 3e 20 77 69 6c 6c 20 6e 65 76 65 72 n</b> will never
12f30 20 62 65 20 72 65 74 75 72 6e 65 64 2c 20 61 6e be returned, an
12f40 64 20 6a 75 73 74 20 69 6d 70 6c 69 65 73 20 61 d just implies a
12f50 20 6d 6f 64 65 72 61 74 65 6c 79 20 69 6e 63 72 moderately incr
12f60 65 61 73 65 64 20 65 78 65 63 75 74 69 6f 6e 20 eased execution
12f70 74 69 6d 65 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c time.</li>..</ul
12f80 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 54 ></li>..<li><b>T
12f90 53 50 20 47 41 3c 2f 62 3e 20 28 3c 69 3e 61 6b SP GA</b> (<i>ak
12fa0 61 3c 2f 69 3e 20 3c 62 3e 3c 69 3e 47 65 6e 65 a</i> <b><i>Gene
12fb0 74 69 63 20 41 6c 67 6f 72 69 74 68 6d 3c 2f 69 tic Algorithm</i
12fc0 3e 3c 2f 62 3e 29 2e 3c 62 72 3e 0d 0a 54 68 69 ></b>).<br>..Thi
12fd0 73 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 s <a href="https
12fe0 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e ://en.wikipedia.
12ff0 6f 72 67 2f 77 69 6b 69 2f 47 65 6e 65 74 69 63 org/wiki/Genetic
13000 5f 61 6c 67 6f 72 69 74 68 6d 22 3e 61 6c 74 65 _algorithm">alte
13010 72 6e 61 74 69 76 65 20 61 6c 67 6f 72 69 74 68 rnative algorith
13020 6d 3c 2f 61 3e 20 69 73 20 6d 75 63 68 20 6d 6f m</a> is much mo
13030 72 65 20 63 6f 6d 70 6c 65 78 20 61 6e 64 20 73 re complex and s
13040 6f 70 68 69 73 74 69 63 61 74 65 64 2c 20 61 6e ophisticated, an
13050 64 20 69 73 20 64 69 72 65 63 74 6c 79 20 69 6e d is directly in
13060 73 70 69 72 65 64 20 62 79 20 62 69 6f 6c 6f 67 spired by biolog
13070 69 63 61 6c 20 63 6f 6e 63 65 70 74 73 20 73 75 ical concepts su
13080 63 68 20 61 73 20 3c 62 3e 73 65 78 75 61 6c 20 ch as <b>sexual
13090 72 65 70 72 6f 64 75 63 74 69 6f 6e 3c 2f 62 3e reproduction</b>
130a0 2c 20 3c 62 3e 67 65 6e 65 74 69 63 20 6d 75 74 , <b>genetic mut
130b0 61 74 69 6f 6e 73 3c 2f 62 3e 20 61 6e 64 20 3c ations</b> and <
130c0 62 3e 6e 61 74 75 72 61 6c 20 73 65 6c 65 63 74 b>natural select
130d0 69 6f 6e 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 ion</b>.<br>..<u
130e0 3e 53 68 6f 72 74 20 64 65 73 63 72 69 70 74 69 >Short descripti
130f0 6f 6e 3c 2f 75 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c on</u>:..<ul>..<
13100 6c 69 3e 61 20 66 69 72 73 74 20 69 6e 69 74 69 li>a first initi
13110 61 6c 20 73 65 74 20 6f 66 20 73 6f 6c 75 74 69 al set of soluti
13120 6f 6e 73 20 28 3c 69 3e 3c 75 3e 74 68 65 20 70 ons (<i><u>the p
13130 6f 70 75 6c 61 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 opulation</u></i
13140 3e 29 20 69 73 20 63 72 65 61 74 65 64 20 62 79 >) is created by
13150 20 75 73 69 6e 67 20 54 53 50 20 4e 4e 20 61 66 using TSP NN af
13160 74 65 72 20 72 61 6e 64 6f 6d 6c 79 20 63 68 6f ter randomly cho
13170 6f 73 69 6e 67 20 74 68 65 20 3c 75 3e 3c 69 3e osing the <u><i>
13180 62 61 73 65 20 63 69 74 79 3c 2f 69 3e 3c 2f 75 base city</i></u
13190 3e 20 61 6e 64 20 74 68 65 6e 20 6e 6f 72 6d 61 > and then norma
131a0 6c 69 7a 69 6e 67 20 65 61 63 68 20 73 6f 6c 75 lizing each solu
131b0 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e tion.</li>..<li>
131c0 74 68 65 6e 20 64 75 72 69 6e 67 20 65 61 63 68 then during each
131d0 20 73 74 65 70 20 6f 66 20 74 68 65 20 65 78 65 step of the exe
131e0 63 75 74 69 6f 6e 20 6c 6f 6f 70 20 28 3c 69 3e cution loop (<i>
131f0 3c 75 3e 67 65 6e 65 72 61 74 69 6f 6e 3c 2f 75 <u>generation</u
13200 3e 3c 2f 69 3e 29 20 70 61 69 72 73 20 6f 66 20 ></i>) pairs of
13210 73 6f 6c 75 74 69 6f 6e 73 20 3c 69 3e 3c 75 3e solutions <i><u>
13220 73 65 78 75 61 6c 6c 79 20 72 65 70 72 6f 64 75 sexually reprodu
13230 63 65 73 3c 2f 69 3e 3c 2f 75 3e 20 67 69 76 69 ces</i></u> givi
13240 6e 67 20 62 69 72 74 68 20 74 6f 20 3c 75 3e 3c ng birth to <u><
13250 69 3e 63 68 69 6c 64 72 65 6e 20 73 6f 6c 75 74 i>children solut
13260 69 6f 6e 73 3c 2f 69 3e 3c 2f 75 3e 3b 20 72 65 ions</i></u>; re
13270 70 72 6f 64 75 63 74 69 6f 6e 20 69 73 20 73 75 production is su
13280 62 6a 65 63 74 20 74 6f 20 3c 75 3e 3c 69 3e 63 bject to <u><i>c
13290 68 72 6f 6d 6f 73 6f 6d 65 20 63 72 6f 73 73 6f hromosome crosso
132a0 76 65 72 73 3c 2f 69 3e 3c 2f 75 3e 20 61 6e 64 vers</i></u> and
132b0 20 3c 69 3e 3c 75 3e 72 61 6e 64 6f 6d 20 6d 75 <i><u>random mu
132c0 74 61 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 2e 3c tation</u></i>.<
132d0 2f 6c 69 3e 0d 0a 3c 6c 69 3e 66 6f 72 20 65 61 /li>..<li>for ea
132e0 63 68 20 3c 69 3e 3c 75 3e 67 65 6e 65 72 61 74 ch <i><u>generat
132f0 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 20 74 68 65 20 ion</u></i> the
13300 3c 69 3e 3c 75 3e 6e 61 74 75 72 61 6c 20 73 65 <i><u>natural se
13310 6c 65 63 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 20 lection</u></i>
13320 65 6c 69 6d 69 6e 61 74 65 73 20 61 6c 6c 20 70 eliminates all p
13330 6f 6f 72 6c 79 20 66 69 74 20 69 6e 64 69 76 69 oorly fit indivi
13340 64 75 61 6c 73 20 66 72 6f 6d 20 74 68 65 20 3c duals from the <
13350 75 3e 3c 69 3e 70 6f 70 75 6c 61 74 69 6f 6e 3c u><i>population<
13360 2f 69 3e 3c 2f 75 3e 20 61 6e 64 20 63 6f 6e 73 /i></u> and cons
13370 65 71 75 65 6e 74 6c 79 20 6f 6e 6c 79 20 74 68 equently only th
13380 65 20 62 65 73 74 20 66 69 74 20 69 6e 64 69 76 e best fit indiv
13390 69 64 75 61 6c 73 20 63 61 6e 20 66 75 72 74 68 iduals can furth
133a0 65 72 20 70 72 6f 70 61 67 61 74 65 20 74 68 65 er propagate the
133b0 69 72 20 3c 75 3e 3c 69 3e 67 65 6e 6f 6d 65 3c ir <u><i>genome<
133c0 2f 69 3e 3c 2f 75 3e 20 74 6f 20 74 68 65 20 6e /i></u> to the n
133d0 65 78 74 20 3c 75 3e 3c 69 3e 67 65 6e 65 72 61 ext <u><i>genera
133e0 74 69 6f 6e 3c 2f 69 3e 3c 2f 75 3e 2e 3c 2f 6c tion</i></u>.</l
133f0 69 3e 0d 0a 3c 6c 69 3e 61 66 74 65 72 20 61 20 i>..<li>after a
13400 63 65 72 74 61 69 6e 20 6e 75 6d 62 65 72 20 6f certain number o
13410 66 20 3c 69 3e 3c 75 3e 67 65 6e 65 72 61 74 69 f <i><u>generati
13420 6f 6e 73 3c 2f 69 3e 3c 2f 75 3e 20 28 6c 65 74 ons</i></u> (let
13430 27 73 20 73 61 79 20 61 62 6f 75 74 20 73 6f 6d 's say about som
13440 65 20 68 75 6e 64 72 65 64 74 68 20 69 74 65 72 e hundredth iter
13450 61 74 69 6f 6e 73 29 20 74 68 65 20 3c 62 3e 6f ations) the <b>o
13460 70 74 69 6d 61 6c 20 73 6f 6c 75 74 69 6f 6e 3c ptimal solution<
13470 2f 62 3e 20 28 6f 72 20 61 74 20 6c 65 61 73 74 /b> (or at least
13480 20 61 20 3c 62 3e 66 61 69 72 6c 79 20 67 6f 6f a <b>fairly goo
13490 64 20 73 75 62 2d 6f 70 74 69 6d 61 6c 20 73 6f d sub-optimal so
134a0 6c 75 74 69 6f 6e 3c 2f 62 3e 29 20 73 68 6f 75 lution</b>) shou
134b0 6c 64 20 66 69 6e 61 6c 6c 79 20 65 6d 65 72 67 ld finally emerg
134c0 65 2c 20 61 6e 64 20 73 6f 20 74 68 65 20 6c 6f e, and so the lo
134d0 6f 70 20 63 61 6e 20 65 78 69 74 2e 3c 2f 6c 69 op can exit.</li
134e0 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c >..</ul></li>..<
134f0 6c 69 3e 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 li><u>Note</u>:
13500 54 53 50 20 47 41 20 69 73 20 75 73 75 61 6c 6c TSP GA is usuall
13510 79 20 65 78 70 65 63 74 65 64 20 74 6f 20 69 64 y expected to id
13520 65 6e 74 69 66 79 20 62 65 74 74 65 72 20 73 6f entify better so
13530 6c 75 74 69 6f 6e 73 20 74 68 61 6e 20 54 53 50 lutions than TSP
13540 20 4e 4e 20 63 61 6e 20 64 6f 2c 20 62 75 74 20 NN can do, but
13550 69 74 20 77 69 6c 6c 20 73 75 72 65 6c 79 20 72 it will surely r
13560 65 71 75 69 72 65 20 6d 75 63 68 20 6d 6f 72 65 equire much more
13570 20 74 69 6d 65 20 74 6f 20 63 6f 6d 70 6c 65 74 time to complet
13580 65 2e 3c 2f 6c 69 3e 20 0d 0a 3c 2f 75 6c 3e 0d e.</li> ..</ul>.
13590 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 4c 65 74 27 73 .<br><br>..Let's
135a0 20 6e 6f 77 20 65 78 61 6d 69 6e 65 20 61 20 70 now examine a p
135b0 72 61 63 74 69 63 61 6c 20 65 78 61 6d 70 6c 65 ractical example
135c0 20 6f 66 20 54 53 50 20 73 6f 6c 76 69 6e 67 20 of TSP solving
135d0 75 73 69 6e 67 20 56 69 72 74 75 61 6c 52 6f 75 using VirtualRou
135e0 74 69 6e 67 2e 20 0d 0a 3c 76 65 72 62 61 74 69 ting. ..<verbati
135f0 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f 6f m>..UPDATE byfoo
13600 74 20 53 45 54 20 52 65 71 75 65 73 74 20 3d 20 t SET Request =
13610 27 54 53 50 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 'TSP';....SELECT
13620 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 65 71 75 Algorithm, Requ
13630 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c 20 44 65 est, Options, De
13640 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 65 49 64 limiter, RouteId
13650 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 , RouteRow, Role
13660 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 , LinkRowid, Nod
13670 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 eFrom, NodeTo, C
13680 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e ost, Geometry, N
13690 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 ame..FROM byfoot
136a0 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d ..WHERE NodeFrom
136b0 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e 6f = 178731 AND No
136c0 64 65 54 6f 20 3d 20 27 31 38 33 32 38 36 2c 31 deTo = '183286,1
136d0 38 31 39 39 39 2c 31 38 34 30 33 30 2c 31 38 33 81999,184030,183
136e0 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 0a 3c 2f 882,178754';..</
136f0 76 65 72 62 61 74 69 6d 3e 0d 0a 41 20 56 69 72 verbatim>..A Vir
13700 74 75 61 6c 52 6f 75 74 69 6e 67 20 3c 62 3e 54 tualRouting <b>T
13710 53 50 3c 2f 62 3e 20 71 75 65 72 79 20 68 61 73 SP</b> query has
13720 20 74 68 65 20 73 61 6d 65 20 69 64 65 6e 74 69 the same identi
13730 63 61 6c 20 66 6f 72 6d 20 6f 66 20 61 20 3c 62 cal form of a <b
13740 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 >multi-destinati
13750 6f 6e 3c 2f 62 3e 20 71 75 65 72 79 3b 20 74 68 on</b> query; th
13760 65 20 3c 69 3e 3c 75 3e 62 61 73 65 20 63 69 74 e <i><u>base cit
13770 79 3c 75 3e 3c 2f 69 3e 20 69 73 20 61 6c 77 61 y<u></i> is alwa
13780 79 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 63 ys expected to c
13790 6f 72 72 65 73 70 6f 6e 64 20 74 6f 20 3c 62 3e orrespond to <b>
137a0 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 NodeFrom</b> and
137b0 20 61 6c 6c 20 6f 74 68 65 72 20 3c 69 3e 3c 75 all other <i><u
137c0 3e 63 69 74 69 65 73 3c 2f 75 3e 3c 2f 69 3e 20 >cities</u></i>
137d0 74 6f 20 62 65 20 76 69 73 69 74 65 64 20 61 72 to be visited ar
137e0 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 e expected to be
137f0 20 65 6e 75 6d 65 72 61 74 65 64 20 69 6e 74 6f enumerated into
13800 20 61 20 3c 62 3e 6d 75 6c 74 69 2d 64 65 73 74 a <b>multi-dest
13810 69 6e 61 74 69 6f 6e 3c 2f 62 3e 20 6c 69 73 74 ination</b> list
13820 20 61 73 73 69 67 6e 65 64 20 74 6f 20 3c 62 3e assigned to <b>
13830 4e 6f 64 65 54 6f 3c 2f 62 3e 2e 0d 0a 3c 75 3e NodeTo</b>...<u>
13840 4e 6f 74 65 3c 2f 75 3e 3a 20 79 6f 75 20 6d 75 Note</u>: you mu
13850 73 74 20 65 78 70 6c 69 63 69 74 6c 79 20 73 65 st explicitly se
13860 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 3c 62 t the current <b
13870 3e 52 65 71 75 65 73 74 3c 2f 62 3e 20 61 73 20 >Request</b> as
13880 3c 62 3e 54 53 50 3c 2f 62 3e 2c 20 3c 62 3e 54 <b>TSP</b>, <b>T
13890 53 50 20 4e 4e 3c 2f 62 3e 20 6f 72 20 3c 62 3e SP NN</b> or <b>
138a0 54 53 50 20 47 41 3c 2f 62 3e 20 28 54 53 50 20 TSP GA</b> (TSP
138b0 61 6e 64 20 54 53 50 20 4e 4e 20 61 72 65 20 73 and TSP NN are s
138c0 79 6e 6f 6e 79 6d 73 29 2e 0d 0a 3c 62 72 3e 3c ynonyms)...<br><
138d0 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 br>..<table bord
138e0 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 er="1" bgcolor="
138f0 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 #ffffcf" cellspa
13900 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 cing="4" cellpad
13910 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c ding="6">..<tr><
13920 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
13930 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 0a0">Algorithm</
13940 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
13950 23 64 30 64 30 61 30 22 3e 52 65 71 75 65 73 74 #d0d0a0">Request
13960 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
13970 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f ="#d0d0a0">Optio
13980 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ns</th><th bgcol
13990 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 44 65 6c or="#d0d0a0">Del
139a0 69 6d 69 74 65 72 3c 2f 74 68 3e 3c 74 68 20 62 imiter</th><th b
139b0 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
139c0 3e 52 6f 75 74 65 49 64 3c 2f 74 68 3e 3c 74 68 >RouteId</th><th
139d0 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
139e0 30 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 0">RouteRow</th>
139f0 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
13a00 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c d0a0">Role</th><
13a10 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
13a20 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 0a0">LinkRowid</
13a30 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
13a40 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f #d0d0a0">NodeFro
13a50 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f m</th><th bgcolo
13a60 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 r="#d0d0a0">Node
13a70 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c To</th><th bgcol
13a80 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 or="#d0d0a0">Cos
13a90 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f t</th><th bgcolo
13aa0 72 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d r="#d0d0a0">Geom
13ab0 65 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 etry</th><th bgc
13ac0 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
13ad0 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c ame</th></tr>..<
13ae0 74 72 3e 0d 0a 3c 74 64 3e 44 69 6a 6b 73 74 72 tr>..<td>Dijkstr
13af0 61 3c 2f 74 64 3e 3c 74 64 3e 54 53 50 20 4e 4e a</td><td>TSP NN
13b00 3c 2f 74 64 3e 3c 74 64 3e 46 75 6c 6c 3c 2f 74 </td><td>Full</t
13b10 64 3e 3c 74 64 3e 2c 20 26 23 39 31 3b 64 65 63 d><td>, [dec
13b20 3d 34 34 2c 20 68 65 78 3d 32 63 26 23 39 33 3b =44, hex=2c]
13b30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
13b40 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 right">0</td><td
13b50 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 align="right">0
13b60 3c 2f 74 64 3e 3c 74 64 3e 54 53 50 20 53 6f 6c </td><td>TSP Sol
13b70 75 74 69 6f 6e 3c 2f 74 64 3e 3c 74 64 3e 4e 55 ution</td><td>NU
13b80 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
13b90 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
13ba0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13bb0 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
13bc0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13bd0 74 22 3e 31 32 35 34 2e 34 33 33 39 33 33 3c 2f t">1254.433933</
13be0 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 td><td>BLOB sz=2
13bf0 30 30 30 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 000 GEOMETRY</td
13c00 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a ><td>NULL</td>..
13c10 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
13c20 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
13c30 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
13c40 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 74 64 20 /td><td>NULL<td
13c50 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c align="right">1<
13c60 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13c70 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
13c80 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
13c90 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
13ca0 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
13cb0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13cc0 69 67 68 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 ight">184030</td
13cd0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13ce0 74 22 3e 31 37 36 2e 33 36 34 37 35 35 3c 2f 74 t">176.364755</t
13cf0 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 33 30 d><td>BLOB sz=30
13d00 34 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 4 GEOMETRY</td><
13d10 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
13d20 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
13d30 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
13d40 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13d50 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13d60 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13d70 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >2</td><td align
13d80 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c ="right">1</td><
13d90 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
13da0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
13db0 34 30 31 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4014</td><td ali
13dc0 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
13dd0 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
13de0 22 72 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f "right">182885</
13df0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
13e00 67 68 74 22 3e 39 34 2e 38 31 32 34 32 34 3c 2f ght">94.812424</
13e10 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13e20 3c 74 64 3e 56 49 41 20 50 49 45 54 52 4f 20 41 <td>VIA PIETRO A
13e30 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 RETINO</td>..</t
13e40 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 72 3e 0d 0a r>..<tr>..<tr>..
13e50 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13e60 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
13e70 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
13e80 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13e90 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 ight">2</td><td
13ea0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c align="right">2<
13eb0 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
13ec0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13ed0 74 22 3e 32 32 34 38 36 32 3c 2f 74 64 3e 3c 74 t">224862</td><t
13ee0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13ef0 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 182885</td><td a
13f00 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
13f10 30 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 043</td><td alig
13f20 6e 3d 22 72 69 67 68 74 22 3e 33 37 2e 30 39 35 n="right">37.095
13f30 32 38 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 287</td><td>NULL
13f40 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 </td><td>VIA MAR
13f50 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c GARITONE</td>..<
13f60 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
13f70 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
13f80 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
13f90 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13fa0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
13fb0 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">2</td><td alig
13fc0 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e n="right">3</td>
13fd0 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
13fe0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
13ff0 32 36 30 37 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 26070</td><td al
14000 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 30 ign="right">1820
14010 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 43</td><td align
14020 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 30 3c ="right">184030<
14030 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14040 69 67 68 74 22 3e 34 34 2e 34 35 37 30 34 34 3c ight">44.457044<
14050 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
14060 3e 3c 74 64 3e 50 49 41 5a 5a 41 20 53 41 4e 54 ><td>PIAZZA SANT
14070 27 41 47 4f 53 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 'AGOSTINO</td>..
14080 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
14090 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
140a0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
140b0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
140c0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
140d0 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">2</td><td ali
140e0 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
140f0 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
14100 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
14110 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
14120 34 30 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4030</td><td ali
14130 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 gn="right">18199
14140 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 9</td><td align=
14150 22 72 69 67 68 74 22 3e 31 33 39 2e 31 31 34 39 "right">139.1149
14160 33 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 38</td><td>BLOB
14170 73 7a 3d 34 39 36 20 47 45 4f 4d 45 54 52 59 3c sz=496 GEOMETRY<
14180 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
14190 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
141a0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
141b0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
141c0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
141d0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
141e0 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 ight">3</td><td
141f0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c align="right">1<
14200 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
14210 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14220 74 22 3e 32 32 36 30 37 31 3c 2f 74 64 3e 3c 74 t">226071</td><t
14230 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14240 31 38 34 30 33 30 3c 2f 74 64 3e 3c 74 64 20 61 184030</td><td a
14250 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
14260 36 32 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 629</td><td alig
14270 6e 3d 22 72 69 67 68 74 22 3e 35 35 2e 36 38 39 n="right">55.689
14280 30 30 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 009</td><td>NULL
14290 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 47 49 55 </td><td>VIA GIU
142a0 53 45 50 50 45 20 47 41 52 49 42 41 4c 44 49 3c SEPPE GARIBALDI<
142b0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
142c0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
142d0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
142e0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
142f0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
14300 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c ="right">3</td><
14310 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14320 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >2</td><td>Link<
14330 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14340 69 67 68 74 22 3e 32 32 35 35 31 32 3c 2f 74 64 ight">225512</td
14350 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14360 74 22 3e 31 38 32 36 32 39 3c 2f 74 64 3e 3c 74 t">182629</td><t
14370 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14380 31 38 32 39 33 33 3c 2f 74 64 3e 3c 74 64 20 61 182933</td><td a
14390 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 34 2e lign="right">34.
143a0 31 38 34 31 39 34 3c 2f 74 64 3e 3c 74 64 3e 4e 184194</td><td>N
143b0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 ULL</td><td>CORS
143c0 4f 20 49 54 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c O ITALIA</td>..<
143d0 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
143e0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
143f0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
14400 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
14410 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14420 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">3</td><td alig
14430 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e n="right">3</td>
14440 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
14450 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
14460 32 35 35 31 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 25511</td><td al
14470 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 39 ign="right">1829
14480 33 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 33</td><td align
14490 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 39 3c ="right">181999<
144a0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
144b0 69 67 68 74 22 3e 34 39 2e 32 34 31 37 33 35 3c ight">49.241735<
144c0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
144d0 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 54 41 4c 49 ><td>CORSO ITALI
144e0 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c A</td>..</tr>..<
144f0 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
14500 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
14510 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
14520 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
14530 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 gn="right">3</td
14540 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14550 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 t">0</td><td>Rou
14560 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c te</td><td>NULL<
14570 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14580 69 67 68 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 ight">181999</td
14590 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
145a0 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 t">183286</td><t
145b0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
145c0 32 31 37 2e 36 37 32 38 38 35 3c 2f 74 64 3e 3c 217.672885</td><
145d0 74 64 3e 42 4c 4f 42 20 73 7a 3d 36 38 38 20 47 td>BLOB sz=688 G
145e0 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e EOMETRY</td><td>
145f0 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e NULL</td>..</tr>
14600 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
14610 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14620 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
14630 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
14640 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c align="right">4<
14650 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14660 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e ight">1</td><td>
14670 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
14680 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 32 36 33 gn="right">22263
14690 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
146a0 22 72 69 67 68 74 22 3e 31 38 31 39 39 39 3c 2f "right">181999</
146b0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
146c0 67 68 74 22 3e 31 38 31 39 39 38 3c 2f 74 64 3e ght">181998</td>
146d0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
146e0 22 3e 31 30 31 2e 36 32 39 37 35 30 3c 2f 74 64 ">101.629750</td
146f0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
14700 64 3e 43 4f 52 53 4f 20 49 54 41 4c 49 41 3c 2f d>CORSO ITALIA</
14710 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
14720 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
14730 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
14740 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
14750 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
14760 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 "right">4</td><t
14770 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14780 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 2</td><td>Link</
14790 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
147a0 67 68 74 22 3e 32 32 34 37 38 30 3c 2f 74 64 3e ght">224780</td>
147b0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
147c0 22 3e 31 38 31 39 39 38 3c 2f 74 64 3e 3c 74 64 ">181998</td><td
147d0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
147e0 38 33 35 36 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 83560</td><td al
147f0 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 33 2e 37 ign="right">73.7
14800 33 33 35 37 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 33572</td><td>NU
14810 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 44 LL</td><td>VIA D
14820 45 4c 4c 27 41 4e 46 49 54 45 41 54 52 4f 3c 2f ELL'ANFITEATRO</
14830 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
14840 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
14850 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
14860 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
14870 4c 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 L<td align="righ
14880 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">4</td><td ali
14890 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 gn="right">3</td
148a0 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
148b0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
148c0 32 32 35 38 32 37 3c 2f 74 64 3e 3c 74 64 20 61 225827</td><td a
148d0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
148e0 35 36 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 560</td><td alig
148f0 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 n="right">183286
14900 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
14910 72 69 67 68 74 22 3e 34 32 2e 33 30 39 35 36 34 right">42.309564
14920 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14930 64 3e 3c 74 64 3e 56 49 41 20 44 45 4c 4c 27 41 d><td>VIA DELL'A
14940 4e 46 49 54 45 41 54 52 4f 3c 2f 74 64 3e 0d 0a NFITEATRO</td>..
14950 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
14960 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
14970 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
14980 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
14990 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
149a0 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">4</td><td ali
149b0 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
149c0 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
149d0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
149e0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
149f0 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3286</td><td ali
14a00 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 gn="right">17875
14a10 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
14a20 22 72 69 67 68 74 22 3e 33 37 38 2e 33 31 33 36 "right">378.3136
14a30 38 34 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 84</td><td>BLOB
14a40 73 7a 3d 32 37 32 20 47 45 4f 4d 45 54 52 59 3c sz=272 GEOMETRY<
14a50 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
14a60 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
14a70 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14a80 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
14a90 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
14aa0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14ab0 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 20 ight">5</td><td
14ac0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c align="right">1<
14ad0 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
14ae0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14af0 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 t">224414</td><t
14b00 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14b10 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 183286</td><td a
14b20 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
14b30 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 880</td><td alig
14b40 6e 3d 22 72 69 67 68 74 22 3e 31 33 36 2e 33 37 n="right">136.37
14b50 32 30 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2057</td><td>NUL
14b60 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 L</td><td>VIA MA
14b70 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a RGARITONE</td>..
14b80 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
14b90 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
14ba0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
14bb0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
14bc0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14bd0 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">5</td><td ali
14be0 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 gn="right">2</td
14bf0 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
14c00 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14c10 32 31 39 31 37 31 3c 2f 74 64 3e 3c 74 64 20 61 219171</td><td a
14c20 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
14c30 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 880</td><td alig
14c40 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 32 n="right">178732
14c50 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
14c60 72 69 67 68 74 22 3e 39 33 2e 32 38 35 35 33 38 right">93.285538
14c70 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14c80 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 d><td>VIA FRANCE
14c90 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d SCO CRISPI</td>.
14ca0 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
14cb0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
14cc0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
14cd0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14ce0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14cf0 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">5</td><td al
14d00 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
14d10 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
14d20 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14d30 3e 32 31 39 30 35 38 3c 2f 74 64 3e 3c 74 64 20 >219058</td><td
14d40 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
14d50 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8732</td><td ali
14d60 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 gn="right">17875
14d70 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
14d80 22 72 69 67 68 74 22 3e 31 34 38 2e 36 35 36 30 "right">148.6560
14d90 38 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 89</td><td>NULL<
14da0 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e /td><td>VIA FRAN
14db0 43 45 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 CESCO CRISPI</td
14dc0 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
14dd0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14de0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
14df0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
14e00 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14e10 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 20 ight">5</td><td
14e20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
14e30 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
14e40 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
14e50 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14e60 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 >178754</td><td
14e70 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
14e80 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3882</td><td ali
14e90 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 38 2e 32 gn="right">188.2
14ea0 31 36 38 33 31 3c 2f 74 64 3e 3c 74 64 3e 42 4c 16831</td><td>BL
14eb0 4f 42 20 73 7a 3d 34 30 30 20 47 45 4f 4d 45 54 OB sz=400 GEOMET
14ec0 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
14ed0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
14ee0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
14ef0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14f00 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
14f10 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
14f20 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 3e 3c ="right">6</td><
14f30 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14f40 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >1</td><td>Link<
14f50 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14f60 69 67 68 74 22 3e 32 32 34 35 33 38 3c 2f 74 64 ight">224538</td
14f70 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14f80 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 t">178754</td><t
14f90 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14fa0 31 38 31 39 37 32 3c 2f 74 64 3e 3c 74 64 20 61 181972</td><td a
14fb0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 30 2e lign="right">50.
14fc0 39 30 30 36 36 33 3c 2f 74 64 3e 3c 74 64 3e 4e 900663</td><td>N
14fd0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
14fe0 41 4e 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f ANTONIO GUADAGNO
14ff0 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LI</td>..</tr>..
15000 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
15010 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
15020 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
15030 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 74 64 20 >NULL</td>..<td
15040 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c align="right">6<
15050 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
15060 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e ight">2</td><td>
15070 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
15080 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 35 33 gn="right">22453
15090 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 7</td><td align=
150a0 22 72 69 67 68 74 22 3e 31 38 31 39 37 32 3c 2f "right">181972</
150b0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
150c0 67 68 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 3e ght">182000</td>
150d0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
150e0 22 3e 38 36 2e 33 30 31 30 35 31 3c 2f 74 64 3e ">86.301051</td>
150f0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
15100 3e 56 49 41 20 44 45 4c 20 4e 49 4e 46 45 4f 3c >VIA DEL NINFEO<
15110 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
15120 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
15130 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
15140 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
15150 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
15160 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 3e 3c ="right">6</td><
15170 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
15180 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >3</td><td>Link<
15190 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
151a0 69 67 68 74 22 3e 32 32 35 35 32 37 3c 2f 74 64 ight">225527</td
151b0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
151c0 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 t">182000</td><t
151d0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
151e0 31 38 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 61 183882</td><td a
151f0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 31 2e lign="right">51.
15200 30 31 35 31 31 37 3c 2f 74 64 3e 3c 74 64 3e 4e 015117</td><td>N
15210 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
15220 4c 49 43 49 4f 20 4e 45 4e 43 45 54 54 49 3c 2f LICIO NENCETTI</
15230 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
15240 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
15250 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
15260 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
15270 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
15280 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 3e 3c 74 "right">6</td><t
15290 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
152a0 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 0</td><td>Route<
152b0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 74 64 20 /td><td>NULL<td
152c0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
152d0 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3882</td><td ali
152e0 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
152f0 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
15300 22 72 69 67 68 74 22 3e 31 35 34 2e 37 35 30 38 "right">154.7508
15310 33 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 39</td><td>BLOB
15320 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 3c sz=240 GEOMETRY<
15330 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
15340 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
15350 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
15360 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
15370 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
15380 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
15390 69 67 68 74 22 3e 37 3c 2f 74 64 3e 3c 74 64 20 ight">7</td><td
153a0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c align="right">1<
153b0 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
153c0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
153d0 74 22 3e 32 32 35 35 32 37 3c 2f 74 64 3e 3c 74 t">225527</td><t
153e0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
153f0 31 38 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 61 183882</td><td a
15400 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
15410 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 000</td><td alig
15420 6e 3d 22 72 69 67 68 74 22 3e 35 31 2e 30 31 35 n="right">51.015
15430 31 31 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 117</td><td>NULL
15440 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4c 49 43 </td><td>VIA LIC
15450 49 4f 20 4e 45 4e 43 45 54 54 49 3c 2f 74 64 3e IO NENCETTI</td>
15460 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
15470 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
15480 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
15490 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
154a0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
154b0 67 68 74 22 3e 37 3c 2f 74 64 3e 3c 74 64 20 61 ght">7</td><td a
154c0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f lign="right">2</
154d0 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
154e0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
154f0 22 3e 32 32 32 36 33 36 3c 2f 74 64 3e 3c 74 64 ">222636</td><td
15500 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
15510 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 82000</td><td al
15520 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
15530 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
15540 3d 22 72 69 67 68 74 22 3e 31 30 33 2e 37 33 35 ="right">103.735
15550 37 32 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 722</td><td>NULL
15560 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 </td><td>VIA PIE
15570 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e TRO ARETINO</td>
15580 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 ..</tr>..</table
15590 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 74 27 73 20 6e >..<br>..Let's n
155a0 6f 77 20 71 75 69 63 6b 6c 79 20 65 78 61 6d 69 ow quickly exami
155b0 6e 65 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 ne the resultset
155c0 20 72 65 74 75 72 6e 65 64 20 62 79 20 61 6e 79 returned by any
155d0 20 54 53 50 20 71 75 65 72 79 3a 0d 0a 3c 75 6c TSP query:..<ul
155e0 3e 0d 0a 3c 6c 69 3e 74 68 65 20 67 65 6e 65 72 >..<li>the gener
155f0 61 6c 20 6c 61 79 6f 75 74 20 69 73 20 6d 6f 72 al layout is mor
15600 65 20 6f 72 20 6c 65 73 73 20 74 68 65 20 73 61 e or less the sa
15610 6d 65 20 61 73 20 79 6f 75 27 76 65 20 61 6c 72 me as you've alr
15620 65 61 64 79 20 73 65 65 6e 20 69 6e 20 74 68 65 eady seen in the
15630 20 63 61 73 65 20 6f 66 20 3c 62 3e 53 68 6f 72 case of <b>Shor
15640 74 65 73 74 50 61 74 68 3c 2f 62 3e 20 71 75 65 testPath</b> que
15650 72 69 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e ries.</li>..<li>
15660 74 68 65 20 3c 62 3e 66 69 72 73 74 20 72 6f 77 the <b>first row
15670 3c 2f 62 3e 20 6f 66 20 74 68 65 20 72 65 73 75 </b> of the resu
15680 6c 74 73 65 74 20 69 73 20 73 6f 6d 65 77 61 79 ltset is someway
15690 20 65 78 63 65 70 74 69 6f 6e 61 6c 2c 20 61 6e exceptional, an
156a0 64 20 69 73 20 74 68 65 20 75 6e 69 71 75 65 20 d is the unique
156b0 72 6f 77 20 6f 66 20 74 68 65 20 72 65 73 75 6c row of the resul
156c0 74 73 65 74 20 70 72 65 73 65 6e 74 69 6e 67 20 tset presenting
156d0 3c 62 3e 4e 4f 54 20 4e 55 4c 4c 3c 2f 62 3e 20 <b>NOT NULL</b>
156e0 76 61 6c 75 65 73 20 69 6e 20 74 68 65 20 3c 62 values in the <b
156f0 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 2c 20 >Algorithm</b>,
15700 3c 62 3e 52 65 71 75 65 73 74 3c 2f 62 3e 2c 20 <b>Request</b>,
15710 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 61 <b>Options</b> a
15720 6e 64 20 3c 62 3e 44 65 6c 69 6d 69 74 65 72 3c nd <b>Delimiter<
15730 2f 62 3e 20 63 6f 6c 75 6d 6e 73 2e 3c 62 72 3e /b> columns.<br>
15740 0d 0a 49 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 ..It contains th
15750 65 20 3c 62 3e 54 53 50 20 73 6f 6c 75 74 69 6f e <b>TSP solutio
15760 6e 3c 2f 62 3e 20 61 73 20 61 20 77 68 6f 6c 65 n</b> as a whole
15770 3a 20 63 6f 6c 75 6d 6e 20 3c 62 3e 43 6f 73 74 : column <b>Cost
15780 3c 2f 62 3e 20 69 73 20 74 68 65 20 3c 75 3e 74 </b> is the <u>t
15790 6f 74 61 6c 20 63 6f 73 74 3c 2f 75 3e 20 61 6e otal cost</u> an
157a0 64 20 63 6f 6c 75 6d 6e 20 3c 62 3e 47 65 6f 6d d column <b>Geom
157b0 65 74 72 79 3c 2f 62 3e 20 69 73 20 74 68 65 20 etry</b> is the
157c0 3c 75 3e 6f 76 65 72 61 6c 6c 20 73 6f 6c 75 74 <u>overall solut
157d0 69 6f 6e 20 70 61 74 68 3c 2f 75 3e 2e 3c 2f 6c ion path</u>.</l
157e0 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 73 20 i>..<li>columns
157f0 3c 62 3e 52 6f 75 74 65 49 64 3c 2f 62 3e 20 61 <b>RouteId</b> a
15800 6e 64 20 3c 62 3e 52 6f 75 74 65 52 6f 77 3c 2f nd <b>RouteRow</
15810 62 3e 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 b> have the same
15820 20 69 6e 74 65 72 70 72 65 74 61 74 69 6f 6e 20 interpretation
15830 61 73 20 69 6e 20 3c 62 3e 6d 75 6c 74 69 2d 64 as in <b>multi-d
15840 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 74 estination Short
15850 65 73 74 50 61 74 68 3c 2f 62 3e 20 71 75 65 72 estPath</b> quer
15860 69 65 73 2c 20 62 75 74 20 69 6e 20 74 68 69 73 ies, but in this
15870 20 73 70 65 63 69 66 69 63 20 63 61 73 65 20 65 specific case e
15880 61 63 68 20 3c 75 3e 3c 69 3e 72 6f 75 74 65 3c ach <u><i>route<
15890 2f 69 3e 3c 2f 75 3e 20 63 6f 72 72 65 73 70 6f /i></u> correspo
158a0 6e 64 73 20 74 6f 20 61 20 63 6f 6e 6e 65 63 74 nds to a connect
158b0 69 6f 6e 20 62 65 74 77 65 65 6e 20 74 77 6f 20 ion between two
158c0 3c 69 3e 3c 75 3e 63 69 74 69 65 73 3c 2f 75 3e <i><u>cities</u>
158d0 3c 2f 69 3e 2e 3c 62 72 3e 0d 0a 41 6c 6c 20 3c </i>.<br>..All <
158e0 69 3e 3c 75 3e 72 6f 75 74 65 73 3c 2f 75 3e 3c i><u>routes</u><
158f0 2f 69 3e 20 61 72 65 20 6f 72 64 65 72 20 61 63 /i> are order ac
15900 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 74 68 65 cordingly to the
15910 20 72 75 6e 6e 69 6e 67 20 73 65 71 75 65 6e 63 running sequenc
15920 65 20 6f 66 20 74 68 65 20 54 53 50 20 73 6f 6c e of the TSP sol
15930 75 74 69 6f 6e 2e 20 3c 62 3e 52 6f 75 74 65 49 ution. <b>RouteI
15940 64 3d 30 3c 2f 62 3e 20 69 64 65 6e 74 69 66 69 d=0</b> identifi
15950 65 73 20 74 68 65 20 6f 76 65 72 61 6c 6c 20 54 es the overall T
15960 53 50 20 73 6f 6c 75 74 69 6f 6e 2e 3c 2f 6c 69 SP solution.</li
15970 3e 0d 0a 3c 2f 75 6c 3e 3c 62 72 3e 3c 62 72 3e >..</ul><br><br>
15980 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 55 50 ..<verbatim>..UP
15990 44 41 54 45 20 62 79 66 6f 6f 74 20 53 45 54 20 DATE byfoot SET
159a0 52 65 71 75 65 73 74 20 3d 20 27 54 53 50 20 47 Request = 'TSP G
159b0 41 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 41 6c A';....SELECT Al
159c0 67 6f 72 69 74 68 6d 2c 20 52 65 71 75 65 73 74 gorithm, Request
159d0 2c 20 4f 70 74 69 6f 6e 73 2c 20 44 65 6c 69 6d , Options, Delim
159e0 69 74 65 72 2c 20 52 6f 75 74 65 49 64 2c 20 52 iter, RouteId, R
159f0 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c outeRow, Role, L
15a00 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 inkRowid, NodeFr
15a10 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 om, NodeTo, Cost
15a20 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 , Geometry, Name
15a30 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 ..FROM byfoot..W
15a40 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 HERE NodeFrom =
15a50 31 37 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 54 178731 AND NodeT
15a60 6f 20 3d 20 27 31 38 33 32 38 36 2c 31 38 31 39 o = '183286,1819
15a70 39 39 2c 31 38 34 30 33 30 2c 31 38 33 38 38 32 99,184030,183882
15a80 2c 31 37 38 37 35 34 27 3b 0d 0a 3c 2f 76 65 72 ,178754';..</ver
15a90 62 61 74 69 6d 3e 0d 0a 49 66 20 79 6f 75 20 77 batim>..If you w
15aa0 69 73 68 20 74 6f 20 67 65 74 20 61 20 3c 62 3e ish to get a <b>
15ab0 54 53 50 20 47 41 3c 2f 62 3e 20 73 6f 6c 75 74 TSP GA</b> solut
15ac0 69 6f 6e 20 79 6f 75 20 73 69 6d 70 6c 65 20 68 ion you simple h
15ad0 61 76 65 20 74 6f 20 73 65 74 20 3c 62 3e 52 65 ave to set <b>Re
15ae0 71 75 65 73 74 3c 2f 62 3e 20 61 73 20 3c 62 3e quest</b> as <b>
15af0 54 53 50 20 47 41 3c 2f 62 3e 3b 20 61 6e 64 20 TSP GA</b>; and
15b00 79 6f 75 20 63 61 6e 20 73 65 74 20 61 67 61 69 you can set agai
15b10 6e 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f 62 3e n <b>Request</b>
15b20 20 61 73 20 3c 62 3e 54 53 50 3c 2f 62 3e 20 6f as <b>TSP</b> o
15b30 72 20 3c 62 3e 54 53 50 20 4e 4e 3c 2f 62 3e 20 r <b>TSP NN</b>
15b40 74 6f 20 72 65 76 65 72 74 20 62 61 63 6b 20 74 to revert back t
15b50 6f 20 74 68 65 20 73 69 6d 70 6c 65 72 20 2f 20 o the simpler /
15b60 66 61 73 74 65 72 20 61 6c 67 6f 72 69 74 68 6d faster algorithm
15b70 2e 0d 0a 3c 62 72 3e 0d 0a 41 6c 73 6f 20 69 6e ...<br>..Also in
15b80 20 74 68 65 20 63 61 73 65 20 6f 66 20 54 53 50 the case of TSP
15b90 20 79 6f 75 20 63 61 6e 20 65 76 65 6e 74 75 61 you can eventua
15ba0 6c 6c 79 20 61 63 74 69 76 61 74 65 20 74 68 65 lly activate the
15bb0 20 75 73 75 61 6c 20 3c 62 3e 4f 70 74 69 6f 6e usual <b>Option
15bc0 73 3c 2f 62 3e 20 61 6c 72 65 61 64 79 20 65 78 s</b> already ex
15bd0 70 6c 61 69 6e 65 64 20 69 6e 20 74 68 65 20 53 plained in the S
15be0 68 6f 72 74 65 73 74 50 61 74 68 20 65 78 61 6d hortestPath exam
15bf0 70 6c 65 73 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f ples.<br>..<u>No
15c00 74 65 3c 2f 75 3e 3a 54 53 50 20 70 72 6f 62 6c te</u>:TSP probl
15c10 65 6d 73 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 ems will always
15c20 69 6d 70 6c 79 20 75 73 69 6e 67 20 74 68 65 20 imply using the
15c30 3c 62 3e 44 69 6a 6b 73 74 72 61 27 73 3c 2f 62 <b>Dijkstra's</b
15c40 3e 20 61 6c 67 6f 72 69 74 68 6d 2c 20 65 76 65 > algorithm, eve
15c50 6e 20 77 68 65 6e 20 74 68 65 20 61 6c 74 65 72 n when the alter
15c60 6e 61 74 69 76 65 20 3c 62 3e 41 2a 3c 2f 62 3e native <b>A*</b>
15c70 20 61 6c 67 6f 72 69 74 68 6d 20 69 73 20 63 75 algorithm is cu
15c80 72 72 65 6e 74 6c 79 20 73 65 6c 65 63 74 65 64 rrently selected
15c90 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 55 ...<verbatim>..U
15ca0 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 45 54 PDATE byfoot SET
15cb0 20 52 65 71 75 65 73 74 20 3d 20 27 54 53 50 27 Request = 'TSP'
15cc0 2c 20 4f 70 74 69 6f 6e 73 20 3d 20 27 4e 4f 20 , Options = 'NO
15cd0 4c 49 4e 4b 53 27 3b 0d 0a 0d 0a 53 45 4c 45 43 LINKS';....SELEC
15ce0 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 65 71 T Algorithm, Req
15cf0 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c 20 44 uest, Options, D
15d00 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 65 49 elimiter, RouteI
15d10 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c d, RouteRow, Rol
15d20 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f e, LinkRowid, No
15d30 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 deFrom, NodeTo,
15d40 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 Cost, Geometry,
15d50 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f Name..FROM byfoo
15d60 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f t..WHERE NodeFro
15d70 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e m = 178731 AND N
15d80 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 38 36 2c odeTo = '183286,
15d90 31 38 31 39 39 39 2c 31 38 34 30 33 30 2c 31 38 181999,184030,18
15da0 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 0a 3c 3882,178754';..<
15db0 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 54 68 65 20 /verbatim>..The
15dc0 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 following table
15dd0 73 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 shows the result
15de0 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 set returned by
15df0 74 68 65 20 73 61 6d 65 20 54 53 50 20 71 75 65 the same TSP que
15e00 72 79 20 75 73 65 64 20 69 6e 20 74 68 65 20 70 ry used in the p
15e10 72 65 76 69 6f 75 73 20 65 78 61 6d 70 6c 65 20 revious example
15e20 61 66 74 65 72 20 65 6e 61 62 6c 69 6e 67 20 74 after enabling t
15e30 68 65 20 3c 62 3e 4e 4f 20 4c 49 4e 4b 53 3c 2f he <b>NO LINKS</
15e40 62 3e 20 6f 70 74 69 6f 6e 2e 20 3c 62 72 3e 3c b> option. <br><
15e50 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 br>..<table bord
15e60 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 er="1" bgcolor="
15e70 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 #ffffcf" cellspa
15e80 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 cing="4" cellpad
15e90 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c ding="6">..<tr><
15ea0 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
15eb0 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 0a0">Algorithm</
15ec0 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
15ed0 23 64 30 64 30 61 30 22 3e 52 65 71 75 65 73 74 #d0d0a0">Request
15ee0 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
15ef0 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f ="#d0d0a0">Optio
15f00 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ns</th><th bgcol
15f10 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 44 65 6c or="#d0d0a0">Del
15f20 69 6d 69 74 65 72 3c 2f 74 68 3e 3c 74 68 20 62 imiter</th><th b
15f30 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
15f40 3e 52 6f 75 74 65 49 64 3c 2f 74 68 3e 3c 74 68 >RouteId</th><th
15f50 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
15f60 30 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 0">RouteRow</th>
15f70 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
15f80 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c d0a0">Role</th><
15f90 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
15fa0 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 0a0">LinkRowid</
15fb0 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
15fc0 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f #d0d0a0">NodeFro
15fd0 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f m</th><th bgcolo
15fe0 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 r="#d0d0a0">Node
15ff0 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c To</th><th bgcol
16000 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 or="#d0d0a0">Cos
16010 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f t</th><th bgcolo
16020 72 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d r="#d0d0a0">Geom
16030 65 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 etry</th><th bgc
16040 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
16050 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c ame</th></tr>..<
16060 74 72 3e 0d 0a 3c 74 64 3e 44 69 6a 6b 73 74 72 tr>..<td>Dijkstr
16070 61 3c 2f 74 64 3e 3c 74 64 3e 54 53 50 20 4e 4e a</td><td>TSP NN
16080 3c 2f 74 64 3e 3c 74 64 3e 4e 6f 20 4c 69 6e 6b </td><td>No Link
16090 73 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 23 39 31 s</td><td>, [
160a0 3b 64 65 63 3d 34 34 2c 20 68 65 78 3d 32 63 26 ;dec=44, hex=2c&
160b0 23 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 #93;</td><td ali
160c0 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
160d0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
160e0 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 54 53 50 t">0</td><td>TSP
160f0 20 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e 3c 74 Solution</td><t
16100 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
16110 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
16120 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
16130 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 n="right">178731
16140 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
16150 72 69 67 68 74 22 3e 31 32 35 34 2e 34 33 33 39 right">1254.4339
16160 33 33 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 33</td><td>BLOB
16170 73 7a 3d 32 30 30 30 20 47 45 4f 4d 45 54 52 59 sz=2000 GEOMETRY
16180 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
16190 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
161a0 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
161b0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
161c0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
161d0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
161e0 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">1</td><td alig
161f0 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
16200 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
16210 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
16220 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
16230 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
16240 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 30 n="right">184030
16250 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
16260 72 69 67 68 74 22 3e 31 37 36 2e 33 36 34 37 35 right">176.36475
16270 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 5</td><td>BLOB s
16280 7a 3d 33 30 34 20 47 45 4f 4d 45 54 52 59 3c 2f z=304 GEOMETRY</
16290 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
162a0 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
162b0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
162c0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
162d0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 74 L</td><td>NULL<t
162e0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
162f0 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 2</td><td align=
16300 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 "right">0</td><t
16310 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e d>Route</td><td>
16320 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
16330 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 gn="right">18403
16340 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
16350 22 72 69 67 68 74 22 3e 31 38 31 39 39 39 3c 2f "right">181999</
16360 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
16370 67 68 74 22 3e 31 33 39 2e 31 31 34 39 33 38 3c ght">139.114938<
16380 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d /td><td>BLOB sz=
16390 34 39 36 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 496 GEOMETRY</td
163a0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a ><td>NULL</td>..
163b0 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
163c0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
163d0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
163e0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
163f0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
16400 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">3</td><td ali
16410 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
16420 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
16430 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
16440 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
16450 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1999</td><td ali
16460 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 gn="right">18328
16470 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 6</td><td align=
16480 22 72 69 67 68 74 22 3e 32 31 37 2e 36 37 32 38 "right">217.6728
16490 38 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 85</td><td>BLOB
164a0 73 7a 3d 36 38 38 20 47 45 4f 4d 45 54 52 59 3c sz=688 GEOMETRY<
164b0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
164c0 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
164d0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
164e0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
164f0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
16500 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
16510 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 ight">4</td><td
16520 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
16530 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
16540 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
16550 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
16560 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 >183286</td><td
16570 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
16580 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8754</td><td ali
16590 67 6e 3d 22 72 69 67 68 74 22 3e 33 37 38 2e 33 gn="right">378.3
165a0 31 33 36 38 34 3c 2f 74 64 3e 3c 74 64 3e 42 4c 13684</td><td>BL
165b0 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f 4d 45 54 OB sz=272 GEOMET
165c0 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
165d0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
165e0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
165f0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
16600 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
16610 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
16620 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c ="right">5</td><
16630 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
16640 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
16650 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
16660 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
16670 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c ht">178754</td><
16680 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
16690 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c 74 64 20 >183882</td><td
166a0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
166b0 38 2e 32 31 36 38 33 31 3c 2f 74 64 3e 3c 74 64 8.216831</td><td
166c0 3e 42 4c 4f 42 20 73 7a 3d 34 30 30 20 47 45 4f >BLOB sz=400 GEO
166d0 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
166e0 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
166f0 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
16700 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
16710 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
16720 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
16730 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 ign="right">6</t
16740 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
16750 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
16760 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
16770 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
16780 72 69 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 right">183882</t
16790 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
167a0 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c ht">178731</td><
167b0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
167c0 3e 31 35 34 2e 37 35 30 38 33 39 3c 2f 74 64 3e >154.750839</td>
167d0 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 34 30 20 <td>BLOB sz=240
167e0 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 GEOMETRY</td><td
167f0 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
16800 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 >..</table>..<br
16810 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 20 6d ><br><br>..The m
16820 61 70 20 62 65 6c 6f 77 20 67 72 61 70 68 69 63 ap below graphic
16830 61 6c 6c 79 20 73 68 6f 77 73 20 74 68 65 20 70 ally shows the p
16840 72 65 76 69 6f 75 73 20 3c 62 3e 54 53 50 3c 2f revious <b>TSP</
16850 62 3e 20 71 75 65 72 69 65 73 2e 0d 0a 3c 62 72 b> queries...<br
16860 3e 3c 62 72 3e 0d 0a 3c 69 6d 67 20 73 72 63 3d ><br>..<img src=
16870 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 "https://www.gai
16880 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 a-gis.it/gaia-si
16890 6e 73 2f 72 6f 75 74 69 6e 67 2d 66 69 67 73 2f ns/routing-figs/
168a0 74 73 70 31 2e 6a 70 67 22 20 61 6c 74 3d 22 66 tsp1.jpg" alt="f
168b0 69 67 34 22 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 ig4">..<ul>..<li
168c0 3e 52 65 64 20 73 74 61 72 3a 20 74 68 65 20 3c >Red star: the <
168d0 75 3e 3c 69 3e 62 61 73 65 2d 63 69 74 79 3c 2f u><i>base-city</
168e0 69 3e 3c 2f 75 3e 20 28 66 72 6f 6d 20 77 68 65 i></u> (from whe
168f0 72 65 20 74 68 65 20 3c 75 3e 3c 69 3e 73 61 6c re the <u><i>sal
16900 65 73 6d 61 6e 3c 2f 69 3e 3c 2f 75 3e 29 20 62 esman</i></u>) b
16910 65 67 69 6e 73 20 68 69 73 2f 68 65 72 20 74 72 egins his/her tr
16920 69 70 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 47 72 ip.</li>..<li>Gr
16930 65 65 6e 20 64 6f 74 73 3a 20 74 68 65 20 3c 75 een dots: the <u
16940 3e 3c 69 3e 63 69 74 69 65 73 3c 2f 69 3e 3c 2f ><i>cities</i></
16950 75 3e 20 74 6f 20 62 65 20 76 69 73 69 74 65 64 u> to be visited
16960 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 59 65 6c 6c .</li>..<li>Yell
16970 6f 77 20 6c 69 6e 65 3a 20 74 68 65 20 54 53 50 ow line: the TSP
16980 20 73 6f 6c 75 74 69 6f 6e 20 28 74 68 61 74 20 solution (that
16990 69 73 20 61 6c 77 61 79 73 20 61 20 63 69 72 63 is always a circ
169a0 75 6c 61 72 20 70 61 74 68 29 2e 3c 2f 6c 69 3e ular path).</li>
169b0 0d 0a 3c 2f 75 6c 3e 3c 62 72 3e 0d 0a 3c 74 61 ..</ul><br>..<ta
169c0 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 ble bgcolor="#ff
169d0 62 30 36 30 22 20 63 65 6c 6c 73 70 61 63 69 6e b060" cellspacin
169e0 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 g="10" cellpaddi
169f0 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d ng="6"><tr><td>.
16a00 0a 3c 68 33 3e 57 61 72 6e 69 6e 67 3a 20 68 6f .<h3>Warning: ho
16a10 77 20 74 6f 20 63 6f 72 72 65 63 74 6c 79 20 68 w to correctly h
16a20 61 6e 64 6c 69 6e 67 20 54 53 50 20 72 65 73 75 andling TSP resu
16a30 6c 74 73 65 74 73 20 77 69 74 68 20 73 70 61 74 ltsets with spat
16a40 69 61 6c 69 74 65 5f 67 75 69 3c 2f 68 33 3e 0d ialite_gui</h3>.
16a50 0a 59 6f 75 20 73 68 6f 75 6c 64 20 6e 65 76 65 .You should neve
16a60 72 20 66 6f 72 67 65 74 20 6f 72 20 6f 76 65 72 r forget or over
16a70 6c 6f 6f 6b 20 74 68 61 74 20 62 6f 74 68 20 3c look that both <
16a80 62 3e 54 53 50 20 4e 4e 3c 2f 62 3e 20 61 6e 64 b>TSP NN</b> and
16a90 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e 20 61 <b>TSP GA</b> a
16aa0 72 65 20 3c 75 3e 3c 69 3e 68 65 75 72 69 73 74 re <u><i>heurist
16ab0 69 63 20 61 6c 67 6f 72 69 74 68 6d 73 3c 2f 69 ic algorithms</i
16ac0 3e 3c 2f 75 3e 20 68 65 61 76 69 6c 79 20 72 65 ></u> heavily re
16ad0 6c 79 69 6e 67 20 6f 6e 20 3c 75 3e 3c 69 3e 72 lying on <u><i>r
16ae0 61 6e 64 6f 6d 3c 69 3e 3c 2f 75 3e 20 63 68 6f andom<i></u> cho
16af0 69 63 65 73 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 ices.<br>..This
16b00 63 6f 75 6c 64 20 65 61 73 69 6c 79 20 68 61 76 could easily hav
16b10 65 20 74 68 65 20 70 72 61 63 74 69 63 61 6c 20 e the practical
16b20 63 6f 6e 73 65 71 75 65 6e 63 65 20 74 68 61 74 consequence that
16b30 20 72 65 73 6f 6c 76 69 6e 67 20 74 77 69 63 65 resolving twice
16b40 20 28 6f 72 20 65 76 65 6e 20 6d 6f 72 65 20 74 (or even more t
16b50 69 6d 65 73 29 20 74 68 65 20 73 61 6d 65 20 69 imes) the same i
16b60 64 65 6e 74 69 63 61 6c 20 54 53 50 20 71 75 65 dentical TSP que
16b70 72 79 20 63 6f 75 6c 64 20 65 76 65 6e 74 75 61 ry could eventua
16b80 6c 6c 79 20 72 65 74 75 72 6e 20 64 69 66 66 65 lly return diffe
16b90 72 65 6e 74 20 72 65 73 75 6c 74 73 65 74 73 2e rent resultsets.
16ba0 3c 62 72 3e 0d 0a 54 68 65 72 65 20 69 73 20 6e <br>..There is n
16bb0 6f 74 68 69 6e 67 20 69 6e 74 72 69 6e 73 69 63 othing intrinsic
16bc0 61 6c 6c 79 20 77 72 6f 6e 67 20 69 6e 20 74 68 ally wrong in th
16bd0 69 73 2c 20 69 74 20 73 69 6d 70 6c 79 20 69 73 is, it simply is
16be0 20 61 20 64 69 72 65 63 74 20 63 6f 6e 73 65 71 a direct conseq
16bf0 75 65 6e 63 65 20 6f 66 20 75 73 69 6e 67 20 3c uence of using <
16c00 75 3e 3c 69 3e 72 61 6e 64 6f 6d 6e 65 73 73 3c u><i>randomness<
16c10 2f 69 3e 3c 2f 75 3e 3b 20 77 65 20 61 72 65 20 /i></u>; we are
16c20 73 69 6d 70 6c 79 20 62 61 72 67 61 69 6e 69 6e simply bargainin
16c30 67 20 3c 62 3e 65 78 61 63 74 6e 65 73 73 3c 2f g <b>exactness</
16c40 62 3e 20 61 6e 64 20 3c 62 3e 72 65 70 72 6f 64 b> and <b>reprod
16c50 75 63 69 62 69 6c 69 74 79 3c 2f 62 3e 20 66 6f ucibility</b> fo
16c60 72 20 3c 62 3e 71 75 69 63 6b 6e 65 73 73 3c 2f r <b>quickness</
16c70 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 3e b>.<br><br>..<b>
16c80 73 70 61 74 69 61 6c 69 74 65 5f 67 75 69 3c 2f spatialite_gui</
16c90 62 3e 20 6f 6e 20 69 74 73 20 6f 77 6e 20 61 64 b> on its own ad
16ca0 6f 70 74 73 20 61 20 3c 62 3e 70 61 67 65 64 20 opts a <b>paged
16cb0 73 74 72 61 74 65 67 79 3c 2f 62 3e 20 77 68 65 strategy</b> whe
16cc0 6e 20 73 68 6f 77 69 6e 67 20 68 75 67 65 20 72 n showing huge r
16cd0 65 73 75 6c 74 73 65 74 73 3b 20 74 68 69 73 20 esultsets; this
16ce0 72 65 71 75 69 72 65 73 20 72 65 70 65 61 74 69 requires repeati
16cf0 6e 67 20 61 67 61 69 6e 20 74 68 65 20 69 6e 69 ng again the ini
16d00 74 69 61 6c 20 53 51 4c 20 71 75 65 72 79 20 65 tial SQL query e
16d10 61 63 68 20 74 69 6d 65 20 74 68 61 74 20 61 20 ach time that a
16d20 3c 62 3e 6e 65 77 20 70 61 67 65 20 6f 66 20 35 <b>new page of 5
16d30 30 30 20 72 6f 77 73 3c 2f 62 3e 20 68 61 73 20 00 rows</b> has
16d40 74 6f 20 62 65 20 73 68 6f 77 6e 20 6f 6e 20 74 to be shown on t
16d50 68 65 20 63 75 72 72 65 6e 74 20 77 69 6e 64 6f he current windo
16d60 77 20 70 61 6e 65 6c 2e 3c 62 72 3e 0d 0a 54 68 w panel.<br>..Th
16d70 65 20 74 77 6f 20 74 68 69 6e 67 73 20 64 6f 6e e two things don
16d80 27 74 20 67 6f 20 74 6f 67 65 74 68 65 72 20 77 't go together w
16d90 65 6c 6c 3b 20 73 6f 20 64 6f 6e 27 74 20 62 65 ell; so don't be
16da0 20 73 75 72 70 72 69 73 65 64 20 77 68 65 6e 20 surprised when
16db0 65 76 65 6e 74 75 61 6c 6c 79 20 64 69 73 63 6f eventually disco
16dc0 76 65 72 69 6e 67 20 74 68 61 74 20 3c 62 3e 73 vering that <b>s
16dd0 70 61 74 69 61 6c 69 74 65 5f 67 75 69 3c 2f 62 patialite_gui</b
16de0 3e 20 77 69 6c 6c 20 62 65 68 61 76 65 20 62 69 > will behave bi
16df0 7a 61 72 72 65 6c 79 20 77 68 69 6c 65 20 70 72 zarrely while pr
16e00 65 73 65 6e 74 69 6e 67 20 73 6f 6d 65 20 72 65 esenting some re
16e10 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 sultset returned
16e20 20 62 79 20 61 20 54 53 50 20 71 75 65 72 79 2e by a TSP query.
16e30 20 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 55 ..<verbatim>..U
16e40 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 45 54 PDATE byfoot SET
16e50 20 52 65 71 75 65 73 74 20 3d 20 27 54 53 50 27 Request = 'TSP'
16e60 3b 0d 0a 0d 0a 43 52 45 41 54 45 20 54 41 42 4c ;....CREATE TABL
16e70 45 20 6d 79 5f 74 73 70 5f 73 6f 6c 75 74 69 6f E my_tsp_solutio
16e80 6e 20 41 53 0d 0a 53 45 4c 45 43 54 20 41 6c 67 n AS..SELECT Alg
16e90 6f 72 69 74 68 6d 2c 20 52 65 71 75 65 73 74 2c orithm, Request,
16ea0 20 4f 70 74 69 6f 6e 73 2c 20 44 65 6c 69 6d 69 Options, Delimi
16eb0 74 65 72 2c 20 52 6f 75 74 65 49 64 2c 20 52 6f ter, RouteId, Ro
16ec0 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 uteRow, Role, Li
16ed0 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f nkRowid, NodeFro
16ee0 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c m, NodeTo, Cost,
16ef0 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d Geometry, Name.
16f00 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 .FROM byfoot..WH
16f10 45 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 ERE NodeFrom = 1
16f20 37 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 54 6f 78731 AND NodeTo
16f30 20 3d 20 27 31 38 33 32 38 36 2c 31 38 31 39 39 = '183286,18199
16f40 39 2c 31 38 34 30 33 30 2c 31 38 33 38 38 32 2c 9,184030,183882,
16f50 31 37 38 37 35 34 27 3b 0d 0a 0d 0a 2e 2e 2e 20 178754';.......
16f60 20 3c 6e 6f 77 20 71 75 65 72 79 20 22 6d 79 5f <now query "my_
16f70 74 73 70 5f 73 6f 6c 75 74 69 6f 6e 22 20 75 73 tsp_solution" us
16f80 69 6e 67 20 73 70 61 74 69 61 6c 69 74 65 5f 67 ing spatialite_g
16f90 75 69 3e 20 20 2e 2e 2e 0d 0a 0d 0a 44 52 4f 50 ui> .......DROP
16fa0 20 54 41 42 4c 45 20 6d 79 5f 74 73 70 5f 73 6f TABLE my_tsp_so
16fb0 6c 75 74 69 6f 6e 3b 0d 0a 3c 2f 76 65 72 62 61 lution;..</verba
16fc0 74 69 6d 3e 0d 0a 3c 75 3e 48 69 6e 74 3c 2f 75 tim>..<u>Hint</u
16fd0 3e 3a 20 72 65 73 6f 6c 76 69 6e 67 20 74 68 69 >: resolving thi
16fe0 73 20 70 75 7a 7a 6c 69 6e 67 20 69 73 73 75 65 s puzzling issue
16ff0 20 69 73 20 68 6f 77 65 76 65 72 20 62 61 73 69 is however basi
17000 63 61 6c 6c 79 20 73 69 6d 70 6c 65 3a 0d 0a 3c cally simple:..<
17010 6f 6c 3e 0d 0a 3c 6c 69 3e 79 6f 75 20 73 69 6d ol>..<li>you sim
17020 70 6c 79 20 68 61 76 65 20 74 6f 20 74 61 6b 65 ply have to take
17030 20 61 20 3c 62 3e 73 74 61 74 69 63 20 73 6e 61 a <b>static sna
17040 70 73 68 6f 74 3c 2f 62 3e 20 6f 66 20 79 6f 75 pshot</b> of you
17050 72 20 54 53 50 20 72 65 73 75 6c 74 73 65 74 20 r TSP resultset
17060 62 79 20 75 73 69 6e 67 20 74 68 65 20 3c 62 3e by using the <b>
17070 43 52 45 41 54 45 20 54 41 42 4c 45 20 3c 69 3e CREATE TABLE <i>
17080 6e 61 6d 65 3c 2f 69 3e 20 41 53 20 3c 69 3e 54 name</i> AS <i>T
17090 53 50 20 71 75 65 72 79 3c 69 3e 3c 2f 62 3e 2e SP query<i></b>.
170a0 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 6e 20 </li>..<li>then
170b0 79 6f 75 20 63 61 6e 20 66 72 65 65 6c 79 20 65 you can freely e
170c0 78 61 6d 69 6e 65 20 74 68 65 20 61 62 6f 76 65 xamine the above
170d0 20 73 6e 61 70 73 68 6f 74 2e 3c 2f 6c 69 3e 0d snapshot.</li>.
170e0 0a 3c 6c 69 3e 61 6e 64 20 66 69 6e 61 6c 6c 79 .<li>and finally
170f0 20 79 6f 75 20 63 61 6e 20 64 75 6c 79 20 3c 62 you can duly <b
17100 3e 44 52 4f 50 3c 2f 62 3e 20 74 68 65 20 73 6e >DROP</b> the sn
17110 61 70 73 68 6f 74 20 6f 6e 63 65 20 69 74 27 73 apshot once it's
17120 20 6e 6f 20 6c 6f 6e 67 65 72 20 75 73 65 66 75 no longer usefu
17130 6c 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a l.</li>..</ol>..
17140 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 </td></tr>..</ta
17150 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 62 ble>..<br>..<tab
17160 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 66 le bgcolor="#c0f
17170 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 fc0" cellspacing
17180 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 6e ="10" cellpaddin
17190 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a g="6"><tr><td>..
171a0 3c 68 33 3e 4d 6f 72 65 20 61 62 6f 75 74 20 4c <h3>More about L
171b0 69 6e 65 61 72 20 52 65 66 65 72 65 6e 63 69 6e inear Referencin
171c0 67 20 61 6e 64 20 56 69 72 74 75 61 6c 52 6f 75 g and VirtualRou
171d0 74 69 6e 67 20 4c 69 6e 65 73 74 72 69 6e 67 73 ting Linestrings
171e0 3c 2f 68 33 3e 20 0d 0a 59 6f 75 20 68 61 76 65 </h3> ..You have
171f0 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 69 6e already seen in
17200 20 61 20 70 72 65 76 69 6f 75 73 20 65 78 61 6d a previous exam
17210 70 6c 65 20 74 68 61 74 20 61 6c 6c 20 4c 49 4e ple that all LIN
17220 45 53 54 52 49 4e 47 73 20 63 72 65 61 74 65 64 ESTRINGs created
17230 20 62 79 20 56 69 72 74 75 61 6c 52 6f 75 74 69 by VirtualRouti
17240 6e 67 20 73 75 70 70 6f 72 74 20 74 68 65 20 3c ng support the <
17250 62 3e 4d 3c 2f 62 3e 20 28 3c 62 3e 3c 69 3e 6d b>M</b> (<b><i>m
17260 65 61 73 75 72 65 3c 2f 69 3e 3c 2f 62 3e 29 20 easure</i></b>)
17270 63 6f 6f 72 64 69 6e 61 74 65 20 69 6e 74 65 6e coordinate inten
17280 64 65 64 20 61 73 20 61 20 3c 62 3e 70 72 6f 67 ded as a <b>prog
17290 72 65 73 73 69 76 65 20 63 6f 73 74 3c 2f 62 3e ressive cost</b>
172a0 20 66 6f 72 20 65 61 63 68 20 76 65 72 74 65 78 for each vertex
172b0 2e 20 41 6e 64 20 79 6f 75 20 61 6c 72 65 61 64 . And you alread
172c0 79 20 6b 6e 6f 77 20 74 68 65 20 74 68 65 79 20 y know the they
172d0 63 61 6e 20 73 75 70 70 6f 72 74 20 3c 62 3e 3c can support <b><
172e0 69 3e 6c 69 6e 65 61 72 20 72 65 66 65 72 65 6e i>linear referen
172f0 63 69 6e 67 3c 2f 69 3e 3c 2f 62 3e 20 28 3c 62 cing</i></b> (<b
17300 3e 4c 52 3c 2f 62 3e 29 20 53 51 4c 20 66 75 6e >LR</b>) SQL fun
17310 63 74 69 6f 6e 73 2e 3c 62 72 3e 0d 0a 4c 65 74 ctions.<br>..Let
17320 27 73 20 6e 6f 77 20 67 6f 20 69 6e 20 66 75 72 's now go in fur
17330 74 68 65 72 20 64 65 70 74 68 2e 0d 0a 3c 68 33 ther depth...<h3
17340 3e 54 72 61 6a 65 63 74 6f 72 79 20 6f 62 6a 65 >Trajectory obje
17350 63 74 73 3c 2f 68 33 3e 0d 0a 41 20 3c 62 3e 54 cts</h3>..A <b>T
17360 72 61 6a 65 63 74 6f 72 79 3c 2f 62 3e 20 69 73 rajectory</b> is
17370 20 61 6e 79 20 4c 69 6e 65 73 74 72 69 6e 67 20 any Linestring
17380 73 75 70 70 6f 72 74 69 6e 67 20 3c 62 3e 4d 20 supporting <b>M
17390 63 6f 6f 72 64 69 6e 61 74 65 73 3c 2f 62 3e 20 coordinates</b>
173a0 77 69 74 68 20 61 20 63 6f 6e 74 69 6e 75 6f 75 with a continuou
173b0 73 6c 79 20 69 6e 63 72 65 61 73 69 6e 67 20 74 sly increasing t
173c0 72 65 6e 64 2e 3c 62 72 3e 0d 0a 49 6e 20 73 69 rend.<br>..In si
173d0 6d 70 6c 65 72 20 77 6f 72 64 73 2c 20 74 68 65 mpler words, the
173e0 20 3c 62 3e 4d 2d 76 61 6c 75 65 3c 2f 62 3e 20 <b>M-value</b>
173f0 6f 66 20 65 61 63 68 20 76 65 72 74 65 78 20 28 of each vertex (
17400 65 78 63 65 70 74 20 74 68 65 20 6c 61 73 74 20 except the last
17410 6f 6e 65 29 20 6d 75 73 74 20 62 65 20 3c 62 3e one) must be <b>
17420 6c 65 73 73 65 72 3c 2f 62 3e 20 74 68 61 6e 20 lesser</b> than
17430 74 68 65 20 4d 2d 56 61 6c 75 65 20 6f 66 20 74 the M-Value of t
17440 68 65 20 6e 65 78 74 20 76 65 72 74 65 78 2e 0d he next vertex..
17450 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c .<verbatim>..SEL
17460 45 43 54 20 2a 20 46 52 4f 4d 20 6d 79 5f 74 73 ECT * FROM my_ts
17470 70 5f 73 6f 6c 75 74 69 6f 6e 20 57 48 45 52 45 p_solution WHERE
17480 20 53 54 5f 49 73 56 61 6c 69 64 54 72 61 6a 65 ST_IsValidTraje
17490 63 74 6f 72 79 28 67 65 6f 6d 65 74 72 79 29 20 ctory(geometry)
174a0 3d 20 31 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d = 1;..----------
174b0 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 31 0d 0a 3c 2f ---------..1..</
174c0 76 65 72 62 61 74 69 6d 3e 0d 0a 41 73 20 79 6f verbatim>..As yo
174d0 75 20 63 61 6e 20 65 61 73 69 6c 79 20 63 68 65 u can easily che
174e0 63 6b 20 62 79 20 63 61 6c 6c 69 6e 67 20 3c 62 ck by calling <b
174f0 3e 53 54 5f 49 73 56 61 6c 69 64 54 72 61 6a 65 >ST_IsValidTraje
17500 63 74 6f 72 79 28 29 3c 2f 62 3e 20 65 76 65 72 ctory()</b> ever
17510 79 20 4c 69 6e 65 73 74 72 69 6e 67 20 63 72 65 y Linestring cre
17520 61 74 65 64 20 62 79 20 56 69 72 74 75 61 6c 52 ated by VirtualR
17530 6f 75 74 69 6e 67 20 69 73 20 61 20 3c 62 3e 76 outing is a <b>v
17540 61 6c 69 64 20 54 72 61 6a 65 63 74 6f 72 79 3c alid Trajectory<
17550 2f 62 3e 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e /b>...<verbatim>
17560 0d 0a 53 45 4c 45 43 54 20 53 54 5f 54 72 61 6a ..SELECT ST_Traj
17570 65 63 74 6f 72 79 49 6e 74 65 72 70 6f 6c 61 74 ectoryInterpolat
17580 65 50 6f 69 6e 74 28 47 65 6f 6d 65 74 72 79 2c ePoint(Geometry,
17590 20 31 30 30 2e 30 29 0d 0a 46 52 4f 4d 20 6d 79 100.0)..FROM my
175a0 5f 74 73 70 5f 73 6f 6c 75 74 69 6f 6e 0d 0a 57 _tsp_solution..W
175b0 48 45 52 45 20 52 6f 75 74 65 49 64 20 3d 20 30 HERE RouteId = 0
175c0 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a ;..</verbatim>..
175d0 53 6f 20 79 6f 75 20 6a 75 73 74 20 68 61 76 65 So you just have
175e0 20 74 6f 20 63 61 6c 6c 20 3c 62 3e 53 54 5f 54 to call <b>ST_T
175f0 72 61 6a 65 63 74 6f 72 79 49 6e 74 65 72 70 6f rajectoryInterpo
17600 6c 61 74 65 50 6f 69 6e 74 28 29 3c 2f 62 3e 20 latePoint()</b>
17610 69 6e 20 6f 72 64 65 72 20 74 6f 20 63 72 65 61 in order to crea
17620 74 65 20 61 20 50 4f 49 4e 54 20 70 72 65 63 69 te a POINT preci
17630 73 65 6c 79 20 6c 6f 63 61 74 65 64 20 6f 6e 20 sely located on
17640 74 68 65 20 4c 69 6e 65 73 74 72 69 6e 67 20 61 the Linestring a
17650 74 20 74 68 65 20 67 69 76 65 6e 20 3c 62 3e 63 t the given <b>c
17660 6f 73 74 3c 2f 62 3e 2e 0d 0a 3c 62 72 3e 3c 62 ost</b>...<br><b
17670 72 3e 3c 68 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a r><hr><br><br>..
17680 54 68 65 20 73 69 64 65 20 6d 61 70 20 67 72 61 The side map gra
17690 70 68 69 63 61 6c 6c 79 20 73 68 6f 77 73 20 74 phically shows t
176a0 68 65 20 65 73 74 69 6d 61 74 65 64 20 70 6f 73 he estimated pos
176b0 69 74 69 6f 6e 73 20 65 76 65 72 79 20 31 30 30 itions every 100
176c0 6d 20 61 73 73 75 6d 69 6e 67 20 74 68 65 20 73 m assuming the s
176d0 61 6d 65 20 70 61 74 68 20 72 65 74 75 72 6e 65 ame path returne
176e0 64 20 62 79 20 74 68 65 20 6c 61 74 65 73 74 20 d by the latest
176f0 54 53 50 20 71 75 65 72 79 2e 0d 0a 3c 2f 74 64 TSP query...</td
17700 3e 3c 74 64 3e 20 20 20 20 20 20 20 20 20 20 20 ><td>
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 20 20 20 20 20
1e8d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e8f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e9b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e9d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e9f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ea90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eaa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ead0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eaf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eb90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ebb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ebc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ebd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ebe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ebf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ec90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ecb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ecc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ecd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ece0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ecf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ed90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1edb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1edc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1edd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ede0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1edf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ee90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eeb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1ef90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1efa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1efb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1efc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1efd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1efe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1eff0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f070 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f090 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f0b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f0c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f0d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f0f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f130 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f1b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f1d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f1f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f270 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f290 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f2b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f2d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f2e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f2f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f310 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f330 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f370 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f390 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f3b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f3d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f3f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f450 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f4b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f4d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f4f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f510 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f550 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f5b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f5d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f5f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f630 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f690 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f6b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f6d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f6f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f710 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f730 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f770 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f790 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f7b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f7d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f7f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f810 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f830 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f8b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f8d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f8f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f930 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f970 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f990 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f9b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f9d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f9f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fa90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1faa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fab0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1faf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fb90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fbb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fbc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fbd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fbe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fbf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fc90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fcb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fcc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fcd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fcf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fd90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fdb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fdc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fdd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fde0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fdf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fe00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fe10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fe20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fe30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fe40 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 3c 69 ..<i
1fe50 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f mg src="https://
1fe60 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f www.gaia-gis.it/
1fe70 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 74 69 6e gaia-sins/routin
1fe80 67 2d 66 69 67 73 2f 74 73 70 32 2e 6a 70 67 22 g-figs/tsp2.jpg"
1fe90 20 61 6c 74 3d 22 66 69 67 35 22 3e 0d 0a 3c 2f alt="fig5">..</
1fea0 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 6c 65 3e td></tr></table>
1feb0 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e ..<br><br>..<hr>
1fec0 3c 62 72 3e 0d 0a 3c 68 31 3e 3c 61 20 6e 61 6d <br>..<h1><a nam
1fed0 65 3d 22 70 32 70 22 3e 38 20 2d 20 53 6f 6c 76 e="p2p">8 - Solv
1fee0 69 6e 67 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 ing Point-to-Poi
1fef0 6e 74 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c nt problems</a><
1ff00 2f 68 31 3e 0d 0a 41 20 3c 62 3e 50 6f 69 6e 74 /h1>..A <b>Point
1ff10 2d 74 6f 2d 50 6f 69 6e 74 3c 2f 62 3e 20 71 75 -to-Point</b> qu
1ff20 65 72 79 20 69 73 20 76 65 72 79 20 73 69 6d 69 ery is very simi
1ff30 6c 61 72 20 74 6f 20 61 20 6d 6f 73 74 20 75 73 lar to a most us
1ff40 75 61 6c 20 3c 62 3e 73 69 6e 67 6c 65 2d 64 65 ual <b>single-de
1ff50 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 74 65 stination Shorte
1ff60 73 74 20 50 61 74 68 3c 2f 62 3e 20 71 75 65 72 st Path</b> quer
1ff70 79 2c 20 65 78 63 65 70 74 20 74 68 61 74 3a 0d y, except that:.
1ff80 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 41 20 63 6c 61 .<ul>..<li>A cla
1ff90 73 73 69 63 20 53 68 6f 72 74 65 73 74 20 50 61 ssic Shortest Pa
1ffa0 74 68 20 71 75 65 72 79 20 72 65 71 75 69 72 65 th query require
1ffb0 73 20 74 6f 20 73 70 65 63 69 66 79 20 61 20 3c s to specify a <
1ffc0 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 28 b>NodeFrom</b> (
1ffd0 3c 75 3e 3c 69 3e 6f 72 69 67 69 6e 3c 2f 69 3e <u><i>origin</i>
1ffe0 3c 2f 75 3e 29 20 61 6e 64 20 61 20 3c 62 3e 4e </u>) and a <b>N
1fff0 6f 64 65 54 6f 3c 2f 62 3e 20 28 3c 75 3e 3c 69 odeTo</b> (<u><i
20000 3e 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 69 3e >destination</i>
20010 3c 2f 75 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 </u>).</li>..<li
20020 3e 41 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e >A Point-to-Poin
20030 74 20 71 75 65 72 79 20 68 61 73 20 6d 6f 72 65 t query has more
20040 20 72 65 6c 61 78 65 64 20 72 65 71 75 69 73 69 relaxed requisi
20050 74 65 73 2c 20 61 6e 64 20 6a 75 73 74 20 72 65 tes, and just re
20060 71 75 69 72 65 73 20 74 6f 20 73 70 65 63 69 66 quires to specif
20070 79 20 61 20 3c 62 3e 50 6f 69 6e 74 46 72 6f 6d y a <b>PointFrom
20080 3c 2f 62 3e 20 28 3c 75 3e 3c 69 3e 6f 72 69 67 </b> (<u><i>orig
20090 69 6e 3c 2f 69 3e 3c 2f 75 3e 29 20 61 6e 64 20 in</i></u>) and
200a0 61 20 3c 62 3e 50 6f 69 6e 74 54 6f 3c 2f 62 3e a <b>PointTo</b>
200b0 20 28 3c 75 3e 3c 69 3e 64 65 73 74 69 6e 61 74 (<u><i>destinat
200c0 69 6f 6e 3c 2f 69 3e 3c 2f 75 3e 29 2e 3c 62 72 ion</i></u>).<br
200d0 3e 0d 0a 42 6f 74 68 20 3c 62 3e 50 6f 69 6e 74 >..Both <b>Point
200e0 73 3c 2f 62 3e 20 63 61 6e 20 62 65 20 66 72 65 s</b> can be fre
200f0 65 6c 79 20 70 6f 73 69 74 69 6f 6e 65 64 20 65 ely positioned e
20100 76 65 72 79 77 68 65 72 65 20 6f 6e 20 61 20 6d verywhere on a m
20110 61 70 2c 20 61 6e 64 20 61 72 65 20 6e 6f 74 20 ap, and are not
20120 72 65 71 75 69 72 65 64 20 74 6f 20 70 72 65 63 required to prec
20130 69 73 65 6c 79 20 69 6e 74 65 72 73 65 63 74 20 isely intersect
20140 6e 65 69 74 68 65 72 20 61 20 3c 62 3e 4e 6f 64 neither a <b>Nod
20150 65 3c 2f 62 3e 20 6e 6f 72 20 61 20 3c 62 3e 4c e</b> nor a <b>L
20160 69 6e 6b 3c 2f 62 3e 20 6f 66 20 74 68 65 20 75 ink</b> of the u
20170 6e 64 65 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f nderlaying Netwo
20180 72 6b 2e 3c 62 72 3e 0d 0a 54 68 65 20 50 6f 69 rk.<br>..The Poi
20190 6e 74 2d 74 6f 2d 50 6f 69 6e 74 27 73 20 3c 75 nt-to-Point's <u
201a0 3e 3c 69 3e 69 6e 74 65 72 6e 61 6c 20 6c 6f 67 ><i>internal log
201b0 69 63 3c 2f 69 3e 3c 2f 75 3e 20 77 69 6c 6c 20 ic</i></u> will
201c0 74 68 65 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c then automatical
201d0 6c 79 20 69 64 65 6e 74 69 66 79 20 28 69 66 20 ly identify (if
201e0 70 6f 73 73 69 62 6c 65 29 20 74 68 65 20 61 70 possible) the ap
201f0 70 72 6f 70 72 69 61 74 65 20 4e 6f 64 65 73 20 propriate Nodes
20200 66 6f 72 20 63 6f 6d 70 75 74 69 6e 67 20 61 20 for computing a
20210 53 68 6f 72 74 65 73 74 20 50 61 74 68 20 73 6f Shortest Path so
20220 6c 75 74 69 6f 6e 2e 3c 62 72 3e 0d 0a 3c 75 3e lution.<br>..<u>
20230 4e 6f 74 65 3c 2f 75 3e 3a 20 74 68 65 20 74 77 Note</u>: the tw
20240 6f 20 50 6f 69 6e 74 73 20 3c 62 3e 6d 75 73 74 o Points <b>must
20250 3c 2f 62 3e 20 62 65 20 69 6e 20 74 68 65 20 73 </b> be in the s
20260 61 6d 65 20 3c 62 3e 53 52 49 44 3c 2f 62 3e 20 ame <b>SRID</b>
20270 6f 66 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 of the underlayi
20280 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c 2f 6c 69 3e ng Network.</li>
20290 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 68 33 3e 48 6f 77 ..</ul>..<h3>How
202a0 20 69 74 20 70 72 61 63 74 69 63 61 6c 6c 79 20 it practically
202b0 77 6f 72 6b 73 3c 2f 68 33 3e 0d 0a 3c 6f 6c 3e works</h3>..<ol>
202c0 0d 0a 3c 6c 69 3e 61 20 66 69 72 73 74 20 3c 75 ..<li>a first <u
202d0 3e 3c 69 3e 73 70 61 74 69 61 6c 20 73 65 61 72 ><i>spatial sear
202e0 63 68 3c 2f 69 3e 3c 2f 75 3e 20 62 61 73 65 64 ch</i></u> based
202f0 20 6f 6e 20 74 68 65 20 3c 62 3e 50 6f 69 6e 74 on the <b>Point
20300 46 72 6f 6d 3c 2f 62 3e 20 77 69 6c 6c 20 61 74 From</b> will at
20310 74 65 6d 70 74 20 74 6f 20 69 64 65 6e 74 69 66 tempt to identif
20320 79 20 61 6c 6c 20 3c 62 3e 4c 69 6e 6b 73 3c 2f y all <b>Links</
20330 62 3e 20 66 61 6c 6c 69 6e 67 20 77 69 74 68 69 b> falling withi
20340 6e 20 61 20 67 69 76 65 6e 20 3c 62 3e 74 6f 6c n a given <b>tol
20350 65 72 61 6e 63 65 20 72 61 64 69 75 73 3c 2f 62 erance radius</b
20360 3e 20 66 72 6f 6d 20 74 68 65 20 50 6f 69 6e 74 > from the Point
20370 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 20 73 65 .</li>..<li>a se
20380 63 6f 6e 64 20 73 69 6d 69 6c 61 72 20 73 70 61 cond similar spa
20390 74 69 61 6c 20 73 65 61 72 63 68 20 77 69 6c 6c tial search will
203a0 20 61 74 74 65 6d 70 74 20 74 6f 20 69 64 65 6e attempt to iden
203b0 74 69 66 79 20 61 6c 6c 20 3c 62 3e 4c 69 6e 6b tify all <b>Link
203c0 73 3c 2f 62 3e 20 72 65 6c 61 74 65 64 20 74 6f s</b> related to
203d0 20 74 68 65 20 3c 62 3e 50 6f 69 6e 74 54 6f 3c the <b>PointTo<
203e0 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 /b>.</li>..<li>a
203f0 6c 6c 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 20 ll <b>Nodes</b>
20400 62 65 6c 6f 6e 67 69 6e 67 20 74 6f 20 61 6e 79 belonging to any
20410 20 3c 62 3e 4c 69 6e 6b 3c 2f 62 3e 20 69 64 65 <b>Link</b> ide
20420 6e 74 69 66 69 65 64 20 62 79 20 74 68 65 20 66 ntified by the f
20430 69 72 73 74 20 73 70 61 74 69 61 6c 20 73 65 61 irst spatial sea
20440 72 63 68 20 77 69 6c 6c 20 62 65 20 63 6f 6e 73 rch will be cons
20450 69 64 65 72 65 64 20 61 73 20 70 6f 73 73 69 62 idered as possib
20460 6c 65 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 20 63 le <b>NodeFrom c
20470 61 6e 64 69 64 61 74 65 73 3c 2f 62 3e 2e 3c 2f andidates</b>.</
20480 6c 69 3e 0d 0a 3c 6c 69 3e 61 6e 64 20 73 79 6d li>..<li>and sym
20490 6d 65 74 72 69 63 61 6c 6c 79 2c 20 61 6c 6c 20 metrically, all
204a0 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 20 62 65 6c <b>Nodes</b> bel
204b0 6f 6e 67 69 6e 67 20 74 6f 20 61 6e 79 20 3c 62 onging to any <b
204c0 3e 4c 69 6e 6b 3c 2f 62 3e 20 69 64 65 6e 74 69 >Link</b> identi
204d0 66 69 65 64 20 62 79 20 74 68 65 20 73 65 63 6f fied by the seco
204e0 6e 64 20 73 70 61 74 69 61 6c 20 73 65 61 72 63 nd spatial searc
204f0 68 20 77 69 6c 6c 20 62 65 20 63 6f 6e 73 69 64 h will be consid
20500 65 72 65 64 20 61 73 20 70 6f 73 73 69 62 6c 65 ered as possible
20510 20 3c 62 3e 4e 6f 64 65 54 6f 20 63 61 6e 64 69 <b>NodeTo candi
20520 64 61 74 65 73 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d dates</b>.</li>.
20530 0a 3c 6c 69 3e 61 20 66 75 6c 6c 20 70 65 72 6d .<li>a full perm
20540 75 74 61 74 69 6f 6e 20 6f 66 20 61 6c 6c 20 53 utation of all S
20550 68 6f 72 74 65 73 74 20 50 61 74 68 20 73 6f 6c hortest Path sol
20560 75 74 69 6f 6e 73 20 63 6f 6e 6e 65 63 74 69 6e utions connectin
20570 67 20 6f 6e 65 20 74 68 65 20 46 72 6f 6d 20 63 g one the From c
20580 61 6e 64 69 64 61 74 65 73 20 74 6f 20 6f 6e 65 andidates to one
20590 20 6f 66 20 74 68 65 20 54 6f 20 63 61 6e 64 69 of the To candi
205a0 64 61 74 65 73 20 77 69 6c 6c 20 62 65 20 74 68 dates will be th
205b0 65 6e 20 63 6f 6d 70 75 74 65 64 2e 3c 2f 6c 69 en computed.</li
205c0 3e 0d 0a 3c 6c 69 3e 61 6e 64 20 66 69 6e 61 6c >..<li>and final
205d0 6c 79 20 74 68 65 20 3c 62 3e 6f 70 74 69 6d 61 ly the <b>optima
205e0 6c 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 l Point-to-Point
205f0 20 73 6f 6c 75 74 69 6f 6e 3c 2f 62 3e 20 77 69 solution</b> wi
20600 6c 6c 20 62 65 20 73 65 6c 65 63 74 65 64 20 62 ll be selected b
20610 79 20 69 64 65 6e 74 69 66 79 69 6e 67 20 77 68 y identifying wh
20620 69 63 68 20 73 70 65 63 69 66 69 63 20 63 61 6e ich specific can
20630 64 69 64 61 74 65 20 70 72 65 73 65 6e 74 73 20 didate presents
20640 74 68 65 20 3c 62 3e 6c 65 73 73 65 72 20 43 6f the <b>lesser Co
20650 73 74 3c 2f 62 3e 20 6f 66 20 74 68 65 6d 20 61 st</b> of them a
20660 6c 6c 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 3c ll.</li>..</ol><
20670 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f br>..<table bgco
20680 6c 6f 72 3d 22 23 66 66 62 30 36 30 22 20 63 65 lor="#ffb060" ce
20690 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 llspacing="10" c
206a0 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c ellpadding="6"><
206b0 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 42 65 20 tr><td>..<h3>Be
206c0 61 77 61 72 65 3c 2f 68 33 3e 0d 0a 41 74 74 65 aware</h3>..Atte
206d0 6d 70 74 69 6e 67 20 74 6f 20 73 6f 6c 76 65 20 mpting to solve
206e0 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 71 Point-to-Point q
206f0 75 65 72 69 65 73 20 73 74 72 69 63 74 6c 79 20 ueries strictly
20700 72 65 71 75 69 72 65 73 20 74 68 61 74 20 61 6e requires that an
20710 20 61 70 70 72 6f 70 72 69 61 74 65 20 3c 62 3e appropriate <b>
20720 53 70 61 74 69 61 6c 20 49 6e 64 65 78 3c 2f 62 Spatial Index</b
20730 3e 20 63 61 6e 20 65 66 66 65 63 74 69 76 65 6c > can effectivel
20740 79 20 73 75 70 70 6f 72 74 20 61 6c 6c 20 4c 69 y support all Li
20750 6e 6b 73 20 6f 66 20 74 68 65 20 75 6e 64 65 72 nks of the under
20760 6c 61 79 69 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c laying Network.<
20770 62 72 3e 0d 0a 49 66 20 73 75 63 68 20 61 20 72 br>..If such a r
20780 65 71 75 69 73 69 74 65 20 69 73 20 6e 6f 74 20 equisite is not
20790 73 61 74 69 73 66 69 65 64 20 74 68 65 20 61 62 satisfied the ab
207a0 6f 76 65 20 6d 65 6e 74 69 6f 6e 65 64 20 3c 75 ove mentioned <u
207b0 3e 3c 69 3e 73 70 61 74 69 61 6c 20 73 65 61 72 ><i>spatial sear
207c0 63 68 65 73 3c 2f 69 3e 3c 2f 75 3e 20 77 69 6c ches</i></u> wil
207d0 6c 20 6d 69 73 65 72 61 62 6c 79 20 66 61 69 6c l miserably fail
207e0 2c 20 61 6e 64 20 63 6f 6e 73 65 71 75 65 6e 74 , and consequent
207f0 6c 79 20 61 6c 6c 20 50 6f 69 6e 74 2d 74 6f 2d ly all Point-to-
20800 50 6f 69 6e 74 20 71 75 65 72 69 65 73 20 77 69 Point queries wi
20810 6c 6c 20 62 65 20 75 6e 61 62 6c 65 20 74 6f 20 ll be unable to
20820 69 64 65 6e 74 69 66 79 20 61 6e 79 20 70 6f 73 identify any pos
20830 73 69 62 6c 65 20 43 61 6e 64 69 64 61 74 65 20 sible Candidate
20840 74 6f 20 62 65 20 65 76 61 6c 75 61 74 65 64 2e to be evaluated.
20850 0d 0a 3c 68 33 3e 41 6c 77 61 79 73 20 72 65 6d ..<h3>Always rem
20860 65 6d 62 65 72 3c 2f 68 33 3e 0d 0a 43 61 72 65 ember</h3>..Care
20870 66 75 6c 6c 79 20 63 68 65 63 6b 20 69 66 20 61 fully check if a
20880 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 53 70 n appropriate Sp
20890 61 74 69 61 6c 20 49 6e 64 65 78 20 64 6f 20 72 atial Index do r
208a0 65 61 6c 6c 79 20 65 78 69 73 74 73 20 62 65 66 eally exists bef
208b0 6f 72 65 20 61 74 74 65 6d 70 74 69 6e 67 20 74 ore attempting t
208c0 6f 20 65 78 65 63 75 74 65 20 61 6e 79 20 50 6f o execute any Po
208d0 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 71 75 65 int-to-Point que
208e0 72 79 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c ry...<br><br>..<
208f0 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 6c 65 /td></tr></table
20900 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 >..<br>..<table
20910 62 67 63 6f 6c 6f 72 3d 22 23 63 30 66 66 63 30 bgcolor="#c0ffc0
20920 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 " cellspacing="1
20930 30 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 0" cellpadding="
20940 36 22 3e 3c 74 72 3e 3c 74 64 20 61 6c 69 67 6e 6"><tr><td align
20950 3d 22 63 65 6e 74 65 72 22 20 63 6f 6c 73 70 61 ="center" colspa
20960 6e 3d 22 32 22 3e 0d 0a 3c 68 32 3e 42 61 73 69 n="2">..<h2>Basi
20970 63 20 63 6f 6e 63 65 70 74 73 2c 20 74 65 63 68 c concepts, tech
20980 6e 69 63 61 6c 20 64 65 74 61 69 6c 73 20 61 6e nical details an
20990 64 20 72 65 6c 61 74 65 64 20 67 6c 6f 73 73 61 d related glossa
209a0 72 79 3c 2f 68 32 3e 0d 0a 3c 2f 74 64 3e 3c 2f ry</h2>..</td></
209b0 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 0d 0a 54 tr>..<tr><td>..T
209c0 68 65 20 73 69 64 65 20 66 69 67 75 72 65 20 73 he side figure s
209d0 68 6f 77 73 20 61 20 68 79 70 6f 74 68 65 74 69 hows a hypotheti
209e0 63 61 6c 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 cal Point-to-Poi
209f0 6e 74 20 73 6f 6c 75 74 69 6f 6e 20 61 6c 6d 6f nt solution almo
20a00 73 74 20 70 72 65 63 69 73 65 6c 79 20 62 61 73 st precisely bas
20a10 65 64 20 6f 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 ed on the follow
20a20 69 6e 67 20 73 65 71 75 65 6e 63 65 20 6f 66 20 ing sequence of
20a30 4e 6f 64 65 73 3a 3c 62 72 3e 0d 0a 3c 62 3e 3c Nodes:<br>..<b><
20a40 69 3e 4e 31 2d 4e 32 2d 4e 33 2d 4e 34 2d 4e 35 i>N1-N2-N3-N4-N5
20a50 2d 4e 36 2d 4e 37 2d 4e 38 2d 4e 39 2d 4e 31 30 -N6-N7-N8-N9-N10
20a60 2d 4e 31 31 2d 4e 31 32 2d 4e 31 33 2d 4e 31 34 -N11-N12-N13-N14
20a70 2d 4e 31 35 3c 2f 69 3e 3c 2f 62 3e 0d 0a 3c 62 -N15</i></b>..<b
20a80 72 3e 3c 62 72 3e 0d 0a 48 6f 77 65 76 65 72 2c r><br>..However,
20a90 20 61 73 20 79 6f 75 20 63 61 6e 20 65 61 73 69 as you can easi
20aa0 6c 79 20 6e 6f 74 69 63 65 2c 20 74 68 65 72 65 ly notice, there
20ab0 20 61 72 65 20 74 77 6f 20 73 74 72 69 6b 69 6e are two strikin
20ac0 67 20 65 78 63 65 70 74 69 6f 6e 73 3a 0d 0a 3c g exceptions:..<
20ad0 75 6c 3e 0d 0a 3c 6c 69 3e 54 68 65 20 3c 62 3e ul>..<li>The <b>
20ae0 66 69 72 73 74 3c 2f 62 3e 20 4c 69 6e 6b 20 28 first</b> Link (
20af0 63 6f 6e 6e 65 63 74 69 6e 67 20 3c 62 3e 4e 31 connecting <b>N1
20b00 3c 2f 62 3e 20 74 6f 20 3c 62 3e 4e 32 3c 2f 62 </b> to <b>N2</b
20b10 3e 29 20 69 73 20 6e 6f 74 20 63 6f 6d 70 6c 65 >) is not comple
20b20 74 65 6c 79 20 72 65 71 75 69 72 65 64 20 62 79 tely required by
20b30 20 74 68 65 20 53 6f 6c 75 74 69 6f 6e 2e 3c 62 the Solution.<b
20b40 72 3e 0d 0a 4a 75 73 74 20 61 20 73 6d 61 6c 6c r>..Just a small
20b50 20 70 6f 72 74 69 6f 6e 20 28 64 72 61 77 6e 20 portion (drawn
20b60 69 6e 20 72 65 64 29 20 6f 66 20 74 68 69 73 20 in red) of this
20b70 4c 69 6e 6b 20 69 73 20 65 66 66 65 63 74 69 76 Link is effectiv
20b80 65 6c 79 20 72 65 71 75 69 72 65 64 2e 3c 62 72 ely required.<br
20b90 3e 0d 0a 54 68 65 20 72 65 6d 61 69 6e 69 6e 67 >..The remaining
20ba0 20 70 61 72 74 20 28 64 72 61 77 6e 20 69 6e 20 part (drawn in
20bb0 67 72 61 79 29 20 69 73 6e 27 74 20 63 6f 76 65 gray) isn't cove
20bc0 72 65 64 20 62 79 20 74 68 65 20 53 6f 6c 75 74 red by the Solut
20bd0 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 45 ion.</li>..<li>E
20be0 78 61 63 74 6c 79 20 74 68 65 20 73 61 6d 65 20 xactly the same
20bf0 69 73 20 66 6f 72 20 74 68 65 20 3c 62 3e 6c 61 is for the <b>la
20c00 73 74 3c 2f 62 3e 20 4c 69 6e 6b 20 63 6f 6e 6e st</b> Link conn
20c10 65 63 74 69 6e 67 20 3c 62 3e 4e 31 34 3c 2f 62 ecting <b>N14</b
20c20 3e 20 74 6f 20 3c 62 3e 4e 31 35 3c 2f 62 3e 2e > to <b>N15</b>.
20c30 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 54 68 61 74 27 </li>..<li>That'
20c40 73 20 6e 6f 74 20 61 6c 6c 3a 20 74 68 65 72 65 s not all: there
20c50 20 61 72 65 20 74 77 6f 20 73 68 6f 72 74 20 73 are two short s
20c60 65 67 6d 65 6e 74 73 20 28 64 72 61 77 6e 20 69 egments (drawn i
20c70 6e 20 67 72 65 65 6e 29 20 63 6f 6e 6e 65 63 74 n green) connect
20c80 69 6e 67 20 3c 62 3e 50 66 72 6f 6d 3c 2f 62 3e ing <b>Pfrom</b>
20c90 20 61 6e 64 20 3c 62 3e 50 74 6f 3c 2f 62 3e 20 and <b>Pto</b>
20ca0 28 3c 69 3e 6f 72 69 67 69 6e 3c 2f 69 3e 20 61 (<i>origin</i> a
20cb0 6e 64 20 3c 69 3e 64 65 73 74 69 6e 61 74 69 6f nd <i>destinatio
20cc0 6e 3c 2f 69 3e 20 50 6f 69 6e 74 73 29 20 72 65 n</i> Points) re
20cd0 73 70 65 63 74 69 76 65 6c 79 20 74 6f 20 74 68 spectively to th
20ce0 65 20 3c 62 3e 66 69 72 73 74 3c 2f 62 3e 20 61 e <b>first</b> a
20cf0 6e 64 20 3c 62 3e 6c 61 73 74 3c 2f 62 3e 20 70 nd <b>last</b> p
20d00 61 72 74 69 61 6c 20 4c 69 6e 6b 73 2e 3c 2f 6c artial Links.</l
20d10 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d i>..</ul>..<br>.
20d20 0a 41 6c 6c 20 74 68 69 73 20 73 68 6f 75 6c 64 .All this should
20d30 6e 27 74 20 62 65 20 75 6e 65 78 70 65 63 74 65 n't be unexpecte
20d40 64 2c 20 62 65 63 61 75 73 65 20 69 74 20 73 69 d, because it si
20d50 6d 70 6c 79 20 69 73 20 74 68 65 20 6d 6f 73 74 mply is the most
20d60 20 6f 62 76 69 6f 75 73 20 64 69 72 65 63 74 20 obvious direct
20d70 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 20 74 consequence of t
20d80 68 65 20 76 65 72 79 20 62 61 73 69 63 20 61 73 he very basic as
20d90 73 75 6d 70 74 69 6f 6e 73 20 61 74 20 74 68 65 sumptions at the
20da0 20 62 61 73 69 73 20 6f 66 20 50 6f 69 6e 74 2d basis of Point-
20db0 74 6f 2d 50 6f 69 6e 74 20 71 75 65 72 69 65 73 to-Point queries
20dc0 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 4e 65 69 :..<ul>..<li>Nei
20dd0 74 68 65 72 20 74 68 65 20 3c 62 3e 50 6f 69 6e ther the <b>Poin
20de0 74 46 72 6f 6d 3c 2f 62 3e 20 6e 6f 72 20 74 68 tFrom</b> nor th
20df0 65 20 3c 62 3e 50 6f 69 6e 74 54 6f 3c 2f 62 3e e <b>PointTo</b>
20e00 20 61 72 65 20 72 65 71 75 69 72 65 64 20 74 6f are required to
20e10 20 65 78 61 63 74 6c 79 20 69 6e 74 65 72 73 65 exactly interse
20e20 63 74 20 61 20 3c 62 3e 4e 6f 64 65 3c 2f 62 3e ct a <b>Node</b>
20e30 2e 3c 62 72 3e 0d 0a 43 6f 6e 73 65 71 75 65 6e .<br>..Consequen
20e40 74 6c 79 20 74 68 65 20 3c 62 3e 66 69 72 73 74 tly the <b>first
20e50 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 6c 61 73 74 </b> and <b>last
20e60 3c 2f 62 3e 20 4c 69 6e 6b 73 20 6f 66 20 74 68 </b> Links of th
20e70 65 20 6f 76 65 72 61 6c 6c 20 50 6f 69 6e 74 2d e overall Point-
20e80 74 6f 2d 50 6f 69 6e 74 20 53 6f 6c 75 74 69 6f to-Point Solutio
20e90 6e 20 63 6f 75 6c 64 20 62 65 20 6f 6e 6c 79 20 n could be only
20ea0 70 61 72 74 69 61 6c 6c 79 20 69 6e 76 6f 6c 76 partially involv
20eb0 65 64 2e 3c 62 72 3e 0d 0a 49 6e 20 56 69 72 74 ed.<br>..In Virt
20ec0 75 61 6c 52 6f 75 74 69 6e 67 20 6a 61 72 67 6f ualRouting jargo
20ed0 6e 20 74 68 65 73 65 20 74 77 6f 20 3c 75 3e 3c n these two <u><
20ee0 69 3e 73 70 65 63 69 61 6c 20 69 74 65 6d 73 3c i>special items<
20ef0 2f 69 3e 3c 2f 75 3e 20 61 72 65 20 72 65 73 70 /i></u> are resp
20f00 65 63 74 69 76 65 6c 79 20 63 61 6c 6c 65 64 3a ectively called:
20f10 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 50 ..<ul>..<li><b>P
20f20 61 72 74 69 61 6c 20 4c 69 6e 6b 20 28 53 74 61 artial Link (Sta
20f30 72 74 29 3c 2f 62 3e 3c 2f 6c 69 3e 0d 0a 3c 6c rt)</b></li>..<l
20f40 69 3e 3c 62 3e 50 61 72 74 69 61 6c 20 4c 69 6e i><b>Partial Lin
20f50 6b 20 28 45 6e 64 29 3c 2f 62 3e 3c 2f 6c 69 3e k (End)</b></li>
20f60 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 20 0d 0a 3c ..</ul></li> ..<
20f70 6c 69 3e 42 6f 74 68 20 74 68 65 20 3c 62 3e 50 li>Both the <b>P
20f80 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 ointFrom</b> and
20f90 20 74 68 65 20 3c 62 3e 50 6f 69 6e 74 54 6f 3c the <b>PointTo<
20fa0 2f 62 3e 20 63 61 6e 20 6c 65 67 69 74 69 6d 61 /b> can legitima
20fb0 74 65 6c 79 20 68 61 76 65 20 61 6e 79 20 61 72 tely have any ar
20fc0 62 69 74 72 61 72 79 20 70 6f 73 69 74 69 6f 6e bitrary position
20fd0 20 61 6e 64 20 61 72 65 20 6e 65 76 65 72 20 72 and are never r
20fe0 65 71 75 69 72 65 64 20 74 6f 20 65 78 61 63 74 equired to exact
20ff0 6c 79 20 69 6e 74 65 72 73 65 63 74 20 61 20 3c ly intersect a <
21000 62 3e 4c 69 6e 6b 3c 2f 62 3e 2e 3c 62 72 3e 0d b>Link</b>.<br>.
21010 0a 54 68 69 73 20 63 61 6e 20 65 61 73 69 6c 79 .This can easily
21020 20 69 6d 70 6c 79 20 74 68 61 74 20 61 6e 20 3c imply that an <
21030 75 3e 3c 69 3e 65 78 74 72 61 20 73 68 6f 72 74 u><i>extra short
21040 20 6c 65 67 3c 2f 69 3e 3c 2f 75 3e 20 63 6f 75 leg</i></u> cou
21050 6c 64 20 62 65 20 72 65 71 75 69 72 65 64 20 69 ld be required i
21060 6e 20 6f 72 64 65 72 20 74 6f 20 63 6f 6e 6e 65 n order to conne
21070 63 74 20 74 68 65 20 46 72 6f 6d 2f 54 6f 20 50 ct the From/To P
21080 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 63 6f 72 oints to the cor
21090 72 65 73 70 6f 6e 64 69 6e 67 20 4c 69 6e 6b 73 responding Links
210a0 2e 3c 62 72 3e 0d 0a 49 6e 20 56 69 72 75 74 61 .<br>..In Viruta
210b0 6c 52 6f 75 74 69 6e 67 20 6a 61 72 67 6f 6e 20 lRouting jargon
210c0 74 68 65 73 65 20 74 77 6f 20 3c 75 3e 3c 69 3e these two <u><i>
210d0 73 70 65 63 69 61 6c 20 69 74 65 6d 73 3c 2f 69 special items</i
210e0 3e 3c 2f 75 3e 20 61 72 65 20 72 65 73 70 65 63 ></u> are respec
210f0 74 69 76 65 6c 79 20 63 61 6c 6c 65 64 3a 0d 0a tively called:..
21100 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 49 6e 67 <ul>..<li><b>Ing
21110 72 65 73 73 20 50 61 74 68 3c 2f 62 3e 3c 2f 6c ress Path</b></l
21120 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 45 67 72 65 73 i>..<li><b>Egres
21130 73 20 50 61 74 68 3c 2f 62 3e 3c 2f 6c 69 3e 0d s Path</b></li>.
21140 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 20 0d 0a 3c 6c .</ul></li> ..<l
21150 69 3e 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 6e i><u>Note</u>: n
21160 6f 6e 65 20 6f 66 20 74 68 65 6d 20 69 73 20 61 one of them is a
21170 20 73 74 72 69 63 74 6c 79 20 6d 61 6e 64 61 74 strictly mandat
21180 6f 72 79 20 69 74 65 6d 3a 0d 0a 3c 75 6c 3e 0d ory item:..<ul>.
21190 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 49 6e 67 72 .<li>the <b>Ingr
211a0 65 73 73 3c 2f 62 3e 20 61 6e 64 2f 6f 72 20 3c ess</b> and/or <
211b0 62 3e 45 67 72 65 73 73 20 50 61 74 68 73 3c 2f b>Egress Paths</
211c0 62 3e 20 61 72 65 20 6e 6f 74 20 72 65 71 75 69 b> are not requi
211d0 72 65 64 20 77 68 65 6e 20 74 68 65 20 63 6f 72 red when the cor
211e0 72 65 73 70 6f 6e 64 69 6e 67 20 50 6f 69 6e 74 responding Point
211f0 20 65 78 61 63 74 6c 79 20 69 6e 74 65 72 73 65 exactly interse
21200 63 74 73 20 61 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e cts a Link.</li>
21210 0d 0a 3c 6c 69 3e 3c 62 3e 50 61 72 74 69 61 6c ..<li><b>Partial
21220 20 4c 69 6e 6b 73 3c 2f 62 3e 20 28 65 69 74 68 Links</b> (eith
21230 65 72 20 3c 62 3e 28 53 74 61 72 74 29 3c 2f 62 er <b>(Start)</b
21240 3e 20 6f 72 20 3c 62 3e 28 45 6e 64 28 3c 2f 62 > or <b>(End(</b
21250 3e 29 20 61 72 65 20 6e 65 76 65 72 20 72 65 71 >) are never req
21260 75 69 72 65 64 20 77 68 65 6e 20 74 68 65 20 63 uired when the c
21270 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 50 6f 69 orresponding Poi
21280 6e 74 20 65 78 61 63 74 6c 79 20 6d 61 74 63 68 nt exactly match
21290 65 73 20 61 20 4e 6f 64 65 2e 3c 2f 6c 69 3e 0d es a Node.</li>.
212a0 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 .</ul></li>..</u
212b0 6c 3e 0d 0a 3c 2f 74 64 3e 0d 0a 3c 74 64 3e 0d l>..</td>..<td>.
212c0 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 .<img src="https
212d0 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e ://www.gaia-gis.
212e0 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 it/gaia-sins/rou
212f0 74 69 6e 67 2d 66 69 67 73 2f 70 32 70 2d 73 74 ting-figs/p2p-st
21300 72 75 63 74 2e 70 6e 67 22 20 61 6c 74 3d 22 70 ruct.png" alt="p
21310 32 70 2d 73 74 72 75 63 74 22 3e 0d 0a 3c 2f 74 2p-struct">..</t
21320 64 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 d></tr>..<tr><td
21330 3e 0d 0a 41 20 6d 6f 72 65 20 63 6f 6d 70 72 65 >..A more compre
21340 68 65 6e 73 69 76 65 20 61 6e 64 20 64 65 74 61 hensive and deta
21350 69 6c 65 64 20 65 78 70 6c 61 6e 61 74 69 6f 6e iled explanation
21360 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 73 69 based on the si
21370 64 65 20 66 69 67 75 72 65 3a 0d 0a 3c 75 6c 3e de figure:..<ul>
21380 0d 0a 3c 6c 69 3e 3c 62 3e 4c 31 3c 2f 62 3e 20 ..<li><b>L1</b>
21390 69 73 20 61 20 4c 69 6e 6b 20 63 6f 6e 6e 65 63 is a Link connec
213a0 74 69 6e 67 20 4e 6f 64 65 73 20 3c 62 3e 4e 31 ting Nodes <b>N1
213b0 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 32 3c 2f </b> and <b>N2</
213c0 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 b>.</li>..<li><b
213d0 3e 50 74 3c 2f 62 3e 20 69 73 20 6f 6e 65 20 62 >Pt</b> is one b
213e0 65 74 77 65 65 6e 20 50 6f 69 6e 74 46 72 6f 6d etween PointFrom
213f0 20 6f 72 20 50 6f 69 6e 74 54 6f 2e 3c 2f 6c 69 or PointTo.</li
21400 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a >..</ul>..<br>..
21410 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 54 68 65 20 50 6f <ol>..<li>The Po
21420 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 69 6e 74 int-to-Point int
21430 65 72 6e 61 6c 20 6c 6f 67 69 63 20 77 69 6c 6c ernal logic will
21440 20 73 74 61 72 74 20 62 79 20 69 64 65 6e 74 69 start by identi
21450 66 79 69 6e 67 20 3c 62 3e 69 3c 2f 62 3e 2c 0d fying <b>i</b>,.
21460 0a 74 68 61 74 20 69 73 20 74 68 65 20 50 6f 69 .that is the Poi
21470 6e 74 20 69 6e 74 65 72 73 65 63 74 69 6e 67 20 nt intersecting
21480 3c 62 3e 4c 31 3c 2f 62 3e 20 61 6e 64 20 70 72 <b>L1</b> and pr
21490 65 73 65 6e 74 69 6e 67 20 74 68 65 20 6d 69 6e esenting the min
214a0 69 6d 75 6d 20 64 69 73 74 61 6e 63 65 20 62 65 imum distance be
214b0 74 77 65 65 6e 20 74 68 65 20 4c 69 6e 6b 20 61 tween the Link a
214c0 6e 64 20 3c 62 3e 50 74 3c 2f 62 3e 0d 0a 28 63 nd <b>Pt</b>..(c
214d0 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 orresponding to
214e0 74 68 65 20 72 65 73 75 6c 74 20 72 65 74 75 72 the result retur
214f0 6e 65 64 20 62 79 20 63 61 6c 6c 69 6e 67 20 74 ned by calling t
21500 68 65 20 3c 62 3e 53 54 5f 4c 69 6e 65 5f 4c 6f he <b>ST_Line_Lo
21510 63 61 74 65 5f 50 6f 69 6e 74 28 29 3c 2f 62 3e cate_Point()</b>
21520 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 29 2e 3c SQL function).<
21530 2f 6c 69 3e 0d 0a 3c 6c 69 3e 4e 6f 77 20 74 68 /li>..<li>Now th
21540 65 20 4c 69 6e 6b 20 3c 62 3e 4c 31 3c 2f 62 3e e Link <b>L1</b>
21550 20 77 69 6c 6c 20 62 65 20 73 70 6c 69 74 20 69 will be split i
21560 6e 20 74 77 6f 20 68 61 6c 76 65 73 20 3c 62 3e n two halves <b>
21570 4c 31 2d 61 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e L1-a</b> and <b>
21580 4c 31 2d 62 3c 2f 62 3e 20 61 63 63 6f 72 64 69 L1-b</b> accordi
21590 6e 67 6c 79 20 74 6f 20 74 68 65 20 70 6f 73 69 ngly to the posi
215a0 74 69 6f 6e 20 6f 66 20 3c 62 3e 69 3c 2f 62 3e tion of <b>i</b>
215b0 0d 0a 28 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 ..(corresponding
215c0 20 74 6f 20 74 68 65 20 72 65 73 75 6c 74 73 20 to the results
215d0 72 65 74 75 72 6e 65 64 20 62 79 20 63 61 6c 6c returned by call
215e0 69 6e 67 20 74 68 65 20 3c 62 3e 53 54 5f 4c 69 ing the <b>ST_Li
215f0 6e 65 5f 53 75 62 73 74 72 69 6e 67 28 29 3c 2f ne_Substring()</
21600 62 3e 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 29 b> SQL function)
21610 2e 3c 62 72 3e 0d 0a 42 6f 74 68 20 68 61 6c 76 .<br>..Both halv
21620 65 73 20 77 69 6c 6c 20 62 65 20 6e 6f 77 20 63 es will be now c
21630 6f 6e 73 69 64 65 72 65 64 20 61 73 20 70 6f 73 onsidered as pos
21640 73 69 62 6c 65 20 3c 62 3e 50 61 72 74 69 61 6c sible <b>Partial
21650 20 4c 69 6e 6b 73 20 28 53 74 61 72 74 29 20 63 Links (Start) c
21660 61 6e 64 69 64 61 74 65 73 3c 2f 62 3e 20 6c 65 andidates</b> le
21670 61 64 69 6e 67 20 72 65 73 70 65 63 74 69 76 65 ading respective
21680 6c 79 20 74 6f 20 3c 62 3e 4e 31 3c 2f 62 3e 20 ly to <b>N1</b>
21690 6f 72 20 3c 62 3e 4e 32 3c 2f 62 3e 3b 0d 0a 64 or <b>N2</b>;..d
216a0 69 72 65 63 74 69 6f 6e 73 20 77 69 6c 6c 20 62 irections will b
216b0 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 e automatically
216c0 69 6e 76 65 72 74 65 64 20 61 73 20 72 65 71 75 inverted as requ
216d0 69 72 65 64 2c 20 62 75 74 20 6f 6e 6c 79 20 69 ired, but only i
216e0 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 3c f there are no <
216f0 62 3e 6f 6e 65 2d 77 61 79 3c 2f 62 3e 20 66 6f b>one-way</b> fo
21700 72 62 69 64 64 69 6e 67 20 72 65 73 74 72 69 63 rbidding restric
21710 74 69 6f 6e 73 2e 3c 62 72 3e 0d 0a 28 74 68 65 tions.<br>..(the
21720 20 64 69 72 65 63 74 69 6f 6e 73 20 77 69 6c 6c directions will
21730 20 62 65 20 6f 62 76 69 6f 75 73 6c 79 20 69 6e be obviously in
21740 76 65 72 74 65 64 20 69 6e 20 74 68 65 20 63 61 verted in the ca
21750 73 65 20 6f 66 20 3c 62 3e 50 61 72 74 69 61 6c se of <b>Partial
21760 20 4c 69 6e 6b 73 20 28 45 6e 64 29 3c 2f 62 3e Links (End)</b>
21770 20 2f 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e / <b>NodeTo</b>
21780 29 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 41 6e 64 20 )</li>..<li>And
21790 66 69 6e 61 6c 6c 79 20 61 20 73 74 72 61 69 67 finally a straig
217a0 68 74 20 73 65 67 6d 65 6e 74 20 3c 62 3e 70 3c ht segment <b>p<
217b0 2f 62 3e 20 63 6f 6e 6e 65 63 74 69 6e 67 20 3c /b> connecting <
217c0 62 3e 50 74 3c 2f 62 3e 20 74 6f 20 3c 62 3e 69 b>Pt</b> to <b>i
217d0 3c 2f 62 3e 20 77 69 6c 6c 20 62 65 20 63 6f 6e </b> will be con
217e0 73 74 72 75 63 74 65 64 2e 0d 0a 53 6f 20 3c 62 structed...So <b
217f0 3e 70 3c 2f 62 3e 20 65 78 61 63 74 6c 79 20 63 >p</b> exactly c
21800 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 68 orresponds to th
21810 65 20 3c 62 3e 49 6e 67 72 65 73 73 20 50 61 74 e <b>Ingress Pat
21820 68 3c 2f 62 3e 20 69 66 20 3c 62 3e 50 74 3c 2f h</b> if <b>Pt</
21830 62 3e 20 69 73 20 3c 62 3e 50 6f 69 6e 74 46 72 b> is <b>PointFr
21840 6f 6d 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 28 74 68 om</b>.<br>..(th
21850 65 20 64 69 72 65 63 74 69 6f 6e 20 73 68 6f 75 e direction shou
21860 6c 64 20 62 65 20 6f 62 76 69 6f 75 73 6c 79 20 ld be obviously
21870 69 6e 76 65 72 74 65 64 20 69 6e 20 74 68 65 20 inverted in the
21880 63 61 73 65 20 6f 66 20 74 68 65 20 3c 62 3e 45 case of the <b>E
21890 67 72 65 73 73 20 50 61 74 68 3c 2f 62 3e 20 2f gress Path</b> /
218a0 20 3c 62 3e 50 6f 69 6e 74 54 6f 3c 2f 62 3e 29 <b>PointTo</b>)
218b0 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 2f </li>..</ol>..</
218c0 74 64 3e 0d 0a 3c 74 64 3e 0d 0a 3c 69 6d 67 20 td>..<td>..<img
218d0 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 src="https://www
218e0 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 .gaia-gis.it/gai
218f0 61 2d 73 69 6e 73 2f 72 6f 75 74 69 6e 67 2d 66 a-sins/routing-f
21900 69 67 73 2f 73 70 6c 69 74 2d 6c 69 6e 6b 2e 70 igs/split-link.p
21910 6e 67 22 20 61 6c 74 3d 22 70 32 70 2d 73 74 72 ng" alt="p2p-str
21920 75 63 74 22 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 uct">..</td></tr
21930 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 >..</table>..<br
21940 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f >..<table bgcolo
21950 72 3d 22 23 66 66 62 30 36 30 22 20 63 65 6c 6c r="#ffb060" cell
21960 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c spacing="10" cel
21970 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 lpadding="6"><tr
21980 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 57 61 72 6e 69 ><td>..<h3>Warni
21990 6e 67 3c 2f 68 33 3e 0d 0a 56 69 72 74 75 61 6c ng</h3>..Virtual
219a0 52 6f 75 74 69 6e 67 20 77 68 65 6e 20 73 6f 6c Routing when sol
219b0 76 69 6e 67 20 61 20 50 6f 69 6e 74 2d 74 6f 2d ving a Point-to-
219c0 50 72 6f 62 6c 65 6d 20 72 65 71 75 69 72 65 73 Problem requires
219d0 20 74 6f 20 67 65 74 20 61 20 70 72 65 63 69 73 to get a precis
219e0 65 20 65 73 74 69 6d 61 74 69 6f 6e 20 6f 66 20 e estimation of
219f0 3c 62 3e 43 6f 73 74 73 3c 2f 62 3e 20 72 65 6c <b>Costs</b> rel
21a00 61 74 65 64 20 74 6f 20 3c 62 3e 49 6e 67 72 65 ated to <b>Ingre
21a10 73 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 45 67 ss</b> and <b>Eg
21a20 72 65 73 73 20 50 61 74 68 73 3c 2f 62 3e 20 61 ress Paths</b> a
21a30 6e 64 20 74 6f 20 3c 62 3e 50 61 72 74 69 61 6c nd to <b>Partial
21a40 20 4c 69 6e 6b 73 3c 2f 62 3e 2e 3c 62 72 3e 0d Links</b>.<br>.
21a50 0a 42 75 74 20 56 69 72 74 75 61 6c 52 6f 75 74 .But VirtualRout
21a60 69 6e 67 20 69 73 20 63 6f 6d 70 6c 65 74 65 6c ing is completel
21a70 79 20 75 6e 61 62 6c 65 20 74 6f 20 63 6f 6d 70 y unable to comp
21a80 75 74 65 20 63 6f 6d 70 6c 65 78 20 28 61 6e 64 ute complex (and
21a90 20 75 6e 73 70 65 63 69 66 69 65 64 29 20 43 6f unspecified) Co
21aa0 73 74 20 66 6f 72 6d 75 6c 61 65 2c 20 61 6e 64 st formulae, and
21ab0 20 63 6f 6e 73 65 71 75 65 6e 74 6c 79 20 69 74 consequently it
21ac0 20 63 61 6e 20 73 69 6d 70 6c 79 20 61 73 73 75 can simply assu
21ad0 6d 65 20 61 20 43 6f 73 74 20 63 6f 72 72 65 73 me a Cost corres
21ae0 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 47 ponding to the G
21af0 65 6f 6d 65 74 72 69 63 20 4c 65 6e 67 74 68 20 eometric Length
21b00 6f 66 20 73 75 63 68 20 69 74 65 6d 73 2e 3c 62 of such items.<b
21b10 72 3e 3c 62 72 3e 0d 0a 3c 62 3e 43 6f 6e 63 6c r><br>..<b>Concl
21b20 75 73 69 6f 6e 3c 2f 62 3e 3a 20 6f 6e 6c 79 20 usion</b>: only
21b30 4e 65 74 77 6f 72 6b 73 20 62 61 73 65 64 20 6f Networks based o
21b40 6e 20 3c 62 3e 43 6f 73 74 73 3c 2f 62 3e 20 63 n <b>Costs</b> c
21b50 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 orresponding to
21b60 3c 62 3e 47 65 6f 6d 65 74 72 69 63 20 4c 65 6e <b>Geometric Len
21b70 67 74 68 73 3c 2f 62 3e 20 63 61 6e 20 65 66 66 gths</b> can eff
21b80 65 63 74 69 76 65 6c 79 20 73 75 70 70 6f 72 74 ectively support
21b90 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 Point-to-Point
21ba0 71 75 65 72 69 65 73 2e 3c 62 72 3e 0d 0a 41 6e queries.<br>..An
21bb0 79 20 64 69 66 66 65 72 65 6e 74 20 4e 65 74 77 y different Netw
21bc0 6f 72 6b 20 63 6f 6e 66 69 67 75 72 61 74 69 6f ork configuratio
21bd0 6e 20 77 69 6c 6c 20 73 75 72 65 6c 79 20 6c 65 n will surely le
21be0 61 64 20 74 6f 20 77 72 6f 6e 67 20 61 6e 64 20 ad to wrong and
21bf0 69 6e 63 6f 6e 73 69 73 74 65 6e 74 20 72 65 73 inconsistent res
21c00 75 6c 74 73 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d ults...<br><br>.
21c10 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 .</td></tr></tab
21c20 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 4c le>..<br><br>..L
21c30 65 74 27 73 20 6e 6f 77 20 65 78 61 6d 69 6e 65 et's now examine
21c40 20 61 20 70 72 61 63 74 69 63 61 6c 20 65 78 61 a practical exa
21c50 6d 70 6c 65 20 6f 66 20 50 6f 69 6e 74 2d 74 6f mple of Point-to
21c60 2d 50 6f 69 6e 74 20 73 6f 6c 76 69 6e 67 20 75 -Point solving u
21c70 73 69 6e 67 20 56 69 72 74 75 61 6c 52 6f 75 74 sing VirtualRout
21c80 69 6e 67 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e ing...<verbatim>
21c90 0d 0a 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 ..SELECT Algorit
21ca0 68 6d 2c 20 52 65 71 75 65 73 74 2c 20 4f 70 74 hm, Request, Opt
21cb0 69 6f 6e 73 2c 20 52 6f 75 74 65 49 64 2c 20 52 ions, RouteId, R
21cc0 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c outeRow, Role, L
21cd0 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 inkRowid, NodeFr
21ce0 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 50 6f 69 6e om, NodeTo, Poin
21cf0 74 46 72 6f 6d 2c 20 50 6f 69 6e 74 54 6f 2c 20 tFrom, PointTo,
21d00 54 6f 6c 65 72 61 6e 63 65 2c 20 43 6f 73 74 2c Tolerance, Cost,
21d10 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d Geometry, Name.
21d20 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 .FROM byfoot..WH
21d30 45 52 45 20 50 6f 69 6e 74 46 72 6f 6d 20 3d 20 ERE PointFrom =
21d40 28 53 45 4c 45 43 54 20 67 65 6f 6d 20 46 52 4f (SELECT geom FRO
21d50 4d 20 68 6f 75 73 65 5f 6e 72 5f 76 77 20 57 48 M house_nr_vw WH
21d60 45 52 45 20 6d 75 6e 69 63 69 70 61 6c 69 74 79 ERE municipality
21d70 20 3d 20 27 41 52 45 5a 5a 4f 27 20 41 4e 44 20 = 'AREZZO' AND
21d80 61 64 64 72 65 73 73 20 3d 20 27 56 49 41 20 44 address = 'VIA D
21d90 45 27 27 20 43 45 4e 43 49 20 31 33 27 29 0d 0a E'' CENCI 13')..
21da0 20 20 20 20 41 4e 44 20 50 6f 69 6e 74 54 6f 20 AND PointTo
21db0 3d 20 28 53 45 4c 45 43 54 20 67 65 6f 6d 20 46 = (SELECT geom F
21dc0 52 4f 4d 20 68 6f 75 73 65 5f 6e 72 5f 76 77 20 ROM house_nr_vw
21dd0 57 48 45 52 45 20 6d 75 6e 69 63 69 70 61 6c 69 WHERE municipali
21de0 74 79 20 3d 20 27 41 52 45 5a 5a 4f 27 20 41 4e ty = 'AREZZO' AN
21df0 44 20 61 64 64 72 65 73 73 20 3d 20 27 56 49 41 D address = 'VIA
21e00 20 41 4e 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e ANTONIO GUADAGN
21e10 4f 4c 49 20 31 39 2f 42 27 29 3b 0d 0a 3c 2f 76 OLI 19/B');..</v
21e20 65 72 62 61 74 69 6d 3e 0d 0a 41 20 3c 62 3e 50 erbatim>..A <b>P
21e30 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 3c 2f 62 oint-to-Point</b
21e40 3e 20 71 75 65 72 79 20 68 61 73 20 74 68 65 20 > query has the
21e50 73 61 6d 65 20 66 6f 72 6d 20 6f 66 20 61 20 3c same form of a <
21e60 62 3e 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 b>single-destina
21e70 74 69 6f 6e 20 53 68 6f 72 74 65 73 74 20 50 61 tion Shortest Pa
21e80 74 68 3c 2f 62 3e 20 71 75 65 72 79 2c 20 65 78 th</b> query, ex
21e90 63 65 70 74 20 74 68 61 74 20 3c 62 3e 4e 6f 64 cept that <b>Nod
21ea0 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 20 3c 62 eFrom</b> and <b
21eb0 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 61 72 65 20 >NodeTo</b> are
21ec0 6e 6f 77 20 72 65 70 6c 61 63 65 64 20 62 79 20 now replaced by
21ed0 3c 62 3e 50 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e <b>PointFrom</b>
21ee0 20 61 6e 64 20 3c 62 3e 50 6f 69 6e 74 54 6f 3c and <b>PointTo<
21ef0 2f 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 /b>.<br>..<u>Not
21f00 65 3c 2f 75 3e 20 74 68 65 20 73 61 6d 70 6c 65 e</u> the sample
21f10 20 44 42 2d 66 69 6c 65 20 73 75 70 70 6f 72 74 DB-file support
21f20 73 20 3c 62 3e 48 6f 75 73 65 20 4e 75 6d 62 65 s <b>House Numbe
21f30 72 73 3c 2f 62 3e 2c 20 73 6f 20 79 6f 75 20 63 rs</b>, so you c
21f40 61 6e 20 64 69 72 65 63 74 6c 79 20 75 73 65 20 an directly use
21f50 48 6f 75 73 65 20 4e 75 6d 62 65 72 20 63 6f 6f House Number coo
21f60 72 64 69 6e 61 74 65 73 20 61 73 20 72 65 66 65 rdinates as refe
21f70 72 65 6e 63 65 20 50 6f 69 6e 74 73 2e 0d 0a 3c rence Points...<
21f80 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 20 66 6f 6c br><br>..The fol
21f90 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 73 68 6f lowing table sho
21fa0 77 73 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 ws the resultset
21fb0 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 returned by the
21fc0 20 61 62 6f 76 65 20 50 6f 69 6e 74 2d 74 6f 2d above Point-to-
21fd0 50 6f 69 6e 74 20 71 75 65 72 79 2e 3c 62 72 3e Point query.<br>
21fe0 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 <br>..<table bor
21ff0 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d der="1" bgcolor=
22000 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 "#ffffcf" cellsp
22010 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 acing="4" cellpa
22020 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e dding="6">..<tr>
22030 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
22040 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c d0a0">Algorithm<
22050 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
22060 22 23 64 30 64 30 61 30 22 3e 52 65 71 75 65 73 "#d0d0a0">Reques
22070 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f t</th><th bgcolo
22080 72 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 r="#d0d0a0">Opti
22090 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f ons</th><th bgco
220a0 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f lor="#d0d0a0">Ro
220b0 75 74 65 49 64 3c 2f 74 68 3e 3c 74 68 20 62 67 uteId</th><th bg
220c0 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
220d0 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 RouteRow</th><th
220e0 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
220f0 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 0">Role</th><th
22100 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
22110 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e ">LinkRowid</th>
22120 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
22130 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f d0a0">NodeFrom</
22140 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
22150 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c #d0d0a0">NodeTo<
22160 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
22170 22 23 64 30 64 30 61 30 22 3e 50 6f 69 6e 74 46 "#d0d0a0">PointF
22180 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f rom</th><th bgco
22190 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 50 6f lor="#d0d0a0">Po
221a0 69 6e 74 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 intTo</th><th bg
221b0 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
221c0 54 6f 6c 65 72 61 6e 63 65 3c 2f 74 68 3e 3c 74 Tolerance</th><t
221d0 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
221e0 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 a0">Cost</th><th
221f0 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
22200 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 0">Geometry</th>
22210 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
22220 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c d0a0">Name</th><
22230 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
22240 44 69 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 Dijkstra</td><td
22250 3e 50 6f 69 6e 74 32 50 6f 69 6e 74 20 50 61 74 >Point2Point Pat
22260 68 3c 2f 74 64 3e 3c 74 64 3e 46 75 6c 6c 3c 2f h</td><td>Full</
22270 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
22280 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 ght">0</td><td a
22290 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
222a0 74 64 3e 3c 74 64 3e 50 6f 69 6e 74 32 50 6f 69 td><td>Point2Poi
222b0 6e 74 20 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e nt Solution</td>
222c0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
222d0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
222e0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 LL</td><td>BLOB
222f0 73 7a 3d 36 38 20 47 45 4f 4d 45 54 52 59 3c 2f sz=68 GEOMETRY</
22300 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 36 td><td>BLOB sz=6
22310 38 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 8 GEOMETRY</td><
22320 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22330 3e 32 30 2e 30 30 30 30 30 30 3c 2f 74 64 3e 3c >20.000000</td><
22340 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22350 3e 36 35 32 2e 38 31 35 31 33 39 3c 2f 74 64 3e >652.815139</td>
22360 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 31 35 35 32 <td>BLOB sz=1552
22370 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 GEOMETRY</td><t
22380 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 d>NULL</td>..</t
22390 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
223a0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
223b0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
223c0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
223d0 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">0</td><td ali
223e0 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 gn="right">1</td
223f0 3e 3c 74 64 3e 49 6e 67 72 65 73 73 20 50 61 74 ><td>Ingress Pat
22400 68 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f h</td><td>NULL</
22410 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22420 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
22430 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
22440 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
22450 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
22460 69 67 68 74 22 3e 32 2e 33 30 31 36 38 37 3c 2f ight">2.301687</
22470 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22480 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c <td>NULL</td>..<
22490 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
224a0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
224b0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
224c0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
224d0 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 ght">0</td><td a
224e0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f lign="right">2</
224f0 74 64 3e 3c 74 64 3e 50 61 72 74 69 61 6c 20 4c td><td>Partial L
22500 69 6e 6b 20 28 53 74 61 72 74 29 3c 2f 74 64 3e ink (Start)</td>
22510 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
22520 22 3e 32 32 34 32 36 34 3c 2f 74 64 3e 3c 74 64 ">224264</td><td
22530 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
22540 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 36 ign="right">1826
22550 33 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 30</td><td>NULL<
22560 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
22570 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22580 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
22590 34 36 2e 30 38 32 37 36 31 3c 2f 74 64 3e 3c 74 46.082761</td><t
225a0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
225b0 49 41 20 44 45 27 20 43 45 4e 43 49 3c 2f 74 64 IA DE' CENCI</td
225c0 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
225d0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
225e0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
225f0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
22600 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
22610 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22620 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >3</td><td>Link<
22630 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
22640 69 67 68 74 22 3e 32 32 33 37 35 38 3c 2f 74 64 ight">223758</td
22650 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
22660 74 22 3e 31 38 32 36 33 30 3c 2f 74 64 3e 3c 74 t">182630</td><t
22670 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
22680 31 38 32 36 32 39 3c 2f 74 64 3e 3c 74 64 3e 4e 182629</td><td>N
22690 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
226a0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
226b0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
226c0 68 74 22 3e 32 34 2e 31 39 38 31 31 35 3c 2f 74 ht">24.198115</t
226d0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
226e0 74 64 3e 43 4f 52 53 4f 20 49 54 41 4c 49 41 3c td>CORSO ITALIA<
226f0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
22700 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
22710 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
22720 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
22730 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
22740 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
22750 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">4</td><td>Li
22760 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
22770 3d 22 72 69 67 68 74 22 3e 32 32 35 35 31 32 3c ="right">225512<
22780 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
22790 69 67 68 74 22 3e 31 38 32 36 32 39 3c 2f 74 64 ight">182629</td
227a0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
227b0 74 22 3e 31 38 32 39 33 33 3c 2f 74 64 3e 3c 74 t">182933</td><t
227c0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
227d0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
227e0 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
227f0 72 69 67 68 74 22 3e 33 34 2e 31 38 34 31 39 34 right">34.184194
22800 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
22810 64 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 54 41 4c d><td>CORSO ITAL
22820 49 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a IA</td>..</tr>..
22830 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
22840 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22850 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
22860 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 align="right">0
22870 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
22880 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 right">5</td><td
22890 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
228a0 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 35 ign="right">2255
228b0 31 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 11</td><td align
228c0 3d 22 72 69 67 68 74 22 3e 31 38 32 39 33 33 3c ="right">182933<
228d0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
228e0 69 67 68 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 ight">181999</td
228f0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22900 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
22910 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
22920 6e 3d 22 72 69 67 68 74 22 3e 34 39 2e 32 34 31 n="right">49.241
22930 37 33 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 735</td><td>NULL
22940 3c 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 </td><td>CORSO I
22950 54 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 TALIA</td>..</tr
22960 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
22970 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
22980 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22990 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
229a0 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">0</td><td alig
229b0 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 3e n="right">6</td>
229c0 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
229d0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
229e0 32 32 36 33 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 22635</td><td al
229f0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 ign="right">1819
22a00 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 99</td><td align
22a10 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 38 3c ="right">181998<
22a20 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
22a30 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22a40 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
22a50 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 31 lign="right">101
22a60 2e 36 32 39 37 35 30 3c 2f 74 64 3e 3c 74 64 3e .629750</td><td>
22a70 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 43 4f 52 NULL</td><td>COR
22a80 53 4f 20 49 54 41 4c 49 41 3c 2f 74 64 3e 0d 0a SO ITALIA</td>..
22a90 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
22aa0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
22ab0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
22ac0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
22ad0 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 ight">0</td><td
22ae0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 3c align="right">7<
22af0 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
22b00 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
22b10 74 22 3e 32 32 34 37 38 30 3c 2f 74 64 3e 3c 74 t">224780</td><t
22b20 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
22b30 31 38 31 39 39 38 3c 2f 74 64 3e 3c 74 64 20 61 181998</td><td a
22b40 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
22b50 35 36 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 560</td><td>NULL
22b60 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
22b70 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
22b80 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22b90 3e 37 33 2e 37 33 33 35 37 32 3c 2f 74 64 3e 3c >73.733572</td><
22ba0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
22bb0 56 49 41 20 44 45 4c 4c 27 41 4e 46 49 54 45 41 VIA DELL'ANFITEA
22bc0 54 52 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d TRO</td>..</tr>.
22bd0 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
22be0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
22bf0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22c00 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
22c10 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
22c20 22 72 69 67 68 74 22 3e 38 3c 2f 74 64 3e 3c 74 "right">8</td><t
22c30 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
22c40 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 lign="right">225
22c50 38 32 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 827</td><td alig
22c60 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 35 36 30 n="right">183560
22c70 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
22c80 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 right">183286</t
22c90 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
22ca0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
22cb0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
22cc0 67 6e 3d 22 72 69 67 68 74 22 3e 34 32 2e 33 30 gn="right">42.30
22cd0 39 35 36 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 9564</td><td>NUL
22ce0 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 44 45 L</td><td>VIA DE
22cf0 4c 4c 27 41 4e 46 49 54 45 41 54 52 4f 3c 2f 74 LL'ANFITEATRO</t
22d00 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
22d10 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
22d20 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
22d30 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
22d40 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
22d50 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
22d60 22 3e 39 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">9</td><td>Link
22d70 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
22d80 72 69 67 68 74 22 3e 32 32 34 38 39 37 3c 2f 74 right">224897</t
22d90 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
22da0 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c ht">183286</td><
22db0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22dc0 3e 31 38 33 31 32 38 3c 2f 74 64 3e 3c 74 64 3e >183128</td><td>
22dd0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
22de0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
22df0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
22e00 67 68 74 22 3e 37 32 2e 34 34 34 36 30 39 3c 2f ght">72.444609</
22e10 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22e20 3c 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 <td>VIA MARGARIT
22e30 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ONE</td>..</tr>.
22e40 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
22e50 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
22e60 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22e70 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
22e80 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
22e90 22 72 69 67 68 74 22 3e 31 30 3c 2f 74 64 3e 3c "right">10</td><
22ea0 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
22eb0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
22ec0 34 32 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4232</td><td ali
22ed0 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 31 32 gn="right">18312
22ee0 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 8</td><td align=
22ef0 22 72 69 67 68 74 22 3e 31 38 32 38 39 30 3c 2f "right">182890</
22f00 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22f10 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
22f20 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
22f30 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 33 2e ign="right">103.
22f40 36 31 32 32 32 31 3c 2f 74 64 3e 3c 74 64 3e 4e 612221</td><td>N
22f50 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
22f60 4e 49 43 43 4f 4c 4f 27 20 41 52 45 54 49 4e 4f NICCOLO' ARETINO
22f70 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
22f80 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
22f90 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22fa0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
22fb0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
22fc0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
22fd0 67 68 74 22 3e 31 31 3c 2f 74 64 3e 3c 74 64 3e ght">11</td><td>
22fe0 50 61 72 74 69 61 6c 20 4c 69 6e 6b 20 28 45 6e Partial Link (En
22ff0 64 29 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e d)</td><td align
23000 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 39 3c ="right">224019<
23010 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
23020 69 67 68 74 22 3e 31 38 32 38 39 30 3c 2f 74 64 ight">182890</td
23030 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
23040 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
23050 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
23060 3c 2f 74 64 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e </td>..<td align
23070 3d 22 72 69 67 68 74 22 3e 39 35 2e 37 36 30 32 ="right">95.7602
23080 32 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 22</td><td>NULL<
23090 2f 74 64 3e 3c 74 64 3e 56 49 41 20 41 4e 54 4f /td><td>VIA ANTO
230a0 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c 49 3c 2f NIO GUADAGNOLI</
230b0 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
230c0 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
230d0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
230e0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
230f0 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
23100 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
23110 74 22 3e 31 32 3c 2f 74 64 3e 3c 74 64 3e 45 67 t">12</td><td>Eg
23120 72 65 73 73 20 50 61 74 68 3c 2f 74 64 3e 3c 74 ress Path</td><t
23130 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
23140 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
23150 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
23160 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
23170 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
23180 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e align="right">7.
23190 33 31 36 37 30 39 3c 2f 74 64 3e 3c 74 64 3e 4e 316709</td><td>N
231a0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
231b0 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f </td>..</tr>..</
231c0 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 table>..<br>..Le
231d0 74 27 73 20 6e 6f 77 20 71 75 69 63 6b 6c 79 20 t's now quickly
231e0 65 78 61 6d 69 6e 65 20 74 68 65 20 72 65 73 75 examine the resu
231f0 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 ltset returned b
23200 79 20 74 68 65 20 61 62 6f 76 65 20 3c 62 3e 50 y the above <b>P
23210 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 3c 2f 62 oint-to-Point</b
23220 3e 20 71 75 65 72 79 3a 0d 0a 3c 75 6c 3e 0d 0a > query:..<ul>..
23230 3c 6c 69 3e 74 68 65 20 67 65 6e 65 72 61 6c 20 <li>the general
23240 6c 61 79 6f 75 74 20 69 73 20 61 6c 6d 6f 73 74 layout is almost
23250 20 65 78 61 63 74 6c 79 20 74 68 65 20 73 61 6d exactly the sam
23260 65 20 61 73 20 79 6f 75 27 76 65 20 61 6c 72 65 e as you've alre
23270 61 64 79 20 73 65 65 6e 20 69 6e 20 74 68 65 20 ady seen in the
23280 63 61 73 65 20 6f 66 20 53 68 6f 72 74 65 73 74 case of Shortest
23290 50 61 74 68 20 71 75 65 72 69 65 73 2e 3c 2f 6c Path queries.</l
232a0 69 3e 0d 0a 3c 6c 69 3e 69 6e 20 74 68 65 20 73 i>..<li>in the s
232b0 70 65 63 69 66 69 63 20 63 61 73 65 20 6f 66 20 pecific case of
232c0 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 74 Point-to-Point t
232d0 68 65 20 3c 62 3e 66 69 72 73 74 20 72 6f 77 3c he <b>first row<
232e0 2f 62 3e 20 6f 66 20 74 68 65 20 72 65 73 75 6c /b> of the resul
232f0 74 73 65 74 20 77 69 6c 6c 20 61 6c 77 61 79 73 tset will always
23300 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 66 6f 6c contain the fol
23310 6c 6f 77 69 6e 67 73 20 3c 62 3e 4e 4f 54 20 4e lowings <b>NOT N
23320 55 4c 4c 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 3a ULL</b> columns:
23330 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 4e ..<ul>..<li><b>N
23340 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 20 odeFrom</b> and
23350 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 3a 20 74 <b>NodeTo</b>: t
23360 68 65 20 74 77 6f 20 47 65 6f 6d 65 74 72 69 65 he two Geometrie
23370 73 20 64 65 66 69 6e 69 6e 67 20 74 68 65 20 3c s defining the <
23380 75 3e 3c 69 3e 6f 72 69 67 69 6e 3c 2f 69 3e 3c u><i>origin</i><
23390 2f 75 3e 20 61 6e 64 20 3c 75 3e 3c 69 3e 64 65 /u> and <u><i>de
233a0 73 74 69 6e 61 74 69 6f 6e 3c 2f 69 3e 3c 2f 75 stination</i></u
233b0 3e 20 50 6f 69 6e 74 73 2e 3c 2f 6c 69 3e 0d 0a > Points.</li>..
233c0 3c 6c 69 3e 3c 62 3e 54 6f 6c 65 72 61 6e 63 65 <li><b>Tolerance
233d0 3c 2f 62 3e 3a 20 74 68 65 20 6d 61 78 69 6d 75 </b>: the maximu
233e0 6d 20 64 69 73 74 61 6e 63 65 20 61 6c 6c 6f 77 m distance allow
233f0 65 64 20 62 65 74 77 65 65 6e 20 72 65 66 65 72 ed between refer
23400 65 6e 63 65 20 50 6f 69 6e 74 73 20 61 6e 64 20 ence Points and
23410 43 61 6e 64 69 64 61 74 65 20 4c 69 6e 6b 73 2e Candidate Links.
23420 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 </li>..</ul></li
23430 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 52 6f >..<li>the <b>Ro
23440 6c 65 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 20 63 61 le</b> column ca
23450 6e 20 61 73 73 75 6d 65 20 6f 6e 65 20 6f 66 20 n assume one of
23460 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 76 61 the following va
23470 6c 75 65 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 lues:..<ul>..<li
23480 3e 3c 62 3e 50 6f 69 6e 74 32 50 6f 69 6e 74 20 ><b>Point2Point
23490 53 6f 6c 75 74 69 6f 6e 3c 2f 62 3e 3a 20 74 68 Solution</b>: th
234a0 65 20 68 65 61 64 65 72 20 72 6f 77 20 73 75 6d e header row sum
234b0 6d 61 72 69 7a 69 6e 67 20 74 68 65 20 53 6f 6c marizing the Sol
234c0 75 74 69 6f 6e 20 61 73 20 61 20 77 68 6f 6c 65 ution as a whole
234d0 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e ...<ul>..<li><b>
234e0 50 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 2c 20 3c PointFrom</b>, <
234f0 62 3e 50 6f 69 6e 74 54 6f 3c 2f 62 3e 20 61 6e b>PointTo</b> an
23500 64 20 3c 62 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f d <b>Tolerance</
23510 62 3e 20 63 6f 6c 75 6d 6e 73 20 77 69 6c 6c 20 b> columns will
23520 68 61 76 65 20 3c 62 3e 4e 4f 54 20 4e 55 4c 4c have <b>NOT NULL
23530 3c 2f 62 3e 20 76 61 6c 75 65 73 20 6f 6e 6c 79 </b> values only
23540 20 69 6e 20 74 68 65 20 68 65 61 64 65 72 20 72 in the header r
23550 6f 77 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c ow.</li>..</ul><
23560 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 49 6e 67 /li>..<li><b>Ing
23570 72 65 73 73 20 50 61 74 68 3c 2f 62 3e 3a 20 61 ress Path</b>: a
23580 20 73 74 72 61 69 67 68 74 20 73 65 67 6d 65 6e straight segmen
23590 74 20 63 6f 6e 6e 65 63 74 69 6e 67 20 74 68 65 t connecting the
235a0 20 4f 72 69 67 69 6e 20 50 6f 69 6e 74 20 74 6f Origin Point to
235b0 20 74 68 65 20 66 69 72 73 74 20 4c 69 6e 6b 2e the first Link.
235c0 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 45 67 </li>..<li><b>Eg
235d0 72 65 73 73 20 50 61 74 68 3c 2f 62 3e 3a 20 61 ress Path</b>: a
235e0 20 73 74 72 61 69 67 68 74 20 73 65 67 6d 65 6e straight segmen
235f0 74 20 63 6f 6e 6e 65 63 74 69 6e 67 20 74 68 65 t connecting the
23600 20 6c 61 73 74 20 4c 69 6e 6b 20 74 6f 20 74 68 last Link to th
23610 65 20 44 65 73 74 69 6e 61 74 69 6f 6e 20 50 6f e Destination Po
23620 69 6e 74 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e int...<ul>..<li>
23630 62 6f 74 68 20 74 68 65 20 49 6e 67 72 65 73 73 both the Ingress
23640 20 61 6e 64 20 74 68 65 20 45 67 72 65 73 73 20 and the Egress
23650 50 61 74 68 20 72 6f 77 73 20 77 69 6c 6c 20 61 Path rows will a
23660 6c 77 61 79 73 20 68 61 76 65 20 3c 62 3e 4e 55 lways have <b>NU
23670 4c 4c 3c 2f 62 3e 20 76 61 6c 75 65 73 20 6f 6e LL</b> values on
23680 20 3c 62 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 62 <b>LinkRowid</b
23690 3e 2c 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f >, <b>NodeFrom</
236a0 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f 64 65 54 6f b> and <b>NodeTo
236b0 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 2e 3c 2f 6c </b> columns.</l
236c0 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a i>..</ul></li>..
236d0 3c 6c 69 3e 3c 62 3e 50 61 72 74 69 61 6c 20 4c <li><b>Partial L
236e0 69 6e 6b 20 28 53 74 61 72 74 29 3c 2f 62 3e 3a ink (Start)</b>:
236f0 20 74 68 65 20 70 61 72 74 69 61 6c 20 73 65 63 the partial sec
23700 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 69 72 73 tion of the firs
23710 74 20 4c 69 6e 6b 2e 0d 0a 3c 75 6c 3e 0d 0a 3c t Link...<ul>..<
23720 6c 69 3e 74 68 69 73 20 73 70 65 63 69 66 69 63 li>this specific
23730 20 72 6f 77 20 77 69 6c 6c 20 61 6c 77 61 79 73 row will always
23740 20 68 61 76 65 20 61 20 3c 62 3e 4e 55 4c 4c 3c have a <b>NULL<
23750 2f 62 3e 20 76 61 6c 75 65 20 6f 6e 20 74 68 65 /b> value on the
23760 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e <b>NodeFrom</b>
23770 20 63 6f 6c 75 6d 6e 2e 3c 2f 6c 69 3e 0d 0a 3c column.</li>..<
23780 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c /ul></li>..<li><
23790 62 3e 50 61 72 74 69 61 6c 20 4c 69 6e 6b 20 28 b>Partial Link (
237a0 45 6e 64 29 3c 2f 62 3e 3a 20 74 68 65 20 70 61 End)</b>: the pa
237b0 72 74 69 61 6c 20 73 65 63 74 69 6f 6e 20 6f 66 rtial section of
237c0 20 74 68 65 20 6c 61 73 74 20 4c 69 6e 6b 2e 0d the last Link..
237d0 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 69 73 20 .<ul>..<li>this
237e0 73 70 65 63 69 66 69 63 20 72 6f 77 20 77 69 6c specific row wil
237f0 6c 20 61 6c 77 61 79 73 20 68 61 76 65 20 61 20 l always have a
23800 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 76 61 6c 75 <b>NULL</b> valu
23810 65 20 6f 6e 20 74 68 65 20 3c 62 3e 4e 6f 64 65 e on the <b>Node
23820 54 6f 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 2e 3c 2f To</b> column.</
23830 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d li>..</ul></li>.
23840 0a 3c 6c 69 3e 3c 62 3e 4c 69 6e 6b 3c 2f 62 3e .<li><b>Link</b>
23850 3a 20 61 6e 79 20 6f 74 68 65 72 20 4c 69 6e 6b : any other Link
23860 20 72 65 71 75 69 72 65 64 20 62 79 20 74 68 65 required by the
23870 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 Point-to-Point
23880 53 6f 6c 75 74 69 6f 6e 2e 0d 0a 3c 75 6c 3e 0d Solution...<ul>.
23890 0a 3c 6c 69 3e 61 6c 6c 20 74 68 65 73 65 20 72 .<li>all these r
238a0 6f 77 73 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 ows will always
238b0 68 61 76 65 20 3c 62 3e 4e 4f 54 20 4e 55 4c 4c have <b>NOT NULL
238c0 3c 2f 62 3e 20 76 61 6c 75 65 73 20 6f 6e 20 3c </b> values on <
238d0 62 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 62 3e 2c b>LinkRowid</b>,
238e0 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e <b>NodeFrom</b>
238f0 20 61 6e 64 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f and <b>NodeTo</
23900 62 3e 20 63 6f 6c 75 6d 6e 73 2e 3c 2f 6c 69 3e b> columns.</li>
23910 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f ..</ul></li>..</
23920 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d ul></li>..</ul>.
23930 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c .<br><br><br>..<
23940 62 3e 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 b>Point-to-Point
23950 3c 2f 62 3e 20 71 75 65 72 69 65 73 20 63 61 6e </b> queries can
23960 20 62 65 20 63 75 73 74 6f 6d 69 7a 65 64 2c 20 be customized,
23970 62 75 74 20 74 68 65 20 63 6f 6e 66 69 67 75 72 but the configur
23980 61 74 69 6f 6e 20 72 75 6c 65 73 20 73 6c 69 67 ation rules slig
23990 68 74 6c 79 20 64 69 66 66 65 72 20 66 72 6f 6d htly differ from
239a0 20 77 68 61 74 20 79 6f 75 20 68 61 76 65 20 61 what you have a
239b0 6c 72 65 61 64 79 20 73 65 65 6e 20 69 6e 20 70 lready seen in p
239c0 72 65 76 69 6f 75 73 20 65 78 61 6d 70 6c 65 73 revious examples
239d0 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e ...<ul>..<li><b>
239e0 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 3a 20 6f Algorithm</b>: o
239f0 6e 6c 79 20 3c 62 3e 44 69 6a 6b 73 74 72 61 3c nly <b>Dijkstra<
23a00 2f 62 3e 20 69 73 20 73 75 70 70 6f 72 74 65 64 /b> is supported
23a10 20 62 79 20 3c 62 3e 50 6f 69 6e 74 2d 74 6f 2d by <b>Point-to-
23a20 50 6f 69 6e 74 3c 2f 62 3e 2c 20 61 6e 64 20 77 Point</b>, and w
23a30 69 6c 6c 20 62 65 20 69 6d 70 6c 69 63 69 74 6c ill be implicitl
23a40 79 20 61 73 73 75 6d 65 64 20 65 76 65 6e 20 77 y assumed even w
23a50 68 65 6e 20 74 68 65 20 61 6c 74 65 72 6e 61 74 hen the alternat
23a60 69 76 65 20 3c 62 3e 41 2a 3c 2f 62 3e 20 61 6c ive <b>A*</b> al
23a70 67 6f 72 69 74 68 6d 20 69 73 20 63 75 72 72 65 gorithm is curre
23a80 6e 74 6c 79 20 73 65 6c 65 63 74 65 64 2e 3c 62 ntly selected.<b
23a90 72 3e 0d 0a 54 68 69 73 20 69 73 20 62 65 63 61 r>..This is beca
23aa0 75 73 65 20 74 68 65 20 69 6e 74 65 72 6e 61 6c use the internal
23ab0 20 6c 6f 67 69 63 20 6f 66 20 50 6f 69 6e 74 2d logic of Point-
23ac0 74 6f 2d 50 6f 69 6e 74 20 72 65 71 75 69 72 65 to-Point require
23ad0 73 20 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 s multi-destinat
23ae0 69 6f 6e 20 71 75 65 72 69 65 73 20 69 6e 20 6f ion queries in o
23af0 72 64 65 72 20 74 6f 20 65 76 61 6c 75 61 74 65 rder to evaluate
23b00 20 61 6c 6c 20 43 61 6e 64 69 64 61 74 65 20 53 all Candidate S
23b10 6f 6c 75 74 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a olutions.</li>..
23b20 3c 6c 69 3e 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f <li><b>Options</
23b30 62 3e 3a 20 74 68 65 20 75 73 75 61 6c 20 3c 62 b>: the usual <b
23b40 3e 46 55 4c 4c 3c 2f 62 3e 2c 20 3c 62 3e 53 49 >FULL</b>, <b>SI
23b50 4d 50 4c 45 3c 2f 62 3e 2c 20 3c 62 3e 4e 4f 20 MPLE</b>, <b>NO
23b60 4c 49 4e 4b 53 3c 2f 62 3e 20 61 6e 64 20 3c 62 LINKS</b> and <b
23b70 3e 4e 4f 20 47 45 4f 4d 45 54 52 49 45 53 3c 2f >NO GEOMETRIES</
23b80 62 3e 20 61 72 65 20 73 75 70 70 6f 72 74 65 64 b> are supported
23b90 20 61 6e 64 20 77 69 6c 6c 20 68 61 76 65 20 74 and will have t
23ba0 68 65 20 73 61 6d 65 20 65 66 66 65 63 74 20 61 he same effect a
23bb0 73 20 69 6e 20 73 69 6e 67 6c 65 2d 64 65 73 74 s in single-dest
23bc0 69 6e 61 74 69 6f 6e 20 71 75 65 72 69 65 73 2e ination queries.
23bd0 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 54 6f </li>..<li><b>To
23be0 6c 65 72 61 6e 63 65 3c 2f 62 3e 3a 20 74 68 69 lerance</b>: thi
23bf0 73 20 73 65 74 74 69 6e 67 20 69 73 20 73 70 65 s setting is spe
23c00 63 69 66 69 63 20 74 6f 20 50 6f 69 6e 74 2d 74 cific to Point-t
23c10 6f 2d 50 6f 69 6e 74 2c 20 61 6e 64 20 64 65 66 o-Point, and def
23c20 69 6e 65 73 20 74 68 65 20 6d 61 78 69 6d 75 6d ines the maximum
23c30 20 61 6c 6c 6f 77 61 62 6c 65 20 64 69 73 74 61 allowable dista
23c40 6e 63 65 20 62 65 74 77 65 65 6e 20 61 20 72 65 nce between a re
23c50 66 65 72 65 6e 63 65 20 50 6f 69 6e 74 20 61 6e ference Point an
23c60 64 20 43 61 6e 64 69 64 61 74 65 20 4c 69 6e 6b d Candidate Link
23c70 73 2e 3c 62 72 3e 0d 0a 49 74 20 64 65 66 61 75 s.<br>..It defau
23c80 6c 74 73 20 74 6f 20 3c 62 3e 32 30 2e 30 6d 3c lts to <b>20.0m<
23c90 2f 62 3e 20 69 66 20 6e 6f 74 20 65 78 70 6c 69 /b> if not expli
23ca0 63 69 74 6c 79 20 73 65 74 2e 3c 2f 6c 69 3e 0d citly set.</li>.
23cb0 0a 3c 2f 75 6c 3e 0d 0a 3c 76 65 72 62 61 74 69 .</ul>..<verbati
23cc0 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f 6f m>..UPDATE byfoo
23cd0 74 20 53 45 54 20 4f 70 74 69 6f 6e 73 20 3d 20 t SET Options =
23ce0 27 4e 4f 20 47 45 4f 4d 45 54 52 49 45 53 27 2c 'NO GEOMETRIES',
23cf0 20 54 6f 6c 65 72 61 6e 63 65 20 3d 20 32 35 2e Tolerance = 25.
23d00 35 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 52 65 71 5;....SELECT Req
23d10 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c 20 54 uest, Options, T
23d20 6f 6c 65 72 61 6e 63 65 2c 20 52 6f 75 74 65 52 olerance, RouteR
23d30 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f ow, Role, LinkRo
23d40 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e wid, NodeFrom, N
23d50 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f odeTo, Cost, Geo
23d60 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f metry, Name..FRO
23d70 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 M byfoot..WHERE
23d80 50 6f 69 6e 74 46 72 6f 6d 20 3d 20 28 53 45 4c PointFrom = (SEL
23d90 45 43 54 20 67 65 6f 6d 20 46 52 4f 4d 20 68 6f ECT geom FROM ho
23da0 75 73 65 5f 6e 72 5f 76 77 20 57 48 45 52 45 20 use_nr_vw WHERE
23db0 6d 75 6e 69 63 69 70 61 6c 69 74 79 20 3d 20 27 municipality = '
23dc0 41 52 45 5a 5a 4f 27 20 41 4e 44 20 61 64 64 72 AREZZO' AND addr
23dd0 65 73 73 20 3d 20 27 56 49 41 20 44 45 27 27 20 ess = 'VIA DE''
23de0 43 45 4e 43 49 20 31 33 27 29 0d 0a 20 20 20 20 CENCI 13')..
23df0 41 4e 44 20 50 6f 69 6e 74 54 6f 20 3d 20 28 53 AND PointTo = (S
23e00 45 4c 45 43 54 20 67 65 6f 6d 20 46 52 4f 4d 20 ELECT geom FROM
23e10 68 6f 75 73 65 5f 6e 72 5f 76 77 20 57 48 45 52 house_nr_vw WHER
23e20 45 20 6d 75 6e 69 63 69 70 61 6c 69 74 79 20 3d E municipality =
23e30 20 27 41 52 45 5a 5a 4f 27 20 41 4e 44 20 61 64 'AREZZO' AND ad
23e40 64 72 65 73 73 20 3d 20 27 56 49 41 20 41 4e 54 dress = 'VIA ANT
23e50 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c 49 20 ONIO GUADAGNOLI
23e60 31 39 2f 43 27 29 3b 0d 0a 3c 2f 76 65 72 62 61 19/C');..</verba
23e70 74 69 6d 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 tim>..The follow
23e80 69 6e 67 20 74 61 62 6c 65 20 73 68 6f 77 73 20 ing table shows
23e90 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 72 65 the resultset re
23ea0 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 61 62 turned by the ab
23eb0 6f 76 65 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 ove Point-to-Poi
23ec0 6e 74 20 71 75 65 72 79 20 61 66 74 65 72 20 73 nt query after s
23ed0 65 6c 65 63 74 69 6e 67 20 3c 62 3e 4f 70 74 69 electing <b>Opti
23ee0 6f 6e 73 20 3d 20 27 4e 4f 20 47 45 4f 4d 45 54 ons = 'NO GEOMET
23ef0 52 49 45 53 27 3c 2f 62 3e 20 61 6e 64 20 3c 62 RIES'</b> and <b
23f00 3e 54 6f 6c 65 72 61 6e 63 65 20 3d 20 32 35 2e >Tolerance = 25.
23f10 35 3c 2f 62 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 5</b><br><br>..<
23f20 74 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 31 22 table border="1"
23f30 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 66 63 bgcolor="#ffffc
23f40 66 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 f" cellspacing="
23f50 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 4" cellpadding="
23f60 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6">..<tr><th bgc
23f70 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
23f80 65 71 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 equest</th><th b
23f90 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
23fa0 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 >Options</th><th
23fb0 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
23fc0 30 22 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f 74 68 0">Tolerance</th
23fd0 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
23fe0 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 0d0a0">RouteRow<
23ff0 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
24000 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f "#d0d0a0">Role</
24010 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
24020 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 #d0d0a0">LinkRow
24030 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c id</th><th bgcol
24040 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 or="#d0d0a0">Nod
24050 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 eFrom</th><th bg
24060 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
24070 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 NodeTo</th><th b
24080 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
24090 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 >Cost</th><th bg
240a0 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
240b0 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 Geometry</th><th
240c0 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
240d0 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 0">Name</th></tr
240e0 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 50 6f 69 >..<tr>..<td>Poi
240f0 6e 74 32 50 6f 69 6e 74 20 50 61 74 68 3c 2f 74 nt2Point Path</t
24100 64 3e 3c 74 64 3e 4e 6f 20 47 65 6f 6d 65 74 72 d><td>No Geometr
24110 69 65 73 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ies</td><td alig
24120 6e 3d 22 72 69 67 68 74 22 3e 32 35 2e 35 30 30 n="right">25.500
24130 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 000</td><td alig
24140 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
24150 3c 74 64 3e 50 6f 69 6e 74 32 50 6f 69 6e 74 20 <td>Point2Point
24160 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e 3c 74 64 Solution</td><td
24170 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
24180 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
24190 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
241a0 69 67 68 74 22 3e 36 35 31 2e 30 36 37 30 38 32 ight">651.067082
241b0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
241c0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
241d0 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
241e0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
241f0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
24200 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
24210 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 right">1</td><td
24220 3e 49 6e 67 72 65 73 73 20 50 61 74 68 3c 2f 74 >Ingress Path</t
24230 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
24240 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
24250 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
24260 67 6e 3d 22 72 69 67 68 74 22 3e 32 2e 33 30 31 gn="right">2.301
24270 36 38 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 687</td><td>NULL
24280 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
24290 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
242a0 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
242b0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
242c0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
242d0 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e n="right">2</td>
242e0 3c 74 64 3e 50 61 72 74 69 61 6c 20 4c 69 6e 6b <td>Partial Link
242f0 20 28 53 74 61 72 74 29 3c 2f 74 64 3e 3c 74 64 (Start)</td><td
24300 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
24310 32 34 32 36 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 24264</td><td>NU
24320 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
24330 3d 22 72 69 67 68 74 22 3e 31 38 32 36 33 30 3c ="right">182630<
24340 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
24350 69 67 68 74 22 3e 34 36 2e 30 38 32 37 36 31 3c ight">46.082761<
24360 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
24370 3e 3c 74 64 3e 56 49 41 20 44 45 27 20 43 45 4e ><td>VIA DE' CEN
24380 43 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a CI</td>..</tr>..
24390 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
243a0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
243b0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
243c0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
243d0 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
243e0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
243f0 68 74 22 3e 32 32 33 37 35 38 3c 2f 74 64 3e 3c ht">223758</td><
24400 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
24410 3e 31 38 32 36 33 30 3c 2f 74 64 3e 3c 74 64 20 >182630</td><td
24420 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
24430 32 36 32 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2629</td><td ali
24440 67 6e 3d 22 72 69 67 68 74 22 3e 32 34 2e 31 39 gn="right">24.19
24450 38 31 31 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 8115</td><td>NUL
24460 4c 3c 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f 20 L</td><td>CORSO
24470 49 54 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 ITALIA</td>..</t
24480 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
24490 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
244a0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
244b0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
244c0 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">4</td><td>Lin
244d0 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
244e0 22 72 69 67 68 74 22 3e 32 32 35 35 31 32 3c 2f "right">225512</
244f0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
24500 67 68 74 22 3e 31 38 32 36 32 39 3c 2f 74 64 3e ght">182629</td>
24510 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
24520 22 3e 31 38 32 39 33 33 3c 2f 74 64 3e 3c 74 64 ">182933</td><td
24530 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
24540 34 2e 31 38 34 31 39 34 3c 2f 74 64 3e 3c 74 64 4.184194</td><td
24550 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 43 4f >NULL</td><td>CO
24560 52 53 4f 20 49 54 41 4c 49 41 3c 2f 74 64 3e 0d RSO ITALIA</td>.
24570 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
24580 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
24590 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
245a0 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
245b0 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 right">5</td><td
245c0 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
245d0 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 35 ign="right">2255
245e0 31 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 11</td><td align
245f0 3d 22 72 69 67 68 74 22 3e 31 38 32 39 33 33 3c ="right">182933<
24600 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
24610 69 67 68 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 ight">181999</td
24620 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
24630 74 22 3e 34 39 2e 32 34 31 37 33 35 3c 2f 74 64 t">49.241735</td
24640 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
24650 64 3e 43 4f 52 53 4f 20 49 54 41 4c 49 41 3c 2f d>CORSO ITALIA</
24660 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
24670 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
24680 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
24690 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
246a0 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 gn="right">6</td
246b0 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
246c0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
246d0 32 32 35 38 30 30 3c 2f 74 64 3e 3c 74 64 20 61 225800</td><td a
246e0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 lign="right">181
246f0 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 999</td><td alig
24700 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 n="right">178880
24710 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
24720 72 69 67 68 74 22 3e 39 35 2e 35 39 32 32 30 34 right">95.592204
24730 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
24740 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 d><td>VIA FRANCE
24750 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d SCO CRISPI</td>.
24760 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
24770 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
24780 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
24790 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
247a0 72 69 67 68 74 22 3e 37 3c 2f 74 64 3e 3c 74 64 right">7</td><td
247b0 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
247c0 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 31 39 31 ign="right">2191
247d0 37 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 71</td><td align
247e0 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c ="right">178880<
247f0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
24800 69 67 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 ight">178732</td
24810 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
24820 74 22 3e 39 33 2e 32 38 35 35 33 38 3c 2f 74 64 t">93.285538</td
24830 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
24840 64 3e 56 49 41 20 46 52 41 4e 43 45 53 43 4f 20 d>VIA FRANCESCO
24850 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 CRISPI</td>..</t
24860 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
24870 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
24880 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
24890 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
248a0 74 22 3e 38 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">8</td><td>Lin
248b0 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
248c0 22 72 69 67 68 74 22 3e 32 31 39 30 35 38 3c 2f "right">219058</
248d0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
248e0 67 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 3e ght">178732</td>
248f0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
24900 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 ">178754</td><td
24910 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
24920 34 38 2e 36 35 36 30 38 39 3c 2f 74 64 3e 3c 74 48.656089</td><t
24930 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
24940 49 41 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 IA FRANCESCO CRI
24950 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d SPI</td>..</tr>.
24960 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
24970 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
24980 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
24990 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
249a0 39 3c 2f 74 64 3e 3c 74 64 3e 50 61 72 74 69 61 9</td><td>Partia
249b0 6c 20 4c 69 6e 6b 20 28 45 6e 64 29 3c 2f 74 64 l Link (End)</td
249c0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
249d0 74 22 3e 32 32 34 30 31 39 3c 2f 74 64 3e 3c 74 t">224019</td><t
249e0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
249f0 31 38 32 38 39 30 3c 2f 74 64 3e 3c 74 64 3e 4e 182890</td><td>N
24a00 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
24a10 6e 3d 22 72 69 67 68 74 22 3e 31 35 30 2e 32 36 n="right">150.26
24a20 30 36 34 31 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 0641</td><td>NUL
24a30 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 41 4e L</td><td>VIA AN
24a40 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c 49 TONIO GUADAGNOLI
24a50 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
24a60 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
24a70 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
24a80 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
24a90 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 3c lign="right">10<
24aa0 2f 74 64 3e 3c 74 64 3e 45 67 72 65 73 73 20 50 /td><td>Egress P
24ab0 61 74 68 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ath</td><td>NULL
24ac0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
24ad0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
24ae0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
24af0 3e 37 2e 32 36 34 31 31 38 3c 2f 74 64 3e 3c 74 >7.264118</td><t
24b00 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
24b10 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
24b20 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c .</table>..<br><
24b30 62 72 3e 0d 0a 54 68 65 20 6d 61 70 20 62 65 6c br>..The map bel
24b40 6f 77 20 67 72 61 70 68 69 63 61 6c 6c 79 20 73 ow graphically s
24b50 68 6f 77 73 20 74 68 65 20 74 77 6f 20 50 6f 69 hows the two Poi
24b60 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 53 6f 6c 75 nt-to-Point Solu
24b70 74 69 6f 6e 73 20 72 65 74 75 72 6e 65 64 20 62 tions returned b
24b80 79 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 71 y the previous q
24b90 75 65 72 69 65 73 2e 0d 0a 3c 62 72 3e 3c 62 72 ueries...<br><br
24ba0 3e 0d 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 >..<img src="htt
24bb0 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 ps://www.gaia-gi
24bc0 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 s.it/gaia-sins/r
24bd0 6f 75 74 69 6e 67 2d 66 69 67 73 2f 70 6f 69 6e outing-figs/poin
24be0 74 2d 74 6f 2d 70 6f 69 6e 74 2e 6a 70 67 22 20 t-to-point.jpg"
24bf0 61 6c 74 3d 22 70 6f 69 6e 74 2d 74 6f 2d 70 6f alt="point-to-po
24c00 69 6e 74 22 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 int">..<ul>..<li
24c10 3e 74 68 65 20 67 72 65 65 6e 20 6c 69 6e 65 20 >the green line
24c20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 corresponds to t
24c30 68 65 20 66 69 72 73 74 20 73 6f 6c 75 74 69 6f he first solutio
24c40 6e 20 28 3c 69 3e 50 6f 69 6e 74 54 6f 20 3d 20 n (<i>PointTo =
24c50 56 49 41 20 47 55 41 44 41 47 4e 4f 4c 49 20 31 VIA GUADAGNOLI 1
24c60 39 2f 42 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a 9/B</i>).</li>..
24c70 3c 6c 69 3e 74 68 65 20 79 65 6c 6c 6f 77 20 6c <li>the yellow l
24c80 69 6e 65 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 ine corresponds
24c90 74 6f 20 74 68 65 20 73 65 63 6f 6e 64 20 73 6f to the second so
24ca0 6c 75 74 69 6f 6e 20 28 3c 69 3e 50 6f 69 6e 74 lution (<i>Point
24cb0 54 6f 20 3d 20 56 49 41 20 47 55 41 44 41 47 4e To = VIA GUADAGN
24cc0 4f 4c 49 20 31 39 2f 43 3c 2f 69 3e 29 2e 3c 2f OLI 19/C</i>).</
24cd0 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e li>..</ul>..<br>
24ce0 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 50 ..<u>Note</u>: P
24cf0 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 71 75 oint-to-Point qu
24d00 65 72 69 65 73 20 61 72 65 20 76 65 72 79 20 73 eries are very s
24d10 65 6e 73 69 74 69 76 65 2c 20 61 6e 64 20 61 20 ensitive, and a
24d20 76 65 72 79 20 62 6c 61 6e 64 20 73 68 69 66 74 very bland shift
24d30 20 61 66 66 65 63 74 69 6e 67 20 74 68 65 20 70 affecting the p
24d40 6f 73 69 74 69 6f 6e 20 6f 66 20 61 20 72 65 66 osition of a ref
24d50 65 72 65 6e 63 65 20 50 6f 69 6e 74 20 63 6f 75 erence Point cou
24d60 6c 64 20 65 61 73 69 6c 79 20 63 61 75 73 65 20 ld easily cause
24d70 64 72 61 6d 61 74 69 63 20 63 68 61 6e 67 65 73 dramatic changes
24d80 20 69 6e 20 74 68 65 20 53 6f 6c 75 74 69 6f 6e in the Solution
24d90 27 73 20 50 61 74 68 20 28 61 73 20 69 73 20 69 's Path (as is i
24da0 6e 20 74 68 69 73 20 63 61 73 65 29 2e 0d 0a 3c n this case)...<
24db0 62 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 3c 62 72 br><br>..<hr><br
24dc0 3e 0d 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 >..<a href="http
24dd0 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 s://www.gaia-gis
24de0 2e 69 74 2f 66 6f 73 73 69 6c 2f 6c 69 62 73 70 .it/fossil/libsp
24df0 61 74 69 61 6c 69 74 65 2f 77 69 6b 69 3f 6e 61 atialite/wiki?na
24e00 6d 65 3d 34 2e 33 2e 30 2d 64 6f 63 22 3e 62 61 me=4.3.0-doc">ba
24e10 63 6b 3c 2f 61 3e 0a 5a 20 61 62 31 39 66 64 36 ck</a>.Z ab19fd6
24e20 36 62 34 31 38 62 66 39 62 35 61 66 33 34 37 66 6b418bf9b5af347f
24e30 30 61 61 37 32 65 39 66 62 0a 0aa72e9fb.