Wiki page
[VirtualRouting] by
sandro
2018-04-18 07:45:35.
0000: 44 20 32 30 31 38 2d 30 34 2d 31 38 54 30 37 3a D 2018-04-18T07:
0010: 34 35 3a 33 35 2e 38 33 33 0a 4c 20 56 69 72 74 45:35.833.L Virt
0020: 75 61 6c 52 6f 75 74 69 6e 67 0a 50 20 65 33 33 ualRouting.P e33
0030: 32 33 65 66 61 36 61 38 33 32 39 38 63 65 39 63 23efa6a83298ce9c
0040: 62 63 63 65 63 38 34 63 38 64 65 34 38 39 65 37 bccec84c8de489e7
0050: 39 65 31 33 34 0a 55 20 73 61 6e 64 72 6f 0a 57 9e134.U sandro.W
0060: 20 31 34 39 31 33 33 0a 3c 61 20 68 72 65 66 3d 149133.<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 53 6f 20 61 6c 6c 20 3c 62 3e 4c 69 6e li>So all <b>Lin
08c0: 6b 73 3c 2f 62 3e 20 61 72 65 20 61 6c 77 61 79 ks</b> are alway
08d0: 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 65 78 s expected to ex
08e0: 70 6c 69 63 69 74 6c 79 20 72 65 66 65 72 65 6e plicitly referen
08f0: 63 65 20 61 20 3c 62 3e 53 74 61 72 74 2d 4e 6f ce a <b>Start-No
0900: 64 65 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f de</b> (<i>aka</
0910: 69 3e 20 3c 62 3e 4e 6f 64 65 2d 46 72 6f 6d 3c i> <b>Node-From<
0920: 2f 62 3e 29 20 61 6e 64 20 61 6e 20 3c 62 3e 45 /b>) and an <b>E
0930: 6e 64 2d 4e 6f 64 65 3c 2f 62 3e 20 28 3c 69 3e nd-Node</b> (<i>
0940: 61 6b 61 3c 2f 69 3e 20 3c 62 3e 4e 6f 64 65 2d aka</i> <b>Node-
0950: 54 6f 3c 2f 62 3e 29 2e 0d 0a 3c 75 6c 3e 0d 0a To</b>)...<ul>..
0960: 3c 6c 69 3e 4c 69 6e 6b 73 20 61 72 65 20 61 6c <li>Links are al
0970: 77 61 79 73 20 3c 62 3e 6f 72 69 65 6e 74 65 64 ways <b>oriented
0980: 3c 2f 62 3e 2c 20 61 6e 64 20 74 68 65 69 72 20 </b>, and their
0990: 6e 61 74 75 72 61 6c 20 64 69 72 65 63 74 69 6f natural directio
09a0: 6e 20 69 73 20 3c 62 3e 46 72 6f 6d 2d 54 6f 3c n is <b>From-To<
09b0: 2f 62 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e /b>:..<ul>..<li>
09c0: 69 6e 20 61 6e 20 3c 62 3e 75 6e 69 64 69 72 65 in an <b>unidire
09d0: 63 74 69 6f 6e 61 6c 3c 2f 62 3e 20 4e 65 74 77 ctional</b> Netw
09e0: 6f 72 6b 20 65 61 63 68 20 4c 69 6e 6b 20 69 73 ork each Link is
09f0: 20 61 6e 20 3c 62 3e 6f 6e 65 2d 77 61 79 3c 2f an <b>one-way</
0a00: 62 3e 20 63 6f 6e 6e 65 63 74 69 6f 6e 2e 3c 62 b> connection.<b
0a10: 72 3e 0d 0a 49 66 20 74 68 65 20 63 6f 6e 6e 65 r>..If the conne
0a20: 63 74 69 6f 6e 20 69 73 20 61 76 61 69 6c 61 62 ction is availab
0a30: 6c 65 20 69 6e 20 74 68 65 20 6f 70 70 6f 73 69 le in the opposi
0a40: 74 65 20 64 69 72 65 63 74 69 6f 6e 20 61 20 73 te direction a s
0a50: 65 63 6f 6e 64 20 4c 69 6e 6b 20 6d 75 73 74 20 econd Link must
0a60: 62 65 20 65 78 70 6c 69 63 69 74 6c 79 20 64 65 be explicitly de
0a70: 63 6c 61 72 65 64 2e 3c 62 72 3e 0d 0a 3c 75 3e clared.<br>..<u>
0a80: 45 78 61 6d 70 6c 65 3c 2f 75 3e 3a 20 4c 69 6e Example</u>: Lin
0a90: 6b 20 3c 62 3e 58 31 3c 2f 62 3e 20 67 6f 65 73 k <b>X1</b> goes
0aa0: 20 66 72 6f 6d 20 4e 6f 64 65 20 3c 62 3e 41 3c from Node <b>A<
0ab0: 2f 62 3e 20 74 6f 20 4e 6f 64 65 20 3c 62 3e 42 /b> to Node <b>B
0ac0: 3c 2f 62 3e 2c 20 61 6e 64 20 4c 69 6e 6b 20 3c </b>, and Link <
0ad0: 62 3e 58 32 3c 2f 62 3e 20 67 6f 65 73 20 66 72 b>X2</b> goes fr
0ae0: 6f 6d 20 4e 6f 64 65 20 3c 62 3e 42 3c 2f 62 3e om Node <b>B</b>
0af0: 20 74 6f 20 4e 6f 64 65 20 3c 62 3e 41 3c 2f 62 to Node <b>A</b
0b00: 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 6e 20 >.</li>..<li>in
0b10: 61 20 3c 62 3e 62 69 64 69 72 65 63 74 69 6f 6e a <b>bidirection
0b20: 61 6c 3c 2f 62 3e 20 4e 65 74 77 6f 72 6b 20 61 al</b> Network a
0b30: 6c 6c 20 4c 69 6e 6b 73 20 61 72 65 20 61 73 73 ll Links are ass
0b40: 75 6d 65 64 20 74 6f 20 65 73 74 61 62 6c 69 73 umed to establis
0b50: 68 20 61 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 69 h a connection i
0b60: 6e 20 62 6f 74 68 20 64 69 72 65 63 74 69 6f 6e n both direction
0b70: 73 2e 3c 62 72 3e 0d 0a 44 65 66 69 6e 69 74 69 s.<br>..Definiti
0b80: 6e 67 20 61 6e 20 3c 62 3e 6f 6e 65 2d 77 61 79 ng an <b>one-way
0b90: 20 63 6f 6e 6e 65 63 74 69 6f 6e 3c 2f 62 3e 20 connection</b>
0ba0: 72 65 71 75 69 72 65 73 20 61 6e 20 61 70 70 72 requires an appr
0bb0: 6f 70 72 69 61 74 65 20 61 74 74 72 69 62 75 74 opriate attribut
0bc0: 65 20 74 6f 20 62 65 20 73 65 74 20 28 73 65 65 e to be set (see
0bd0: 20 62 65 6c 6f 77 29 2e 3c 2f 6c 69 3e 0d 0a 3c below).</li>..<
0be0: 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 54 /ul></li>..<li>T
0bf0: 68 65 20 3c 62 3e 53 74 61 72 74 2d 3c 2f 62 3e he <b>Start-</b>
0c00: 20 61 6e 64 20 3c 62 3e 45 6e 64 2d 4e 6f 64 65 and <b>End-Node
0c10: 3c 2f 62 3e 20 63 6f 75 6c 64 20 65 76 65 6e 74 </b> could event
0c20: 75 61 6c 6c 79 20 62 65 20 74 68 65 20 73 61 6d ually be the sam
0c30: 65 2c 20 61 6e 64 20 69 6e 20 74 68 69 73 20 63 e, and in this c
0c40: 61 73 65 20 77 65 27 6c 6c 20 68 61 76 65 20 61 ase we'll have a
0c50: 20 3c 62 3e 73 65 6c 66 2d 63 6c 6f 73 65 64 3c <b>self-closed<
0c60: 2f 62 3e 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a /b> Link.</li>..
0c70: 3c 6c 69 3e 4e 65 74 77 6f 72 6b 27 73 20 4c 69 <li>Network's Li
0c80: 6e 6b 73 20 3c 62 3e 63 61 6e 3c 2f 62 3e 20 65 nks <b>can</b> e
0c90: 76 65 6e 74 75 61 6c 6c 79 20 64 65 66 69 6e 65 ventually define
0ca0: 20 61 20 6c 69 6e 65 61 72 20 47 65 6f 6d 65 74 a linear Geomet
0cb0: 72 79 20 28 3c 62 3e 4c 49 4e 45 53 54 52 49 4e ry (<b>LINESTRIN
0cc0: 47 3c 2f 62 3e 29 20 67 6f 69 6e 67 20 66 72 6f G</b>) going fro
0cd0: 6d 20 74 68 65 20 3c 62 3e 53 74 61 72 74 2d 4e m the <b>Start-N
0ce0: 6f 64 65 3c 2f 62 3e 20 74 6f 20 74 68 65 20 3c ode</b> to the <
0cf0: 62 3e 45 6e 64 2d 4e 6f 64 65 3c 2f 62 3e 2c 20 b>End-Node</b>,
0d00: 62 75 74 20 74 68 69 73 20 69 73 20 61 6e 20 6f but this is an o
0d10: 70 74 69 6f 6e 61 6c 20 66 65 61 74 75 72 65 2c ptional feature,
0d20: 20 6e 6f 74 20 61 20 6d 61 6e 64 61 74 6f 72 79 not a mandatory
0d30: 20 72 65 71 75 69 72 65 6d 65 6e 74 2e 3c 2f 6c requirement.</l
0d40: 69 3e 0d 0a 3c 6c 69 3e 57 68 61 74 20 69 73 20 i>..<li>What is
0d50: 61 62 73 6f 6c 75 74 65 6c 79 20 6d 61 6e 64 61 absolutely manda
0d60: 74 6f 72 79 20 69 73 20 74 68 61 74 20 65 61 63 tory is that eac
0d70: 68 20 3c 62 3e 4c 69 6e 6b 3c 2f 62 3e 20 6d 75 h <b>Link</b> mu
0d80: 73 74 20 65 78 70 6c 69 63 69 74 6c 79 20 72 65 st explicitly re
0d90: 66 65 72 65 6e 63 65 20 69 74 73 20 3c 62 3e 4e ference its <b>N
0da0: 6f 64 65 73 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a odes</b>.</li>..
0db0: 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e </ul></li>..<li>
0dc0: 41 20 4e 65 74 77 6f 72 6b 20 73 75 70 70 6f 72 A Network suppor
0dd0: 74 69 6e 67 20 47 65 6f 6d 65 74 72 69 65 73 20 ting Geometries
0de0: 69 73 20 61 20 3c 62 3e 53 70 61 74 69 61 6c 20 is a <b>Spatial
0df0: 4e 65 74 77 6f 72 6b 3c 2f 62 3e 3b 20 6f 74 68 Network</b>; oth
0e00: 65 72 77 69 73 65 20 61 20 4e 65 74 77 6f 72 6b erwise a Network
0e10: 20 6c 61 63 6b 69 6e 67 20 61 6e 79 20 47 65 6f lacking any Geo
0e20: 6d 65 74 72 79 20 69 73 20 61 20 3c 62 3e 4c 6f metry is a <b>Lo
0e30: 67 69 63 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 gical Network</b
0e40: 3e 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 49 6e >...<ul>..<li>In
0e50: 20 61 20 3c 62 3e 53 70 61 74 69 61 6c 20 4e 65 a <b>Spatial Ne
0e60: 74 77 6f 72 6b 3c 2f 62 3e 20 61 6c 6c 20 4c 69 twork</b> all Li
0e70: 6e 6b 73 20 3c 62 3e 6d 75 73 74 3c 2f 62 3e 20 nks <b>must</b>
0e80: 68 61 76 65 20 61 20 63 6f 72 72 65 73 70 6f 6e have a correspon
0e90: 64 69 6e 67 20 47 65 6f 6d 65 74 72 79 2e 3c 2f ding Geometry.</
0ea0: 6c 69 3e 0d 0a 3c 6c 69 3e 49 6e 20 61 20 3c 62 li>..<li>In a <b
0eb0: 3e 4c 6f 67 69 63 61 6c 20 4e 65 74 77 6f 72 6b >Logical Network
0ec0: 3c 2f 62 3e 20 61 6c 6c 20 4c 69 6e 6b 73 20 3c </b> all Links <
0ed0: 62 3e 61 72 65 20 73 74 72 69 63 74 6c 79 20 66 b>are strictly f
0ee0: 6f 72 62 69 64 64 65 6e 3c 2f 62 3e 20 74 6f 20 orbidden</b> to
0ef0: 68 61 76 65 20 61 6e 79 20 47 65 6f 6d 65 74 72 have any Geometr
0f00: 79 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 49 6e 20 y.</li>..<li>In
0f10: 61 20 3c 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 a <b>Spatial Net
0f20: 77 6f 72 6b 3c 2f 62 3e 20 62 6f 74 68 20 74 68 work</b> both th
0f30: 65 20 3c 62 3e 53 74 61 72 74 50 6f 69 6e 74 3c e <b>StartPoint<
0f40: 2f 62 3e 20 61 6e 64 20 3c 62 3e 45 6e 64 50 6f /b> and <b>EndPo
0f50: 69 6e 74 3c 2f 62 3e 20 6f 66 20 65 61 63 68 20 int</b> of each
0f60: 4c 69 6e 6b 27 73 20 3c 62 3e 4c 49 4e 45 53 54 Link's <b>LINEST
0f70: 52 49 4e 47 3c 2f 62 3e 20 61 72 65 20 61 6c 77 RING</b> are alw
0f80: 61 79 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 ays expected to
0f90: 65 78 61 63 74 6c 79 20 63 6f 69 6e 63 69 64 65 exactly coincide
0fa0: 20 77 69 74 68 20 74 68 65 20 63 6f 72 72 65 73 with the corres
0fb0: 70 6f 6e 64 69 6e 67 20 3c 62 3e 4e 6f 64 65 73 ponding <b>Nodes
0fc0: 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c </b>.</li>..</ul
0fd0: 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 49 6e 20 61 ></li>..<li>In a
0fe0: 20 3c 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 <b>Spatial Netw
0ff0: 6f 72 6b 3c 2f 62 3e 20 61 6c 6c 20 72 65 66 65 ork</b> all refe
1000: 72 65 6e 63 65 73 20 74 6f 20 74 68 65 20 73 61 rences to the sa
1010: 6d 65 20 3c 62 3e 4e 6f 64 65 3c 2f 62 3e 20 62 me <b>Node</b> b
1020: 79 20 64 69 66 66 65 72 65 6e 74 20 4c 69 6e 6b y different Link
1030: 73 20 3c 62 3e 6d 75 73 74 3c 2f 62 3e 20 62 65 s <b>must</b> be
1040: 20 61 6e 20 65 78 61 63 74 20 6d 61 74 63 68 2e an exact match.
1050: 3c 62 72 3e 0d 0a 3c 75 3e 45 78 61 6d 70 6c 65 <br>..<u>Example
1060: 3c 2f 75 3e 3a 20 4e 6f 64 65 20 3c 62 3e 4e 35 </u>: Node <b>N5
1070: 3c 2f 62 3e 20 69 73 20 73 68 61 72 65 64 20 62 </b> is shared b
1080: 79 20 4c 69 6e 6b 73 20 3c 62 3e 4c 33 3c 2f 62 y Links <b>L3</b
1090: 3e 2c 20 3c 62 3e 4c 36 3c 2f 62 3e 2c 20 3c 62 >, <b>L6</b>, <b
10a0: 3e 4c 37 3c 2f 62 3e 2c 20 3c 62 3e 4c 39 3c 2f >L7</b>, <b>L9</
10b0: 62 3e 20 61 6e 64 20 3c 62 3e 4c 31 30 3c 2f 62 b> and <b>L10</b
10c0: 3e 2c 20 73 6f 20 61 6c 6c 20 74 68 65 69 72 20 >, so all their
10d0: 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 4c 49 corresponding LI
10e0: 4e 45 53 54 52 49 4e 47 53 20 61 72 65 20 65 78 NESTRINGS are ex
10f0: 70 65 63 74 65 64 20 74 6f 20 68 61 76 65 20 74 pected to have t
1100: 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 he corresponding
1110: 20 65 78 74 72 65 6d 69 74 79 20 28 3c 62 3e 53 extremity (<b>S
1120: 74 61 72 74 2d 3c 2f 62 3e 20 6f 72 20 3c 62 3e tart-</b> or <b>
1130: 45 6e 64 2d 3c 2f 62 3e 2c 20 64 65 70 65 6e 64 End-</b>, depend
1140: 69 6e 67 20 6f 6e 20 74 68 65 20 6f 72 69 65 6e ing on the orien
1150: 74 61 74 69 6f 6e 29 20 70 6f 69 6e 74 73 20 74 tation) points t
1160: 68 61 74 20 6d 75 73 74 20 65 78 61 63 74 6c 79 hat must exactly
1170: 20 6d 61 74 63 68 20 74 68 65 20 6f 74 68 65 72 match the other
1180: 2e 3c 62 72 3e 0d 0a 41 20 3c 62 3e 74 6f 70 6f .<br>..A <b>topo
1190: 6c 6f 67 69 63 61 6c 20 69 6e 63 6f 6e 73 69 73 logical inconsis
11a0: 74 65 6e 63 79 3c 2f 62 3e 20 65 78 69 73 74 73 tency</b> exists
11b0: 20 69 66 20 61 6e 79 20 6f 66 20 74 68 65 73 65 if any of these
11c0: 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 conditions are
11d0: 6e 6f 74 20 73 61 74 69 73 66 69 65 64 2c 20 77 not satisfied, w
11e0: 68 69 63 68 20 6c 65 61 64 73 20 74 6f 20 61 6e hich leads to an
11f0: 20 3c 62 3e 69 6e 76 61 6c 69 64 3c 2f 62 3e 20 <b>invalid</b>
1200: 4e 65 74 77 6f 72 6b 2e 3c 2f 6c 69 3e 0d 0a 3c Network.</li>..<
1210: 6c 69 3e 49 6e 20 61 20 3c 62 3e 53 70 61 74 69 li>In a <b>Spati
1220: 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 74 al Network</b> t
1230: 77 6f 0d 0a 3c 6c 69 3e 41 63 63 6f 72 64 69 6e wo..<li>Accordin
1240: 67 6c 79 20 74 6f 20 74 68 65 20 61 62 6f 76 65 gly to the above
1250: 20 70 72 65 6d 69 73 65 73 2c 20 3c 62 3e 4e 6f premises, <b>No
1260: 64 65 73 3c 2f 62 3e 20 61 72 65 20 6e 65 76 65 des</b> are neve
1270: 72 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 r expected to be
1280: 20 65 78 70 6c 69 63 69 74 6c 79 20 64 65 63 6c explicitly decl
1290: 61 72 65 64 20 69 6e 20 61 20 73 65 70 61 72 61 ared in a separa
12a0: 74 65 20 54 61 62 6c 65 2e 3c 62 72 3e 0d 0a 4a te Table.<br>..J
12b0: 75 73 74 20 61 20 73 69 6e 67 6c 65 20 54 61 62 ust a single Tab
12c0: 6c 65 20 64 65 63 6c 61 72 69 6e 67 20 61 6c 6c le declaring all
12d0: 20 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 69 73 <b>Links</b> is
12e0: 20 72 65 71 75 69 72 65 64 20 69 6e 20 6f 72 64 required in ord
12f0: 65 72 20 74 6f 20 66 75 6c 6c 79 20 64 65 66 69 er to fully defi
1300: 6e 65 20 61 20 74 6f 70 6f 6c 6f 67 69 63 61 6c ne a topological
1310: 6c 79 20 76 61 6c 69 64 20 4e 65 74 77 6f 72 6b ly valid Network
1320: 2e 3c 62 72 3e 0d 0a 41 6c 6c 20 74 68 65 20 4e .<br>..All the N
1330: 6f 64 65 73 20 63 61 6e 20 74 68 65 6e 20 62 65 odes can then be
1340: 20 65 61 73 69 6c 79 20 65 78 74 72 61 63 74 65 easily extracte
1350: 64 20 66 72 6f 6d 20 74 68 65 20 4c 69 6e 6b 73 d from the Links
1360: 27 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 61 6e ' definitions an
1370: 64 20 74 68 65 20 63 6f 6f 72 64 69 6e 61 74 65 d the coordinate
1380: 73 20 66 6f 72 20 65 61 63 68 20 4e 6f 64 65 20 s for each Node
1390: 63 61 6e 20 62 65 20 64 69 72 65 63 74 6c 79 20 can be directly
13a0: 73 65 74 20 62 79 20 65 78 74 72 61 63 74 69 6e set by extractin
13b0: 67 20 74 68 65 20 65 78 74 72 65 6d 65 20 50 6f g the extreme Po
13c0: 69 6e 74 20 6f 66 20 74 68 65 20 63 6f 72 72 65 int of the corre
13d0: 73 70 6f 6e 64 69 6e 67 20 4c 69 6e 65 73 74 72 sponding Linestr
13e0: 69 6e 67 73 2e 3c 62 72 3e 0d 0a 49 66 20 61 6e ings.<br>..If an
13f0: 79 20 6d 69 73 6d 61 74 63 68 20 69 73 20 64 65 y mismatch is de
1400: 74 65 63 74 65 64 20 74 68 69 73 20 73 75 72 65 tected this sure
1410: 6c 79 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 ly means that th
1420: 65 20 4e 65 74 77 6f 72 6b 20 69 73 20 69 6e 76 e Network is inv
1430: 61 6c 69 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e alid.</li>..<li>
1440: 41 20 3c 62 3e 4c 69 6e 6b 3c 2f 62 3e 20 6d 61 A <b>Link</b> ma
1450: 79 20 6c 65 67 69 74 69 6d 61 74 65 6c 79 20 73 y legitimately s
1460: 65 6c 66 2d 69 6e 74 65 72 73 65 63 74 20 69 74 elf-intersect it
1470: 73 65 6c 66 20 28 65 2e 67 2e 20 66 6f 72 6d 69 self (e.g. formi
1480: 6e 67 20 61 20 6c 6f 6f 70 29 2c 20 61 73 20 73 ng a loop), as s
1490: 68 6f 77 6e 20 69 6e 20 74 68 65 20 61 62 6f 76 hown in the abov
14a0: 65 20 66 69 67 75 72 65 20 62 79 20 4c 69 6e 6b e figure by Link
14b0: 20 3c 62 3e 4c 31 35 3c 2f 62 3e 20 28 6f 72 61 <b>L15</b> (ora
14c0: 6e 67 65 20 73 70 6f 74 29 2e 3c 2f 6c 69 3e 0d nge spot).</li>.
14d0: 0a 3c 6c 69 3e 54 77 6f 20 3c 62 3e 4c 69 6e 6b .<li>Two <b>Link
14e0: 73 3c 2f 62 3e 20 6d 61 79 20 6c 65 67 69 74 69 s</b> may legiti
14f0: 6d 61 74 65 6c 79 20 69 6e 74 65 72 73 65 63 74 mately intersect
1500: 20 77 68 65 72 65 20 6e 6f 20 4e 6f 64 65 20 65 where no Node e
1510: 78 69 73 74 73 2c 20 61 73 20 65 78 65 6d 70 6c xists, as exempl
1520: 69 66 69 65 64 20 6f 6e 20 74 68 65 20 61 62 6f ified on the abo
1530: 76 65 20 66 69 67 75 72 65 20 62 79 20 4c 69 6e ve figure by Lin
1540: 6b 73 20 3c 62 3e 4c 34 3c 2f 62 3e 20 61 6e 64 ks <b>L4</b> and
1550: 20 3c 62 3e 4c 37 3c 2f 62 3e 20 28 67 72 65 65 <b>L7</b> (gree
1560: 6e 20 73 70 6f 74 29 2e 3c 62 72 3e 0d 0a 54 68 n spot).<br>..Th
1570: 69 73 20 75 73 75 61 6c 6c 79 20 68 61 70 70 65 is usually happe
1580: 6e 73 20 77 68 65 6e 20 6f 6e 65 20 6f 66 20 74 ns when one of t
1590: 68 65 20 74 77 6f 20 4c 69 6e 6b 73 20 6f 76 65 he two Links ove
15a0: 72 70 61 73 73 65 73 20 74 68 65 20 6f 74 68 65 rpasses the othe
15b0: 72 2c 20 6f 72 20 77 68 65 72 65 20 73 6f 6d 65 r, or where some
15c0: 20 74 65 63 68 6e 69 63 61 6c 20 72 65 73 74 72 technical restr
15d0: 69 63 74 69 6f 6e 20 65 78 69 73 74 73 20 28 65 iction exists (e
15e0: 2e 67 2e 20 74 77 6f 20 69 6e 73 75 6c 61 74 65 .g. two insulate
15f0: 64 20 77 69 72 65 73 20 69 6e 20 61 6e 20 45 6c d wires in an El
1600: 65 63 74 72 69 63 61 6c 20 4e 65 74 77 6f 72 6b ectrical Network
1610: 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e ).</li>..<li><b>
1620: 4c 69 6e 6b 73 3c 2f 62 3e 20 61 72 65 6e 27 74 Links</b> aren't
1630: 20 73 74 72 69 63 74 6c 79 20 72 65 71 75 69 72 strictly requir
1640: 65 64 20 74 6f 20 62 65 20 61 73 73 6f 63 69 61 ed to be associa
1650: 74 65 64 20 77 69 74 68 20 61 6e 79 20 73 70 65 ted with any spe
1660: 63 69 66 69 63 20 61 74 74 72 69 62 75 74 65 2c cific attribute,
1670: 20 62 75 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 but the followi
1680: 6e 67 20 61 74 74 72 69 62 75 74 65 73 20 61 72 ng attributes ar
1690: 65 20 61 6c 6d 6f 73 74 20 75 6e 69 76 65 72 73 e almost univers
16a0: 61 6c 6c 79 20 73 75 70 70 6f 72 74 65 64 3a 0d ally supported:.
16b0: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 61 20 3c 62 3e .<ul>..<li>a <b>
16c0: 6e 61 6d 65 3c 2f 62 3e 20 69 64 65 6e 74 69 66 name</b> identif
16d0: 79 69 6e 67 20 74 68 65 20 4c 69 6e 6b 2e 3c 62 ying the Link.<b
16e0: 72 3e 0d 0a 3c 75 3e 45 78 61 6d 70 6c 65 73 3c r>..<u>Examples<
16f0: 2f 75 3e 3a 20 74 68 65 20 3c 69 3e 72 6f 61 64 /u>: the <i>road
1700: 20 74 6f 70 6f 6e 79 6d 3c 2f 69 3e 20 69 6e 20 toponym</i> in
1710: 61 20 3c 62 3e 72 6f 61 64 20 6e 65 74 77 6f 72 a <b>road networ
1720: 6b 3c 2f 62 3e 2c 20 6f 72 20 74 68 65 20 3c 69 k</b>, or the <i
1730: 3e 72 69 76 65 72 20 6e 61 6d 65 3c 2f 69 3e 20 >river name</i>
1740: 69 6e 20 61 6e 20 3c 62 3e 68 79 64 72 6f 67 72 in an <b>hydrogr
1750: 61 70 68 69 63 20 6e 65 74 77 6f 72 6b 3c 2f 62 aphic network</b
1760: 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 6f 6e 65 >.</li>..<li>one
1770: 20 28 6f 72 20 65 76 65 6e 20 6d 6f 72 65 29 20 (or even more)
1780: 61 70 70 72 6f 70 72 69 61 74 65 20 3c 62 3e 63 appropriate <b>c
1790: 6f 73 74 20 76 61 6c 75 65 3c 2f 62 3e 28 73 29 ost value</b>(s)
17a0: 2e 3c 62 72 3e 0d 0a 3c 75 3e 45 78 61 6d 70 6c .<br>..<u>Exampl
17b0: 65 3c 2f 75 3e 3a 20 74 68 65 20 3c 69 3e 74 69 e</u>: the <i>ti
17c0: 6d 65 3c 2f 69 3e 20 72 65 71 75 69 72 65 64 20 me</i> required
17d0: 74 6f 20 74 72 61 76 65 72 73 65 20 74 68 65 20 to traverse the
17e0: 4c 69 6e 6b 20 28 6d 61 79 20 62 65 20 64 69 73 Link (may be dis
17f0: 74 69 6e 67 75 69 73 68 65 64 20 62 65 74 77 65 tinguished betwe
1800: 65 6e 20 70 65 64 65 73 74 72 69 61 6e 73 2c 20 en pedestrians,
1810: 62 69 63 79 63 6c 65 73 2c 20 63 61 72 73 2c 20 bicycles, cars,
1820: 6c 6f 72 72 69 65 73 20 61 6e 64 20 73 6f 20 6f lorries and so o
1830: 6e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 20 n).</li>..<li>a
1840: 70 61 69 72 20 6f 66 20 3c 62 3e 62 6f 6f 6c 65 pair of <b>boole
1850: 61 6e 20 66 6c 61 67 73 3c 2f 62 3e 20 28 3c 62 an flags</b> (<b
1860: 3e 66 72 6f 6d 2d 74 6f 3c 2f 62 3e 20 61 6e 64 >from-to</b> and
1870: 20 3c 62 3e 74 6f 2d 66 72 6f 6d 3c 2f 62 3e 29 <b>to-from</b>)
1880: 20 61 72 65 20 69 6e 74 65 6e 64 65 6e 64 20 74 are intendend t
1890: 6f 20 73 70 65 63 69 66 79 20 69 66 20 74 68 65 o specify if the
18a0: 20 4c 69 6e 6b 20 63 61 6e 20 62 65 20 74 72 61 Link can be tra
18b0: 76 65 72 73 65 64 20 6f 6e 20 62 6f 74 68 20 64 versed on both d
18c0: 69 72 65 63 74 69 6f 6e 73 20 6f 72 20 6a 75 73 irections or jus
18d0: 74 20 69 6e 20 6f 6e 65 20 28 3c 62 3e 6f 6e 65 t in one (<b>one
18e0: 2d 77 61 79 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d -way</b>).</li>.
18f0: 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 .</ul></li>..</u
1900: 6c 3e 0d 0a 3c 68 34 3e 4c 6f 67 69 63 61 6c 20 l>..<h4>Logical
1910: 63 6f 6e 63 6c 75 73 69 6f 6e 73 3c 2f 68 34 3e conclusions</h4>
1920: 0d 0a 41 6e 79 20 74 6f 70 6f 6c 6f 67 69 63 61 ..Any topologica
1930: 6c 6c 79 20 76 61 6c 69 64 20 3c 62 3e 4e 65 74 lly valid <b>Net
1940: 77 6f 72 6b 3c 2f 62 3e 20 28 69 72 72 65 73 70 work</b> (irresp
1950: 65 63 74 69 76 65 20 6f 66 20 77 68 65 74 68 65 ective of whethe
1960: 72 20 69 74 20 69 73 20 61 20 3c 62 3e 53 70 61 r it is a <b>Spa
1970: 74 69 61 6c 3c 2f 62 3e 20 6f 72 20 3c 62 3e 4c tial</b> or <b>L
1980: 6f 67 69 63 61 6c 3c 2f 62 3e 20 74 79 70 65 29 ogical</b> type)
1990: 20 69 73 20 61 20 76 61 6c 69 64 20 3c 62 3e 47 is a valid <b>G
19a0: 72 61 70 68 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 41 raph</b>.<br>..A
19b0: 20 4e 65 74 77 6f 72 6b 20 61 6c 6c 6f 77 69 6e Network allowin
19c0: 67 20 74 68 65 20 73 75 70 70 6f 72 74 20 28 64 g the support (d
19d0: 69 72 65 63 74 20 6f 72 20 69 6e 64 69 72 65 63 irect or indirec
19e0: 74 29 20 6f 66 20 73 6f 6d 65 20 61 70 70 72 6f t) of some appro
19f0: 70 72 69 61 74 65 20 3c 62 3e 63 6f 73 74 20 76 priate <b>cost v
1a00: 61 6c 75 65 3c 2f 62 3e 20 69 73 20 61 20 76 61 alue</b> is a va
1a10: 6c 69 64 20 3c 62 3e 57 65 69 67 68 74 65 64 20 lid <b>Weighted
1a20: 47 72 61 70 68 3c 2f 62 3e 2c 20 61 6e 64 20 63 Graph</b>, and c
1a30: 61 6e 20 63 6f 6e 73 65 71 75 65 6e 74 6c 79 20 an consequently
1a40: 73 75 70 70 6f 72 74 20 3c 62 3e 52 6f 75 74 69 support <b>Routi
1a50: 6e 67 20 61 6c 67 6f 72 69 74 68 6d 73 3c 2f 62 ng algorithms</b
1a60: 3e 2e 3c 62 72 3e 0d 0a 41 6c 6c 20 52 6f 75 74 >.<br>..All Rout
1a70: 69 6e 67 20 61 6c 67 6f 72 69 74 68 6d 73 20 61 ing algorithms a
1a80: 72 65 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 69 re intended to i
1a90: 64 65 6e 74 69 66 79 20 74 68 65 20 3c 62 3e 53 dentify the <b>S
1aa0: 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 62 3e hortest Path</b>
1ab0: 20 73 6f 6c 75 74 69 6f 6e 20 63 6f 6e 6e 65 63 solution connec
1ac0: 74 69 6e 67 20 74 77 6f 20 3c 62 3e 4e 6f 64 65 ting two <b>Node
1ad0: 73 3c 2f 62 3e 20 69 6e 20 61 20 3c 62 3e 77 65 s</b> in a <b>we
1ae0: 69 67 68 74 65 64 20 67 72 61 70 68 3c 2f 62 3e ighted graph</b>
1af0: 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e (<i>aka</i> <b>
1b00: 4e 65 74 77 6f 72 6b 3c 2f 62 3e 29 2e 3c 62 72 Network</b>).<br
1b10: 3e 3c 62 72 3e 0d 0a 3c 62 3e 3c 75 3e 4e 6f 74 ><br>..<b><u>Not
1b20: 65 3c 2f 75 3e 3c 2f 62 3e 3a 20 74 68 65 20 74 e</u></b>: the t
1b30: 65 72 6d 20 3c 62 3e 3c 69 3e 53 68 6f 72 74 65 erm <b><i>Shorte
1b40: 73 74 20 50 61 74 68 3c 2f 69 3e 3c 2f 62 3e 20 st Path</i></b>
1b50: 63 61 6e 20 62 65 20 65 61 73 69 6c 79 20 6d 69 can be easily mi
1b60: 73 75 6e 64 65 72 73 74 6f 6f 64 2e 3c 62 72 3e sunderstood.<br>
1b70: 0d 0a 44 75 65 20 74 6f 20 68 69 73 74 6f 72 69 ..Due to histori
1b80: 63 61 6c 20 72 65 61 73 6f 6e 73 20 74 68 65 20 cal reasons the
1b90: 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 20 61 70 70 6c most common appl
1ba0: 69 63 61 74 69 6f 6e 20 66 69 65 6c 64 20 66 6f ication field fo
1bb0: 72 20 52 6f 75 74 69 6e 67 20 61 6c 67 6f 72 69 r Routing algori
1bc0: 74 68 6d 73 20 69 73 20 72 65 6c 61 74 65 64 20 thms is related
1bd0: 74 6f 20 3c 62 3e 52 6f 61 64 20 4e 65 74 77 6f to <b>Road Netwo
1be0: 72 6b 73 3c 2f 62 3e 2c 20 62 75 74 20 61 6c 73 rks</b>, but als
1bf0: 6f 20 6d 61 6e 79 20 6f 74 68 65 72 20 6b 69 6e o many other kin
1c00: 64 73 20 6f 66 20 4e 65 74 77 6f 72 6b 73 20 65 ds of Networks e
1c10: 78 69 73 74 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 xist:..<ul>..<li
1c20: 3e 48 79 64 72 6f 67 72 61 70 68 69 63 20 4e 65 >Hydrographic Ne
1c30: 74 77 6f 72 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c tworks.</li>..<l
1c40: 69 3e 47 61 73 20 2f 20 57 61 74 65 72 20 2f 20 i>Gas / Water /
1c50: 4f 69 6c 20 4e 65 74 77 6f 72 6b 73 2e 3c 2f 6c Oil Networks.</l
1c60: 69 3e 0d 0a 3c 6c 69 3e 45 6c 65 63 74 72 69 63 i>..<li>Electric
1c70: 61 6c 20 4e 65 74 77 6f 72 6b 73 2e 3c 2f 6c 69 al Networks.</li
1c80: 3e 0d 0a 3c 6c 69 3e 54 65 6c 65 63 6f 6d 75 6e >..<li>Telecomun
1c90: 69 63 61 74 69 6f 6e 20 4e 65 74 77 6f 72 6b 73 ication Networks
1ca0: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 53 6f 63 69 .</li>..<li>Soci
1cb0: 61 6c 20 6f 72 20 45 63 6f 6e 6f 6d 69 63 61 6c al or Economical
1cc0: 20 4e 65 74 77 6f 72 6b 73 20 72 65 70 72 65 73 Networks repres
1cd0: 65 6e 74 69 6e 67 20 72 65 6c 61 74 69 6f 6e 73 enting relations
1ce0: 68 69 70 73 20 62 65 74 77 65 65 6e 20 69 6e 64 hips between ind
1cf0: 69 76 69 64 75 61 6c 73 20 6f 72 20 63 6f 6d 70 ividuals or comp
1d00: 61 6e 69 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 anies.</li>..<li
1d10: 3e 45 70 69 64 65 6d 69 6f 6c 6f 67 69 63 61 6c >Epidemiological
1d20: 20 4e 65 74 77 6f 72 6b 73 20 72 65 70 72 65 73 Networks repres
1d30: 65 6e 74 69 6e 67 20 74 68 65 20 70 72 6f 70 61 enting the propa
1d40: 67 61 74 69 6f 6e 20 6f 66 20 69 6e 66 65 63 74 gation of infect
1d50: 69 76 65 20 64 69 73 65 61 73 65 73 20 62 65 74 ive diseases bet
1d60: 77 65 65 6e 20 69 6e 64 69 76 69 64 75 61 6c 73 ween individuals
1d70: 20 6f 72 20 67 72 6f 75 70 73 2e 3c 2f 6c 69 3e or groups.</li>
1d80: 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 20 0d 0a 3c ..</ul></li> ..<
1d90: 62 72 3e 0d 0a 49 6e 20 61 6c 6c 20 74 68 65 20 br>..In all the
1da0: 61 62 6f 76 65 20 63 61 73 65 73 20 77 65 20 63 above cases we c
1db0: 65 72 74 61 69 6e 6c 79 20 68 61 76 65 20 76 61 ertainly have va
1dc0: 6c 69 64 20 4e 65 74 77 6f 72 6b 73 20 73 75 70 lid Networks sup
1dd0: 70 6f 72 74 69 6e 67 20 52 6f 75 74 69 6e 67 20 porting Routing
1de0: 61 6c 67 6f 72 69 74 68 6e 73 2c 20 62 75 74 20 algorithns, but
1df0: 6e 6f 74 20 61 6c 6c 20 6f 66 20 74 68 65 6d 20 not all of them
1e00: 63 61 6e 20 69 6d 70 6c 79 20 73 6f 6d 65 74 68 can imply someth
1e10: 69 6e 67 20 6c 69 6b 65 20 61 20 3c 69 3e 73 70 ing like a <i>sp
1e20: 61 74 69 61 6c 20 64 69 73 74 61 6e 63 65 3c 2f atial distance</
1e30: 69 3e 20 28 3c 69 3e 67 65 6f 6d 65 74 72 69 63 i> (<i>geometric
1e40: 20 6c 65 6e 67 74 68 3c 2f 69 3e 29 20 6f 72 20 length</i>) or
1e50: 61 20 3c 69 3e 74 72 61 76 65 6c 20 74 69 6d 65 a <i>travel time
1e60: 3c 2f 69 3e 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 </i>.<br>..In th
1e70: 65 20 6d 6f 73 74 20 67 65 6e 65 72 61 6c 20 61 e most general a
1e80: 63 63 65 70 74 69 6f 6e 20 3c 62 3e 63 6f 73 74 cception <b>cost
1e90: 73 3c 2f 62 3e 20 63 61 6e 20 62 65 20 72 65 70 s</b> can be rep
1ea0: 72 65 73 65 6e 74 65 64 20 62 79 20 61 6e 79 20 resented by any
1eb0: 72 65 61 73 6f 6e 61 62 6c 65 20 70 68 79 73 69 reasonable physi
1ec0: 63 61 6c 20 71 75 61 6e 74 69 74 79 2e 3c 62 72 cal quantity.<br
1ed0: 3e 0d 0a 53 6f 20 61 20 6d 6f 72 65 20 67 65 6e >..So a more gen
1ee0: 65 72 61 6c 69 7a 65 64 20 64 65 66 69 6e 69 74 eralized definit
1ef0: 69 6f 6e 20 69 73 20 61 73 73 75 6d 69 6e 67 20 ion is assuming
1f00: 74 68 61 74 20 52 6f 75 74 69 6e 67 20 61 6c 67 that Routing alg
1f10: 6f 72 69 74 68 6d 73 20 61 72 65 20 69 6e 74 65 orithms are inte
1f20: 6e 64 65 64 20 74 6f 20 69 64 65 6e 74 69 66 79 nded to identify
1f30: 20 3c 62 3e 6c 65 73 73 65 72 20 63 6f 73 74 3c <b>lesser cost<
1f40: 2f 62 3e 20 73 6f 6c 75 74 69 6f 6e 73 20 6f 6e /b> solutions on
1f50: 20 61 20 3c 62 3e 77 65 69 67 68 74 65 64 20 67 a <b>weighted g
1f60: 72 61 70 68 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 54 raph</b>.<br>..T
1f70: 68 65 20 65 78 61 63 74 20 69 6e 74 65 72 70 72 he exact interpr
1f80: 65 74 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 69 etation of the i
1f90: 6e 76 6f 6c 76 65 64 20 3c 62 3e 63 6f 73 74 73 nvolved <b>costs
1fa0: 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e </b> (<i>aka</i>
1fb0: 20 3c 62 3e 77 65 69 67 68 74 73 3c 2f 62 3e 29 <b>weights</b>)
1fc0: 20 73 74 72 69 63 74 6c 79 20 64 65 70 65 6e 64 strictly depend
1fd0: 73 20 6f 6e 20 74 68 65 20 76 65 72 79 20 73 70 s on the very sp
1fe0: 65 63 69 66 69 63 20 6e 61 74 75 72 65 20 6f 66 ecific nature of
1ff0: 20 65 61 63 68 20 4e 65 74 77 6f 72 6b 2e 0d 0a each Network...
2000: 3c 68 33 3e 54 68 65 20 44 69 6a 6b 73 74 72 61 <h3>The Dijkstra
2010: 27 73 20 61 6c 67 6f 72 69 74 68 6d 3c 2f 68 33 's algorithm</h3
2020: 3e 0d 0a 54 68 69 73 20 77 65 6c 6c 20 6b 6e 6f >..This well kno
2030: 77 6e 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 wn <a href="http
2040: 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 s://en.wikipedia
2050: 2e 6f 72 67 2f 77 69 6b 69 2f 44 69 6a 6b 73 74 .org/wiki/Dijkst
2060: 72 61 25 32 37 73 5f 61 6c 67 6f 72 69 74 68 6d ra%27s_algorithm
2070: 22 3e 61 6c 67 6f 72 69 74 68 6d 3c 2f 61 3e 20 ">algorithm</a>
2080: 69 73 6e 27 74 20 6e 65 63 65 73 73 61 72 69 6c isn't necessaril
2090: 79 20 74 68 65 20 66 61 73 74 65 73 74 20 6f 6e y the fastest on
20a0: 65 2c 20 62 75 74 20 69 74 20 61 6c 77 61 79 73 e, but it always
20b0: 20 65 6e 73 75 72 65 73 20 3c 62 3e 66 75 6c 6c ensures <b>full
20c0: 20 63 6f 72 72 65 63 74 6e 65 73 73 3c 2f 62 3e correctness</b>
20d0: 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 41 6e 79 :..<ul>..<li>Any
20e0: 20 4e 6f 64 65 2d 74 6f 2d 4e 6f 64 65 20 63 6f Node-to-Node co
20f0: 6e 6e 65 63 74 69 6f 6e 20 69 64 65 6e 74 69 66 nnection identif
2100: 69 65 64 20 62 79 20 44 69 6a 6b 73 74 72 61 27 ied by Dijkstra'
2110: 73 20 69 73 20 63 65 72 74 61 69 6e 6c 79 20 65 s is certainly e
2120: 6e 73 75 72 65 64 20 74 6f 20 62 65 20 3c 62 3e nsured to be <b>
2130: 6f 70 74 69 6d 61 6c 3c 2f 62 3e 2e 3c 62 72 3e optimal</b>.<br>
2140: 0d 0a 49 6e 20 6f 74 68 65 72 20 77 6f 72 64 73 ..In other words
2150: 2c 20 6e 6f 20 63 6f 6e 6e 65 74 63 74 69 6f 6e , no connetction
2160: 20 70 72 65 73 65 6e 74 69 6e 67 20 61 20 6c 6f presenting a lo
2170: 77 65 72 20 63 6f 73 74 20 63 61 6e 20 63 6f 6e wer cost can con
2180: 63 65 70 74 75 61 6c 6c 79 20 65 78 69 73 74 2e ceptually exist.
2190: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 57 68 65 6e 20 </li>..<li>When
21a0: 44 69 6a 73 6a 74 72 61 27 73 20 66 61 69 6c 73 Dijsjtra's fails
21b0: 20 74 6f 20 69 64 65 6e 74 69 66 79 20 61 20 73 to identify a s
21c0: 6f 6c 75 74 69 6f 6e 20 74 68 69 73 20 73 75 72 olution this sur
21d0: 65 6c 79 20 6d 65 61 6e 73 20 74 68 61 74 20 6e ely means that n
21e0: 6f 20 73 6f 6c 75 74 69 6f 6e 20 69 73 20 70 6f o solution is po
21f0: 73 73 69 62 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 2f ssible.</li>..</
2200: 75 6c 3e 0d 0a 3c 68 33 3e 54 68 65 20 41 2a 20 ul>..<h3>The A*
2210: 61 6c 67 6f 72 69 74 68 6d 3c 2f 68 33 3e 0d 0a algorithm</h3>..
2220: 4d 61 6e 79 20 61 6c 74 65 72 6e 61 74 69 76 65 Many alternative
2230: 20 52 6f 75 74 69 6e 67 20 61 6c 67 6f 72 69 74 Routing algorit
2240: 68 6d 73 20 68 61 76 65 20 62 65 65 6e 20 69 6e hms have been in
2250: 76 65 6e 74 65 64 20 64 75 72 69 6e 67 20 74 68 vented during th
2260: 65 20 79 65 61 72 73 2e 3c 62 72 3e 0d 0a 41 6c e years.<br>..Al
2270: 6c 20 74 68 65 6d 20 61 72 65 20 62 61 73 65 64 l them are based
2280: 20 6f 6e 20 68 65 75 72 69 73 74 69 63 20 61 73 on heuristic as
2290: 73 75 6d 70 74 69 6f 6e 73 20 61 6e 64 20 61 72 sumptions and ar
22a0: 65 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 62 65 e intended to be
22b0: 20 66 61 73 74 65 72 20 74 68 61 6e 20 44 69 6a faster than Dij
22c0: 6b 73 74 72 61 27 73 2c 20 62 75 74 20 6e 6f 6e kstra's, but non
22d0: 65 20 6f 66 20 74 68 65 6d 20 63 61 6e 20 65 6e e of them can en
22e0: 73 75 72 65 20 3c 62 3e 66 75 6c 6c 20 63 6f 72 sure <b>full cor
22f0: 72 65 63 74 6e 65 73 73 3c 2f 62 3e 20 61 73 20 rectness</b> as
2300: 44 69 6a 6b 73 74 72 61 27 73 20 64 6f 65 73 2e Dijkstra's does.
2310: 3c 62 72 3e 0d 0a 54 68 65 20 3c 61 20 68 72 65 <br>..The <a hre
2320: 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 f="https://en.wi
2330: 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 kipedia.org/wiki
2340: 2f 41 2a 5f 73 65 61 72 63 68 5f 61 6c 67 6f 72 /A*_search_algor
2350: 69 74 68 6d 22 3e 41 2a 20 61 6c 67 6f 72 69 74 ithm">A* algorit
2360: 68 6d 3c 2f 61 3e 20 61 70 70 6c 69 65 73 20 61 hm</a> applies a
2370: 20 6d 69 6c 64 20 68 65 75 72 69 73 74 69 63 20 mild heuristic
2380: 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2c 20 61 6e optimization, an
2390: 64 20 63 61 6e 20 62 65 20 61 20 72 65 61 6c 69 d can be a reali
23a0: 73 74 69 63 20 61 6c 74 65 72 6e 61 74 69 76 65 stic alternative
23b0: 20 74 6f 20 44 69 6a 6b 73 74 72 61 27 73 20 69 to Dijkstra's i
23c0: 6e 20 6d 61 6e 79 20 63 61 73 65 73 2e 3c 62 72 n many cases.<br
23d0: 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 0d 0a 3c 68 31 ><br>..<hr>..<h1
23e0: 3e 3c 61 20 6e 61 6d 65 3d 22 73 61 6d 70 6c 65 ><a name="sample
23f0: 22 3e 32 20 2d 20 54 68 65 20 73 61 6d 70 6c 65 ">2 - The sample
2400: 2f 74 65 73 74 20 44 42 3c 2f 61 3e 3c 2f 68 31 /test DB</a></h1
2410: 3e 0d 0a 59 6f 75 20 61 72 65 20 65 78 70 65 63 >..You are expec
2420: 74 65 64 20 74 6f 20 66 6f 6c 6c 6f 77 20 74 68 ted to follow th
2430: 65 20 63 75 72 72 65 6e 74 20 74 75 74 6f 72 69 e current tutori
2440: 61 6c 20 61 62 6f 75 74 20 3c 62 3e 56 69 72 74 al about <b>Virt
2450: 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e 20 62 ualRouting</b> b
2460: 79 20 64 69 72 65 63 74 6c 79 20 74 65 73 74 69 y directly testi
2470: 6e 67 20 61 6c 6c 20 53 51 4c 20 71 75 65 72 69 ng all SQL queri
2480: 65 73 20 64 69 73 63 75 73 73 65 64 20 62 65 6c es discussed bel
2490: 6f 77 20 6f 6e 20 62 65 68 61 6c 66 20 6f 66 20 ow on behalf of
24a0: 74 68 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 the <a href="htt
24b0: 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 ps://www.gaia-gi
24c0: 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 s.it/gaia-sins/r
24d0: 6f 75 74 69 6e 67 2d 73 61 6d 70 6c 65 2d 35 2e outing-sample-5.
24e0: 30 2e 30 2e 37 7a 22 3e 73 61 6d 70 6c 65 2f 74 0.0.7z">sample/t
24f0: 65 73 74 20 44 42 20 74 68 61 74 20 79 6f 75 20 est DB that you
2500: 63 61 6e 20 64 6f 77 6e 6c 6f 61 64 20 66 72 6f can download fro
2510: 6d 20 68 65 72 65 3c 2f 61 3e 3c 62 72 3e 3c 62 m here</a><br><b
2520: 72 3e 0d 0a 54 68 65 20 73 61 6d 70 6c 65 20 44 r>..The sample D
2530: 42 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 66 B contains the f
2540: 75 6c 6c 20 3c 62 3e 72 6f 61 64 20 6e 65 74 77 ull <b>road netw
2550: 6f 72 6b 3c 2f 62 3e 20 6f 66 20 3c 62 3e 54 75 ork</b> of <b>Tu
2560: 73 63 61 6e 79 20 52 65 67 69 6f 6e 20 28 49 74 scany Region (It
2570: 61 6c 79 29 3c 2f 62 3e 20 28 3c 61 20 68 72 65 aly)</b> (<a hre
2580: 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 35 30 32 f="http://www502
2590: 2e 72 65 67 69 6f 6e 65 2e 74 6f 73 63 61 6e 61 .regione.toscana
25a0: 2e 69 74 2f 67 65 6f 73 63 6f 70 69 6f 2f 64 6f .it/geoscopio/do
25b0: 77 6e 6c 6f 61 64 2f 67 72 61 66 6f 5f 73 74 72 wnload/grafo_str
25c0: 61 64 61 6c 65 2f 69 74 65 72 6e 65 74 2e 7a 69 adale/iternet.zi
25d0: 70 22 3e 49 74 65 72 2e 4e 65 74 20 64 61 74 61 p">Iter.Net data
25e0: 73 65 74 3c 2f 61 3e 29 20 6b 69 6e 64 6c 79 20 set</a>) kindly
25f0: 72 65 6c 65 61 73 65 64 20 75 6e 64 65 72 20 74 released under t
2600: 68 65 20 3c 62 3e 43 43 2d 42 59 2d 53 41 20 34 he <b>CC-BY-SA 4
2610: 2e 30 3c 2f 62 3e 20 6c 69 63 65 6e 63 65 20 74 .0</b> licence t
2620: 65 72 6d 73 2e 3c 62 72 3e 0d 0a 54 68 65 20 63 erms.<br>..The c
2630: 6f 6e 74 65 6e 74 73 20 73 74 6f 72 65 64 20 69 ontents stored i
2640: 6e 74 6f 20 74 68 65 20 73 61 6d 70 6c 65 20 64 nto the sample d
2650: 61 74 61 62 61 73 65 20 77 65 72 65 20 6f 70 70 atabase were opp
2660: 6f 72 74 75 6e 65 6c 79 20 72 65 61 72 72 61 6e ortunely rearran
2670: 67 65 64 2c 20 61 6e 64 20 61 72 65 20 73 74 69 ged, and are sti
2680: 6c 6c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 ll subject to th
2690: 65 20 69 6e 69 74 69 61 6c 20 3c 62 3e 43 43 2d e initial <b>CC-
26a0: 42 59 2d 53 41 20 34 2e 30 3c 2f 62 3e 20 63 6c BY-SA 4.0</b> cl
26b0: 61 75 73 65 73 20 28 3c 69 3e 64 65 72 69 76 65 auses (<i>derive
26c0: 64 20 77 6f 72 6b 3c 2f 69 3e 29 2e 0d 0a 3c 62 d work</i>)...<b
26d0: 72 3e 3c 62 72 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c r><br>..<ul>..<l
26e0: 69 3e 61 6c 6c 20 72 6f 61 64 20 6e 61 6d 65 73 i>all road names
26f0: 20 61 72 65 20 73 74 6f 72 65 64 20 77 69 74 68 are stored with
2700: 69 6e 20 74 68 65 20 3c 62 3e 74 6f 70 6f 6e 79 in the <b>topony
2710: 6d 73 3c 2f 62 3e 20 54 61 62 6c 65 2e 3c 62 72 ms</b> Table.<br
2720: 3e 0d 0a 74 68 65 20 73 61 6d 65 20 72 6f 61 64 >..the same road
2730: 20 6e 61 6d 65 20 63 6f 75 6c 64 20 62 65 20 75 name could be u
2740: 73 65 64 20 69 6e 20 64 69 66 66 65 72 65 6e 74 sed in different
2750: 20 4d 75 6e 69 63 69 70 61 6c 69 74 69 65 73 2c Municipalities,
2760: 20 73 6f 20 74 68 65 20 3c 62 3e 74 6f 70 6f 6e so the <b>topon
2770: 79 6d 73 3c 2f 62 3e 20 54 61 62 6c 65 20 72 65 yms</b> Table re
2780: 6c 61 74 69 6f 6e 61 6c 6c 79 20 72 65 66 65 72 lationally refer
2790: 65 6e 63 65 73 20 74 68 65 20 3c 62 3e 6d 75 6e ences the <b>mun
27a0: 69 63 69 70 61 6c 69 74 69 65 73 3c 2f 62 3e 20 icipalities</b>
27b0: 54 61 62 6c 65 20 28 76 69 61 20 3c 62 3e 50 52 Table (via <b>PR
27c0: 49 4d 41 52 59 3c 2f 62 3e 20 2f 20 3c 62 3e 46 IMARY</b> / <b>F
27d0: 4f 52 45 49 47 4e 20 4b 45 59 3c 2f 62 3e 20 72 OREIGN KEY</b> r
27e0: 65 6c 61 74 69 6f 6e 73 68 69 70 73 29 2e 3c 2f elationships).</
27f0: 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e li>..<li>the <b>
2800: 72 6f 61 64 73 3c 2f 62 3e 20 53 70 61 74 69 61 roads</b> Spatia
2810: 6c 20 54 61 62 6c 65 20 63 6f 6e 74 61 69 6e 73 l Table contains
2820: 20 61 62 6f 75 74 20 3c 62 3e 33 38 30 2c 30 30 about <b>380,00
2830: 30 3c 2f 62 3e 20 4c 69 6e 6b 73 2c 20 61 6e 64 0</b> Links, and
2840: 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 has the followi
2850: 6e 67 20 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c 75 6c ng columns:..<ul
2860: 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 3c 2f 62 3e >..<li><b>id</b>
2870: 3a 20 75 6e 69 71 75 65 20 69 64 65 6e 74 69 66 : unique identif
2880: 69 65 72 20 6f 66 20 65 61 63 68 20 4c 69 6e 6b ier of each Link
2890: 20 28 3c 62 3e 50 52 49 4d 41 52 59 20 4b 45 59 (<b>PRIMARY KEY
28a0: 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 </b>).</li>..<li
28b0: 3e 3c 62 3e 6e 6f 64 65 5f 66 72 6f 6d 3c 2f 62 ><b>node_from</b
28c0: 3e 20 61 6e 64 20 3c 62 3e 6e 6f 64 65 5f 74 6f > and <b>node_to
28d0: 3c 2f 62 3e 3a 20 4e 6f 64 65 20 69 64 65 6e 74 </b>: Node ident
28e0: 69 66 69 65 72 73 2e 0d 0a 54 68 65 20 6f 72 69 ifiers...The ori
28f0: 67 69 6e 61 6c 20 49 74 65 72 2e 4e 65 74 20 64 ginal Iter.Net d
2900: 61 74 61 73 65 74 20 61 64 6f 70 74 73 20 76 65 ataset adopts ve
2910: 72 79 20 6c 6f 6e 67 20 61 6e 20 63 6f 6d 70 6c ry long an compl
2920: 65 78 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 20 ex alphanumeric
2930: 4e 6f 64 65 20 63 6f 64 65 73 3b 20 74 68 65 20 Node codes; the
2940: 69 6e 74 65 67 65 72 20 4e 6f 64 65 20 49 44 73 integer Node IDs
2950: 20 77 65 72 65 20 6f 62 74 61 69 6e 65 64 20 62 were obtained b
2960: 79 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 3c 62 y calling the <b
2970: 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 4e 6f >CreateRoutingNo
2980: 64 65 73 28 29 3c 2f 62 3e 20 53 51 4c 20 66 75 des()</b> SQL fu
2990: 6e 63 74 69 6f 6e 20 64 69 73 63 75 73 73 65 64 nction discussed
29a0: 20 69 6e 20 61 20 66 6f 6c 6c 6f 77 69 6e 67 20 in a following
29b0: 73 65 63 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c section.</li>..<
29c0: 6c 69 3e 3c 62 3e 69 64 5f 74 6f 70 6f 6e 79 6d li><b>id_toponym
29d0: 3c 2f 62 3e 3a 20 72 65 6c 61 74 69 6f 6e 61 6c </b>: relational
29e0: 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 reference to th
29f0: 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 e corresponding
2a00: 72 6f 61 64 20 6e 61 6d 65 20 63 6f 6e 74 61 69 road name contai
2a10: 6e 65 64 20 69 6e 74 6f 20 74 68 65 20 3c 62 3e ned into the <b>
2a20: 74 6f 70 6f 6e 79 6d 73 3c 2f 62 3e 20 54 61 62 toponyms</b> Tab
2a30: 6c 65 20 28 3c 62 3e 46 4f 52 45 49 47 4e 20 4b le (<b>FOREIGN K
2a40: 45 59 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c EY</b>).</li>..<
2a50: 6c 69 3e 3c 62 3e 73 70 65 65 64 5f 6b 6d 68 3c li><b>speed_kmh<
2a60: 2f 62 3e 3a 20 74 68 65 20 65 73 74 69 6d 61 74 /b>: the estimat
2a70: 65 64 20 61 76 65 72 61 67 65 20 73 70 65 65 64 ed average speed
2a80: 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 supported by th
2a90: 65 20 4c 69 6e 6b 2c 20 65 78 70 72 65 73 73 65 e Link, expresse
2aa0: 64 20 69 6e 20 3c 62 3e 6b 6d 2f 68 3c 2f 62 3e d in <b>km/h</b>
2ab0: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f .<br>..<u>Note</
2ac0: 75 3e 3a 20 3c 62 3e 6e 65 67 61 74 69 76 65 3c u>: <b>negative<
2ad0: 2f 62 3e 20 73 70 65 65 64 73 20 69 6e 74 65 6e /b> speeds inten
2ae0: 64 20 61 20 66 6f 72 62 69 64 64 65 6e 20 4c 69 d a forbidden Li
2af0: 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 nk.</li>..<li><b
2b00: 3e 6f 6e 65 77 61 79 5f 66 72 6f 6d 74 6f 3c 2f >oneway_fromto</
2b10: 62 3e 20 61 6e 64 20 3c 62 3e 6f 6e 65 77 61 79 b> and <b>oneway
2b20: 5f 74 6f 66 72 6f 6d 3c 2f 62 3e 3a 20 62 6f 6f _tofrom</b>: boo
2b30: 6c 65 61 6e 20 66 6c 61 67 73 20 69 6e 74 65 6e lean flags inten
2b40: 64 65 64 20 74 6f 20 73 74 61 74 65 20 69 66 20 ded to state if
2b50: 61 20 4c 69 6e 6b 20 63 61 6e 20 62 65 20 74 72 a Link can be tr
2b60: 61 76 65 72 73 65 64 20 69 6e 20 62 6f 74 68 20 aversed in both
2b70: 64 69 72 65 63 74 69 6f 6e 73 20 6f 72 20 6a 75 directions or ju
2b80: 73 74 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 64 st in a single d
2b90: 69 72 65 63 74 69 6f 6e 20 28 3c 62 3e 6f 6e 65 irection (<b>one
2ba0: 2d 77 61 79 3c 2f 62 3e 29 2e 3c 62 72 3e 0d 0a -way</b>).<br>..
2bb0: 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 61 6c 6c <u>Note</u>: all
2bc0: 20 4c 69 6e 6b 73 20 64 65 63 6c 61 72 69 6e 67 Links declaring
2bd0: 20 3c 62 3e 6f 6e 65 77 61 79 5f 66 72 6f 6d 74 <b>oneway_fromt
2be0: 6f 3d 30 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 6f o=0</b> and <b>o
2bf0: 6e 65 77 61 79 5f 74 6f 66 72 6f 6d 3d 30 3c 2f neway_tofrom=0</
2c00: 62 3e 20 61 72 65 20 69 6e 74 65 6e 64 65 64 20 b> are intended
2c10: 74 6f 20 62 65 20 61 6c 77 61 79 73 20 66 6f 72 to be always for
2c20: 62 69 64 64 65 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c bidden.</li>..<l
2c30: 69 3e 3c 62 3e 63 6f 73 74 3c 2f 62 3e 3a 20 74 i><b>cost</b>: t
2c40: 68 65 20 3c 62 3e 74 69 6d 65 3c 2f 62 3e 20 65 he <b>time</b> e
2c50: 78 70 72 65 73 73 65 64 20 69 6e 20 3c 62 3e 73 xpressed in <b>s
2c60: 65 63 6f 6e 64 73 3c 2f 62 3e 20 72 65 71 75 69 econds</b> requi
2c70: 72 65 64 20 74 6f 20 74 72 61 76 65 72 73 65 20 red to traverse
2c80: 65 61 63 68 20 4c 69 6e 6b 2e 3c 62 72 3e 0d 0a each Link.<br>..
2c90: 3c 75 3e 4e 6f 74 65 20 23 31 3c 2f 75 3e 20 61 <u>Note #1</u> a
2ca0: 6c 6c 20 63 6f 73 74 73 20 77 65 72 65 20 63 61 ll costs were ca
2cb0: 6c 63 75 6c 61 74 65 64 20 61 63 63 6f 72 64 69 lculated accordi
2cc0: 6e 67 6c 79 20 74 6f 20 74 68 65 20 66 6f 6c 6c ngly to the foll
2cd0: 6f 77 69 6e 67 20 66 6f 72 6d 75 6c 61 3a 20 3c owing formula: <
2ce0: 62 3e 63 6f 73 74 20 3d 20 28 28 53 54 5f 4c 65 b>cost = ((ST_Le
2cf0: 6e 67 74 68 28 67 65 6f 6d 29 20 2f 20 31 30 30 ngth(geom) / 100
2d00: 30 2e 30 29 20 2f 20 73 70 65 65 64 5f 6b 6d 68 0.0) / speed_kmh
2d10: 29 20 2a 20 33 36 30 30 2e 30 3c 2f 62 3e 3c 62 ) * 3600.0</b><b
2d20: 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 3c 2f r>..<u>Note #2</
2d30: 75 3e 20 61 6c 6c 20 3c 62 3e 38 36 2c 34 30 30 u> all <b>86,400
2d40: 2e 30 3c 2f 62 3e 20 63 6f 73 74 20 76 61 6c 75 .0</b> cost valu
2d50: 65 73 20 28 65 71 75 69 76 61 6c 65 6e 74 20 74 es (equivalent t
2d60: 6f 20 31 20 64 61 79 29 20 61 70 70 72 6f 78 69 o 1 day) approxi
2d70: 6d 61 74 65 20 61 6e 20 3c 62 3e 69 6e 66 69 6e mate an <b>infin
2d80: 69 74 69 76 65 20 63 6f 73 74 3c 2f 62 3e 20 74 itive cost</b> t
2d90: 68 75 73 20 69 6e 74 65 6e 64 69 6e 67 20 61 20 hus intending a
2da0: 3c 62 3e 66 6f 72 62 69 64 64 65 6e 3c 2f 62 3e <b>forbidden</b>
2db0: 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 Link.</li>..<li
2dc0: 3e 3c 62 3e 67 65 6f 6d 3c 2f 62 3e 3a 20 61 20 ><b>geom</b>: a
2dd0: 3c 62 3e 33 44 20 4c 69 6e 65 73 74 72 69 6e 67 <b>3D Linestring
2de0: 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 69 6e </b> representin
2df0: 67 20 74 68 65 20 47 65 6f 6d 65 74 72 79 20 6f g the Geometry o
2e00: 66 20 65 61 63 68 20 4c 69 6e 6b 2e 3c 62 72 3e f each Link.<br>
2e10: 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 74 ..<u>Note</u>: t
2e20: 68 65 20 6f 72 69 67 69 6e 61 6c 20 3c 62 3e 49 he original <b>I
2e30: 74 65 72 2e 4e 65 74 3c 2f 62 3e 20 64 61 74 61 ter.Net</b> data
2e40: 73 65 74 20 69 73 20 6a 75 73 74 20 3c 62 3e 32 set is just <b>2
2e50: 44 3c 2f 62 3e 3b 20 65 6c 65 76 61 74 69 6f 6e D</b>; elevation
2e60: 73 20 28 3c 62 3e 5a 3c 2f 62 3e 20 63 6f 6f 72 s (<b>Z</b> coor
2e70: 64 69 6e 61 74 65 73 29 20 77 65 72 65 20 69 6e dinates) were in
2e80: 74 65 72 70 6f 6c 61 74 65 64 20 62 79 20 64 72 terpolated by dr
2e90: 61 70 69 6e 67 20 74 68 65 20 64 61 74 61 73 65 aping the datase
2ea0: 74 20 6f 76 65 72 20 61 6e 20 3c 61 20 68 72 65 t over an <a hre
2eb0: 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 35 30 32 f="http://www502
2ec0: 2e 72 65 67 69 6f 6e 65 2e 74 6f 73 63 61 6e 61 .regione.toscana
2ed0: 2e 69 74 2f 67 65 6f 73 63 6f 70 69 6f 2f 64 6f .it/geoscopio/do
2ee0: 77 6e 6c 6f 61 64 2f 61 6c 74 69 6d 65 74 72 69 wnload/altimetri
2ef0: 61 2f 64 61 5f 63 74 72 31 30 6b 2f 67 62 2f 44 a/da_ctr10k/gb/D
2f00: 54 4d 5f 4f 72 6f 67 72 61 66 69 63 6f 2e 37 7a TM_Orografico.7z
2f10: 22 3e 6f 72 6f 67 72 61 70 68 69 63 20 44 45 4d ">orographic DEM
2f20: 20 28 31 30 6d 20 58 20 31 30 6d 20 63 65 6c 6c (10m X 10m cell
2f30: 73 29 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 s)</a></li>..</u
2f40: 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 l></li>..<li>the
2f50: 20 3c 62 3e 72 6f 61 64 73 5f 76 77 3c 2f 62 3e <b>roads_vw</b>
2f60: 20 53 70 61 74 69 61 6c 20 56 69 65 77 20 69 73 Spatial View is
2f70: 20 6a 75 73 74 20 69 6e 74 65 6e 64 65 64 20 74 just intended t
2f80: 6f 20 66 75 6c 6c 79 20 72 65 73 6f 6c 76 65 20 o fully resolve
2f90: 61 6c 6c 20 72 65 6c 61 74 69 6f 6e 61 6c 20 72 all relational r
2fa0: 65 66 65 72 65 6e 63 65 73 20 62 65 74 77 65 65 eferences betwee
2fb0: 6e 20 3c 62 3e 72 6f 61 64 73 3c 2f 62 3e 2c 20 n <b>roads</b>,
2fc0: 3c 62 3e 74 6f 70 6f 6e 79 6d 73 3c 2f 62 3e 20 <b>toponyms</b>
2fd0: 61 6e 64 20 3c 62 3e 6d 75 6e 69 63 69 70 61 6c and <b>municipal
2fe0: 69 74 69 65 73 3c 2f 62 3e 2c 20 74 68 75 73 20 ities</b>, thus
2ff0: 61 6c 6c 6f 77 69 6e 67 20 66 6f 72 20 65 61 73 allowing for eas
3000: 69 65 72 20 53 51 4c 20 71 75 65 72 69 65 73 2e ier SQL queries.
3010: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c </li>..<li>the <
3020: 62 3e 68 6f 75 73 65 5f 6e 72 3c 2f 62 3e 20 53 b>house_nr</b> S
3030: 70 61 74 69 61 6c 20 54 61 62 6c 65 20 63 6f 6e patial Table con
3040: 74 61 69 6e 73 20 61 62 6f 75 74 20 3c 62 3e 31 tains about <b>1
3050: 2c 34 38 30 2c 30 30 30 3c 2f 62 3e 20 48 6f 75 ,480,000</b> Hou
3060: 73 65 20 4e 75 6d 62 65 72 73 2c 20 61 6e 64 20 se Numbers, and
3070: 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e has the followin
3080: 67 20 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c 75 6c 3e g columns:..<ul>
3090: 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 3c 2f 62 3e 3a ..<li><b>id</b>:
30a0: 20 75 6e 69 71 75 65 20 69 64 65 6e 74 69 66 69 unique identifi
30b0: 65 72 20 6f 66 20 65 61 63 68 20 48 6f 75 73 65 er of each House
30c0: 20 4e 75 6d 62 65 72 20 28 3c 62 3e 50 52 49 4d Number (<b>PRIM
30d0: 41 52 59 20 4b 45 59 3c 2f 62 3e 29 2e 3c 2f 6c ARY KEY</b>).</l
30e0: 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 5f 72 6f i>..<li><b>id_ro
30f0: 61 64 3c 2f 62 3e 3a 20 72 65 6c 61 74 69 6f 6e ad</b>: relation
3100: 61 6c 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 al reference to
3110: 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e the correspondin
3120: 67 20 4c 69 6e 6b 20 63 6f 6e 74 61 69 6e 65 64 g Link contained
3130: 20 69 6e 74 6f 20 74 68 65 20 3c 62 3e 72 6f 61 into the <b>roa
3140: 64 73 3c 2f 62 3e 20 54 61 62 6c 65 20 28 3c 62 ds</b> Table (<b
3150: 3e 46 4f 52 45 49 47 4e 20 4b 45 59 3c 2f 62 3e >FOREIGN KEY</b>
3160: 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e ).</li>..<li><b>
3170: 6c 61 62 65 6c 3c 2f 62 3e 3a 20 74 68 65 20 74 label</b>: the t
3180: 65 78 74 75 61 6c 20 6c 61 62 65 6c 20 66 75 6c extual label ful
3190: 6c 79 20 71 75 61 6c 69 66 79 69 6e 67 20 65 61 ly qualifying ea
31a0: 63 68 20 48 6f 75 73 65 20 4e 75 6d 62 65 72 2e ch House Number.
31b0: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 67 65 </li>..<li><b>ge
31c0: 6f 6d 3c 2f 62 3e 3a 20 61 20 3c 62 3e 33 44 20 om</b>: a <b>3D
31d0: 50 6f 69 6e 74 3c 2f 62 3e 20 72 65 70 72 65 73 Point</b> repres
31e0: 65 6e 74 69 6e 67 20 74 68 65 20 47 65 6f 6d 65 enting the Geome
31f0: 74 72 79 20 6f 66 20 65 61 63 68 20 48 6f 75 73 try of each Hous
3200: 65 20 4e 75 6d 62 65 72 2e 3c 62 72 3e 0d 0a 3c e Number.<br>..<
3210: 75 3e 4e 6f 74 65 20 23 31 3c 2f 75 3e 3a 20 61 u>Note #1</u>: a
3220: 6c 73 6f 20 69 6e 20 74 68 69 73 20 63 61 73 65 lso in this case
3230: 20 61 6c 6c 20 65 6c 65 76 61 74 69 6f 6e 73 20 all elevations
3240: 28 3c 62 3e 5a 3c 2f 62 3e 20 63 6f 6f 72 64 69 (<b>Z</b> coordi
3250: 6e 61 74 65 73 29 20 77 65 72 65 20 69 6e 74 65 nates) were inte
3260: 72 70 6f 6c 61 74 65 64 20 62 79 20 64 72 61 70 rpolated by drap
3270: 69 6e 67 20 74 68 65 20 64 61 74 61 73 65 74 20 ing the dataset
3280: 6f 76 65 72 20 74 68 65 20 73 61 6d 65 20 44 45 over the same DE
3290: 4d 20 61 73 20 61 62 6f 76 65 2e 3c 62 72 3e 0d M as above.<br>.
32a0: 0a 3c 75 3e 4e 6f 74 65 20 23 32 3c 2f 75 3e 3a .<u>Note #2</u>:
32b0: 20 73 74 72 69 63 74 6c 79 20 73 70 65 63 6b 69 strictly specki
32c0: 6e 67 20 74 68 65 20 48 6f 75 73 65 20 4e 75 6d ng the House Num
32d0: 62 65 72 73 20 61 72 65 20 6e 6f 74 20 70 61 72 bers are not par
32e0: 74 20 6f 66 20 74 68 65 20 52 6f 61 64 20 4e 65 t of the Road Ne
32f0: 74 77 6f 72 6b 3b 20 74 68 65 79 20 61 72 65 20 twork; they are
3300: 69 6e 63 6c 75 64 65 20 69 6e 74 6f 20 74 68 65 include into the
3310: 20 73 61 6d 70 6c 65 2f 74 65 73 74 20 64 61 74 sample/test dat
3320: 61 62 61 73 65 20 6a 75 73 74 20 62 65 63 61 75 abase just becau
3330: 73 65 20 74 68 65 79 27 6c 6c 20 62 65 20 75 73 se they'll be us
3340: 65 66 75 6c 20 69 6e 20 73 6f 6d 65 20 6f 66 20 eful in some of
3350: 74 68 65 20 65 78 61 6d 70 6c 65 73 20 65 78 70 the examples exp
3360: 6c 61 69 6e 65 64 20 69 6e 20 62 65 6c 6f 77 20 lained in below
3370: 70 61 72 61 67 72 61 70 68 73 2e 3c 2f 6c 69 3e paragraphs.</li>
3380: 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c ..</ul></li>..<l
3390: 69 3e 74 68 65 20 3c 62 3e 68 6f 75 73 65 5f 6e i>the <b>house_n
33a0: 72 5f 76 77 3c 2f 62 3e 20 53 70 61 74 69 61 6c r_vw</b> Spatial
33b0: 20 56 69 65 77 20 69 73 20 6a 75 73 74 20 69 6e View is just in
33c0: 74 65 6e 64 65 64 20 74 6f 20 66 75 6c 6c 79 20 tended to fully
33d0: 72 65 73 6f 6c 76 65 20 61 6c 6c 20 72 65 6c 61 resolve all rela
33e0: 74 69 6f 6e 61 6c 20 72 65 66 65 72 65 6e 63 65 tional reference
33f0: 73 20 62 65 74 77 65 65 6e 20 3c 62 3e 68 6f 75 s between <b>hou
3400: 73 65 5f 6e 72 3c 2f 62 3e 2c 20 3c 62 3e 72 6f se_nr</b>, <b>ro
3410: 61 64 73 3c 2f 62 3e 2c 20 3c 62 3e 74 6f 70 6f ads</b>, <b>topo
3420: 6e 79 6d 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e nyms</b> and <b>
3430: 6d 75 6e 69 63 69 70 61 6c 69 74 69 65 73 3c 2f municipalities</
3440: 62 3e 2c 20 74 68 75 73 20 61 6c 6c 6f 77 69 6e b>, thus allowin
3450: 67 20 66 6f 72 20 65 61 73 69 65 72 20 53 51 4c g for easier SQL
3460: 20 71 75 65 72 69 65 73 2e 3c 2f 6c 69 3e 0d 0a queries.</li>..
3470: 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 20 3c 68 </ul>..<br>.. <h
3480: 72 3e 0d 0a 3c 68 31 3e 3c 61 20 6e 61 6d 65 3d r>..<h1><a name=
3490: 22 63 72 65 61 74 65 22 3e 33 20 2d 20 43 72 65 "create">3 - Cre
34a0: 61 74 69 6e 67 20 56 69 72 74 75 61 6c 52 6f 75 ating VirtualRou
34b0: 74 69 6e 67 20 54 61 62 6c 65 73 3c 2f 61 3e 3c ting Tables</a><
34c0: 2f 68 31 3e 0d 0a 41 6c 6c 20 56 69 72 74 75 61 /h1>..All Virtua
34d0: 6c 52 6f 75 74 69 6e 67 20 71 75 65 72 69 65 73 lRouting queries
34e0: 20 61 72 65 20 62 61 73 65 64 20 6f 6e 20 73 6f are based on so
34f0: 6d 65 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 me <b>VirtualRou
3500: 74 69 6e 67 20 54 61 62 6c 65 3c 2f 62 3e 2c 20 ting Table</b>,
3510: 61 6e 64 20 69 6e 20 74 75 72 6e 20 61 6e 79 20 and in turn any
3520: 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 VirtualRouting T
3530: 61 62 6c 65 20 69 73 20 62 61 73 65 64 20 6f 6e able is based on
3540: 20 73 6f 6d 65 20 61 70 70 72 6f 70 72 69 61 74 some appropriat
3550: 65 20 3c 62 3e 42 69 6e 61 72 79 20 44 61 74 61 e <b>Binary Data
3560: 20 54 61 62 6c 65 3c 2f 62 3e 20 73 75 70 70 6f Table</b> suppo
3570: 72 74 69 6e 67 20 61 6e 20 65 66 66 69 63 69 65 rting an efficie
3580: 6e 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f nt representatio
3590: 6e 20 6f 66 20 74 68 65 20 75 6e 64 65 72 6c 79 n of the underly
35a0: 69 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e ing Network.<br>
35b0: 0d 0a 53 6f 20 77 65 27 6c 6c 20 73 74 61 72 74 ..So we'll start
35c0: 20 66 69 72 73 74 20 62 79 20 63 72 65 61 74 69 first by creati
35d0: 6e 67 20 73 75 63 68 20 74 61 62 6c 65 73 2e 3c ng such tables.<
35e0: 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 20 6f 6c 64 br><br>..The old
35f0: 20 61 6e 64 20 6e 6f 77 20 73 75 70 65 72 73 65 and now superse
3600: 64 65 64 20 3c 62 3e 56 69 72 74 75 61 6c 4e 65 ded <b>VirtualNe
3610: 74 77 6f 72 6b 3c 2f 62 3e 20 72 65 71 75 69 72 twork</b> requir
3620: 65 64 20 75 73 69 6e 67 20 61 20 73 65 70 61 72 ed using a separ
3630: 61 74 65 20 43 4c 49 20 74 6f 6f 6c 20 28 3c 62 ate CLI tool (<b
3640: 3e 73 70 61 74 69 61 6c 69 74 65 5f 6e 65 74 77 >spatialite_netw
3650: 6f 72 6b 3c 2f 62 3e 29 20 69 6e 20 6f 72 64 65 ork</b>) in orde
3660: 72 20 74 6f 20 70 72 6f 70 65 72 6c 79 20 69 6e r to properly in
3670: 69 74 69 61 6c 69 7a 65 20 61 20 56 69 72 74 75 itialize a Virtu
3680: 61 6c 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 20 alNetwork Table
3690: 61 6e 64 20 69 74 73 20 63 6f 6d 70 61 6e 69 6f and its companio
36a0: 6e 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 n Binary Data Ta
36b0: 62 6c 65 3b 0d 0a 61 6c 74 65 72 6e 61 74 69 76 ble;..alternativ
36c0: 65 6c 79 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 ely <b>spatialit
36d0: 65 5f 67 75 69 3c 2f 62 3e 20 73 75 70 70 6f 72 e_gui</b> suppor
36e0: 74 65 64 20 61 20 3c 62 3e 47 55 49 20 77 69 7a ted a <b>GUI wiz
36f0: 61 72 64 3c 2f 62 3e 20 66 6f 72 20 74 68 65 20 ard</b> for the
3700: 73 61 6d 65 20 74 61 73 6b 2e 20 53 69 6e 63 65 same task. Since
3710: 20 76 65 72 73 69 6f 6e 20 3c 62 3e 35 2e 30 2e version <b>5.0.
3720: 30 3c 2f 62 3e 20 6e 6f 77 20 53 70 61 74 69 61 0</b> now Spatia
3730: 4c 69 74 65 20 64 69 72 65 63 74 6c 79 20 73 75 Lite directly su
3740: 70 70 6f 72 74 73 20 61 20 73 70 65 63 69 66 69 pports a specifi
3750: 63 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 c <b>CreateRouti
3760: 6e 67 28 29 3c 2f 62 3e 20 53 51 4c 20 66 75 6e ng()</b> SQL fun
3770: 63 74 69 6f 6e 2e 0d 0a 3c 76 65 72 62 61 74 69 ction...<verbati
3780: 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 74 m>..SELECT Creat
3790: 65 52 6f 75 74 69 6e 67 28 27 62 79 66 6f 6f 74 eRouting('byfoot
37a0: 5f 64 61 74 61 27 2c 20 27 62 79 66 6f 6f 74 27 _data', 'byfoot'
37b0: 2c 20 27 72 6f 61 64 73 5f 76 77 27 2c 20 27 6e , 'roads_vw', 'n
37c0: 6f 64 65 5f 66 72 6f 6d 27 2c 20 27 6e 6f 64 65 ode_from', 'node
37d0: 74 6f 27 2c 20 27 67 65 6f 6d 27 2c 20 4e 55 4c to', 'geom', NUL
37e0: 4c 29 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 43 72 L);....SELECT Cr
37f0: 65 61 74 65 52 6f 75 74 69 6e 67 5f 47 65 74 4c eateRouting_GetL
3800: 61 73 74 45 72 72 6f 72 28 29 3b 0d 0a 2d 2d 2d astError();..---
3810: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3820: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3830: 2d 0d 0a 54 6f 4e 6f 64 65 20 43 6f 6c 75 6d 6e -..ToNode Column
3840: 20 22 6e 6f 64 65 74 6f 22 20 69 73 20 6e 6f 74 "nodeto" is not
3850: 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 65 20 defined in the
3860: 49 6e 70 75 74 20 54 61 62 6c 65 0d 0a 3c 2f 76 Input Table..</v
3870: 65 72 62 61 74 69 6d 3e 0d 0a 3c 75 3e 4e 6f 74 erbatim>..<u>Not
3880: 65 3c 2f 75 3e 3a 20 74 68 69 73 20 66 69 72 73 e</u>: this firs
3890: 74 20 71 75 65 72 79 20 28 62 61 73 65 64 20 6f t query (based o
38a0: 6e 20 74 68 65 20 3c 69 3e 72 65 64 75 63 65 64 n the <i>reduced
38b0: 20 66 6f 72 6d 3c 2f 69 3e 20 6f 66 20 3c 62 3e form</i> of <b>
38c0: 43 72 65 61 74 65 52 6f 75 74 69 6e 67 3c 2f 62 CreateRouting</b
38d0: 3e 29 20 63 6f 6e 74 61 69 6e 73 20 61 6e 20 69 >) contains an i
38e0: 6e 74 65 6e 64 65 64 20 65 72 72 6f 72 20 63 61 ntended error ca
38f0: 75 73 69 6e 67 20 61 20 66 61 69 6c 75 72 65 20 using a failure
3900: 61 6e 64 20 74 68 75 73 20 72 61 69 73 69 6e 67 and thus raising
3910: 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 2e 3c 62 an exception.<b
3920: 72 3e 0d 0a 43 72 65 61 74 65 52 6f 75 74 69 6e r>..CreateRoutin
3930: 67 28 29 20 63 61 6e 20 66 61 69 6c 20 66 6f 72 g() can fail for
3940: 20 6d 75 6c 74 69 70 6c 65 20 72 65 61 73 6f 6e multiple reason
3950: 73 2c 20 61 6e 64 20 62 79 20 63 61 6c 6c 69 6e s, and by callin
3960: 67 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 g <b>CreateRouti
3970: 6e 67 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 28 ng_GetLastError(
3980: 29 3c 2f 62 3e 20 79 6f 75 20 63 61 6e 20 65 61 )</b> you can ea
3990: 73 69 6c 79 20 69 64 65 6e 74 69 66 79 20 74 68 sily identify th
39a0: 65 20 65 78 61 63 74 20 72 65 61 73 6f 6e 20 77 e exact reason w
39b0: 68 79 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 hy the most rece
39c0: 6e 74 20 63 61 6c 6c 20 74 6f 20 43 72 65 61 74 nt call to Creat
39d0: 65 52 6f 75 74 69 6e 67 28 29 20 66 61 69 6c 65 eRouting() faile
39e0: 64 2e 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 d.<br>..<verbati
39f0: 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 74 m>..SELECT Creat
3a00: 65 52 6f 75 74 69 6e 67 28 27 62 79 66 6f 6f 74 eRouting('byfoot
3a10: 5f 64 61 74 61 27 2c 20 27 62 79 66 6f 6f 74 27 _data', 'byfoot'
3a20: 2c 20 27 72 6f 61 64 73 5f 76 77 27 2c 20 27 6e , 'roads_vw', 'n
3a30: 6f 64 65 5f 66 72 6f 6d 27 2c 20 27 6e 6f 64 65 ode_from', 'node
3a40: 5f 74 6f 27 2c 20 27 67 65 6f 6d 27 2c 20 4e 55 _to', 'geom', NU
3a50: 4c 4c 2c 20 27 74 6f 70 6f 6e 79 6d 27 2c 20 31 LL, 'toponym', 1
3a60: 2c 20 31 29 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d , 1);..---------
3a70: 2d 2d 2d 2d 0d 0a 31 0d 0a 0d 0a 53 45 4c 45 43 ----..1....SELEC
3a80: 54 20 43 72 65 61 74 65 52 6f 75 74 69 6e 67 5f T CreateRouting_
3a90: 47 65 74 4c 61 73 74 45 72 72 6f 72 28 29 3b 0d GetLastError();.
3aa0: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d .---------------
3ab0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3ac0: 2d 2d 2d 2d 2d 0d 0a 4e 55 4c 4c 0d 0a 3c 2f 76 -----..NULL..</v
3ad0: 65 72 62 61 74 69 6d 3e 0d 0a 54 68 69 73 20 73 erbatim>..This s
3ae0: 65 63 6f 6e 64 20 61 74 74 65 6d 70 74 20 69 73 econd attempt is
3af0: 20 66 69 6e 61 6c 6c 79 20 73 75 63 63 65 73 73 finally success
3b00: 66 75 6c 2c 20 61 6e 64 20 6e 6f 77 20 43 72 65 ful, and now Cre
3b10: 61 74 65 52 6f 75 74 69 6e 67 28 29 20 72 65 74 ateRouting() ret
3b20: 75 72 6e 73 20 3c 62 3e 31 3c 2f 62 3e 20 28 3c urns <b>1</b> (<
3b30: 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 54 52 55 i>aka</i> <b>TRU
3b40: 45 3c 2f 62 3e 29 2c 20 61 6e 64 20 61 73 20 79 E</b>), and as y
3b50: 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 63 68 ou can easily ch
3b60: 65 63 6b 20 6e 6f 77 20 74 68 65 20 44 61 74 61 eck now the Data
3b70: 62 61 73 65 20 63 6f 6e 74 61 69 6e 73 20 74 77 base contains tw
3b80: 6f 20 6e 65 77 20 54 61 62 6c 65 73 3a 20 3c 62 o new Tables: <b
3b90: 3e 62 79 66 6f 6f 74 3c 2f 62 3e 20 61 6e 64 20 >byfoot</b> and
3ba0: 3c 62 3e 62 79 66 6f 6f 74 5f 64 61 74 61 3c 2f <b>byfoot_data</
3bb0: 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 b>.<br>..<u>Note
3bc0: 3c 2f 75 3e 3a 20 61 66 74 65 72 20 61 20 73 75 </u>: after a su
3bd0: 63 63 65 73 73 66 75 6c 20 63 61 6c 6c 20 74 6f ccessful call to
3be0: 20 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 CreateRouting()
3bf0: 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e <b>CreateRoutin
3c00: 67 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 28 29 g_GetLastError()
3c10: 3c 2f 62 3e 20 77 69 6c 6c 20 61 6c 77 61 79 73 </b> will always
3c20: 20 72 65 74 75 72 6e 20 3c 62 3e 4e 55 4c 4c 3c return <b>NULL<
3c30: 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 59 6f /b>.<br><br>..Yo
3c40: 75 27 76 65 20 6a 75 73 74 20 75 73 65 64 20 6f u've just used o
3c50: 6e 65 20 6f 66 20 74 68 65 20 3c 69 3e 70 61 72 ne of the <i>par
3c60: 74 69 61 6c 6c 79 20 72 65 64 75 63 65 64 20 66 tially reduced f
3c70: 6f 72 6d 3c 2f 69 3e 20 6f 66 20 43 72 65 61 74 orm</i> of Creat
3c80: 65 52 6f 75 74 69 6e 67 28 29 3b 20 6c 65 74 27 eRouting(); let'
3c90: 73 20 73 65 65 20 69 6e 20 6d 6f 72 65 20 64 65 s see in more de
3ca0: 70 74 68 20 61 6c 6c 20 74 68 65 20 61 72 67 75 pth all the argu
3cb0: 6d 65 6e 74 73 20 61 6e 64 20 74 68 65 69 72 20 ments and their
3cc0: 6d 65 61 6e 69 6e 67 3a 0d 0a 3c 6f 6c 3e 0d 0a meaning:..<ol>..
3cd0: 3c 6c 69 3e 3c 69 3e 62 79 66 6f 6f 74 5f 64 61 <li><i>byfoot_da
3ce0: 74 61 3c 2f 69 3e 3a 20 74 68 65 20 6e 61 6d 65 ta</i>: the name
3cf0: 20 6f 66 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 of the Network
3d00: 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 6c Binary Data Tabl
3d10: 65 20 74 6f 20 62 65 20 63 72 65 61 74 65 64 2e e to be created.
3d20: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 62 79 </li>..<li><i>by
3d30: 66 6f 6f 74 3c 2f 69 3e 3a 20 74 68 65 20 6e 61 foot</i>: the na
3d40: 6d 65 20 6f 66 20 74 68 65 20 56 69 72 74 75 61 me of the Virtua
3d50: 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 74 lRouting Table t
3d60: 6f 20 62 65 20 63 72 65 61 74 65 64 2e 3c 2f 6c o be created.</l
3d70: 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 72 6f 61 64 73 i>..<li><i>roads
3d80: 5f 76 77 3c 2f 69 3e 3a 20 74 68 65 20 6e 61 6d _vw</i>: the nam
3d90: 65 20 6f 66 20 74 68 65 20 3c 62 3e 53 70 61 74 e of the <b>Spat
3da0: 69 61 6c 20 54 61 62 6c 65 3c 2f 62 3e 20 6f 72 ial Table</b> or
3db0: 20 3c 62 3e 53 70 61 74 69 61 6c 20 56 69 65 77 <b>Spatial View
3dc0: 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 69 6e </b> representin
3dd0: 67 20 74 68 65 20 75 6e 64 65 72 6c 79 69 6e 67 g the underlying
3de0: 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 3c Network.<br>..<
3df0: 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 69 6e 20 74 u>Note</u>: in t
3e00: 68 69 73 20 63 61 73 65 20 77 65 20 61 63 74 75 his case we actu
3e10: 61 6c 6c 79 20 75 73 65 64 20 61 20 53 70 61 74 ally used a Spat
3e20: 69 61 6c 20 56 69 65 77 2e 3c 2f 6c 69 3e 0d 0a ial View.</li>..
3e30: 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 5f 66 72 6f 6d <li><i>node_from
3e40: 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 74 68 </i>: name of th
3e50: 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 68 65 e column (in the
3e60: 20 61 62 6f 76 65 20 54 61 62 6c 65 20 6f 72 20 above Table or
3e70: 56 69 65 77 29 20 65 78 70 65 63 74 65 64 20 74 View) expected t
3e80: 6f 20 63 6f 6e 74 61 69 6e 20 3c 62 3e 6e 6f 64 o contain <b>nod
3e90: 65 2d 66 72 6f 6d 3c 2f 62 3e 20 76 61 6c 75 65 e-from</b> value
3ea0: 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e s.</li>..<li><i>
3eb0: 6e 6f 64 65 5f 74 6f 3c 2f 69 3e 3a 20 6e 61 6d node_to</i>: nam
3ec0: 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e 20 e of the column
3ed0: 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 61 (in the above Ta
3ee0: 62 6c 65 20 6f 72 20 56 69 65 77 29 20 65 78 70 ble or View) exp
3ef0: 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 6e ected to contain
3f00: 20 3c 62 3e 6e 6f 64 65 2d 74 6f 3c 2f 62 3e 20 <b>node-to</b>
3f10: 76 61 6c 75 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c values.</li>..<l
3f20: 69 3e 3c 69 3e 67 65 6f 6d 3c 2f 69 3e 3a 20 6e i><i>geom</i>: n
3f30: 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d ame of the colum
3f40: 6e 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 n (in the above
3f50: 54 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 65 Table or View) e
3f60: 78 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 xpected to conta
3f70: 69 6e 20 3c 62 3e 4c 69 6e 65 73 74 72 69 6e 67 in <b>Linestring
3f80: 73 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 57 65 20 63 s</b>.<br>..We c
3f90: 6f 75 6c 64 20 68 61 76 65 20 6c 65 67 69 74 69 ould have legiti
3fa0: 6d 61 74 65 6c 79 20 70 61 73 73 65 64 20 61 20 mately passed a
3fb0: 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 76 61 6c 75 <b>NULL</b> valu
3fc0: 65 20 66 6f 72 20 74 68 69 73 20 61 72 67 75 6d e for this argum
3fd0: 65 6e 74 20 69 6e 20 74 68 65 20 63 61 73 65 20 ent in the case
3fe0: 6f 66 20 61 20 3c 62 3e 4c 6f 67 69 63 61 6c 20 of a <b>Logical
3ff0: 4e 65 74 77 6f 72 6b 3c 2f 62 3e 2e 3c 2f 6c 69 Network</b>.</li
4000: 3e 0d 0a 3c 6c 69 3e 3c 69 3e 4e 55 4c 4c 3c 2f >..<li><i>NULL</
4010: 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 i>: name of the
4020: 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 68 65 20 61 column (in the a
4030: 62 6f 76 65 20 54 61 62 6c 65 20 6f 72 20 56 69 bove Table or Vi
4040: 65 77 29 20 65 78 70 65 63 74 65 64 20 74 6f 20 ew) expected to
4050: 63 6f 6e 74 61 69 6e 20 3c 62 3e 63 6f 73 74 3c contain <b>cost<
4060: 2f 62 3e 20 76 61 6c 75 65 73 2e 3c 62 72 3e 0d /b> values.<br>.
4070: 0a 49 6e 20 74 68 69 73 20 63 61 73 65 20 77 65 .In this case we
4080: 20 68 61 76 65 20 70 61 73 73 65 64 20 61 20 3c have passed a <
4090: 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 76 61 6c 75 65 b>NULL</b> value
40a0: 2c 20 61 6e 64 20 63 6f 6e 73 65 71 75 65 6e 74 , and consequent
40b0: 6c 79 20 74 68 65 20 3c 62 3e 63 6f 73 74 3c 2f ly the <b>cost</
40c0: 62 3e 20 6f 66 20 65 61 63 68 20 4c 69 6e 6b 20 b> of each Link
40d0: 77 69 6c 6c 20 62 65 20 61 73 73 75 6d 65 64 20 will be assumed
40e0: 74 6f 20 62 65 20 72 65 70 72 65 73 65 6e 74 65 to be represente
40f0: 64 20 62 79 20 74 68 65 20 3c 62 3e 67 65 6f 6d d by the <b>geom
4100: 65 74 72 69 63 20 6c 65 6e 67 74 68 3c 2f 62 3e etric length</b>
4110: 20 6f 66 20 74 68 65 20 63 6f 72 72 65 73 70 6f of the correspo
4120: 6e 64 69 6e 67 20 4c 69 6e 65 73 74 72 69 6e 67 nding Linestring
4130: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 .<br>..<u>Note #
4140: 31 3c 2f 75 3e 3a 20 69 6e 20 74 68 65 20 63 61 1</u>: in the ca
4150: 73 65 20 6f 66 20 4e 65 74 77 6f 72 6b 73 20 62 se of Networks b
4160: 61 73 65 64 20 6f 6e 20 3c 62 3e 6c 6f 6e 67 69 ased on <b>longi
4170: 74 75 64 65 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 tudes</b> and <b
4180: 3e 6c 61 74 69 74 75 64 65 73 3c 2f 62 3e 20 28 >latitudes</b> (
4190: 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 67 65 <i>aka</i> <b>ge
41a0: 6f 67 72 61 70 68 69 63 3c 2f 62 3e 20 52 65 66 ographic</b> Ref
41b0: 65 72 65 6e 63 65 20 53 79 73 74 65 6d 73 29 20 erence Systems)
41c0: 74 68 65 20 67 65 6f 6d 65 74 72 79 20 6c 65 6e the geometry len
41d0: 67 74 68 20 6f 66 20 61 6c 6c 20 4c 69 6e 65 73 gth of all Lines
41e0: 74 72 69 6e 67 73 20 77 69 6c 6c 20 62 65 20 70 trings will be p
41f0: 72 65 63 69 73 65 6c 79 20 3c 62 3e 6d 65 61 73 recisely <b>meas
4200: 75 72 65 64 20 6f 6e 20 74 68 65 20 65 6c 6c 69 ured on the elli
4210: 70 73 6f 69 64 3c 2f 62 3e 20 62 79 20 61 70 70 psoid</b> by app
4220: 6c 79 69 6e 67 20 74 68 65 20 6d 6f 73 74 20 61 lying the most a
4230: 63 63 75 72 61 74 65 20 3c 62 3e 67 65 6f 64 65 ccurate <b>geode
4240: 73 69 63 20 66 6f 72 6d 75 6c 61 65 3c 2f 62 3e sic formulae</b>
4250: 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 63 6f 6e and will be con
4260: 73 65 71 75 65 6e 74 6c 79 20 65 78 70 72 65 73 sequently expres
4270: 73 65 64 20 69 6e 20 3c 62 3e 6d 65 74 65 72 73 sed in <b>meters
4280: 3c 2f 62 3e 2e 20 49 6e 20 61 6e 79 20 6f 74 68 </b>. In any oth
4290: 65 72 20 63 61 73 65 20 28 3c 62 3e 70 72 6f 6a er case (<b>proj
42a0: 65 63 74 65 64 3c 2f 62 3e 20 52 65 66 65 72 65 ected</b> Refere
42b0: 6e 63 65 20 53 79 73 74 65 6d 73 29 20 6c 65 6e nce Systems) len
42c0: 67 74 68 73 20 77 69 6c 6c 20 62 65 20 65 78 70 gths will be exp
42d0: 72 65 73 73 65 64 20 69 6e 20 74 68 65 20 3c 62 ressed in the <b
42e0: 3e 6d 65 61 73 75 72 65 20 75 6e 69 74 3c 2f 62 >measure unit</b
42f0: 3e 20 64 65 66 69 6e 65 64 20 62 79 20 74 68 65 > defined by the
4300: 20 52 65 66 65 72 65 6e 63 65 20 53 79 73 74 65 Reference Syste
4310: 6d 20 28 65 2e 67 2e 20 3c 62 3e 6d 65 74 65 72 m (e.g. <b>meter
4320: 73 3c 2f 62 3e 20 66 6f 72 20 3c 62 3e 55 54 4d s</b> for <b>UTM
4330: 3c 2f 62 3e 20 70 72 6f 6a 65 63 74 69 6f 6e 73 </b> projections
4340: 20 61 6e 64 20 3c 62 3e 66 65 65 74 3c 2f 62 3e and <b>feet</b>
4350: 20 66 6f 72 20 3c 62 3e 4e 41 44 2d 66 74 3c 2f for <b>NAD-ft</
4360: 62 3e 20 70 72 6f 6a 65 63 74 69 6f 6e 73 29 2e b> projections).
4370: 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 <br>..<u>Note #2
4380: 3c 2f 75 3e 3a 20 74 68 65 20 3c 62 3e 67 65 6f </u>: the <b>geo
4390: 6d 2d 63 6f 6c 75 6d 6e 3c 2f 62 3e 20 61 6e 64 m-column</b> and
43a0: 20 3c 62 3e 63 6f 73 74 2d 63 6f 6c 75 6d 6e 3c <b>cost-column<
43b0: 2f 62 3e 20 61 72 67 75 6d 65 6e 74 73 20 61 72 /b> arguments ar
43c0: 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 20 e never allowed
43d0: 74 6f 20 62 65 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 to be <b>NULL</b
43e0: 3e 20 61 74 20 74 68 65 20 73 61 6d 65 20 74 69 > at the same ti
43f0: 6d 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 me.</li>..<li><i
4400: 3e 74 6f 70 6f 6e 79 6d 3c 2f 69 3e 3a 20 6e 61 >toponym</i>: na
4410: 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e me of the column
4420: 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 (in the above T
4430: 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 65 78 able or View) ex
4440: 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 pected to contai
4450: 6e 20 3c 62 3e 72 6f 61 64 2d 6e 61 6d 65 3c 2f n <b>road-name</
4460: 62 3e 20 76 61 6c 75 65 73 2e 3c 62 72 3e 0d 0a b> values.<br>..
4470: 49 74 20 63 6f 75 6c 64 20 62 65 20 6c 65 67 69 It could be legi
4480: 74 69 6d 61 74 65 6c 79 20 73 65 74 20 74 6f 20 timately set to
4490: 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 66 20 61 <b>NULL</b> if a
44a0: 6c 6c 20 4c 69 6e 6b 73 20 61 72 65 20 61 6e 6f ll Links are ano
44b0: 6e 79 6d 6f 75 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c nymous.</li>..<l
44c0: 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 61 20 62 6f i><i>1</i>: a bo
44d0: 6f 6c 65 61 6e 20 66 6c 61 67 20 69 6e 74 65 6e olean flag inten
44e0: 64 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 69 ded to specify i
44f0: 66 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 6d 75 f the Network mu
4500: 73 74 20 73 75 70 70 6f 72 74 20 74 68 65 20 3c st support the <
4510: 62 3e 41 2a 20 61 6c 67 6f 72 69 74 68 6d 3c 2f b>A* algorithm</
4520: 62 3e 20 6f 72 20 6e 6f 74 20 28 73 65 74 20 74 b> or not (set t
4530: 6f 20 3c 62 3e 54 52 55 45 3c 2f 62 3e 20 62 79 o <b>TRUE</b> by
4540: 20 64 65 66 61 75 6c 74 29 2e 3c 2f 6c 69 3e 0d default).</li>.
4550: 0a 3c 6c 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 61 .<li><i>1</i>: a
4560: 20 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 20 69 6e boolean flag in
4570: 74 65 6e 64 65 64 20 74 6f 20 73 70 65 63 69 66 tended to specif
4580: 79 20 69 66 20 61 6c 6c 20 4e 65 74 77 6f 72 6b y if all Network
4590: 27 73 20 4c 69 6e 6b 73 20 61 72 65 20 61 73 73 's Links are ass
45a0: 75 6d 65 64 20 74 6f 20 62 65 20 3c 62 3e 62 69 umed to be <b>bi
45b0: 64 69 72 65 63 74 69 6f 6e 61 6c 3c 2f 62 3e 20 directional</b>
45c0: 6f 72 20 6e 6f 74 20 28 61 73 73 75 6d 65 64 20 or not (assumed
45d0: 74 6f 20 62 65 20 3c 62 3e 54 52 55 45 3c 2f 62 to be <b>TRUE</b
45e0: 3e 20 62 79 20 64 65 66 61 75 6c 74 29 2e 3c 2f > by default).</
45f0: 6c 69 3e 20 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 74 61 li> ..</ol>..<ta
4600: 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 ble bgcolor="#c0
4610: 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e ffc0" cellspacin
4620: 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 g="10" cellpaddi
4630: 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d ng="6"><tr><td>.
4640: 0a 3c 68 33 3e 54 65 63 68 6e 69 63 61 6c 20 6e .<h3>Technical n
4650: 6f 74 65 3c 2f 68 33 3e 0d 0a 54 68 65 20 69 6e ote</h3>..The in
4660: 74 65 72 6e 61 6c 20 65 6e 63 6f 64 69 6e 67 20 ternal encoding
4670: 61 64 6f 70 74 65 64 20 62 79 20 74 68 65 20 3c adopted by the <
4680: 62 3e 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 b>Binary Data Ta
4690: 62 6c 65 3c 2f 62 3e 20 69 73 20 75 6e 63 68 61 ble</b> is uncha
46a0: 6e 67 65 64 20 61 6e 64 20 69 73 20 74 68 65 20 nged and is the
46b0: 73 61 6d 65 20 66 6f 72 20 62 6f 74 68 20 3c 62 same for both <b
46c0: 3e 56 69 72 74 75 61 6c 4e 65 74 77 6f 6b 3c 2f >VirtualNetwok</
46d0: 62 3e 20 61 6e 64 20 3c 62 3e 56 69 72 74 75 61 b> and <b>Virtua
46e0: 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e 2e 3c 62 72 lRouting</b>.<br
46f0: 3e 0d 0a 59 6f 75 20 63 61 6e 20 73 61 66 65 6c >..You can safel
4700: 79 20 62 61 73 65 20 61 20 3c 62 3e 56 69 72 74 y base a <b>Virt
4710: 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 ualRouting Table
4720: 3c 2f 62 3e 20 6f 6e 20 61 6e 79 20 65 78 69 73 </b> on any exis
4730: 74 69 6e 67 20 42 69 6e 61 72 79 20 44 61 74 61 ting Binary Data
4740: 0d 0a 54 61 62 6c 65 20 63 72 65 61 74 65 64 20 ..Table created
4750: 62 79 20 74 68 65 20 3c 62 3e 73 70 61 74 69 61 by the <b>spatia
4760: 6c 69 74 65 2d 6e 65 74 77 6f 72 6b 3c 2f 62 3e lite-network</b>
4770: 20 43 4c 49 20 74 6f 6f 6c 2c 20 65 78 61 63 74 CLI tool, exact
4780: 6c 79 20 61 73 20 79 6f 75 20 63 61 6e 20 62 61 ly as you can ba
4790: 73 65 20 61 20 3c 62 3e 56 69 72 74 75 61 6c 4e se a <b>VirtualN
47a0: 65 74 77 6f 72 6b 20 54 61 62 6c 65 3c 2f 62 3e etwork Table</b>
47b0: 20 6f 6e 20 61 6e 79 20 42 69 6e 61 72 79 20 44 on any Binary D
47c0: 61 74 61 20 54 61 62 6c 65 20 63 72 65 61 74 65 ata Table create
47d0: 64 20 62 79 20 74 68 65 20 3c 62 3e 43 72 65 61 d by the <b>Crea
47e0: 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 3e 20 teRouting()</b>
47f0: 53 51 4c 20 66 75 6e 63 74 69 6f 6e 2e 0d 0a 3c SQL function...<
4800: 76 65 72 62 61 74 69 6d 3e 0d 0a 43 52 45 41 54 verbatim>..CREAT
4810: 45 20 56 49 52 54 55 41 4c 20 54 41 42 4c 45 20 E VIRTUAL TABLE
4820: 74 65 73 74 5f 6e 65 74 77 6f 72 6b 20 55 53 49 test_network USI
4830: 4e 47 20 56 69 72 74 75 61 6c 4e 65 74 77 6f 72 NG VirtualNetwor
4840: 6b 28 27 73 6f 6d 65 5f 64 61 74 61 5f 74 61 62 k('some_data_tab
4850: 6c 65 27 29 3b 0d 0a 0d 0a 43 52 45 41 54 45 20 le');....CREATE
4860: 56 49 52 54 55 41 4c 20 54 41 42 4c 45 20 74 65 VIRTUAL TABLE te
4870: 73 74 5f 72 6f 75 74 69 6e 67 20 55 53 49 4e 47 st_routing USING
4880: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 28 VirtualRouting(
4890: 27 73 6f 6d 65 5f 64 61 74 61 5f 74 61 62 6c 65 'some_data_table
48a0: 27 29 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e ');..</verbatim>
48b0: 0d 0a 49 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 ..In order to ma
48c0: 6e 75 61 6c 6c 79 20 63 72 65 61 74 65 20 79 6f nually create yo
48d0: 75 72 20 56 69 72 74 75 61 6c 20 54 61 62 6c 65 ur Virtual Table
48e0: 73 20 79 6f 75 20 6a 75 73 74 20 68 61 76 65 20 s you just have
48f0: 74 6f 20 65 78 65 63 75 74 65 20 61 6e 20 61 70 to execute an ap
4900: 70 72 6f 70 72 69 61 74 65 20 3c 62 3e 43 52 45 propriate <b>CRE
4910: 41 54 45 20 56 49 52 54 55 41 4c 20 54 41 42 4c ATE VIRTUAL TABL
4920: 45 20 2e 2e 2e 20 55 53 49 4e 47 20 56 69 72 74 E ... USING Virt
4930: 75 61 6c 2e 2e 2e 20 28 2e 2e 2e 29 3c 2f 62 3e ual... (...)</b>
4940: 20 73 74 61 74 65 6d 65 6e 74 2e 0d 0a 3c 68 34 statement...<h4
4950: 3e 57 61 72 6e 69 6e 67 3c 2f 68 34 3e 0d 0a 49 >Warning</h4>..I
4960: 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 3c 62 n the case of <b
4970: 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 6b >Spatial Network
4980: 73 3c 2f 62 3e 20 62 61 73 65 64 20 6f 6e 20 61 s</b> based on a
4990: 6e 79 20 3c 62 3e 67 65 6f 67 72 61 70 68 69 63 ny <b>geographic
49a0: 3c 2f 62 3e 20 52 65 66 65 72 65 6e 63 65 20 53 </b> Reference S
49b0: 79 73 74 65 6d 20 28 75 73 69 6e 67 20 3c 62 3e ystem (using <b>
49c0: 6c 6f 6e 67 69 74 75 64 65 73 3c 2f 62 3e 20 61 longitudes</b> a
49d0: 6e 64 20 3c 62 3e 6c 61 74 69 74 75 64 65 73 3c nd <b>latitudes<
49e0: 2f 62 3e 29 20 74 68 65 72 65 20 69 73 20 61 6e /b>) there is an
49f0: 20 69 6d 70 6f 72 74 61 6e 74 20 64 69 66 66 65 important diffe
4a00: 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 42 69 rence between Bi
4a10: 6e 61 72 79 20 44 61 74 61 20 54 61 62 6c 65 73 nary Data Tables
4a20: 20 63 72 65 61 74 65 64 20 62 79 20 74 68 65 20 created by the
4a30: 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 5f 6e 65 <b>spatialite_ne
4a40: 74 77 6f 72 6b 3c 2f 62 3e 20 47 55 49 20 74 6f twork</b> GUI to
4a50: 6f 6c 20 61 6e 64 20 20 42 69 6e 61 72 79 20 44 ol and Binary D
4a60: 61 74 61 20 54 61 62 6c 65 73 20 63 72 65 61 74 ata Tables creat
4a70: 65 64 20 62 79 20 74 68 65 20 3c 62 3e 43 72 65 ed by the <b>Cre
4a80: 61 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 3e ateRouting()</b>
4a90: 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 20 77 68 SQL function wh
4aa0: 65 6e 20 3c 62 3e 63 6f 73 74 73 3c 2f 62 3e 20 en <b>costs</b>
4ab0: 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 62 are implicitly b
4ac0: 61 73 65 64 20 6f 6e 20 74 68 65 20 67 65 6f 6d ased on the geom
4ad0: 65 74 72 69 63 20 6c 65 6e 67 74 68 20 6f 66 20 etric length of
4ae0: 74 68 65 20 4c 69 6e 6b 27 73 20 4c 69 6e 65 73 the Link's Lines
4af0: 74 72 69 6e 67 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c tring:..<ul>..<l
4b00: 69 3e 74 68 65 20 3c 62 3e 73 70 61 74 69 61 6c i>the <b>spatial
4b10: 69 74 65 5f 6e 65 74 77 6f 72 6b 3c 2f 62 3e 20 ite_network</b>
4b20: 43 4c 49 20 74 6f 6f 6c 20 28 61 6e 64 20 74 68 CLI tool (and th
4b30: 65 20 3c 62 3e 47 55 49 20 77 69 7a 61 72 64 3c e <b>GUI wizard<
4b40: 2f 62 3e 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 /b> implemented
4b50: 62 79 20 70 72 65 76 69 6f 75 73 20 76 65 72 73 by previous vers
4b60: 69 6f 6e 73 20 6f 66 20 3c 62 3e 73 70 61 74 69 ions of <b>spati
4b70: 61 6c 69 74 65 5f 67 75 69 3c 2f 62 3e 29 20 63 alite_gui</b>) c
4b80: 6f 6d 70 75 74 65 20 74 68 65 20 4c 69 6e 65 73 ompute the Lines
4b90: 74 72 69 6e 67 27 73 20 6c 65 6e 67 74 68 20 61 tring's length a
4ba0: 73 20 61 6e 20 3c 62 3e 61 6e 67 75 6c 61 72 20 s an <b>angular
4bb0: 64 69 73 74 61 6e 63 65 3c 2f 62 3e 20 65 78 70 distance</b> exp
4bc0: 72 65 73 73 65 64 20 69 6e 20 3c 62 3e 64 65 67 ressed in <b>deg
4bd0: 72 65 65 73 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a rees</b>.</li>..
4be0: 3c 6c 69 3e 74 68 65 20 3c 62 3e 43 72 65 61 74 <li>the <b>Creat
4bf0: 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 3e 20 53 eRouting()</b> S
4c00: 51 4c 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 70 QL function comp
4c10: 75 74 65 73 20 74 68 65 20 4c 69 6e 65 73 74 72 utes the Linestr
4c20: 69 6e 67 27 73 20 6c 65 6e 67 74 68 20 61 73 20 ing's length as
4c30: 61 20 3c 62 3e 6c 69 6e 65 61 72 20 64 69 73 74 a <b>linear dist
4c40: 61 6e 63 65 3c 2f 62 3e 20 65 78 70 72 65 73 73 ance</b> express
4c50: 65 64 20 69 6e 20 3c 62 3e 6d 65 74 72 65 73 3c ed in <b>metres<
4c60: 2f 62 3e 20 62 79 20 61 70 70 6c 79 69 6e 67 20 /b> by applying
4c70: 74 68 65 20 6d 6f 73 74 20 61 63 63 75 72 61 74 the most accurat
4c80: 65 20 3c 62 3e 67 65 6f 64 65 73 69 63 20 66 6f e <b>geodesic fo
4c90: 72 6d 75 6c 61 65 3c 2f 62 3e 20 6f 6e 20 74 68 rmulae</b> on th
4ca0: 65 20 65 6c 6c 69 70 73 6f 69 64 2e 3c 2f 6c 69 e ellipsoid.</li
4cb0: 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 2f 74 64 3e 3c >..</ul>..</td><
4cc0: 2f 74 72 3e 3c 2f 74 61 62 6c 65 3e 3c 62 72 3e /tr></table><br>
4cd0: 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e <br>..<verbatim>
4ce0: 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 74 65 52 ..SELECT CreateR
4cf0: 6f 75 74 69 6e 67 28 27 62 79 63 61 72 5f 64 61 outing('bycar_da
4d00: 74 61 27 2c 20 27 62 79 63 61 72 27 2c 20 27 72 ta', 'bycar', 'r
4d10: 6f 61 64 73 5f 76 77 27 2c 20 27 6e 6f 64 65 5f oads_vw', 'node_
4d20: 66 72 6f 6d 27 2c 20 27 6e 6f 64 65 5f 74 6f 27 from', 'node_to'
4d30: 2c 20 27 67 65 6f 6d 27 2c 20 27 63 6f 73 74 27 , 'geom', 'cost'
4d40: 2c 20 27 74 6f 70 6f 6e 79 6d 27 2c 20 31 2c 20 , 'toponym', 1,
4d50: 31 2c 20 27 6f 6e 65 77 61 79 5f 66 72 6f 6d 74 1, 'oneway_fromt
4d60: 6f 27 2c 20 27 6f 6e 65 77 61 79 5f 74 6f 66 72 o', 'oneway_tofr
4d70: 6f 6d 27 2c 20 30 29 3b 0d 0a 2d 2d 2d 2d 2d 2d om', 0);..------
4d80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a --------------..
4d90: 31 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 1..</verbatim>..
4da0: 41 66 74 65 72 20 63 61 6c 6c 69 6e 67 20 79 65 After calling ye
4db0: 74 20 61 6e 6f 74 68 65 72 20 74 69 6d 65 20 3c t another time <
4dc0: 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 b>CreateRouting(
4dd0: 29 3c 2f 62 3e 20 6e 6f 77 20 74 68 65 20 44 61 )</b> now the Da
4de0: 74 61 62 61 73 65 20 63 6f 6e 74 61 69 6e 73 20 tabase contains
4df0: 74 77 6f 20 66 75 72 74 68 65 72 20 54 61 62 6c two further Tabl
4e00: 65 73 3a 20 3c 62 3e 62 79 63 61 72 3c 2f 62 3e es: <b>bycar</b>
4e10: 20 61 6e 64 20 3c 62 3e 62 79 63 61 72 5f 64 61 and <b>bycar_da
4e20: 74 61 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 54 68 69 ta</b>.<br>..Thi
4e30: 73 20 74 69 6d 65 20 79 6f 75 27 76 65 20 75 73 s time you've us
4e40: 65 64 20 74 68 65 20 3c 69 3e 63 6f 6d 70 6c 65 ed the <i>comple
4e50: 74 65 20 66 6f 72 6d 3c 2f 69 3e 20 6f 66 20 43 te form</i> of C
4e60: 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3b 20 reateRouting();
4e70: 6c 65 74 27 73 20 73 65 65 20 69 6e 20 6d 6f 72 let's see in mor
4e80: 65 20 64 65 70 74 68 20 61 6c 6c 20 74 68 65 20 e depth all the
4e90: 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 74 68 arguments and th
4ea0: 65 69 72 20 6d 65 61 6e 69 6e 67 3a 0d 0a 3c 6f eir meaning:..<o
4eb0: 6c 3e 0d 0a 3c 6c 69 3e 3c 69 3e 62 79 63 61 72 l>..<li><i>bycar
4ec0: 5f 64 61 74 61 3c 2f 69 3e 3a 20 73 61 6d 65 20 _data</i>: same
4ed0: 61 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a as above.</li>..
4ee0: 3c 6c 69 3e 3c 69 3e 62 79 63 61 72 3c 2f 69 3e <li><i>bycar</i>
4ef0: 3a 20 73 61 6d 65 20 61 73 20 61 62 6f 76 65 2e : same as above.
4f00: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 72 6f </li>..<li><i>ro
4f10: 61 64 73 5f 76 77 3c 2f 69 3e 3a 20 73 61 6d 65 ads_vw</i>: same
4f20: 20 61 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d as above.</li>.
4f30: 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 5f 66 72 6f .<li><i>node_fro
4f40: 6d 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 m</i>: same as a
4f50: 62 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e bove.</li>..<li>
4f60: 3c 69 3e 6e 6f 64 65 5f 74 6f 3c 2f 69 3e 3a 20 <i>node_to</i>:
4f70: 73 61 6d 65 20 61 73 20 61 62 6f 76 65 2e 3c 2f same as above.</
4f80: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 67 65 6f 6d li>..<li><i>geom
4f90: 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 </i>: same as ab
4fa0: 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c ove.</li>..<li><
4fb0: 69 3e 63 6f 73 74 3c 2f 69 3e 3a 20 73 61 6d 65 i>cost</i>: same
4fc0: 20 61 73 20 61 62 6f 76 65 2e 0d 0a 49 6e 20 74 as above...In t
4fd0: 68 69 73 20 63 61 73 65 20 77 65 20 68 61 76 65 his case we have
4fe0: 20 72 65 66 65 72 65 6e 63 65 64 20 61 20 63 6f referenced a co
4ff0: 6c 75 6d 6e 20 70 72 65 6c 6f 61 64 65 64 20 77 lumn preloaded w
5000: 69 74 68 20 76 61 6c 75 65 73 20 63 6f 72 72 65 ith values corre
5010: 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 sponding to the
5020: 3c 62 3e 74 69 6d 65 3c 2f 62 3e 20 6d 65 61 73 <b>time</b> meas
5030: 75 72 65 64 20 69 6e 20 3c 62 3e 73 65 63 6f 6e ured in <b>secon
5040: 64 73 3c 2f 62 3e 20 72 65 71 75 69 72 65 64 20 ds</b> required
5050: 74 6f 20 74 72 61 76 65 72 73 65 20 65 61 63 68 to traverse each
5060: 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 20 0d 0a 3c 6c Link.</li> ..<l
5070: 69 3e 3c 69 3e 74 6f 70 6f 6e 79 6d 3c 2f 69 3e i><i>toponym</i>
5080: 3a 20 73 61 6d 65 20 61 73 20 61 62 6f 76 65 2e : same as above.
5090: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 31 3c </li>..<li><i>1<
50a0: 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 6f /i>: same as abo
50b0: 76 65 20 28 3c 69 3e 41 2a 20 65 6e 61 62 6c 65 ve (<i>A* enable
50c0: 64 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c d</i>).</li>..<l
50d0: 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 73 61 6d 65 i><i>1</i>: same
50e0: 20 61 73 20 61 62 6f 76 65 20 28 3c 69 3e 62 69 as above (<i>bi
50f0: 64 69 72 65 63 74 69 6f 6e 61 6c 20 4c 69 6e 6b directional Link
5100: 73 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c s</i>).</li>..<l
5110: 69 3e 3c 69 3e 6f 6e 65 77 61 79 5f 66 72 6f 6d i><i>oneway_from
5120: 74 6f 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 to</i>: name of
5130: 74 68 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 the column (in t
5140: 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 20 6f he above Table o
5150: 72 20 56 69 65 77 29 20 65 78 70 65 63 74 65 64 r View) expected
5160: 20 74 6f 20 63 6f 6e 74 61 69 6e 20 62 6f 6f 6c to contain bool
5170: 65 61 6e 20 66 6c 61 67 73 20 73 70 65 63 69 66 ean flags specif
5180: 79 69 6e 67 20 69 66 20 65 61 63 68 20 4c 69 6e ying if each Lin
5190: 6b 20 63 61 6e 20 62 65 20 74 72 61 76 65 72 73 k can be travers
51a0: 65 64 20 69 6e 20 74 68 65 20 3c 62 3e 66 72 6f ed in the <b>fro
51b0: 6d 2d 74 6f 3c 2f 62 3e 20 64 69 72 65 63 74 69 m-to</b> directi
51c0: 6f 6e 20 6f 72 20 6e 6f 74 2e 3c 2f 6c 69 3e 0d on or not.</li>.
51d0: 0a 3c 6c 69 3e 3c 69 3e 6f 6e 65 77 61 79 5f 74 .<li><i>oneway_t
51e0: 6f 66 72 6f 6d 3c 2f 69 3e 3a 20 6e 61 6d 65 20 ofrom</i>: name
51f0: 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e 20 28 69 of the column (i
5200: 6e 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 6c n the above Tabl
5210: 65 20 6f 72 20 56 69 65 77 29 20 65 78 70 65 63 e or View) expec
5220: 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 6e 20 62 ted to contain b
5230: 6f 6f 6c 65 61 6e 20 66 6c 61 67 73 20 73 70 65 oolean flags spe
5240: 63 69 66 79 69 6e 67 20 69 66 20 65 61 63 68 20 cifying if each
5250: 4c 69 6e 6b 20 63 61 6e 20 62 65 20 74 72 61 76 Link can be trav
5260: 65 72 73 65 64 20 69 6e 20 74 68 65 20 3c 62 3e ersed in the <b>
5270: 74 6f 2d 66 72 6f 6d 3c 2f 62 3e 20 64 69 72 65 to-from</b> dire
5280: 63 74 69 6f 6e 20 6f 72 20 6e 6f 74 2e 3c 62 72 ction or not.<br
5290: 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 31 3c 2f 75 >..<u>Note #1</u
52a0: 3e 3a 20 62 6f 74 68 20 3c 62 3e 66 72 6f 6d 2d >: both <b>from-
52b0: 74 6f 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 74 6f to</b> and <b>to
52c0: 2d 66 72 6f 6d 3c 2f 62 3e 20 63 6f 6c 75 6d 6e -from</b> column
52d0: 20 6e 61 6d 65 73 20 63 61 6e 20 62 65 20 6c 65 names can be le
52e0: 67 69 74 69 6d 61 74 65 6c 79 20 73 65 74 20 61 gitimately set a
52f0: 73 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 66 s <b>NULL</b> if
5300: 20 6e 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 3c 2f no <b>one-way</
5310: 62 3e 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 b> restrictions
5320: 61 70 70 6c 79 20 74 6f 20 74 68 65 20 63 75 72 apply to the cur
5330: 72 65 6e 74 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 rent Network.<br
5340: 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 3c 2f 75 >..<u>Note #2</u
5350: 3e 3a 20 4e 65 74 77 6f 72 6b 73 20 6f 66 20 74 >: Networks of t
5360: 68 65 20 3c 62 3e 75 6e 69 64 69 72 65 63 74 69 he <b>unidirecti
5370: 6f 6e 61 6c 3c 2f 62 3e 20 74 79 70 65 20 61 72 onal</b> type ar
5380: 65 20 6e 65 76 65 72 20 65 6e 61 62 6c 65 64 20 e never enabled
5390: 74 6f 20 72 65 66 65 72 65 6e 63 65 20 3c 62 3e to reference <b>
53a0: 6f 6e 65 2d 77 61 79 3c 2f 62 3e 20 63 6f 6c 75 one-way</b> colu
53b0: 6d 6e 73 20 28 74 68 65 79 20 73 68 6f 75 6c 64 mns (they should
53c0: 20 61 6c 77 61 79 73 20 62 65 20 73 65 74 20 74 always be set t
53d0: 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 29 2e 3c o <b>NULL</b>).<
53e0: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 30 3c 2f /li>..<li><i>0</
53f0: 69 3e 3a 20 61 20 62 6f 6f 6c 65 61 6e 20 66 6c i>: a boolean fl
5400: 61 67 20 69 6e 74 65 6e 64 69 6e 67 20 61 6e 20 ag intending an
5410: 3c 62 3e 6f 76 65 72 77 72 69 74 65 20 61 75 74 <b>overwrite aut
5420: 68 6f 72 69 7a 61 74 69 6f 6e 3c 2f 62 3e 2e 0d horization</b>..
5430: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 49 66 20 73 65 .<ul>..<li>If se
5440: 74 20 74 6f 20 3c 62 3e 46 41 4c 53 45 3c 2f 62 t to <b>FALSE</b
5450: 3e 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 20 77 > an exception w
5460: 69 6c 6c 20 62 65 20 72 61 69 73 65 64 20 69 66 ill be raised if
5470: 20 74 68 65 20 3c 62 3e 42 69 6e 61 72 79 20 44 the <b>Binary D
5480: 61 74 61 20 54 61 62 6c 65 3c 2f 62 3e 20 61 6e ata Table</b> an
5490: 64 2f 6f 72 20 74 68 65 20 3c 62 3e 56 69 72 74 d/or the <b>Virt
54a0: 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 ualRouting Table
54b0: 3c 2f 62 3e 20 64 6f 20 61 6c 72 65 61 64 79 20 </b> do already
54c0: 65 78 69 73 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 exist.</li>..<li
54d0: 3e 49 66 20 73 65 74 20 74 6f 20 3c 62 3e 54 52 >If set to <b>TR
54e0: 55 45 3c 2f 62 3e 20 65 76 65 6e 74 75 61 6c 6c UE</b> eventuall
54f0: 79 20 65 78 69 73 74 69 6e 67 20 54 61 62 6c 65 y existing Table
5500: 73 20 77 69 6c 6c 20 62 65 20 70 72 65 76 65 6e s will be preven
5510: 74 69 76 65 6c 79 20 64 72 6f 70 70 65 64 20 69 tively dropped i
5520: 6d 6d 65 64 69 61 74 65 6c 79 20 62 65 66 6f 72 mmediately befor
5530: 65 20 73 74 61 72 74 69 6e 67 20 74 68 65 20 65 e starting the e
5540: 78 65 63 75 74 69 6f 6e 20 6f 66 20 3c 62 3e 43 xecution of <b>C
5550: 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f reateRouting()</
5560: 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c b>.</li>..</ul><
5570: 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 62 72 /li>..</ol>..<br
5580: 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f >..<table bgcolo
5590: 72 3d 22 23 66 66 66 66 63 30 22 20 63 65 6c 6c r="#ffffc0" cell
55a0: 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c spacing="10" cel
55b0: 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 lpadding="6"><tr
55c0: 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 48 69 67 68 6c ><td>..<h3>Highl
55d0: 69 67 68 74 3a 20 77 68 65 72 65 20 79 6f 75 20 ight: where you
55e0: 61 72 65 3c 2f 68 33 3e 0d 0a 59 6f 75 27 76 65 are</h3>..You've
55f0: 20 6a 75 73 74 20 63 72 65 61 74 65 64 20 74 77 just created tw
5600: 6f 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 o VirtualRouting
5610: 20 54 61 62 6c 65 73 20 62 61 73 65 64 20 6f 6e Tables based on
5620: 20 64 69 66 66 65 72 65 6e 74 20 73 65 74 74 69 different setti
5630: 6e 67 73 3b 20 62 6f 74 68 20 74 68 65 6d 20 61 ngs; both them a
5640: 72 65 20 70 65 72 66 65 63 74 6c 79 20 76 61 6c re perfectly val
5650: 69 64 20 61 6e 64 20 72 65 61 73 6f 6e 61 62 6c id and reasonabl
5660: 65 2c 20 62 75 74 20 74 68 65 79 20 61 72 65 20 e, but they are
5670: 69 6e 74 65 6e 64 65 64 20 66 6f 72 20 64 69 66 intended for dif
5680: 66 65 72 65 6e 74 20 70 75 72 70 6f 73 65 73 3a ferent purposes:
5690: 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 62 ..<ul>..<li><b>b
56a0: 79 66 6f 6f 74 3c 2f 62 3e 20 69 73 20 73 70 65 yfoot</b> is spe
56b0: 63 69 66 69 63 61 6c 6c 79 20 69 6e 74 65 6e 64 cifically intend
56c0: 65 64 20 66 6f 72 20 3c 62 3e 70 65 64 65 73 74 ed for <b>pedest
56d0: 72 69 61 6e 73 3c 2f 62 3e 3a 0d 0a 3c 75 6c 3e rians</b>:..<ul>
56e0: 0d 0a 3c 6c 69 3e 61 6c 6c 20 4c 69 6e 6b 73 20 ..<li>all Links
56f0: 61 72 65 20 61 6c 77 61 79 73 20 61 73 73 75 6d are always assum
5700: 65 64 20 74 6f 20 62 65 20 61 63 63 65 73 73 69 ed to be accessi
5710: 62 6c 65 20 69 6e 20 3c 62 3e 62 6f 74 68 20 64 ble in <b>both d
5720: 69 72 65 63 74 69 6f 6e 73 3c 2f 62 3e 3b 20 74 irections</b>; t
5730: 68 65 72 65 20 61 72 65 20 6e 6f 20 3c 62 3e 6f here are no <b>o
5740: 6e 65 2d 77 61 79 73 3c 2f 62 3e 20 61 6e 64 20 ne-ways</b> and
5750: 6e 6f 20 3c 62 3e 66 6f 72 62 69 64 64 65 6e 3c no <b>forbidden<
5760: 2f 62 3e 20 4c 69 6e 6b 73 2e 3c 2f 6c 69 3e 0d /b> Links.</li>.
5770: 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 63 6f 73 74 .<li>the <b>cost
5780: 3c 2f 62 3e 20 6f 66 20 65 61 63 68 20 4c 69 6e </b> of each Lin
5790: 6b 20 69 73 20 64 69 72 65 63 74 6c 79 20 72 65 k is directly re
57a0: 70 72 65 73 65 6e 74 65 64 20 62 79 20 69 74 73 presented by its
57b0: 20 67 65 6f 6d 65 74 72 69 63 20 3c 62 3e 6c 65 geometric <b>le
57c0: 6e 67 74 68 3c 2f 62 3e 2c 20 77 68 69 63 68 20 ngth</b>, which
57d0: 69 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 77 69 is consistent wi
57e0: 74 68 20 74 68 65 20 61 73 73 75 6d 70 74 69 6f th the assumptio
57f0: 6e 20 6f 66 20 61 6e 20 61 6c 6d 6f 73 74 20 63 n of an almost c
5800: 6f 6e 73 74 61 6e 74 20 73 70 65 65 64 20 73 75 onstant speed su
5810: 62 73 74 61 6e 74 69 61 6c 6c 79 20 69 6d 6d 75 bstantially immu
5820: 6e 65 20 66 72 6f 6d 20 61 64 76 65 72 73 65 20 ne from adverse
5830: 72 6f 61 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 road conditions
5840: 61 6e 64 20 74 72 61 66 66 69 63 20 63 6f 6e 67 and traffic cong
5850: 65 73 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f estion.</li>..</
5860: 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 ul></li>..<li><b
5870: 3e 62 79 63 61 72 3c 2f 62 3e 20 69 73 20 73 70 >bycar</b> is sp
5880: 65 63 69 66 69 63 61 6c 6c 79 20 69 6e 74 65 6e ecifically inten
5890: 64 65 64 20 66 6f 72 20 3c 62 3e 6d 6f 74 6f 72 ded for <b>motor
58a0: 20 76 65 68 69 63 6c 65 73 3c 2f 62 3e 3a 0d 0a vehicles</b>:..
58b0: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 6d 61 6e 79 20 4c <ul>..<li>many L
58c0: 69 6e 6b 73 20 61 72 65 20 65 78 70 65 63 74 65 inks are expecte
58d0: 64 20 74 6f 20 62 65 20 61 63 63 65 73 73 69 62 d to be accessib
58e0: 6c 65 20 69 6e 20 3c 62 3e 62 6f 74 68 20 64 69 le in <b>both di
58f0: 72 65 63 74 69 6f 6e 73 3c 2f 62 3e 20 62 75 74 rections</b> but
5900: 20 6f 74 68 65 72 73 20 63 6f 75 6c 64 20 65 61 others could ea
5910: 73 69 6c 79 20 62 65 20 73 75 62 6a 65 63 74 20 sily be subject
5920: 74 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 3c 2f 62 to <b>one-way</b
5930: 3e 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 6f > restrictions o
5940: 72 20 65 76 65 6e 20 62 65 20 63 6f 6d 70 6c 65 r even be comple
5950: 74 65 6c 79 20 3c 62 3e 66 6f 72 62 69 64 64 65 tely <b>forbidde
5960: 6e 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 n</b>.</li>..<li
5970: 3e 74 68 65 20 63 6f 73 74 20 6f 66 20 65 61 63 >the cost of eac
5980: 68 20 4c 69 6e 6b 20 69 73 20 65 78 70 72 65 73 h Link is expres
5990: 73 65 64 20 61 73 20 61 6e 20 65 73 74 69 6d 61 sed as an estima
59a0: 74 65 64 20 3c 62 3e 74 72 61 76 65 6c 20 74 69 ted <b>travel ti
59b0: 6d 65 3c 2f 62 3e 2c 20 62 65 63 61 75 73 65 20 me</b>, because
59c0: 74 68 65 20 65 78 70 65 63 74 65 64 20 73 70 65 the expected spe
59d0: 65 64 73 20 63 61 6e 20 67 72 65 61 74 6c 79 20 eds can greatly
59e0: 76 61 72 79 20 61 63 63 6f 72 64 69 6e 67 6c 79 vary accordingly
59f0: 20 74 6f 20 73 70 65 63 69 66 69 63 20 72 6f 61 to specific roa
5a00: 64 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 74 72 d conditions, tr
5a10: 61 66 66 69 63 20 63 6f 6e 67 65 73 74 69 6f 6e affic congestion
5a20: 20 61 6e 64 20 6c 65 67 61 6c 20 72 65 67 75 6c and legal regul
5a30: 61 74 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f ations.</li>..</
5a40: 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d ul></li>..</ul>.
5a50: 0a 3c 62 72 3e 0d 0a 3c 75 3e 43 6f 6e 63 6c 75 .<br>..<u>Conclu
5a60: 73 69 6f 6e 3c 2f 75 3e 3a 20 61 20 73 69 6e 67 sion</u>: a sing
5a70: 6c 65 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e le VirtualRoutin
5a80: 67 20 54 61 62 6c 65 20 63 61 6e 27 74 20 62 65 g Table can't be
5a90: 20 61 62 6c 65 20 74 6f 20 61 64 65 71 75 61 74 able to adequat
5aa0: 65 6c 79 20 73 75 70 70 6f 72 74 20 73 75 70 70 ely support supp
5ab0: 6f 72 74 20 74 68 65 20 73 70 65 63 69 66 69 63 ort the specific
5ac0: 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 6e requirements an
5ad0: 64 20 65 78 70 65 63 74 61 74 69 6f 6e 73 20 6f d expectations o
5ae0: 66 20 64 69 66 66 65 72 65 6e 74 20 75 73 65 72 f different user
5af0: 73 2e 3c 62 72 3e 0d 0a 44 65 66 69 6e 69 6e 67 s.<br>..Defining
5b00: 20 6d 6f 72 65 20 52 6f 75 74 69 6e 67 20 54 61 more Routing Ta
5b10: 62 6c 65 73 20 77 69 74 68 20 64 69 66 66 65 72 bles with differ
5b20: 65 6e 74 20 73 65 74 74 69 6e 67 73 20 66 6f 72 ent settings for
5b30: 20 74 68 65 20 73 61 6d 65 20 4e 65 74 77 6f 72 the same Networ
5b40: 6b 20 75 73 75 61 6c 6c 79 20 69 73 20 61 20 67 k usually is a g
5b50: 6f 6f 64 20 64 65 73 69 67 6e 20 63 68 6f 69 63 ood design choic
5b60: 65 20 6c 65 61 64 69 6e 67 20 74 6f 20 6d 6f 72 e leading to mor
5b70: 65 20 72 65 61 6c 69 73 74 69 63 20 72 65 73 75 e realistic resu
5b80: 6c 74 73 2e 3c 62 72 3e 0d 0a 3c 2f 74 64 3e 3c lts.<br>..</td><
5b90: 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a /tr>..</table>..
5ba0: 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 33 3e 55 74 <br><br>..<h3>Ut
5bb0: 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e 20 66 ility function f
5bc0: 6f 72 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 or automatically
5bd0: 20 73 65 74 74 69 6e 67 20 4e 6f 64 65 46 72 6f setting NodeFro
5be0: 6d 20 61 6e 64 20 4e 6f 64 65 54 6f 20 49 44 73 m and NodeTo IDs
5bf0: 3c 2f 68 33 3e 0d 0a 53 6f 6d 65 74 69 6d 65 73 </h3>..Sometimes
5c00: 20 69 74 20 63 6f 75 6c 64 20 65 76 65 6e 74 75 it could eventu
5c10: 61 6c 6c 79 20 68 61 70 70 65 6e 20 74 6f 20 65 ally happen to e
5c20: 6e 63 6f 75 6e 74 65 72 20 73 6f 6d 65 20 3c 62 ncounter some <b
5c30: 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 6b >Spatial Network
5c40: 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 61 74 </b> representat
5c50: 69 6f 6e 20 62 65 69 6e 67 20 66 75 6c 6c 79 20 ion being fully
5c60: 74 6f 70 6f 6c 6f 67 69 63 61 6c 6c 79 20 63 6f topologically co
5c70: 6e 73 69 73 74 65 6e 74 20 62 75 74 20 63 6f 6d nsistent but com
5c80: 70 6c 65 74 65 6c 79 20 6c 61 63 6b 69 6e 67 20 pletely lacking
5c90: 61 6e 79 20 64 65 66 69 6e 69 74 69 6f 6e 20 61 any definition a
5ca0: 62 6f 75 74 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d bout <b>NodeFrom
5cb0: 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f 64 65 </b> and <b>Node
5cc0: 54 6f 3c 2f 62 3e 20 69 64 65 6e 74 69 66 69 65 To</b> identifie
5cd0: 72 73 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 69 73 rs.<br>..In this
5ce0: 20 73 70 65 63 69 66 69 63 20 63 61 73 65 20 79 specific case y
5cf0: 6f 75 20 63 61 6e 20 73 75 63 63 65 73 73 66 75 ou can successfu
5d00: 6c 6c 79 20 72 65 63 6f 76 65 72 20 61 20 70 65 lly recover a pe
5d10: 72 66 65 63 74 6c 79 20 76 61 6c 69 64 20 4e 65 rfectly valid Ne
5d20: 74 77 6f 72 6b 20 62 79 20 63 61 6c 6c 69 6e 67 twork by calling
5d30: 20 74 68 65 20 3c 62 3e 43 72 65 61 74 65 52 6f the <b>CreateRo
5d40: 75 74 69 6e 67 4e 6f 64 65 73 28 29 3c 2f 62 3e utingNodes()</b>
5d50: 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 2e 0d 0a SQL function...
5d60: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 <verbatim>..SELE
5d70: 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 6e 67 CT CreateRouting
5d80: 4e 6f 64 65 73 28 4e 55 4c 4c 2c 20 27 74 61 62 Nodes(NULL, 'tab
5d90: 6c 65 5f 6e 61 6d 65 27 2c 20 27 67 65 6f 6d 27 le_name', 'geom'
5da0: 2c 20 27 6e 6f 64 65 5f 66 72 6f 6d 27 2c 20 27 , 'node_from', '
5db0: 6e 6f 64 65 5f 74 6f 27 29 3b 0d 0a 5f 5f 5f 5f node_to');..____
5dc0: 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ________________
5dd0: 5f 5f 5f 5f 5f 0d 0a 31 0d 0a 3c 2f 76 65 72 62 _____..1..</verb
5de0: 61 74 69 6d 3e 0d 0a 4c 65 74 27 73 20 65 78 61 atim>..Let's exa
5df0: 6d 69 6e 65 20 61 6c 6c 20 61 72 67 75 6d 65 6e mine all argumen
5e00: 74 73 20 61 6e 64 20 74 68 65 69 72 20 6d 65 61 ts and their mea
5e10: 6e 69 6e 67 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 ning:..<ol>..<li
5e20: 3e 3c 69 3e 4e 55 4c 4c 3c 2f 69 3e 3a 20 6e 61 ><i>NULL</i>: na
5e30: 6d 65 20 6f 66 20 74 68 65 20 3c 62 3e 41 74 74 me of the <b>Att
5e40: 61 63 68 65 64 2d 44 42 3c 2f 62 3e 20 63 6f 6e ached-DB</b> con
5e50: 74 61 69 6e 69 6e 67 20 74 68 65 20 53 70 61 74 taining the Spat
5e60: 69 61 6c 20 54 61 62 6c 65 2e 3c 62 72 3e 0d 0a ial Table.<br>..
5e70: 49 74 20 63 61 6e 20 62 65 20 6c 65 67 69 74 69 It can be legiti
5e80: 6d 61 74 65 6c 79 20 73 65 74 20 74 6f 20 3c 62 mately set to <b
5e90: 3e 4e 55 4c 4c 3c 2f 62 3e 2c 20 61 6e 64 20 69 >NULL</b>, and i
5ea0: 6e 20 74 68 69 73 20 63 61 73 65 20 74 68 65 20 n this case the
5eb0: 3c 62 3e 4d 41 49 4e 3c 2f 62 3e 20 44 42 20 69 <b>MAIN</b> DB i
5ec0: 73 20 61 73 73 75 6d 65 64 2e 3c 2f 6c 69 3e 0d s assumed.</li>.
5ed0: 0a 3c 6c 69 3e 3c 69 3e 74 61 62 6c 65 5f 6e 61 .<li><i>table_na
5ee0: 6d 65 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 me</i>: name of
5ef0: 74 68 65 20 53 70 61 74 69 61 6c 20 54 61 62 6c the Spatial Tabl
5f00: 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e e.</li>..<li><i>
5f10: 67 65 6f 6d 3c 2f 6c 69 3e 3a 20 6e 61 6d 65 20 geom</li>: name
5f20: 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e 20 28 28 of the column ((
5f30: 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 in the above Tab
5f40: 6c 65 29 20 63 6f 6e 74 61 69 6e 69 6e 67 20 3c le) containing <
5f50: 62 3e 4c 69 6e 65 73 74 72 69 6e 67 73 3c 2f 62 b>Linestrings</b
5f60: 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e >.</li>..<li><i>
5f70: 6e 6f 64 65 5f 66 72 6f 6d 3c 2f 69 3e 3a 20 6e node_from</i>: n
5f80: 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d ame of the colum
5f90: 6e 20 74 6f 20 62 65 20 61 64 64 65 64 20 74 6f n to be added to
5fa0: 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 the above Table
5fb0: 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 64 20 77 and populated w
5fc0: 69 74 68 20 61 70 70 72 6f 70 72 69 61 74 65 20 ith appropriate
5fd0: 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e 20 <b>NodeFrom</b>
5fe0: 49 44 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c IDs.</li>..<li><
5ff0: 69 3e 6e 6f 64 65 5f 74 6f 3c 2f 69 3e 3a 20 6e i>node_to</i>: n
6000: 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d ame of the colum
6010: 6e 20 74 6f 20 62 65 20 61 64 64 65 64 20 74 6f n to be added to
6020: 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 the above Table
6030: 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 64 20 77 and populated w
6040: 69 74 68 20 61 70 70 72 6f 70 72 69 61 74 65 20 ith appropriate
6050: 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 49 44 <b>NodeTo</b> ID
6060: 73 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c s.<br>..<u>Note<
6070: 2f 75 3e 3a 20 62 6f 74 68 20 3c 62 3e 4e 6f 64 /u>: both <b>Nod
6080: 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 20 3c 62 eFrom</b> and <b
6090: 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 63 6f 6c 75 >NodeTo</b> colu
60a0: 6d 6e 73 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62 mns should not b
60b0: 65 20 61 6c 72 65 61 64 79 20 64 65 66 69 6e 65 e already define
60c0: 64 20 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 d in the above T
60d0: 61 62 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c able.</li>..</ol
60e0: 3e 0d 0a 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 >..<b>CreateRout
60f0: 69 6e 67 4e 6f 64 65 73 28 29 3c 2f 62 3e 20 77 ingNodes()</b> w
6100: 69 6c 6c 20 72 65 74 75 72 6e 20 3c 62 3e 31 3c ill return <b>1<
6110: 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 /b> (<i>aka</i>
6120: 3c 62 3e 54 52 55 45 3c 2f 62 3e 29 20 6f 6e 20 <b>TRUE</b>) on
6130: 73 75 63 63 65 73 73 3b 20 61 6e 20 65 78 63 65 success; an exce
6140: 70 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 72 61 ption will be ra
6150: 69 73 65 64 20 6f 6e 20 66 61 69 6c 75 72 65 2e ised on failure.
6160: 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 <br>..<u>Note</u
6170: 3e 3a 20 79 6f 75 20 63 61 6e 20 63 61 6c 6c 20 >: you can call
6180: 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 <b>CreateRouting
6190: 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 28 29 3c _GetLastError()<
61a0: 2f 62 3e 20 73 6f 20 74 6f 20 70 72 65 63 69 73 /b> so to precis
61b0: 65 6c 79 20 69 64 65 6e 74 69 66 79 20 74 68 65 ely identify the
61c0: 20 63 61 75 73 65 20 61 63 63 6f 75 6e 74 69 6e cause accountin
61d0: 67 20 66 6f 72 20 66 61 69 6c 75 72 65 2e 3c 62 g for failure.<b
61e0: 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 r><br><br>..<tab
61f0: 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 66 le bgcolor="#c0f
6200: 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 fc0" cellspacing
6210: 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 6e ="10" cellpaddin
6220: 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a g="6"><tr><td>..
6230: 3c 68 33 3e 48 61 6e 64 6c 69 6e 67 20 64 79 6e <h3>Handling dyn
6240: 61 6d 69 63 20 4e 65 74 77 6f 72 6b 73 3c 2f 68 amic Networks</h
6250: 33 3e 0d 0a 53 6f 6d 65 74 69 6d 65 73 20 69 74 3>..Sometimes it
6260: 20 68 61 70 70 65 6e 73 20 74 68 61 74 20 61 20 happens that a
6270: 4e 65 74 77 6f 72 6b 20 63 6f 75 6c 64 20 62 65 Network could be
6280: 20 73 75 62 6a 65 63 74 20 74 6f 20 72 61 74 68 subject to rath
6290: 65 72 20 66 72 65 71 75 65 6e 74 20 63 68 61 6e er frequent chan
62a0: 67 65 73 3a 20 73 6f 6d 65 20 6e 65 77 20 4c 69 ges: some new Li
62b0: 6e 6b 73 20 72 65 71 75 69 72 65 20 74 6f 20 62 nks require to b
62c0: 65 20 61 64 64 65 64 2c 20 6f 62 73 6f 6c 65 74 e added, obsolet
62d0: 65 20 4c 69 6e 6b 73 20 72 65 71 75 69 72 65 20 e Links require
62e0: 74 6f 20 62 65 20 72 65 6d 6f 76 65 64 2c 20 6f to be removed, o
62f0: 74 68 65 72 20 4c 69 6e 6b 73 20 6d 61 79 20 61 ther Links may a
6300: 73 73 75 6d 65 20 61 20 64 69 66 66 65 72 65 6e ssume a differen
6310: 74 20 43 6f 73 74 2c 20 6f 6e 65 2d 77 61 79 73 t Cost, one-ways
6320: 20 63 6f 75 6c 64 20 62 65 20 72 65 76 65 72 73 could be revers
6330: 65 64 2c 20 74 68 65 20 64 69 73 63 69 70 6c 69 ed, the discipli
6340: 6e 65 20 6f 66 20 70 65 64 65 73 74 72 69 61 6e ne of pedestrian
6350: 20 61 72 65 61 73 20 63 6f 75 6c 64 20 62 65 20 areas could be
6360: 6d 6f 64 69 66 69 65 64 20 61 6e 64 20 73 6f 20 modified and so
6370: 6f 6e 2e 3c 62 72 3e 0d 0a 41 20 56 69 72 74 75 on.<br>..A Virtu
6380: 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 alRouting Table
6390: 69 73 20 61 6c 77 61 79 73 20 62 61 73 65 64 20 is always based
63a0: 6f 6e 20 61 20 63 6f 6d 70 61 6e 69 6f 6e 20 42 on a companion B
63b0: 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 6c 65 inary Data Table
63c0: 2c 20 74 68 61 74 20 69 73 20 69 6e 74 72 69 6e , that is intrin
63d0: 73 69 63 61 6c 6c 79 20 3c 62 3e 73 74 61 74 69 sically <b>stati
63e0: 63 3c 2f 62 3e 2c 20 61 6e 64 20 63 6f 6e 73 65 c</b>, and conse
63f0: 71 75 65 6e 74 6c 79 20 79 6f 75 20 61 72 65 20 quently you are
6400: 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 2d 63 required to re-c
6410: 72 65 61 74 65 20 62 6f 74 68 20 74 68 65 6d 20 reate both them
6420: 66 72 6f 6d 20 74 69 6d 65 20 74 6f 20 74 69 6d from time to tim
6430: 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 73 75 e in order to su
6440: 70 70 6f 72 74 20 61 6c 6c 20 72 65 63 65 6e 74 pport all recent
6450: 20 63 68 61 6e 67 65 73 20 61 66 66 65 63 74 69 changes affecti
6460: 6e 67 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 ng the underlayi
6470: 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d ng Network.<br>.
6480: 0a 54 68 65 20 6f 70 74 69 6d 61 6c 20 66 72 65 .The optimal fre
6490: 71 75 65 6e 63 79 20 66 6f 72 20 63 79 63 6c 69 quency for cycli
64a0: 63 61 6c 6c 79 20 72 65 66 72 65 73 68 69 6e 67 cally refreshing
64b0: 20 74 68 65 20 52 6f 75 74 69 6e 67 20 54 61 62 the Routing Tab
64c0: 6c 65 73 20 73 74 72 69 63 74 6c 79 20 64 65 70 les strictly dep
64d0: 65 6e 64 73 20 6f 6e 20 73 70 65 63 69 66 69 63 ends on specific
64e0: 20 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 62 requirements, b
64f0: 75 74 20 74 68 65 20 74 77 6f 20 6f 76 65 72 61 ut the two overa
6500: 6c 6c 20 61 70 70 72 6f 61 63 68 65 73 20 61 72 ll approaches ar
6510: 65 20 63 6f 6d 6d 6f 6e 6c 79 20 61 64 6f 70 74 e commonly adopt
6520: 65 64 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 3c ed:..<ol>..<li><
6530: 62 3e 6c 6f 77 20 66 72 65 71 75 65 6e 63 79 20 b>low frequency
6540: 72 65 66 72 65 73 68 3c 2f 62 3e 3a 20 62 65 73 refresh</b>: bes
6550: 74 20 66 69 74 20 66 6f 72 20 73 6c 6f 77 6c 79 t fit for slowly
6560: 20 65 76 6f 6c 76 69 6e 67 20 4e 65 74 77 6f 72 evolving Networ
6570: 6b 73 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 69 73 ks.<br>..In this
6580: 20 63 61 73 65 20 72 65 2d 63 72 65 61 74 69 6e case re-creatin
6590: 67 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 54 61 g the Network Ta
65a0: 62 6c 65 73 20 6f 6e 63 65 20 61 20 6d 6f 6e 74 bles once a mont
65b0: 68 20 2f 20 77 65 65 6b 20 2f 20 64 61 79 20 63 h / week / day c
65c0: 6f 75 6c 64 20 62 65 20 72 65 61 73 6f 6e 61 62 ould be reasonab
65d0: 6c 79 20 65 6e 6f 75 67 68 2e 0d 0a 52 65 63 72 ly enough...Recr
65e0: 65 61 74 69 6e 67 20 74 68 65 20 54 61 62 6c 65 eating the Table
65f0: 73 20 66 72 6f 6d 20 73 63 72 61 74 63 68 20 75 s from scratch u
6600: 73 75 61 6c 6c 79 20 72 65 71 75 69 72 65 73 20 sually requires
6610: 73 65 76 65 72 61 6c 20 73 65 63 6f 6e 64 73 20 several seconds
6620: 28 6f 72 20 65 76 65 6e 20 6c 65 73 73 2c 20 64 (or even less, d
6630: 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 epending on the
6640: 6e 75 6d 62 65 72 20 6f 66 20 4c 69 6e 6b 73 29 number of Links)
6650: 2e 3c 62 72 3e 0d 0a 54 68 65 20 72 65 66 72 65 .<br>..The refre
6660: 73 68 20 61 63 74 69 76 69 74 69 65 73 20 63 6f sh activities co
6670: 75 6c 64 20 62 65 20 6f 70 70 6f 72 74 75 6e 65 uld be opportune
6680: 6c 79 20 70 6c 61 6e 6e 65 64 20 61 74 20 6c 6f ly planned at lo
6690: 77 20 74 72 61 66 66 69 63 20 68 6f 75 72 73 20 w traffic hours
66a0: 28 65 2e 67 2e 20 64 75 72 69 6e 67 20 74 68 65 (e.g. during the
66b0: 20 6e 69 67 68 74 29 2c 20 61 6e 64 20 3c 62 3e night), and <b>
66c0: 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3c CreateRouting()<
66d0: 2f 62 3e 20 63 6f 75 6c 64 20 62 65 20 75 73 65 /b> could be use
66e0: 66 75 6c 6c 79 20 63 61 6c 6c 65 64 20 62 79 20 fully called by
66f0: 65 6e 61 62 6c 69 6e 67 20 74 68 65 20 3c 62 3e enabling the <b>
6700: 6f 76 65 72 77 72 69 74 65 3c 2f 62 3e 20 6f 70 overwrite</b> op
6710: 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e tion.</li>..<li>
6720: 3c 62 3e 6d 65 64 69 75 6d 2d 68 69 67 68 20 66 <b>medium-high f
6730: 72 65 71 75 65 6e 63 79 20 72 65 66 72 65 73 68 requency refresh
6740: 3c 2f 62 3e 3a 20 62 65 73 74 20 66 69 74 20 66 </b>: best fit f
6750: 6f 72 20 71 75 69 63 6b 6c 79 20 65 76 6f 6c 76 or quickly evolv
6760: 69 6e 67 20 4e 65 74 77 6f 72 6b 73 2e 3c 62 72 ing Networks.<br
6770: 3e 0d 0a 52 65 2d 63 72 65 61 74 69 6e 67 20 74 >..Re-creating t
6780: 68 65 20 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 he Network Table
6790: 73 20 6f 6e 63 65 20 70 65 72 20 68 6f 75 72 20 s once per hour
67a0: 28 6f 72 20 65 76 65 6e 20 6d 6f 72 65 20 66 72 (or even more fr
67b0: 65 71 75 65 6e 74 6c 79 29 20 63 6f 75 6c 64 20 equently) could
67c0: 62 65 20 73 74 72 69 63 74 6c 79 20 72 65 71 75 be strictly requ
67d0: 69 72 65 64 2c 20 61 6e 64 20 66 72 65 71 75 65 ired, and freque
67e0: 6e 74 20 3c 62 3e 6f 75 74 20 6f 66 20 73 65 72 nt <b>out of ser
67f0: 76 69 63 65 3c 2f 62 3e 20 70 65 72 69 6f 64 73 vice</b> periods
6800: 20 77 68 69 6c 65 20 77 61 69 74 69 6e 67 20 66 while waiting f
6810: 6f 72 20 74 68 65 20 72 65 66 72 65 73 68 20 70 or the refresh p
6820: 72 6f 63 65 73 73 20 74 6f 20 63 6f 6d 70 6c 65 rocess to comple
6830: 74 65 20 63 6f 75 6c 64 20 65 61 73 69 6c 79 20 te could easily
6840: 62 65 20 75 6e 61 63 63 65 70 74 61 62 6c 65 2e be unacceptable.
6850: 3c 62 72 3e 0d 0a 49 6e 20 74 68 69 73 20 63 61 <br>..In this ca
6860: 73 65 20 79 6f 75 20 63 6f 75 6c 64 20 75 73 65 se you could use
6870: 66 75 6c 6c 79 20 61 64 6f 70 74 20 61 20 3c 62 fully adopt a <b
6880: 3e 6d 75 6c 74 69 2d 74 68 72 65 61 64 65 64 20 >multi-threaded
6890: 73 74 72 61 74 65 67 79 3c 2f 62 3e 3a 0d 0a 3c strategy</b>:..<
68a0: 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 74 68 72 65 ul>..<li><b>thre
68b0: 61 64 20 23 31 3c 2f 62 3e 20 28 3c 69 3e 74 68 ad #1</b> (<i>th
68c0: 65 20 72 65 61 64 65 72 3c 2f 69 3e 29 3a 20 74 e reader</i>): t
68d0: 68 69 73 20 66 69 72 73 74 20 74 68 72 65 61 64 his first thread
68e0: 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 is intended to
68f0: 73 65 72 76 69 63 65 20 61 6e 79 20 69 6e 63 6f service any inco
6900: 6d 69 6e 67 20 52 6f 75 74 69 6e 67 20 72 65 71 ming Routing req
6910: 75 65 73 74 2e 20 49 74 20 77 69 6c 6c 20 62 65 uest. It will be
6920: 20 61 6c 77 61 79 73 20 61 63 74 69 76 65 2c 20 always active,
6930: 61 6e 64 20 77 69 6c 6c 20 74 61 72 67 65 74 20 and will target
6940: 61 20 77 65 6c 6c 20 6b 6e 6f 77 6e 20 56 69 72 a well known Vir
6950: 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c tualRouting Tabl
6960: 65 20 28 65 2e 67 2e 20 3c 62 3e 6d 79 5f 72 6f e (e.g. <b>my_ro
6970: 75 74 69 6e 67 3c 2f 62 3e 20 62 61 73 65 64 20 uting</b> based
6980: 6f 6e 20 3c 62 3e 6d 79 5f 72 6f 75 74 69 6e 67 on <b>my_routing
6990: 5f 64 61 74 61 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e _data</b>).</li>
69a0: 0d 0a 3c 6c 69 3e 3c 62 3e 74 68 72 65 61 64 20 ..<li><b>thread
69b0: 23 32 3c 2f 62 3e 20 28 3c 69 3e 74 68 65 20 77 #2</b> (<i>the w
69c0: 72 69 74 65 72 3c 2f 69 3e 29 3a 20 74 68 69 73 riter</i>): this
69d0: 20 73 65 63 6f 6e 64 20 74 68 72 65 61 64 20 69 second thread i
69e0: 73 20 6a 75 73 74 20 69 6e 74 65 6e 64 65 64 20 s just intended
69f0: 74 6f 20 72 65 2d 63 72 65 61 74 65 20 62 6f 74 to re-create bot
6a00: 68 20 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 73 h Network Tables
6a10: 20 61 74 20 70 72 65 64 65 66 69 6e 65 64 20 69 at predefined i
6a20: 6e 74 65 72 76 61 6c 73 2c 20 61 6e 64 20 69 74 ntervals, and it
6a30: 20 77 69 6c 6c 20 73 6c 65 65 70 20 62 65 74 77 will sleep betw
6a40: 65 65 6e 20 61 6e 20 69 6e 74 65 72 76 61 6c 20 een an interval
6a50: 61 6e 64 20 74 68 65 20 6f 74 68 65 72 2e 3c 62 and the other.<b
6a60: 72 3e 0d 0a 57 68 65 6e 20 74 68 69 73 20 74 68 r>..When this th
6a70: 72 65 61 64 20 61 77 61 6b 65 6e 73 20 77 69 6c read awakens wil
6a80: 6c 20 72 65 2d 63 72 65 61 74 65 20 62 6f 74 68 l re-create both
6a90: 20 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 73 20 Network Tables
6aa0: 62 79 20 75 73 69 6e 67 20 64 69 66 66 65 72 65 by using differe
6ab0: 6e 74 20 6e 61 6d 65 73 2c 20 61 6e 64 20 77 69 nt names, and wi
6ac0: 6c 6c 20 6f 76 65 72 77 72 69 74 65 20 74 68 65 ll overwrite the
6ad0: 20 73 74 61 6e 64 61 72 64 20 6f 6e 65 73 20 6a standard ones j
6ae0: 75 73 74 20 61 74 20 74 68 65 20 76 65 72 79 20 ust at the very
6af0: 65 6e 64 20 6f 66 20 74 68 65 20 70 72 6f 63 65 end of the proce
6b00: 73 73 20 28 61 63 74 69 76 61 74 69 6e 67 20 61 ss (activating a
6b10: 20 73 65 6d 61 70 68 6f 72 65 20 64 75 72 69 6e semaphore durin
6b20: 67 20 74 68 69 73 20 73 68 6f 72 74 2d 74 69 6d g this short-tim
6b30: 65 64 20 6c 61 73 74 20 73 74 65 70 20 69 73 20 ed last step is
6b40: 68 69 67 68 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 highly recommend
6b50: 65 64 29 2e 3c 62 72 3e 0d 0a 53 6f 6d 65 74 68 ed).<br>..Someth
6b60: 69 6e 67 20 6c 69 6b 65 20 74 68 69 73 20 70 73 ing like this ps
6b70: 65 75 64 6f 2d 63 6f 64 65 20 65 78 65 6d 70 6c eudo-code exempl
6b80: 69 66 69 65 73 3a 0d 0a 3c 76 65 72 62 61 74 69 ifies:..<verbati
6b90: 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 74 m>..SELECT Creat
6ba0: 65 52 6f 75 74 69 6e 67 28 27 6e 65 77 5f 6d 79 eRouting('new_my
6bb0: 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 2c 20 _routing_data',
6bc0: 27 6e 65 77 5f 6d 79 5f 72 6f 75 74 69 6e 67 27 'new_my_routing'
6bd0: 2c 20 2e 2e 2e 29 3b 0d 0a 0d 0a 2d 2d 3e 20 73 , ...);....--> s
6be0: 74 61 72 74 20 74 68 65 20 73 65 6d 61 70 68 6f tart the semapho
6bf0: 72 65 20 73 6f 20 74 6f 20 6c 6f 63 6b 20 74 68 re so to lock th
6c00: 65 20 6f 74 68 65 72 20 74 68 72 65 61 64 0d 0a e other thread..
6c10: 0d 0a 42 45 47 49 4e 3b 0d 0a 44 52 4f 50 20 54 ..BEGIN;..DROP T
6c20: 41 42 4c 45 20 6d 79 5f 72 6f 75 74 69 6e 67 3b ABLE my_routing;
6c30: 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6d 79 5f ..DROP TABLE my_
6c40: 72 6f 75 74 69 6e 67 5f 64 61 74 61 3b 0d 0a 53 routing_data;..S
6c50: 45 4c 45 43 54 20 43 6c 6f 6e 65 54 61 62 6c 65 ELECT CloneTable
6c60: 28 27 4d 41 49 4e 27 2c 20 27 6e 65 77 5f 6d 79 ('MAIN', 'new_my
6c70: 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 2c 20 _routing_data',
6c80: 27 6d 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 'my_routing_data
6c90: 27 2c 20 30 29 3b 0d 0a 43 52 45 41 54 45 20 56 ', 0);..CREATE V
6ca0: 49 52 54 55 41 4c 20 54 41 42 4c 45 20 6d 79 5f IRTUAL TABLE my_
6cb0: 72 6f 75 74 69 6e 67 20 55 53 49 4e 47 20 56 69 routing USING Vi
6cc0: 72 74 75 61 6c 52 6f 75 74 69 6e 67 28 27 6d 79 rtualRouting('my
6cd0: 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 29 3b _routing_data');
6ce0: 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6e 65 77 ..DROP TABLE new
6cf0: 5f 6d 79 5f 72 6f 75 74 69 6e 67 3b 0d 0a 44 52 _my_routing;..DR
6d00: 4f 50 20 54 41 42 4c 45 20 6e 65 77 5f 6d 79 5f OP TABLE new_my_
6d10: 72 6f 75 74 69 6e 67 5f 64 61 74 61 3b 0d 0a 43 routing_data;..C
6d20: 4f 4d 4d 49 54 3b 0d 0a 0d 0a 2d 2d 3e 20 72 65 OMMIT;....--> re
6d30: 6d 6f 76 65 20 74 68 65 20 73 65 6d 61 70 68 6f move the semapho
6d40: 72 65 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d re..</verbatim>.
6d50: 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 73 74 .<u>Note</u>: st
6d60: 72 69 63 74 6c 79 20 72 65 73 70 65 63 74 69 6e rictly respectin
6d70: 67 20 74 68 65 20 61 62 6f 76 65 20 73 65 71 75 g the above sequ
6d80: 65 6e 63 65 20 6f 66 20 53 51 4c 20 6f 70 65 72 ence of SQL oper
6d90: 61 74 69 6f 6e 73 20 69 73 20 61 62 73 6f 6c 75 ations is absolu
6da0: 74 65 6c 79 20 72 65 71 75 69 72 65 64 2e 3c 2f tely required.</
6db0: 6c 69 3e 20 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e li> ..</ul></li>
6dc0: 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 2f 74 64 3e 3c 2f ..</ol>..</td></
6dd0: 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c tr>..</table>..<
6de0: 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f br>..<table bgco
6df0: 6c 6f 72 3d 22 23 66 66 62 30 36 30 22 20 63 65 lor="#ffb060" ce
6e00: 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 llspacing="10" c
6e10: 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c ellpadding="6"><
6e20: 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 57 61 72 tr><td>..<h3>War
6e30: 6e 69 6e 67 3a 20 68 6f 77 20 74 6f 20 63 6f 72 ning: how to cor
6e40: 72 65 63 74 6c 79 20 64 72 6f 70 20 4e 65 74 77 rectly drop Netw
6e50: 6f 72 6b 20 54 61 62 6c 65 73 3c 2f 68 33 3e 0d ork Tables</h3>.
6e60: 0a 57 68 65 6e 20 64 72 6f 70 70 69 6e 67 20 61 .When dropping a
6e70: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
6e80: 54 61 62 6c 65 20 61 6e 64 20 69 74 73 20 63 6f Table and its co
6e90: 6d 70 61 6e 69 6f 6e 20 42 69 6e 61 72 79 20 44 mpanion Binary D
6ea0: 61 74 61 20 54 61 62 6c 65 20 66 6f 6c 6c 6f 77 ata Table follow
6eb0: 69 6e 67 20 74 68 65 20 63 6f 72 72 65 63 74 20 ing the correct
6ec0: 73 65 71 75 65 6e 63 65 20 6f 66 20 53 51 4c 20 sequence of SQL
6ed0: 63 6f 6d 6d 61 6e 64 73 20 69 73 20 70 61 72 61 commands is para
6ee0: 6d 6f 75 6e 74 2e 3c 62 72 3e 0d 0a 46 61 69 6c mount.<br>..Fail
6ef0: 69 6e 67 20 74 6f 20 73 74 72 69 63 74 6c 79 20 ing to strictly
6f00: 72 65 73 70 65 63 74 20 74 68 65 20 65 78 70 65 respect the expe
6f10: 63 74 65 64 20 73 65 71 75 65 6e 63 65 20 77 69 cted sequence wi
6f20: 6c 6c 20 73 75 72 65 6c 79 20 63 61 75 73 65 20 ll surely cause
6f30: 79 6f 75 20 73 65 76 65 72 61 6c 20 74 72 6f 75 you several trou
6f40: 62 6c 65 73 20 61 6e 64 20 73 65 76 65 72 65 20 bles and severe
6f50: 68 65 61 64 61 63 68 65 73 2c 20 61 6e 64 20 77 headaches, and w
6f60: 69 6c 6c 20 70 6f 73 73 69 62 6c 79 20 6c 65 61 ill possibly lea
6f70: 64 20 74 6f 20 61 6e 20 69 72 72 65 6d 65 64 69 d to an irremedi
6f80: 61 62 6c 79 20 63 6f 72 72 75 70 74 65 64 20 64 ably corrupted d
6f90: 61 74 61 62 61 73 65 2e 0d 0a 3c 6f 6c 3e 0d 0a atabase...<ol>..
6fa0: 3c 6c 69 3e 79 6f 75 20 61 72 65 20 61 6c 77 61 <li>you are alwa
6fb0: 79 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 44 ys expected to D
6fc0: 52 4f 50 20 66 69 72 73 74 20 74 68 65 20 56 69 ROP first the Vi
6fd0: 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 rtualRouting Tab
6fe0: 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 79 6f le.</li>..<li>yo
6ff0: 75 20 63 61 6e 20 73 61 66 65 6c 79 20 44 52 4f u can safely DRO
7000: 50 20 74 68 65 20 63 6f 6d 70 61 6e 69 6f 6e 20 P the companion
7010: 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 6c Binary Data Tabl
7020: 65 20 6f 6e 6c 79 20 6f 6e 63 65 20 69 74 27 73 e only once it's
7030: 20 6e 6f 20 6c 6f 6e 67 65 72 20 72 65 66 65 72 no longer refer
7040: 65 6e 63 65 64 20 62 79 20 74 68 65 20 56 69 72 enced by the Vir
7050: 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c tualRouting Tabl
7060: 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 62 79 20 e.</li>..<li>by
7070: 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 72 65 following the re
7080: 76 65 72 73 65 20 73 65 71 75 65 6e 63 65 20 79 verse sequence y
7090: 6f 75 27 6c 6c 20 64 69 72 65 63 74 6c 79 20 63 ou'll directly c
70a0: 72 65 61 74 65 20 61 6e 20 3c 62 3e 6f 72 70 68 reate an <b>orph
70b0: 61 6e 3c 2f 62 3e 20 56 69 72 74 75 61 6c 52 6f an</b> VirtualRo
70c0: 75 74 69 6e 67 20 54 61 62 6c 65 20 74 68 61 74 uting Table that
70d0: 20 63 61 6e 6e 6f 74 20 62 65 20 61 63 63 65 73 cannot be acces
70e0: 73 65 64 20 61 6e 79 20 6c 6f 6e 67 65 72 2c 20 sed any longer,
70f0: 61 6e 64 20 74 68 61 74 20 77 69 6c 6c 20 63 6f and that will co
7100: 6e 73 65 71 75 65 6e 74 6c 79 20 72 65 66 75 73 nsequently refus
7110: 65 20 74 6f 20 62 65 20 64 72 6f 70 70 65 64 2e e to be dropped.
7120: 3c 62 72 3e 0d 0a 42 65 20 77 61 72 6e 65 64 20 <br>..Be warned
7130: 21 21 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a !!</li>..</ol>..
7140: 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 </td></tr>..</ta
7150: 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a ble>..<br><br>..
7160: 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 3c 61 <hr><br>..<h1><a
7170: 20 6e 61 6d 65 3d 22 66 72 6f 6d 5f 74 6f 22 3e name="from_to">
7180: 34 20 2d 20 53 6f 6c 76 69 6e 67 20 63 6c 61 73 4 - Solving clas
7190: 73 69 63 20 53 68 6f 72 74 65 73 74 20 50 61 74 sic Shortest Pat
71a0: 68 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 2f h problems</a></
71b0: 68 31 3e 0d 0a 54 68 65 20 6d 6f 73 74 20 63 6c h1>..The most cl
71c0: 61 73 73 69 63 20 53 68 6f 72 74 65 73 74 20 50 assic Shortest P
71d0: 61 74 68 20 70 72 6f 62 6c 65 6d 20 72 65 71 75 ath problem requ
71e0: 69 72 65 73 20 74 6f 20 69 64 65 6e 74 69 66 79 ires to identify
71f0: 20 74 68 65 20 6f 70 74 69 6d 61 6c 20 63 6f 6e the optimal con
7200: 6e 65 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 nection between
7210: 61 6e 20 3c 62 3e 4f 72 69 67 69 6e 20 4e 6f 64 an <b>Origin Nod
7220: 65 3c 2f 62 3e 20 61 6e 64 20 61 20 3c 62 3e 44 e</b> and a <b>D
7230: 65 73 74 69 6e 61 74 69 6f 6e 20 4e 6f 64 65 3c estination Node<
7240: 2f 62 3e 2e 3c 62 72 3e 0d 0a 57 65 20 63 61 6e /b>.<br>..We can
7250: 20 65 61 73 69 6c 79 20 74 72 61 6e 73 6c 61 74 easily translat
7260: 65 20 73 75 63 68 20 61 20 70 72 6f 62 6c 65 6d e such a problem
7270: 20 69 6e 74 6f 20 61 20 73 69 6d 70 6c 65 20 53 into a simple S
7280: 51 4c 20 71 75 65 72 79 20 74 61 72 67 65 74 69 QL query targeti
7290: 6e 67 20 73 6f 6d 65 20 56 69 72 74 75 61 6c 52 ng some VirtualR
72a0: 6f 75 74 69 6e 67 20 54 61 62 6c 65 2e 0d 0a 3c outing Table...<
72b0: 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 43 verbatim>..SELEC
72c0: 54 20 2a 20 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f T * ..FROM byfoo
72d0: 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f t..WHERE NodeFro
72e0: 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e m = 178731 AND N
72f0: 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 36 3b 0d odeTo = 183286;.
7300: 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 3c 74 .</verbatim>..<t
7310: 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 31 22 20 able border="1"
7320: 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 bgcolor="#ffffcf
7330: 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 " cellspacing="4
7340: 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 " cellpadding="6
7350: 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f ">..<tr><th bgco
7360: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 41 6c lor="#d0d0a0">Al
7370: 67 6f 72 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 gorithm</th><th
7380: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
7390: 22 3e 52 65 71 75 65 73 74 3c 2f 74 68 3e 3c 74 ">Request</th><t
73a0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
73b0: 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e a0">Options</th>
73c0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
73d0: 64 30 61 30 22 3e 44 65 6c 69 6d 69 74 65 72 3c d0a0">Delimiter<
73e0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
73f0: 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 49 "#d0d0a0">RouteI
7400: 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f d</th><th bgcolo
7410: 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 r="#d0d0a0">Rout
7420: 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 eRow</th><th bgc
7430: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
7440: 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f ole</th><th bgco
7450: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 lor="#d0d0a0">Li
7460: 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 nkRowid</th><th
7470: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
7480: 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c ">NodeFrom</th><
7490: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
74a0: 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 0a0">NodeTo</th>
74b0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
74c0: 64 30 61 30 22 3e 50 6f 69 6e 74 46 72 6f 6d 3c d0a0">PointFrom<
74d0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
74e0: 22 23 64 30 64 30 61 30 22 3e 50 6f 69 6e 74 54 "#d0d0a0">PointT
74f0: 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f o</th><th bgcolo
7500: 72 3d 22 23 64 30 64 30 61 30 22 3e 54 6f 6c 65 r="#d0d0a0">Tole
7510: 72 61 6e 63 65 3c 2f 74 68 3e 3c 74 68 20 62 67 rance</th><th bg
7520: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
7530: 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 Cost</th><th bgc
7540: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 47 olor="#d0d0a0">G
7550: 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 20 eometry</th><th
7560: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
7570: 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e ">Name</th></tr>
7580: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 69 6a 6b ..<tr>..<td>Dijk
7590: 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e 53 68 6f stra</td><td>Sho
75a0: 72 74 65 73 74 20 50 61 74 68 3c 2f 74 64 3e 3c rtest Path</td><
75b0: 74 64 3e 46 75 6c 6c 3c 2f 74 64 3e 3c 74 64 3e td>Full</td><td>
75c0: 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 2c 20 68 , [dec=44, h
75d0: 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 64 3e 3c ex=2c]</td><
75e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
75f0: 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >0</td><td align
7600: 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
7610: 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 td>Route</td><td
7620: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
7630: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
7640: 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
7650: 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c ="right">183286<
7660: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
7670: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
7680: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
7690: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 30 30 lign="right">300
76a0: 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 64 3e .912208</td><td>
76b0: 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f 4d BLOB sz=272 GEOM
76c0: 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c ETRY</td><td>NUL
76d0: 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c L</td>..</tr>..<
76e0: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
76f0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
7700: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
7710: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
7720: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
7730: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
7740: 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">1</td><td>Lin
7750: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
7760: 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 3c 2f "right">224014</
7770: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
7780: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
7790: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
77a0: 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 ">182885</td><td
77b0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
77c0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
77d0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
77e0: 69 67 68 74 22 3e 39 34 2e 38 31 32 34 32 34 3c ight">94.812424<
77f0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
7800: 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 52 4f 20 ><td>VIA PIETRO
7810: 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f ARETINO</td>..</
7820: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
7830: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
7840: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
7850: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
7860: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
7870: 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >0</td><td align
7880: 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
7890: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
78a0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
78b0: 34 34 34 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4446</td><td ali
78c0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 gn="right">18288
78d0: 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
78e0: 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c 2f "right">178880</
78f0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
7900: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
7910: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
7920: 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 39 2e 37 ign="right">69.7
7930: 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 27726</td><td>NU
7940: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d LL</td><td>VIA M
7950: 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d ARGARITONE</td>.
7960: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
7970: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
7980: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
7990: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
79a0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
79b0: 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">0</td><td al
79c0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
79d0: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
79e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
79f0: 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 64 20 >224414</td><td
7a00: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
7a10: 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8880</td><td ali
7a20: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 gn="right">18328
7a30: 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 6</td><td>NULL</
7a40: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
7a50: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
7a60: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
7a70: 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 74 36.372057</td><t
7a80: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
7a90: 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f IA MARGARITONE</
7aa0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 td>..</tr>..</ta
7ab0: 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 74 27 ble>..<br>..Let'
7ac0: 73 20 71 75 69 63 6b 6c 79 20 65 78 61 6d 69 6e s quickly examin
7ad0: 65 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 e the resultset
7ae0: 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 returned by the
7af0: 61 62 6f 76 65 20 52 6f 75 74 69 6e 67 20 71 75 above Routing qu
7b00: 65 72 79 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e ery:..<ul>..<li>
7b10: 74 68 65 20 3c 62 3e 66 69 72 73 74 20 72 6f 77 the <b>first row
7b20: 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e </b> (<i>aka</i>
7b30: 20 68 65 61 64 65 72 20 72 6f 77 29 20 68 61 73 header row) has
7b40: 20 61 20 73 70 65 63 69 61 6c 20 69 6e 74 65 72 a special inter
7b50: 70 72 65 74 61 74 69 6f 6e 2c 20 61 6e 64 20 69 pretation, and i
7b60: 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 73 75 s intended to su
7b70: 6d 6d 61 72 69 7a 65 20 74 68 65 20 74 72 61 76 mmarize the trav
7b80: 65 6c 20 73 6f 6c 75 74 69 6f 6e 20 61 73 20 61 el solution as a
7b90: 20 77 68 6f 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c whole.</li>..<l
7ba0: 69 3e 61 6c 6c 20 74 68 65 20 3c 62 3e 66 6f 6c i>all the <b>fol
7bb0: 6c 6f 77 69 6e 67 20 72 6f 77 73 3c 2f 62 3e 20 lowing rows</b>
7bc0: 72 65 70 72 65 73 65 6e 74 20 61 20 73 69 6e 67 represent a sing
7bd0: 6c 65 20 4c 69 6e 6b 20 72 65 71 75 69 72 65 64 le Link required
7be0: 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 73 6f to build the so
7bf0: 6c 75 74 69 6f 6e 20 28 6f 70 74 69 6d 61 20 70 lution (optima p
7c00: 61 74 68 29 3b 20 4c 69 6e 6b 73 20 61 72 65 20 ath); Links are
7c10: 6f 72 64 65 72 65 64 20 61 63 63 6f 72 64 69 6e ordered accordin
7c20: 67 6c 79 20 74 6f 20 74 68 65 20 74 72 61 76 65 gly to the trave
7c30: 6c 20 64 69 72 65 63 74 69 6f 6e 20 63 6f 6e 6e l direction conn
7c40: 65 63 74 69 6e 67 20 74 68 65 20 4f 72 69 67 69 ecting the Origi
7c50: 6e 20 61 6e 64 20 74 68 65 20 44 65 73 74 69 6e n and the Destin
7c60: 61 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 ation.</li>..<li
7c70: 3e 63 6f 6c 75 6d 6e 73 20 3c 62 3e 41 6c 67 6f >columns <b>Algo
7c80: 72 69 74 68 6d 3c 2f 62 3e 2c 20 3c 62 3e 52 65 rithm</b>, <b>Re
7c90: 71 75 65 73 74 3c 2f 62 3e 2c 20 3c 62 3e 4f 70 quest</b>, <b>Op
7ca0: 74 69 6f 6e 73 3c 2f 62 3e 2c 20 3c 62 3e 44 65 tions</b>, <b>De
7cb0: 6c 69 6d 69 74 65 72 3c 2f 62 3e 2c 20 3c 62 3e limiter</b>, <b>
7cc0: 50 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 2c 20 3c PointFrom</b>, <
7cd0: 62 3e 50 6f 69 6e 74 54 6f 3c 2f 62 3e 2c 20 3c b>PointTo</b>, <
7ce0: 62 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f 62 3e 20 b>Tolerance</b>
7cf0: 61 6e 64 20 3c 62 3e 47 65 6f 6d 65 74 72 79 3c and <b>Geometry<
7d00: 2f 62 3e 20 61 72 65 20 61 6c 77 61 79 73 20 73 /b> are always s
7d10: 65 74 20 74 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 et to <b>NULL</b
7d20: 3e 20 65 78 63 65 70 74 20 74 68 61 74 20 69 6e > except that in
7d30: 20 74 68 65 20 66 69 72 73 74 20 72 6f 77 20 6f the first row o
7d40: 66 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 3a f the resultset:
7d50: 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 ..<ul>..<li>colu
7d60: 6d 6e 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d 3c mn <b>Algorithm<
7d70: 2f 62 3e 20 61 63 63 6f 75 6e 74 73 20 66 6f 72 /b> accounts for
7d80: 20 74 68 65 20 52 6f 75 74 69 6e 67 20 41 6c 67 the Routing Alg
7d90: 6f 72 69 74 68 6d 20 75 73 65 64 20 62 79 20 74 orithm used by t
7da0: 68 65 20 63 75 72 72 65 6e 74 20 71 75 65 72 79 he current query
7db0: 20 28 3c 69 3e 44 69 6a 6b 73 74 72 61 27 73 3c (<i>Dijkstra's<
7dc0: 2f 69 3e 20 6f 72 20 3c 69 3e 41 2a 3c 2f 69 3e /i> or <i>A*</i>
7dd0: 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c ).</li>..<li>col
7de0: 75 6d 6e 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f umn <b>Request</
7df0: 62 3e 20 73 70 65 63 69 66 69 65 73 20 74 68 65 b> specifies the
7e00: 20 65 78 61 63 74 20 6e 61 74 75 72 65 20 6f 66 exact nature of
7e10: 20 74 68 65 20 63 75 72 72 65 6e 74 20 71 75 65 the current que
7e20: 72 79 20 28 69 6e 20 74 68 69 73 20 73 70 65 63 ry (in this spec
7e30: 69 66 69 63 20 63 61 73 65 20 3c 69 3e 53 68 6f ific case <i>Sho
7e40: 72 74 65 73 74 20 50 61 74 68 3c 2f 69 3e 29 2e rtest Path</i>).
7e50: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 77 65 27 6c 6c </li>..<li>we'll
7e60: 20 69 67 6e 6f 72 65 20 66 6f 72 20 6e 6f 77 20 ignore for now
7e70: 63 6f 6c 75 6d 6e 73 20 3c 62 3e 4f 70 74 69 6f columns <b>Optio
7e80: 6e 73 3c 2f 62 3e 2c 20 3c 62 3e 44 65 6c 69 6d ns</b>, <b>Delim
7e90: 69 74 65 72 3c 2f 62 3e 2c 20 3c 62 3e 50 6f 69 iter</b>, <b>Poi
7ea0: 6e 74 46 72 6f 6d 3c 2f 62 3e 2c 20 3c 62 3e 50 ntFrom</b>, <b>P
7eb0: 6f 69 6e 74 54 6f 3c 2f 62 3e 20 61 6e 64 20 3c ointTo</b> and <
7ec0: 62 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f 62 3e 3a b>Tolerance</b>:
7ed0: 20 74 68 65 69 72 20 72 65 73 70 65 63 74 69 76 their respectiv
7ee0: 65 20 6d 65 61 6e 69 6e 67 73 20 77 69 6c 6c 20 e meanings will
7ef0: 62 65 20 65 78 70 6c 61 69 6e 65 64 20 69 6e 20 be explained in
7f00: 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 72 61 67 72 following paragr
7f10: 61 70 68 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e aphs.</li>..<li>
7f20: 63 6f 6c 75 6d 6e 20 3c 62 3e 47 65 6f 6d 65 74 column <b>Geomet
7f30: 72 79 3c 2f 62 3e 20 63 6f 6e 74 61 69 6e 73 20 ry</b> contains
7f40: 61 20 3c 62 3e 4c 49 4e 45 53 54 52 49 4e 47 3c a <b>LINESTRING<
7f50: 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 61 74 69 /b> representati
7f60: 6f 6e 20 6f 66 20 74 68 65 20 77 68 6f 6c 65 20 on of the whole
7f70: 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 2e travel solution.
7f80: 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 <br>..<u>Note</u
7f90: 3e 3a 20 6f 6e 20 3c 62 3e 4c 6f 67 69 63 61 6c >: on <b>Logical
7fa0: 20 4e 65 74 77 6f 72 6b 73 3c 2f 62 3e 20 28 6e Networks</b> (n
7fb0: 6f 74 20 73 75 70 70 6f 72 74 69 6e 67 20 47 65 ot supporting Ge
7fc0: 6f 6d 65 74 72 69 65 73 29 20 3c 62 3e 47 65 6f ometries) <b>Geo
7fd0: 6d 65 74 72 79 3c 2f 62 3e 20 77 69 6c 6c 20 61 metry</b> will a
7fe0: 6c 77 61 79 73 20 62 65 20 3c 62 3e 4e 55 4c 4c lways be <b>NULL
7ff0: 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c </b>.</li>..</ul
8000: 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 77 65 27 6c ></li>..<li>we'l
8010: 6c 20 69 67 6e 6f 72 65 20 66 6f 72 20 6e 6f 77 l ignore for now
8020: 20 63 6f 6c 75 6d 6e 20 3c 62 3e 52 6f 75 74 65 column <b>Route
8030: 49 64 3c 2f 62 3e 3b 20 69 74 73 20 6d 65 61 6e Id</b>; its mean
8040: 69 6e 67 20 77 69 6c 6c 20 62 65 20 65 78 70 6c ing will be expl
8050: 61 69 6e 65 64 20 69 6e 20 66 6f 6c 6c 6f 77 69 ained in followi
8060: 6e 67 20 70 61 72 61 67 72 61 70 68 73 2e 3c 2f ng paragraphs.</
8070: 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 li>..<li>column
8080: 3c 62 3e 52 6f 75 74 65 52 6f 77 3c 2f 62 3e 20 <b>RouteRow</b>
8090: 73 69 6d 70 6c 79 20 69 73 20 74 68 65 20 70 72 simply is the pr
80a0: 6f 67 72 65 73 73 69 76 65 20 6e 75 6d 62 65 72 ogressive number
80b0: 20 6f 66 20 74 68 65 20 72 6f 77 20 69 6e 20 74 of the row in t
80c0: 68 65 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 he travel soluti
80d0: 6f 6e 20 28 61 6c 77 61 79 73 20 3c 62 3e 30 3c on (always <b>0<
80e0: 2f 62 3e 20 69 6e 20 74 68 65 20 68 65 61 64 65 /b> in the heade
80f0: 72 20 72 6f 77 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c r row).</li>..<l
8100: 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 52 6f 6c 65 i>column <b>Role
8110: 3c 2f 62 3e 20 63 61 6e 20 62 65 20 3c 69 3e 52 </b> can be <i>R
8120: 6f 75 74 65 3c 2f 69 3e 20 28 68 65 61 64 65 72 oute</i> (header
8130: 20 72 6f 77 29 20 6f 72 20 3c 69 3e 4c 69 6e 6b row) or <i>Link
8140: 3c 2f 69 3e 20 28 61 6c 6c 20 66 6f 6c 6c 6f 77 </i> (all follow
8150: 69 6e 67 20 72 6f 77 73 29 2e 3c 2f 6c 69 3e 0d ing rows).</li>.
8160: 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 4c .<li>column <b>L
8170: 69 6e 6b 52 6f 77 69 64 3c 2f 62 3e 20 72 65 66 inkRowid</b> ref
8180: 65 72 65 6e 63 65 73 20 74 68 65 20 3c 62 3e 52 erences the <b>R
8190: 4f 57 49 44 3c 2f 62 3e 20 6f 66 20 74 68 65 20 OWID</b> of the
81a0: 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 4c 69 corresponding Li
81b0: 6e 6b 20 28 61 6c 77 61 79 73 20 73 65 74 20 74 nk (always set t
81c0: 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 6e o <b>NULL</b> in
81d0: 20 74 68 65 20 68 65 61 64 65 72 20 72 6f 77 29 the header row)
81e0: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 .</li>..<li>colu
81f0: 6d 6e 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f mn <b>NodeFrom</
8200: 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f 64 65 54 6f b> and <b>NodeTo
8210: 3c 2f 62 3e 20 68 61 76 65 20 74 68 65 20 66 6f </b> have the fo
8220: 6c 6c 6f 77 69 6e 67 20 69 6e 74 65 72 70 72 65 llowing interpre
8230: 74 61 74 69 6f 6e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c tation:..<ul>..<
8240: 6c 69 3e 69 6e 20 74 68 65 20 68 65 61 64 65 72 li>in the header
8250: 20 72 6f 77 20 74 68 65 79 20 63 6f 72 72 65 73 row they corres
8260: 70 6f 6e 64 20 74 6f 20 68 65 20 3c 62 3e 4f 72 pond to he <b>Or
8270: 69 67 69 6e 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e igin</b> and <b>
8280: 44 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 62 3e 20 Destination</b>
8290: 4e 6f 64 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 Nodes.</li>..<li
82a0: 3e 69 6e 20 61 6c 6c 20 74 68 65 20 66 6f 6c 6c >in all the foll
82b0: 6f 77 69 6e 67 20 72 6f 77 73 20 74 68 65 79 20 owing rows they
82c0: 61 72 65 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 are intended to
82d0: 73 70 65 63 69 66 79 20 74 68 65 20 64 69 72 65 specify the dire
82e0: 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 75 72 ction of the cur
82f0: 72 65 6e 74 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d rent Link.</li>.
8300: 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 .</ul></li>..<li
8310: 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 43 6f 73 74 3c >column <b>Cost<
8320: 2f 62 3e 20 68 61 73 20 74 68 65 20 66 6f 6c 6c /b> has the foll
8330: 6f 77 69 6e 67 20 69 6e 74 65 72 70 72 65 74 61 owing interpreta
8340: 74 69 6f 6e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 tion:..<ul>..<li
8350: 3e 69 6e 20 74 68 65 20 68 65 61 64 65 72 20 74 >in the header t
8360: 6f 77 20 69 74 20 63 6f 72 72 65 73 70 6f 6e 64 ow it correspond
8370: 73 20 74 6f 20 74 68 65 20 3c 62 3e 74 6f 74 61 s to the <b>tota
8380: 6c 20 63 6f 73 74 3c 2f 62 3e 20 6f 66 20 74 68 l cost</b> of th
8390: 65 20 74 72 61 76 65 6c 2e 3c 2f 6c 69 3e 0d 0a e travel.</li>..
83a0: 3c 6c 69 3e 69 6e 20 61 6c 6c 20 74 68 65 20 66 <li>in all the f
83b0: 6f 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 20 69 74 ollowing rows it
83c0: 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 represents the
83d0: 73 70 65 63 69 66 69 63 20 63 6f 73 74 20 6f 66 specific cost of
83e0: 20 74 68 65 20 63 75 72 72 65 6e 74 20 4c 69 6e the current Lin
83f0: 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f k.</li>..</ul></
8400: 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 li>..<li>column
8410: 3c 62 3e 4e 61 6d 65 3c 2f 62 3e 20 63 6f 6e 74 <b>Name</b> cont
8420: 61 69 6e 73 20 74 68 65 20 64 65 73 63 72 69 70 ains the descrip
8430: 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 75 72 72 tion of the curr
8440: 65 6e 74 20 4c 69 6e 6b 20 28 75 73 75 61 6c 6c ent Link (usuall
8450: 79 20 61 20 72 6f 61 64 20 6e 61 6d 65 29 2c 20 y a road name),
8460: 61 6e 64 20 69 73 20 61 6c 77 61 79 73 20 3c 62 and is always <b
8470: 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 6e 20 74 68 65 >NULL</b> in the
8480: 20 68 65 61 64 65 72 20 72 6f 77 2e 3c 62 72 3e header row.<br>
8490: 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 20 69 74 ..<u>Note</u> it
84a0: 20 63 6f 75 6c 64 20 62 65 20 61 6c 77 61 79 73 could be always
84b0: 20 62 65 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 be <b>NULL</b>
84c0: 69 66 20 74 68 65 20 56 69 72 74 75 61 6c 52 6f if the VirtualRo
84d0: 75 74 69 6e 67 20 54 61 62 6c 65 20 64 6f 65 73 uting Table does
84e0: 20 6e 6f 74 20 73 75 70 70 6f 72 74 73 20 6e 61 not supports na
84f0: 6d 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e mes.</li>..</ul>
8500: 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 </li>..</ul>..<b
8510: 72 3e 3c 62 72 3e 0d 0a 54 65 73 74 69 6e 67 20 r><br>..Testing
8520: 74 68 65 20 72 65 74 75 72 6e 20 63 6f 6e 6e 65 the return conne
8530: 63 74 69 6f 6e 20 6a 75 73 74 20 72 65 71 75 69 ction just requi
8540: 72 65 73 20 73 77 61 70 70 69 6e 67 20 74 68 65 res swapping the
8550: 20 4f 72 69 67 69 6e 20 61 6e 64 20 74 68 65 20 Origin and the
8560: 44 65 73 74 69 6e 61 74 69 6f 6e 3b 20 69 6e 20 Destination; in
8570: 74 68 69 73 20 65 78 61 6d 70 6c 65 20 79 6f 75 this example you
8580: 27 6c 6c 20 6a 75 73 74 20 72 65 71 75 65 73 74 'll just request
8590: 20 74 68 65 20 6d 65 61 6e 69 6e 67 66 75 6c 20 the meaningful
85a0: 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c 76 65 72 62 61 columns:..<verba
85b0: 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 52 6f 75 tim>..SELECT Rou
85c0: 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e teRow, Role, Lin
85d0: 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d kRowid, NodeFrom
85e0: 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 , NodeTo, Cost,
85f0: 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a Geometry, Name..
8600: 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 FROM byfoot..WHE
8610: 52 45 20 4e 6f 64 65 54 6f 20 3d 20 31 37 38 37 RE NodeTo = 1787
8620: 33 31 20 41 4e 44 20 4e 6f 64 65 46 72 6f 6d 20 31 AND NodeFrom
8630: 3d 20 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 = 183286;..</ver
8640: 62 61 74 69 6d 3e 0d 0a 3c 74 61 62 6c 65 20 62 batim>..<table b
8650: 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f order="1" bgcolo
8660: 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c r="#ffffcf" cell
8670: 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c spacing="4" cell
8680: 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 padding="6">..<t
8690: 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 r><th bgcolor="#
86a0: 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 d0d0a0">RouteRow
86b0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
86c0: 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c ="#d0d0a0">Role<
86d0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
86e0: 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f "#d0d0a0">LinkRo
86f0: 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f wid</th><th bgco
8700: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f lor="#d0d0a0">No
8710: 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 deFrom</th><th b
8720: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
8730: 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 >NodeTo</th><th
8740: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
8750: 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 ">Cost</th><th b
8760: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
8770: 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 >Geometry</th><t
8780: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
8790: 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 a0">Name</th></t
87a0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c r>..<tr>..<td al
87b0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
87c0: 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
87d0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
87e0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
87f0: 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 83286</td><td al
8800: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
8810: 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
8820: 3d 22 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 ="right">300.912
8830: 32 30 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 208</td><td>BLOB
8840: 20 73 7a 3d 32 37 32 20 47 45 4f 4d 45 54 52 59 sz=272 GEOMETRY
8850: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
8860: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
8870: 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 .<td align="righ
8880: 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">1</td><td>Lin
8890: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
88a0: 22 72 69 67 68 74 22 3e 32 32 34 34 31 34 3c 2f "right">224414</
88b0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
88c0: 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e ght">183286</td>
88d0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
88e0: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
88f0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
8900: 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 74 36.372057</td><t
8910: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
8920: 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f IA MARGARITONE</
8930: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 64 20 td>..</tr>..<td
8940: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c align="right">2<
8950: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
8960: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
8970: 74 22 3e 32 32 34 34 34 36 3c 2f 74 64 3e 3c 74 t">224446</td><t
8980: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
8990: 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
89a0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
89b0: 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 885</td><td alig
89c0: 6e 3d 22 72 69 67 68 74 22 3e 36 39 2e 37 32 37 n="right">69.727
89d0: 37 32 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 726</td><td>NULL
89e0: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 </td><td>VIA MAR
89f0: 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c GARITONE</td>..<
8a00: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
8a10: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
8a20: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
8a30: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
8a40: 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 t">224014</td><t
8a50: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
8a60: 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 182885</td><td a
8a70: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
8a80: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
8a90: 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 32 n="right">94.812
8aa0: 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 424</td><td>NULL
8ab0: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 </td><td>VIA PIE
8ac0: 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e TRO ARETINO</td>
8ad0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 ..</tr>..</table
8ae0: 3e 0d 0a 3c 62 72 3e 0d 0a 49 66 20 79 6f 75 20 >..<br>..If you
8af0: 72 65 6d 65 6d 62 65 72 2c 20 74 68 65 20 3c 62 remember, the <b
8b00: 3e 62 79 66 6f 6f 74 3c 2f 62 3e 20 56 69 72 74 >byfoot</b> Virt
8b10: 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 ualRouting Table
8b20: 20 68 61 73 20 6e 6f 20 3c 62 3e 6f 6e 65 2d 77 has no <b>one-w
8b30: 61 79 73 3c 2f 62 3e 2c 20 61 6e 64 20 63 6f 6e ays</b>, and con
8b40: 73 65 71 75 65 6e 74 6c 79 20 74 68 65 20 72 65 sequently the re
8b50: 74 75 72 6e 20 70 61 74 68 20 65 78 61 63 74 6c turn path exactl
8b60: 79 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f y corresponds to
8b70: 20 74 68 65 20 66 69 72 73 74 20 6f 6e 65 2c 20 the first one,
8b80: 65 78 63 65 70 74 20 69 6e 20 74 68 61 74 20 61 except in that a
8b90: 6c 6c 20 64 69 72 65 63 74 69 6f 6e 73 20 61 72 ll directions ar
8ba0: 65 20 6e 6f 77 20 72 65 76 65 72 73 65 64 2e 0d e now reversed..
8bb0: 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 4e .<br><br><br>..N
8bc0: 6f 77 20 79 6f 75 27 6c 6c 20 67 6f 20 74 6f 20 ow you'll go to
8bd0: 74 65 73 74 20 74 68 65 20 73 61 6d 65 20 63 6f test the same co
8be0: 6e 6e 65 63 74 69 6f 6e 73 2c 20 62 75 74 20 74 nnections, but t
8bf0: 68 69 73 20 74 69 6d 65 20 79 6f 75 27 6c 6c 20 his time you'll
8c00: 74 61 72 67 65 74 20 74 68 65 20 3c 62 3e 62 79 target the <b>by
8c10: 63 61 72 3c 2f 62 3e 20 56 69 72 74 75 61 6c 52 car</b> VirtualR
8c20: 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 74 68 61 outing Table tha
8c30: 74 20 66 75 6c 6c 79 20 73 75 70 70 6f 72 74 73 t fully supports
8c40: 20 3c 62 3e 6f 6e 65 2d 77 61 79 73 3c 2f 62 3e <b>one-ways</b>
8c50: 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 :..<verbatim>..S
8c60: 45 4c 45 43 54 20 52 6f 75 74 65 52 6f 77 2c 20 ELECT RouteRow,
8c70: 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c Role, LinkRowid,
8c80: 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 NodeFrom, NodeT
8c90: 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 o, Cost, Geometr
8ca0: 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 y, Name..FROM by
8cb0: 63 61 72 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 car..WHERE NodeF
8cc0: 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
8cd0: 20 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 36 NodeTo = 183286
8ce0: 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a ;..</verbatim>..
8cf0: 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 31 <table border="1
8d00: 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 66 " bgcolor="#ffff
8d10: 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d cf" cellspacing=
8d20: 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d "4" cellpadding=
8d30: 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 "6">..<tr><th bg
8d40: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
8d50: 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 RouteRow</th><th
8d60: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
8d70: 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 0">Role</th><th
8d80: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
8d90: 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e ">LinkRowid</th>
8da0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
8db0: 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f d0a0">NodeFrom</
8dc0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
8dd0: 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c #d0d0a0">NodeTo<
8de0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
8df0: 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 3c 2f "#d0d0a0">Cost</
8e00: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
8e10: 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 72 #d0d0a0">Geometr
8e20: 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f y</th><th bgcolo
8e30: 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 6d 65 r="#d0d0a0">Name
8e40: 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e </th></tr>..<tr>
8e50: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
8e60: 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
8e70: 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
8e80: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
8e90: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
8ea0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
8eb0: 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c ht">183286</td><
8ec0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
8ed0: 3e 31 30 31 2e 38 31 35 35 35 32 3c 2f 74 64 3e >101.815552</td>
8ee0: 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 30 33 32 <td>BLOB sz=2032
8ef0: 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 GEOMETRY</td><t
8f00: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 d>NULL</td>..</t
8f10: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c r>..<tr>..<td al
8f20: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 ign="right">1</t
8f30: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
8f40: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
8f50: 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 64 20 >224014</td><td
8f60: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
8f70: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
8f80: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 gn="right">18288
8f90: 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
8fa0: 22 72 69 67 68 74 22 3e 31 33 2e 31 32 37 38 37 "right">13.12787
8fb0: 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 4</td><td>NULL</
8fc0: 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 52 td><td>VIA PIETR
8fd0: 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a O ARETINO</td>..
8fe0: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
8ff0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
9000: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
9010: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9020: 68 74 22 3e 32 32 34 34 34 36 3c 2f 74 64 3e 3c ht">224446</td><
9030: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9040: 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 >182885</td><td
9050: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
9060: 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8880</td><td ali
9070: 67 6e 3d 22 72 69 67 68 74 22 3e 39 2e 36 35 34 gn="right">9.654
9080: 36 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 608</td><td>NULL
9090: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 </td><td>VIA MAR
90a0: 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c GARITONE</td>..<
90b0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
90c0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
90d0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
90e0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
90f0: 74 22 3e 32 31 39 31 37 31 3c 2f 74 64 3e 3c 74 t">219171</td><t
9100: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9110: 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
9120: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
9130: 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 732</td><td alig
9140: 6e 3d 22 72 69 67 68 74 22 3e 37 2e 38 30 39 39 n="right">7.8099
9150: 35 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 52</td><td>NULL<
9160: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e /td><td>VIA FRAN
9170: 43 45 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 CESCO CRISPI</td
9180: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
9190: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
91a0: 22 3e 34 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">4</td><td>Link
91b0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
91c0: 72 69 67 68 74 22 3e 32 31 39 30 35 38 3c 2f 74 right">219058</t
91d0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
91e0: 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c ht">178732</td><
91f0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9200: 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 >178754</td><td
9210: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 32 align="right">12
9220: 2e 34 34 35 36 32 36 3c 2f 74 64 3e 3c 74 64 3e .445626</td><td>
9230: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
9240: 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 FRANCESCO CRISP
9250: 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c I</td>..</tr>..<
9260: 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 tr>..<td align="
9270: 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 right">5</td><td
9280: 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
9290: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 38 ign="right">2258
92a0: 38 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 88</td><td align
92b0: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 34 3c ="right">178754<
92c0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
92d0: 69 67 68 74 22 3e 31 38 33 34 36 31 3c 2f 74 64 ight">183461</td
92e0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
92f0: 74 22 3e 31 2e 35 39 39 38 36 35 3c 2f 74 64 3e t">1.599865</td>
9300: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
9310: 3e 56 49 41 20 46 52 41 4e 43 45 53 43 4f 20 43 >VIA FRANCESCO C
9320: 52 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 RISPI</td>..</tr
9330: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 >..<tr>..<td ali
9340: 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 gn="right">6</td
9350: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
9360: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9370: 32 32 35 38 38 37 3c 2f 74 64 3e 3c 74 64 20 61 225887</td><td a
9380: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
9390: 34 36 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 461</td><td alig
93a0: 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 30 30 n="right">182800
93b0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
93c0: 72 69 67 68 74 22 3e 33 2e 33 30 30 35 39 30 3c right">3.300590<
93d0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
93e0: 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 53 ><td>VIA FRANCES
93f0: 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a CO CRISPI</td>..
9400: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
9410: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 align="right">7
9420: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
9430: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9440: 68 74 22 3e 32 32 33 39 33 35 3c 2f 74 64 3e 3c ht">223935</td><
9450: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9460: 3e 31 38 32 38 30 30 3c 2f 74 64 3e 3c 74 64 20 >182800</td><td
9470: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
9480: 32 37 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2799</td><td ali
9490: 67 6e 3d 22 72 69 67 68 74 22 3e 36 2e 36 38 38 gn="right">6.688
94a0: 37 38 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 786</td><td>NULL
94b0: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 4c 45 20 4c </td><td>VIALE L
94c0: 55 43 41 20 53 49 47 4e 4f 52 45 4c 4c 49 3c 2f UCA SIGNORELLI</
94d0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
94e0: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
94f0: 68 74 22 3e 38 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">8</td><td>Li
9500: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
9510: 3d 22 72 69 67 68 74 22 3e 32 32 36 30 33 38 3c ="right">226038<
9520: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9530: 69 67 68 74 22 3e 31 38 32 37 39 39 3c 2f 74 64 ight">182799</td
9540: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9550: 74 22 3e 31 38 33 34 35 36 3c 2f 74 64 3e 3c 74 t">183456</td><t
9560: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9570: 31 2e 32 39 34 30 31 37 3c 2f 74 64 3e 3c 74 64 1.294017</td><td
9580: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
9590: 41 4c 45 20 4c 55 43 41 20 53 49 47 4e 4f 52 45 ALE LUCA SIGNORE
95a0: 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d LLI</td>..</tr>.
95b0: 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
95c0: 3d 22 72 69 67 68 74 22 3e 39 3c 2f 74 64 3e 3c ="right">9</td><
95d0: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
95e0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
95f0: 35 38 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 5832</td><td ali
9600: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 34 35 gn="right">18345
9610: 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 6</td><td align=
9620: 22 72 69 67 68 74 22 3e 31 38 33 34 34 34 3c 2f "right">183444</
9630: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9640: 67 68 74 22 3e 32 2e 33 38 35 34 38 36 3c 2f 74 ght">2.385486</t
9650: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
9660: 74 64 3e 56 49 41 4c 45 20 4c 55 43 41 20 53 49 td>VIALE LUCA SI
9670: 47 4e 4f 52 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c GNORELLI</td>..<
9680: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
9690: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 align="right">10
96a0: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
96b0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
96c0: 68 74 22 3e 32 32 35 38 33 31 3c 2f 74 64 3e 3c ht">225831</td><
96d0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
96e0: 3e 31 38 33 34 34 34 3c 2f 74 64 3e 3c 74 64 20 >183444</td><td
96f0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
9700: 33 35 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3554</td><td ali
9710: 67 6e 3d 22 72 69 67 68 74 22 3e 33 2e 31 36 30 gn="right">3.160
9720: 36 36 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 662</td><td>NULL
9730: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 4c 45 20 4c </td><td>VIALE L
9740: 55 43 41 20 53 49 47 4e 4f 52 45 4c 4c 49 3c 2f UCA SIGNORELLI</
9750: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
9760: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
9770: 68 74 22 3e 31 31 3c 2f 74 64 3e 3c 74 64 3e 4c ht">11</td><td>L
9780: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
9790: 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 37 36 35 n="right">225765
97a0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
97b0: 72 69 67 68 74 22 3e 31 38 33 35 35 34 3c 2f 74 right">183554</t
97c0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
97d0: 68 74 22 3e 31 38 33 39 35 34 3c 2f 74 64 3e 3c ht">183954</td><
97e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
97f0: 3e 37 2e 34 36 39 39 31 37 3c 2f 74 64 3e 3c 74 >7.469917</td><t
9800: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
9810: 49 41 4c 45 20 4c 55 43 41 20 53 49 47 4e 4f 52 IALE LUCA SIGNOR
9820: 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ELLI</td>..</tr>
9830: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 ..<tr>..<td alig
9840: 6e 3d 22 72 69 67 68 74 22 3e 31 32 3c 2f 74 64 n="right">12</td
9850: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
9860: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9870: 32 32 35 37 36 36 3c 2f 74 64 3e 3c 74 64 20 61 225766</td><td a
9880: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
9890: 39 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 954</td><td alig
98a0: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 39 30 35 n="right">183905
98b0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
98c0: 72 69 67 68 74 22 3e 33 2e 32 33 36 33 38 39 3c right">3.236389<
98d0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
98e0: 3e 3c 74 64 3e 56 49 41 4c 45 20 4c 55 43 41 20 ><td>VIALE LUCA
98f0: 53 49 47 4e 4f 52 45 4c 4c 49 3c 2f 74 64 3e 0d SIGNORELLI</td>.
9900: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
9910: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9920: 31 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 13</td><td>Link<
9930: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9940: 69 67 68 74 22 3e 32 32 35 39 37 39 3c 2f 74 64 ight">225979</td
9950: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9960: 74 22 3e 31 38 33 39 30 35 3c 2f 74 64 3e 3c 74 t">183905</td><t
9970: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9980: 31 38 33 36 32 36 3c 2f 74 64 3e 3c 74 64 20 61 183626</td><td a
9990: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 2e lign="right">13.
99a0: 39 38 33 36 32 39 3c 2f 74 64 3e 3c 74 64 3e 4e 983629</td><td>N
99b0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 53 54 52 41 ULL</td><td>STRA
99c0: 44 41 20 53 45 4e 5a 41 20 4e 4f 4d 45 3c 2f 74 DA SENZA NOME</t
99d0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
99e0: 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 .<td align="righ
99f0: 74 22 3e 31 34 3c 2f 74 64 3e 3c 74 64 3e 4c 69 t">14</td><td>Li
9a00: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
9a10: 3d 22 72 69 67 68 74 22 3e 32 32 34 39 30 35 3c ="right">224905<
9a20: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9a30: 69 67 68 74 22 3e 31 38 33 36 32 36 3c 2f 74 64 ight">183626</td
9a40: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9a50: 74 22 3e 31 38 33 31 32 38 3c 2f 74 64 3e 3c 74 t">183128</td><t
9a60: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9a70: 35 2e 36 32 37 33 35 38 3c 2f 74 64 3e 3c 74 64 5.627358</td><td
9a80: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 53 54 >NULL</td><td>ST
9a90: 52 41 44 41 20 53 45 4e 5a 41 20 4e 4f 4d 45 3c RADA SENZA NOME<
9aa0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
9ab0: 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 >..<td align="ri
9ac0: 67 68 74 22 3e 31 35 3c 2f 74 64 3e 3c 74 64 3e ght">15</td><td>
9ad0: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
9ae0: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 38 39 gn="right">22489
9af0: 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 7</td><td align=
9b00: 22 72 69 67 68 74 22 3e 31 38 33 31 32 38 3c 2f "right">183128</
9b10: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9b20: 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e ght">183286</td>
9b30: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9b40: 22 3e 31 30 2e 30 33 30 37 39 32 3c 2f 74 64 3e ">10.030792</td>
9b50: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
9b60: 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 >VIA MARGARITONE
9b70: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f </td>..</tr>..</
9b80: 74 61 62 6c 65 3e 0d 0a 3c 76 65 72 62 61 74 69 table>..<verbati
9b90: 6d 3e 0d 0a 53 45 4c 45 43 54 20 52 6f 75 74 65 m>..SELECT Route
9ba0: 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 Row, Role, LinkR
9bb0: 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 owid, NodeFrom,
9bc0: 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 NodeTo, Cost, Ge
9bd0: 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 ometry, Name..FR
9be0: 4f 4d 20 62 79 63 61 72 0d 0a 57 48 45 52 45 20 OM bycar..WHERE
9bf0: 4e 6f 64 65 54 6f 20 3d 20 31 37 38 37 33 31 20 NodeTo = 178731
9c00: 41 4e 44 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 AND NodeFrom = 1
9c10: 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 83286;..</verbat
9c20: 69 6d 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 im>..<table bord
9c30: 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 er="1" bgcolor="
9c40: 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 #ffffcf" cellspa
9c50: 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 cing="4" cellpad
9c60: 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c ding="6">..<tr><
9c70: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
9c80: 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 0a0">RouteRow</t
9c90: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
9ca0: 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 d0d0a0">Role</th
9cb0: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
9cc0: 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 0d0a0">LinkRowid
9cd0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
9ce0: 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 ="#d0d0a0">NodeF
9cf0: 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f rom</th><th bgco
9d00: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f lor="#d0d0a0">No
9d10: 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 deTo</th><th bgc
9d20: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 43 olor="#d0d0a0">C
9d30: 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f ost</th><th bgco
9d40: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 47 65 lor="#d0d0a0">Ge
9d50: 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 ometry</th><th b
9d60: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
9d70: 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d >Name</th></tr>.
9d80: 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
9d90: 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
9da0: 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 td>Route</td><td
9db0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
9dc0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 ign="right">1832
9dd0: 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 86</td><td align
9de0: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
9df0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9e00: 69 67 68 74 22 3e 31 30 33 2e 33 30 35 32 35 39 ight">103.305259
9e10: 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a </td><td>BLOB sz
9e20: 3d 39 34 34 20 47 45 4f 4d 45 54 52 59 3c 2f 74 =944 GEOMETRY</t
9e30: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
9e40: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
9e50: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9e60: 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 1</td><td>Link</
9e70: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9e80: 67 68 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e ght">224414</td>
9e90: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9ea0: 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 ">183286</td><td
9eb0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9ec0: 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 78880</td><td al
9ed0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 2e 38 ign="right">18.8
9ee0: 38 32 32 38 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 82285</td><td>NU
9ef0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d LL</td><td>VIA M
9f00: 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d ARGARITONE</td>.
9f10: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
9f20: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9f30: 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 2</td><td>Link</
9f40: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9f50: 67 68 74 22 3e 32 31 39 31 37 31 3c 2f 74 64 3e ght">219171</td>
9f60: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9f70: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
9f80: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9f90: 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 78732</td><td al
9fa0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 38 30 ign="right">7.80
9fb0: 39 39 35 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 9952</td><td>NUL
9fc0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 L</td><td>VIA FR
9fd0: 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c 2f ANCESCO CRISPI</
9fe0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
9ff0: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
a000: 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">3</td><td>Li
a010: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
a020: 3d 22 72 69 67 68 74 22 3e 32 31 39 30 35 38 3c ="right">219058<
a030: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a040: 69 67 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 ight">178732</td
a050: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a060: 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 t">178754</td><t
a070: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a080: 31 32 2e 34 34 35 36 32 36 3c 2f 74 64 3e 3c 74 12.445626</td><t
a090: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
a0a0: 49 41 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 IA FRANCESCO CRI
a0b0: 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d SPI</td>..</tr>.
a0c0: 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
a0d0: 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c ="right">4</td><
a0e0: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
a0f0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
a100: 34 35 33 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4538</td><td ali
a110: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 gn="right">17875
a120: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
a130: 22 72 69 67 68 74 22 3e 31 38 31 39 37 32 3c 2f "right">181972</
a140: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a150: 67 68 74 22 3e 37 2e 30 34 37 37 38 34 3c 2f 74 ght">7.047784</t
a160: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
a170: 74 64 3e 56 49 41 20 41 4e 54 4f 4e 49 4f 20 47 td>VIA ANTONIO G
a180: 55 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 3e 0d 0a UADAGNOLI</td>..
a190: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
a1a0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 align="right">5
a1b0: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
a1c0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a1d0: 68 74 22 3e 32 32 32 35 37 35 3c 2f 74 64 3e 3c ht">222575</td><
a1e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a1f0: 3e 31 38 31 39 37 32 3c 2f 74 64 3e 3c 74 64 20 >181972</td><td
a200: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
a210: 31 39 37 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1971</td><td ali
a220: 67 6e 3d 22 72 69 67 68 74 22 3e 31 2e 38 35 32 gn="right">1.852
a230: 32 38 33 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 283</td><td>NULL
a240: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 41 4e 54 </td><td>VIA ANT
a250: 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c 49 3c ONIO GUADAGNOLI<
a260: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 64 /td>..</tr>..<td
a270: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
a280: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
a290: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a2a0: 68 74 22 3e 32 32 34 39 36 37 3c 2f 74 64 3e 3c ht">224967</td><
a2b0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a2c0: 3e 31 38 31 39 37 31 3c 2f 74 64 3e 3c 74 64 20 >181971</td><td
a2d0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
a2e0: 32 38 39 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2891</td><td ali
a2f0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 2e 32 37 gn="right">14.27
a300: 33 31 38 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 3185</td><td>NUL
a310: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 41 4e L</td><td>VIA AN
a320: 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c 49 TONIO GUADAGNOLI
a330: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
a340: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
a350: 69 67 68 74 22 3e 37 3c 2f 74 64 3e 3c 74 64 3e ight">7</td><td>
a360: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
a370: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 31 36 gn="right">22416
a380: 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 8</td><td align=
a390: 22 72 69 67 68 74 22 3e 31 38 32 38 39 31 3c 2f "right">182891</
a3a0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a3b0: 67 68 74 22 3e 31 38 33 30 35 37 3c 2f 74 64 3e ght">183057</td>
a3c0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a3d0: 22 3e 36 2e 36 34 33 33 30 39 3c 2f 74 64 3e 3c ">6.643309</td><
a3e0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
a3f0: 56 49 41 20 4d 41 43 41 4c 4c 45 27 3c 2f 74 64 VIA MACALLE'</td
a400: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
a410: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a420: 22 3e 38 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">8</td><td>Link
a430: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
a440: 72 69 67 68 74 22 3e 32 32 34 31 36 37 3c 2f 74 right">224167</t
a450: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a460: 68 74 22 3e 31 38 33 30 35 37 3c 2f 74 64 3e 3c ht">183057</td><
a470: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a480: 3e 31 38 33 30 35 36 3c 2f 74 64 3e 3c 74 64 20 >183056</td><td
a490: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 2e align="right">3.
a4a0: 31 35 31 32 37 32 3c 2f 74 64 3e 3c 74 64 3e 4e 151272</td><td>N
a4b0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
a4c0: 4d 41 43 41 4c 4c 45 27 3c 2f 74 64 3e 0d 0a 3c MACALLE'</td>..<
a4d0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 /tr>..<tr>..<td
a4e0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 3c align="right">9<
a4f0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
a500: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a510: 74 22 3e 32 32 34 31 37 34 3c 2f 74 64 3e 3c 74 t">224174</td><t
a520: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a530: 31 38 33 30 35 36 3c 2f 74 64 3e 3c 74 64 20 61 183056</td><td a
a540: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
a550: 39 34 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 941</td><td alig
a560: 6e 3d 22 72 69 67 68 74 22 3e 37 2e 39 36 36 38 n="right">7.9668
a570: 37 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 70</td><td>NULL<
a580: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 52 4f 44 49 /td><td>VIA RODI
a590: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
a5a0: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
a5b0: 69 67 68 74 22 3e 31 30 3c 2f 74 64 3e 3c 74 64 ight">10</td><td
a5c0: 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
a5d0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 ign="right">2240
a5e0: 35 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 59</td><td align
a5f0: 3d 22 72 69 67 68 74 22 3e 31 38 32 39 34 31 3c ="right">182941<
a600: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a610: 69 67 68 74 22 3e 31 38 32 30 30 31 3c 2f 74 64 ight">182001</td
a620: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a630: 74 22 3e 36 2e 33 39 33 37 34 37 3c 2f 74 64 3e t">6.393747</td>
a640: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
a650: 3e 56 49 41 20 52 4f 44 49 3c 2f 74 64 3e 0d 0a >VIA RODI</td>..
a660: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
a670: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
a680: 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 1</td><td>Link</
a690: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a6a0: 67 68 74 22 3e 32 32 32 36 33 37 3c 2f 74 64 3e ght">222637</td>
a6b0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a6c0: 22 3e 31 38 32 30 30 31 3c 2f 74 64 3e 3c 74 64 ">182001</td><td
a6d0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
a6e0: 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 82000</td><td al
a6f0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 2e 34 37 ign="right">2.47
a700: 35 35 33 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 5538</td><td>NUL
a710: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 L</td><td>VIA PI
a720: 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 ETRO ARETINO</td
a730: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
a740: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a750: 22 3e 31 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e ">12</td><td>Lin
a760: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
a770: 22 72 69 67 68 74 22 3e 32 32 32 36 33 36 3c 2f "right">222636</
a780: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a790: 67 68 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 3e ght">182000</td>
a7a0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a7b0: 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 ">178731</td><td
a7c0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
a7d0: 34 2e 33 36 33 34 30 38 3c 2f 74 64 3e 3c 74 64 4.363408</td><td
a7e0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
a7f0: 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 4e 4f A PIETRO ARETINO
a800: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f </td>..</tr>..</
a810: 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 41 73 table>..<br>..As
a820: 20 79 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 you can easily
a830: 6e 6f 74 69 63 65 2c 20 74 68 65 20 6f 70 74 69 notice, the opti
a840: 6d 61 6c 20 70 61 74 68 73 20 72 65 74 75 72 6e mal paths return
a850: 65 64 20 62 79 20 74 68 65 20 3c 62 3e 62 79 63 ed by the <b>byc
a860: 61 72 3c 2f 62 3e 20 56 69 72 74 75 61 6c 52 6f ar</b> VirtualRo
a870: 75 74 69 6e 67 20 54 61 62 6c 65 20 74 68 65 20 uting Table the
a880: 70 61 74 68 73 20 69 6e 20 6f 70 70 6f 73 69 74 paths in opposit
a890: 65 20 64 69 72 65 63 74 69 6f 6e 73 20 73 74 72 e directions str
a8a0: 6f 6e 67 6c 79 20 64 69 66 66 65 72 20 62 65 74 ongly differ bet
a8b0: 77 65 65 6e 20 74 68 65 6d 2c 20 61 6e 64 20 62 ween them, and b
a8c0: 6f 74 68 20 61 72 65 20 63 6f 6d 70 6c 65 74 65 oth are complete
a8d0: 6c 79 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f ly different fro
a8e0: 6d 20 74 68 65 20 70 61 74 68 20 72 65 74 75 72 m the path retur
a8f0: 6e 65 64 20 62 79 20 71 75 65 72 79 69 6e 67 20 ned by querying
a900: 3c 62 3e 62 79 66 6f 6f 74 3c 2f 62 3e 2e 3c 62 <b>byfoot</b>.<b
a910: 72 3e 0d 0a 41 20 71 75 69 63 6b 20 67 6c 61 6e r>..A quick glan
a920: 63 65 20 61 74 20 74 68 65 20 62 65 6c 6f 77 20 ce at the below
a930: 6d 61 70 20 77 69 6c 6c 20 73 75 72 65 6c 79 20 map will surely
a940: 68 65 6c 70 20 74 6f 20 75 6e 64 65 72 73 74 61 help to understa
a950: 6e 64 20 62 65 74 74 65 72 20 77 68 61 74 27 73 nd better what's
a960: 20 72 65 61 6c 6c 79 20 68 61 70 70 65 6e 69 6e really happenin
a970: 67 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 69 73 20 g.<br>..This is
a980: 61 20 63 65 6e 74 72 61 6c 20 61 72 65 61 20 6f a central area o
a990: 66 20 74 68 65 20 74 6f 77 6e 20 6f 66 20 41 72 f the town of Ar
a9a0: 65 7a 7a 6f 20 61 72 6f 75 6e 64 20 74 68 65 20 ezzo around the
a9b0: 61 72 63 68 61 65 6f 6c 6f 67 69 63 61 6c 20 72 archaeological r
a9c0: 75 69 6e 73 20 6f 66 20 74 68 65 20 52 6f 6d 61 uins of the Roma
a9d0: 6e 20 41 6d 70 68 69 74 68 65 61 74 65 72 3b 20 n Amphitheater;
a9e0: 63 69 72 63 75 6c 61 74 69 6e 67 20 62 79 20 63 circulating by c
a9f0: 61 72 20 69 73 20 64 69 73 63 6f 75 72 61 67 65 ar is discourage
aa00: 64 20 61 6e 64 20 69 73 20 73 75 62 6a 65 63 74 d and is subject
aa10: 20 74 6f 20 6d 61 6e 79 20 6f 6e 65 2d 77 61 79 to many one-way
aa20: 20 72 65 73 74 72 69 63 74 69 6f 6e 73 2e 20 4e restrictions. N
aa30: 6f 74 20 73 75 72 70 72 69 73 69 6e 67 6c 79 2c ot surprisingly,
aa40: 20 6d 6f 76 69 6e 67 20 62 79 20 66 6f 6f 74 20 moving by foot
aa50: 69 73 20 74 68 65 20 66 61 73 74 65 72 20 6f 70 is the faster op
aa60: 74 69 6f 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d tion...<br><br>.
aa70: 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 .<img src="https
aa80: 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e ://www.gaia-gis.
aa90: 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 it/gaia-sins/rou
aaa0: 74 69 6e 67 2d 66 69 67 73 2f 72 6f 75 74 69 6e ting-figs/routin
aab0: 67 31 2e 6a 70 67 22 20 61 6c 74 3d 22 66 69 67 g1.jpg" alt="fig
aac0: 31 22 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 79 1">..<ul>..<li>y
aad0: 65 6c 6c 6f 77 20 70 61 74 68 3a 20 70 65 64 65 ellow path: pede
aae0: 73 74 72 69 61 6e 73 3c 2f 6c 69 3e 0d 0a 3c 6c strians</li>..<l
aaf0: 69 3e 67 72 65 65 6e 20 70 61 74 68 3a 20 63 61 i>green path: ca
ab00: 72 2c 20 64 69 72 65 63 74 20 64 69 72 65 63 74 r, direct direct
ab10: 69 6f 6e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 72 65 ion</li>..<li>re
ab20: 64 20 70 61 74 68 3a 20 63 61 72 2c 20 72 65 74 d path: car, ret
ab30: 75 72 6e 20 64 69 72 65 63 74 69 6f 6e 3c 2f 6c urn direction</l
ab40: 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d i>..</ul>..<br>.
ab50: 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d .<table bgcolor=
ab60: 22 23 63 30 66 66 63 30 22 20 63 65 6c 6c 73 70 "#c0ffc0" cellsp
ab70: 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 acing="10" cellp
ab80: 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c adding="6"><tr><
ab90: 74 64 3e 0d 0a 3c 68 33 3e 4c 69 6e 65 73 74 72 td>..<h3>Linestr
aba0: 69 6e 67 73 20 72 65 74 75 72 6e 65 64 20 62 79 ings returned by
abb0: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 3c VirtualRouting<
abc0: 2f 68 33 3e 0d 0a 41 6c 6c 20 4c 49 4e 45 53 54 /h3>..All LINEST
abd0: 52 49 4e 47 20 47 65 6f 6d 65 74 72 69 65 73 20 RING Geometries
abe0: 63 72 65 61 74 65 64 20 62 79 20 61 6e 79 20 56 created by any V
abf0: 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 77 69 irtualRouting wi
ac00: 6c 6c 20 61 6c 77 61 79 73 20 63 6f 6e 74 61 69 ll always contai
ac10: 6e 20 3c 62 3e 4d 20 76 61 6c 75 65 73 3c 2f 62 n <b>M values</b
ac20: 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 69 66 >:..<ul>..<li>if
ac30: 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 the underlaying
ac40: 20 4e 65 74 77 6f 72 6b 27 73 20 47 65 6f 6d 65 Network's Geome
ac50: 74 72 69 65 73 20 61 72 65 20 3c 62 3e 58 59 3c tries are <b>XY<
ac60: 2f 62 3e 20 74 68 65 6e 20 3c 62 3e 58 59 4d 3c /b> then <b>XYM<
ac70: 2f 62 3e 20 4c 69 6e 65 73 74 72 69 6e 67 73 20 /b> Linestrings
ac80: 77 69 6c 6c 20 62 65 20 72 65 74 75 72 6e 65 64 will be returned
ac90: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 66 20 74 .</li>..<li>if t
aca0: 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 20 4e he underlaying N
acb0: 65 74 77 6f 72 6b 27 73 20 47 65 6f 6d 65 74 72 etwork's Geometr
acc0: 69 65 73 20 61 72 65 20 3c 62 3e 58 59 5a 3c 2f ies are <b>XYZ</
acd0: 62 3e 20 74 68 65 6e 20 3c 62 3e 58 59 5a 4d 3c b> then <b>XYZM<
ace0: 2f 62 3e 20 4c 69 6e 65 73 74 72 69 6e 67 73 20 /b> Linestrings
acf0: 77 69 6c 6c 20 62 65 20 72 65 74 75 72 6e 65 64 will be returned
ad00: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 66 20 74 .</li>..<li>if t
ad10: 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 20 4e he underlaying N
ad20: 65 74 77 6f 72 6b 27 73 20 47 65 6f 6d 65 74 72 etwork's Geometr
ad30: 69 65 73 20 61 72 65 20 3c 62 3e 58 59 4d 3c 2f ies are <b>XYM</
ad40: 62 3e 20 6f 72 20 3c 62 3e 58 59 5a 4d 3c 2f 62 b> or <b>XYZM</b
ad50: 3e 20 74 68 65 6e 20 20 4c 69 6e 65 73 74 72 69 > then Linestri
ad60: 6e 67 73 20 72 65 74 75 72 6e 65 64 20 69 6e 74 ngs returned int
ad70: 6f 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 o the resultset
ad80: 77 69 6c 6c 20 6d 61 69 6e 74 61 69 6e 20 74 68 will maintain th
ad90: 65 20 73 61 6d 65 20 64 69 6d 65 6e 73 69 6f 6e e same dimension
ada0: 73 20 61 73 20 69 6e 20 74 68 65 20 75 6e 64 65 s as in the unde
adb0: 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f 72 6b 2e rlaying Network.
adc0: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 6e 20 61 6e </li>..<li>in an
add0: 79 20 63 61 73 65 20 74 68 65 20 3c 62 3e 4d 3c y case the <b>M<
ade0: 2f 62 3e 20 76 61 6c 75 65 73 20 77 69 6c 6c 20 /b> values will
adf0: 62 65 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 be appropriately
ae00: 20 73 65 74 20 73 6f 20 74 6f 20 72 65 70 72 65 set so to repre
ae10: 73 65 6e 74 20 74 68 65 20 3c 75 3e 70 61 72 74 sent the <u>part
ae20: 69 61 6c 20 63 6f 73 74 3c 2f 75 3e 20 63 6f 72 ial cost</u> cor
ae30: 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 65 61 responding to ea
ae40: 63 68 20 76 65 72 74 65 78 2e 0d 0a 28 69 66 20 ch vertex...(if
ae50: 74 68 65 20 69 6e 70 75 74 20 4c 69 6e 65 73 74 the input Linest
ae60: 72 69 6e 67 73 20 61 6c 72 65 61 64 79 20 63 6f rings already co
ae70: 6e 74 61 69 6e 73 20 4d 2d 76 61 6c 75 65 73 20 ntains M-values
ae80: 74 68 65 79 27 6c 6c 20 62 65 20 6f 76 65 72 77 they'll be overw
ae90: 72 69 74 74 65 6e 29 2e 3c 2f 6c 69 3e 0d 0a 3c ritten).</li>..<
aea0: 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 49 6e 20 6f /ul>..<br>..In o
aeb0: 74 68 65 72 20 77 6f 72 64 73 2c 20 61 6c 6c 20 ther words, all
aec0: 4c 69 6e 65 73 74 72 69 6e 67 73 20 72 65 74 75 Linestrings retu
aed0: 72 6e 65 64 20 62 79 20 56 69 72 74 75 61 6c 52 rned by VirtualR
aee0: 6f 75 74 69 6e 67 20 63 61 6e 20 65 66 66 65 63 outing can effec
aef0: 74 69 76 65 6c 79 20 73 75 70 70 6f 72 74 20 3c tively support <
af00: 62 3e 4c 52 3c 2f 62 3e 20 28 3c 69 3e 4c 69 6e b>LR</b> (<i>Lin
af10: 65 61 72 20 52 65 66 65 72 65 6e 63 69 6e 67 3c ear Referencing<
af20: 2f 69 3e 29 20 53 51 4c 20 66 75 6e 63 74 69 6f /i>) SQL functio
af30: 6e 73 2c 20 61 73 20 69 6e 20 74 68 65 20 66 6f ns, as in the fo
af40: 6c 6c 6f 77 69 6e 67 20 65 78 61 6d 70 6c 65 73 llowing examples
af50: 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 :..<verbatim>..S
af60: 45 4c 45 43 54 20 53 54 5f 4c 6f 63 61 74 65 5f ELECT ST_Locate_
af70: 42 65 74 77 65 65 6e 5f 4d 65 61 73 75 72 65 73 Between_Measures
af80: 28 3c 67 65 6f 6d 65 74 72 79 3e 2c 20 33 30 2e (<geometry>, 30.
af90: 30 2c 20 34 35 2e 30 29 3b 0d 0a 0d 0a 53 45 4c 0, 45.0);....SEL
afa0: 45 43 54 20 53 54 5f 4c 6f 63 61 74 65 5f 42 65 ECT ST_Locate_Be
afb0: 74 77 65 65 6e 5f 4d 65 61 73 75 72 65 73 28 3c tween_Measures(<
afc0: 67 65 6f 6d 65 74 72 79 3e 2c 20 38 30 2e 30 2c geometry>, 80.0,
afd0: 20 39 35 2e 30 29 3b 0d 0a 3c 2f 76 65 72 62 61 95.0);..</verba
afe0: 74 69 6d 3e 0d 0a 54 68 65 20 73 69 64 65 20 6d tim>..The side m
aff0: 61 70 20 67 72 61 70 68 69 63 61 6c 6c 79 20 73 ap graphically s
b000: 68 6f 77 73 20 74 68 65 20 65 73 74 69 6d 61 74 hows the estimat
b010: 65 64 20 70 6f 73 69 74 69 6f 6e 73 20 72 65 73 ed positions res
b020: 70 65 63 74 69 76 65 6c 79 20 3c 62 3e 33 30 3c pectively <b>30<
b030: 2f 62 3e 2d 3c 62 3e 34 35 3c 2f 62 3e 20 73 65 /b>-<b>45</b> se
b040: 63 6f 6e 64 73 20 61 66 74 65 72 20 73 74 61 72 conds after star
b050: 74 69 6e 67 20 28 79 65 6c 6c 6f 77 20 64 6f 74 ting (yellow dot
b060: 74 65 64 20 6c 69 6e 65 29 20 61 6e 64 20 3c 62 ted line) and <b
b070: 3e 38 30 3c 2f 62 3e 2d 3c 62 3e 39 35 3c 2f 62 >80</b>-<b>95</b
b080: 3e 20 73 65 63 6f 6e 64 73 20 61 66 74 65 72 20 > seconds after
b090: 73 74 61 72 74 69 6e 67 20 28 67 72 65 65 6e 20 starting (green
b0a0: 64 6f 74 74 65 64 20 6c 69 6e 65 29 2e 3c 62 72 dotted line).<br
b0b0: 3e 0d 0a 28 61 73 73 75 6d 69 6e 67 20 74 68 65 >..(assuming the
b0c0: 20 73 61 6d 65 20 70 61 74 68 20 72 65 74 75 72 same path retur
b0d0: 6e 65 64 20 62 79 20 74 68 65 20 6c 61 74 65 73 ned by the lates
b0e0: 74 20 3c 62 3e 62 79 63 61 72 3c 2f 62 3e 20 71 t <b>bycar</b> q
b0f0: 75 65 72 79 29 2e 0d 0a 3c 2f 74 64 3e 0d 0a 3c uery)...</td>..<
b100: 74 64 3e 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 td><img src="htt
b110: 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 ps://www.gaia-gi
b120: 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 s.it/gaia-sins/r
b130: 6f 75 74 69 6e 67 2d 66 69 67 73 2f 72 6f 75 74 outing-figs/rout
b140: 69 6e 67 32 2e 6a 70 67 22 20 61 6c 74 3d 22 66 ing2.jpg" alt="f
b150: 69 67 32 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 ig2"></td>..</tr
b160: 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 >..</table>..<br
b170: 3e 0d 0a 3c 68 32 3e 50 6c 61 79 69 6e 67 20 77 >..<h2>Playing w
b180: 69 74 68 20 56 69 72 74 75 61 6c 52 6f 75 74 69 ith VirtualRouti
b190: 6e 67 20 63 6f 6e 66 69 67 75 72 61 62 6c 65 20 ng configurable
b1a0: 6f 70 74 69 6f 6e 73 3c 2f 68 32 3e 0d 0a 53 65 options</h2>..Se
b1b0: 76 65 72 61 6c 20 61 73 70 65 63 74 73 20 6f 66 veral aspects of
b1c0: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
b1d0: 63 61 6e 20 62 65 20 66 72 65 65 6c 79 20 63 75 can be freely cu
b1e0: 73 74 6f 6d 69 7a 65 64 2e 0d 0a 3c 76 65 72 62 stomized...<verb
b1f0: 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 atim>..UPDATE by
b200: 66 6f 6f 74 20 53 45 54 20 41 6c 67 6f 72 69 74 foot SET Algorit
b210: 68 6d 20 3d 20 27 41 2a 27 3b 0d 0a 0d 0a 53 45 hm = 'A*';....SE
b220: 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 LECT Algorithm,
b230: 4f 70 74 69 6f 6e 73 2c 20 52 6f 75 74 65 52 6f Options, RouteRo
b240: 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 w, Role, LinkRow
b250: 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f id, NodeFrom, No
b260: 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d deTo, Cost, Geom
b270: 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d etry, Name..FROM
b280: 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e byfoot..WHERE N
b290: 6f 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 odeFrom = 178731
b2a0: 20 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 31 38 AND NodeTo = 18
b2b0: 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 3286;..</verbati
b2c0: 6d 3e 0d 0a 49 66 20 79 6f 75 20 72 65 6d 65 6d m>..If you remem
b2d0: 62 65 72 20 69 6e 20 61 6c 6c 20 74 68 65 20 70 ber in all the p
b2e0: 72 65 76 69 6f 75 73 20 65 78 61 6d 70 6c 65 73 revious examples
b2f0: 20 74 68 65 20 3c 62 3e 44 69 6a 6b 73 74 72 61 the <b>Dijkstra
b300: 27 73 3c 2f 62 3e 20 61 6c 67 6f 72 69 74 68 6d 's</b> algorithm
b310: 20 77 61 73 20 75 73 65 64 3b 20 6e 6f 77 20 28 was used; now (
b320: 61 66 74 65 72 20 65 78 65 63 75 74 69 6e 67 20 after executing
b330: 74 68 65 20 61 62 6f 76 65 20 3c 62 3e 55 50 44 the above <b>UPD
b340: 41 54 45 3c 2f 62 3e 29 20 61 6c 6c 20 53 68 6f ATE</b>) all Sho
b350: 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 69 rtest Path queri
b360: 65 73 20 77 69 6c 6c 20 62 65 20 62 61 73 65 64 es will be based
b370: 20 6f 6e 20 74 68 65 20 61 6c 74 65 72 6e 61 74 on the alternat
b380: 69 76 65 20 3c 62 3e 41 2a 3c 2f 62 3e 20 61 6c ive <b>A*</b> al
b390: 67 6f 72 69 74 68 6d 2e 3c 62 72 3e 0d 0a 49 66 gorithm.<br>..If
b3a0: 20 79 6f 75 20 77 69 73 68 20 74 6f 20 73 65 6c you wish to sel
b3b0: 65 63 74 20 61 67 61 69 6e 20 74 68 65 20 44 69 ect again the Di
b3c0: 6a 6b 73 74 72 61 27 73 20 61 6c 67 6f 72 69 74 jkstra's algorit
b3d0: 68 6d 20 79 6f 75 20 6a 75 73 74 20 68 61 76 65 hm you just have
b3e0: 20 74 6f 20 65 78 65 63 75 74 65 3c 62 72 3e 20 to execute<br>
b3f0: 3c 62 3e 55 50 44 41 54 45 20 62 79 66 6f 6f 74 <b>UPDATE byfoot
b400: 20 53 45 54 20 41 6c 67 6f 72 69 74 68 6d 20 3d SET Algorithm =
b410: 20 27 44 49 4a 4b 53 54 52 41 27 3b 3c 2f 62 3e 'DIJKSTRA';</b>
b420: 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 20 66 .<br><br>..The f
b430: 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 73 ollowing table s
b440: 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 73 hows the results
b450: 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 et returned by t
b460: 68 65 20 70 72 65 76 69 6f 75 73 20 53 68 6f 72 he previous Shor
b470: 74 65 73 74 20 50 61 74 68 20 71 75 65 72 79 3b test Path query;
b480: 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 please notice t
b490: 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 he value in the
b4a0: 3c 62 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e <b>Algorithm</b>
b4b0: 20 63 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c 62 column...<br><b
b4c0: 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 r>..<table borde
b4d0: 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 r="1" bgcolor="#
b4e0: 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 ffffcf" cellspac
b4f0: 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 ing="4" cellpadd
b500: 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 ing="6">..<tr><t
b510: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
b520: 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 a0">Algorithm</t
b530: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
b540: 64 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c d0d0a0">Options<
b550: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
b560: 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 "#d0d0a0">RouteR
b570: 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ow</th><th bgcol
b580: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c or="#d0d0a0">Rol
b590: 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f e</th><th bgcolo
b5a0: 72 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b r="#d0d0a0">Link
b5b0: 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 Rowid</th><th bg
b5c0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
b5d0: 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 NodeFrom</th><th
b5e0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
b5f0: 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 0">NodeTo</th><t
b600: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
b610: 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 a0">Cost</th><th
b620: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
b630: 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 0">Geometry</th>
b640: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
b650: 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c d0a0">Name</th><
b660: 2f 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 41 2a /tr>..<tr><td>A*
b670: 3c 2f 74 64 3e 3c 74 64 3e 46 75 6c 6c 3c 2f 74 </td><td>Full</t
b680: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
b690: 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
b6a0: 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
b6b0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
b6c0: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
b6d0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
b6e0: 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c ht">183286</td><
b6f0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
b700: 3e 33 30 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e >300.912208</td>
b710: 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 <td>BLOB sz=272
b720: 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 GEOMETRY</td><td
b730: 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
b740: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
b750: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
b760: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
b770: 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c ght">1</td><td>L
b780: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
b790: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 n="right">224014
b7a0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
b7b0: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
b7c0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
b7d0: 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c ht">182885</td><
b7e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
b7f0: 3e 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e 3c >94.812424</td><
b800: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
b810: 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 VIA PIETRO ARETI
b820: 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NO</td>..</tr>..
b830: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
b840: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
b850: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
b860: 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">2</td><td>Link
b870: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
b880: 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c 2f 74 right">224446</t
b890: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
b8a0: 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c ht">182885</td><
b8b0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
b8c0: 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 >178880</td><td
b8d0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 39 align="right">69
b8e0: 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 3e .727726</td><td>
b8f0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
b900: 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 MARGARITONE</td
b910: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
b920: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
b930: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
b940: 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
b950: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
b960: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
b970: 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 64 20 >224414</td><td
b980: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
b990: 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8880</td><td ali
b9a0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 gn="right">18328
b9b0: 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 6</td><td align=
b9c0: 22 72 69 67 68 74 22 3e 31 33 36 2e 33 37 32 30 "right">136.3720
b9d0: 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 57</td><td>NULL<
b9e0: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 47 /td><td>VIA MARG
b9f0: 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f ARITONE</td>..</
ba00: 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c tr>..</table>..<
ba10: 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 59 6f 75 br><br><br>..You
ba20: 20 63 61 6e 20 65 76 65 6e 74 75 61 6c 6c 79 20 can eventually
ba30: 63 6f 6e 66 69 67 75 72 65 20 74 68 65 20 72 65 configure the re
ba40: 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 sultset returned
ba50: 20 74 68 65 20 56 69 72 74 75 61 6c 52 6f 75 74 the VirtualRout
ba60: 69 6e 67 20 71 75 65 72 69 65 73 2e 0d 0a 3c 76 ing queries...<v
ba70: 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 erbatim>..UPDATE
ba80: 20 62 79 66 6f 6f 74 20 53 45 54 20 4f 70 74 69 byfoot SET Opti
ba90: 6f 6e 73 20 3d 20 27 4e 4f 20 4c 49 4e 4b 53 27 ons = 'NO LINKS'
baa0: 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 41 6c 67 6f ;....SELECT Algo
bab0: 72 69 74 68 6d 2c 20 4f 70 74 69 6f 6e 73 2c 20 rithm, Options,
bac0: 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 RouteRow, Role,
bad0: 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 LinkRowid, NodeF
bae0: 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 rom, NodeTo, Cos
baf0: 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d t, Geometry, Nam
bb00: 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a e..FROM byfoot..
bb10: 57 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d 20 3d WHERE NodeFrom =
bb20: 20 31 37 38 37 33 31 20 41 4e 44 20 4e 6f 64 65 178731 AND Node
bb30: 54 6f 20 3d 20 31 38 33 32 38 36 3b 0d 0a 3c 2f To = 183286;..</
bb40: 76 65 72 62 61 74 69 6d 3e 0d 0a 41 66 74 65 72 verbatim>..After
bb50: 20 73 65 74 74 69 6e 67 20 3c 62 3e 4f 70 74 69 setting <b>Opti
bb60: 6f 6e 73 3d 27 4e 4f 20 4c 49 4e 4b 53 27 3c 2f ons='NO LINKS'</
bb70: 62 3e 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 b> the resultset
bb80: 20 77 69 6c 6c 20 73 69 6d 70 6c 79 20 63 6f 6e will simply con
bb90: 74 61 69 6e 20 74 68 65 20 68 65 61 64 65 72 20 tain the header
bba0: 72 6f 77 2c 20 61 6e 64 20 61 6c 6c 20 74 68 65 row, and all the
bbb0: 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 20 following rows
bbc0: 77 69 6c 6c 20 62 65 20 73 75 70 70 72 65 73 73 will be suppress
bbd0: 65 64 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 ed.<br>..<u>Note
bbe0: 3c 2f 75 3e 3a 20 70 72 6f 64 75 63 69 6e 67 20 </u>: producing
bbf0: 61 20 72 65 64 75 63 65 64 20 72 65 73 75 6c 74 a reduced result
bc00: 73 65 74 20 69 73 20 65 78 70 65 63 74 65 64 20 set is expected
bc10: 74 6f 20 62 65 20 73 6f 6d 65 77 61 79 20 66 61 to be someway fa
bc20: 73 74 65 72 2e 3c 62 72 3e 0d 0a 54 68 65 20 66 ster.<br>..The f
bc30: 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 73 ollowing table s
bc40: 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 73 hows the results
bc50: 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 et returned by t
bc60: 68 65 20 70 72 65 76 69 6f 75 73 20 53 68 6f 72 he previous Shor
bc70: 74 65 73 74 20 50 61 74 68 20 71 75 65 72 79 3b test Path query;
bc80: 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 please notice t
bc90: 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 he value in the
bca0: 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 63 <b>Options</b> c
bcb0: 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e olumn...<br><br>
bcc0: 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d ..<table border=
bcd0: 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 "1" bgcolor="#ff
bce0: 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e ffcf" cellspacin
bcf0: 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e g="4" cellpaddin
bd00: 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 g="6">..<tr><th
bd10: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
bd20: 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 3e ">Algorithm</th>
bd30: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
bd40: 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 d0a0">Options</t
bd50: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
bd60: 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 d0d0a0">RouteRow
bd70: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
bd80: 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c ="#d0d0a0">Role<
bd90: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
bda0: 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f "#d0d0a0">LinkRo
bdb0: 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f wid</th><th bgco
bdc0: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f lor="#d0d0a0">No
bdd0: 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 deFrom</th><th b
bde0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
bdf0: 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 >NodeTo</th><th
be00: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
be10: 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 ">Cost</th><th b
be20: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
be30: 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 >Geometry</th><t
be40: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
be50: 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 a0">Name</th></t
be60: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 41 2a r>..<tr>..<td>A*
be70: 3c 2f 74 64 3e 3c 74 64 3e 4e 6f 20 4c 69 6e 6b </td><td>No Link
be80: 73 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d s</td><td align=
be90: 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 "right">0</td><t
bea0: 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e d>Route</td><td>
beb0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
bec0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
bed0: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
bee0: 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f "right">183286</
bef0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
bf00: 67 68 74 22 3e 33 30 30 2e 39 31 32 32 30 38 3c ght">300.912208<
bf10: 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d /td><td>BLOB sz=
bf20: 32 37 32 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 272 GEOMETRY</td
bf30: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a ><td>NULL</td>..
bf40: 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d </tr>..</table>.
bf50: 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c .<br><br><br>..<
bf60: 76 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 verbatim>..UPDAT
bf70: 45 20 62 79 66 6f 6f 74 20 53 45 54 20 4f 70 74 E byfoot SET Opt
bf80: 69 6f 6e 73 20 3d 20 27 4e 4f 20 47 45 4f 4d 45 ions = 'NO GEOME
bf90: 54 52 49 45 53 27 3b 0d 0a 0d 0a 53 45 4c 45 43 TRIES';....SELEC
bfa0: 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 4f 70 74 T Algorithm, Opt
bfb0: 69 6f 6e 73 2c 20 52 6f 75 74 65 52 6f 77 2c 20 ions, RouteRow,
bfc0: 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c Role, LinkRowid,
bfd0: 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 NodeFrom, NodeT
bfe0: 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 o, Cost, Geometr
bff0: 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 y, Name..FROM by
c000: 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 foot..WHERE Node
c010: 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e From = 178731 AN
c020: 44 20 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 D NodeTo = 18328
c030: 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 41 6;..</verbatim>A
c040: 66 74 65 72 20 73 65 74 74 69 6e 67 20 3c 62 3e fter setting <b>
c050: 4f 70 74 69 6f 6e 73 3d 27 4e 4f 20 47 45 4f 4d Options='NO GEOM
c060: 45 54 52 49 45 53 27 3c 2f 62 3e 20 74 68 65 20 ETRIES'</b> the
c070: 72 65 73 75 6c 74 73 65 74 20 77 69 6c 6c 20 63 resultset will c
c080: 6f 6e 74 61 69 6e 20 61 6c 6c 20 72 6f 77 73 2c ontain all rows,
c090: 20 62 75 74 20 61 6c 6c 20 47 65 6f 6d 65 74 72 but all Geometr
c0a0: 69 65 73 20 77 69 6c 6c 20 62 65 20 73 75 70 70 ies will be supp
c0b0: 72 65 73 73 65 64 2e 3c 62 72 3e 0d 0a 3c 75 3e ressed.<br>..<u>
c0c0: 4e 6f 74 65 3c 2f 75 3e 3a 20 74 68 69 73 20 74 Note</u>: this t
c0d0: 6f 6f 20 69 73 20 65 78 70 65 63 74 65 64 20 74 oo is expected t
c0e0: 6f 20 62 65 20 73 6f 6d 65 77 61 79 20 66 61 73 o be someway fas
c0f0: 74 65 72 2e 3c 62 72 3e 0d 0a 54 68 65 20 66 6f ter.<br>..The fo
c100: 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 73 68 llowing table sh
c110: 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 73 65 ows the resultse
c120: 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 t returned by th
c130: 65 20 70 72 65 76 69 6f 75 73 20 53 68 6f 72 74 e previous Short
c140: 65 73 74 20 50 61 74 68 20 71 75 65 72 79 3b 20 est Path query;
c150: 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 please notice th
c160: 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 3c e value in the <
c170: 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 63 6f b>Options</b> co
c180: 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d lumn...<br><br>.
c190: 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 .<table border="
c1a0: 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 1" bgcolor="#fff
c1b0: 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 fcf" cellspacing
c1c0: 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 ="4" cellpadding
c1d0: 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 ="6">..<tr><th b
c1e0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
c1f0: 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 3e 3c >Algorithm</th><
c200: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
c210: 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 0a0">Options</th
c220: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
c230: 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 0d0a0">RouteRow<
c240: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
c250: 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f "#d0d0a0">Role</
c260: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
c270: 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 #d0d0a0">LinkRow
c280: 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c id</th><th bgcol
c290: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 or="#d0d0a0">Nod
c2a0: 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 eFrom</th><th bg
c2b0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
c2c0: 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 NodeTo</th><th b
c2d0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
c2e0: 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 >Cost</th><th bg
c2f0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
c300: 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 Geometry</th><th
c310: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
c320: 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 0">Name</th></tr
c330: 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 41 2a 3c 2f 74 >..<tr><td>A*</t
c340: 64 3e 3c 74 64 3e 4e 6f 20 47 65 6f 6d 65 74 72 d><td>No Geometr
c350: 69 65 73 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ies</td><td alig
c360: 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
c370: 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
c380: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
c390: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
c3a0: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
c3b0: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 n="right">183286
c3c0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
c3d0: 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 32 30 right">300.91220
c3e0: 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 8</td><td>NULL</
c3f0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
c400: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
c410: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
c420: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
c430: 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 gn="right">1</td
c440: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
c450: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
c460: 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 64 20 61 224014</td><td a
c470: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
c480: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
c490: 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 35 n="right">182885
c4a0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
c4b0: 72 69 67 68 74 22 3e 39 34 2e 38 31 32 34 32 34 right">94.812424
c4c0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
c4d0: 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 52 4f d><td>VIA PIETRO
c4e0: 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c ARETINO</td>..<
c4f0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
c500: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
c510: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
c520: 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 "right">2</td><t
c530: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
c540: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
c550: 34 34 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 446</td><td alig
c560: 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 35 n="right">182885
c570: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
c580: 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c 2f 74 right">178880</t
c590: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
c5a0: 68 74 22 3e 36 39 2e 37 32 37 37 32 36 3c 2f 74 ht">69.727726</t
c5b0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
c5c0: 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f td>VIA MARGARITO
c5d0: 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NE</td>..</tr>..
c5e0: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
c5f0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
c600: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
c610: 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">3</td><td>Link
c620: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
c630: 72 69 67 68 74 22 3e 32 32 34 34 31 34 3c 2f 74 right">224414</t
c640: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
c650: 68 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c ht">178880</td><
c660: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
c670: 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 >183286</td><td
c680: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 align="right">13
c690: 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 74 64 6.372057</td><td
c6a0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
c6b0: 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 A MARGARITONE</t
c6c0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 d>..</tr>..</tab
c6d0: 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 le>..<br><br><br
c6e0: 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 55 >..<verbatim>..U
c6f0: 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 45 54 PDATE byfoot SET
c700: 20 4f 70 74 69 6f 6e 73 20 3d 20 27 53 49 4d 50 Options = 'SIMP
c710: 4c 45 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 41 LE';....SELECT A
c720: 6c 67 6f 72 69 74 68 6d 2c 20 4f 70 74 69 6f 6e lgorithm, Option
c730: 73 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c s, RouteRow, Rol
c740: 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f e, LinkRowid, No
c750: 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 deFrom, NodeTo,
c760: 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 Cost, Geometry,
c770: 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f Name..FROM byfoo
c780: 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f t..WHERE NodeFro
c790: 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e m = 178731 AND N
c7a0: 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 36 3b 0d odeTo = 183286;.
c7b0: 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 53 65 74 74 .</verbatim>Sett
c7c0: 69 6e 67 20 3c 62 3e 4f 70 74 69 6f 6e 73 3d 27 ing <b>Options='
c7d0: 53 49 4d 50 4c 45 27 3c 2f 62 3e 20 68 61 73 20 SIMPLE'</b> has
c7e0: 74 68 65 20 73 61 6d 65 20 65 66 66 65 63 74 20 the same effect
c7f0: 74 68 61 6e 20 73 65 74 74 69 6e 67 20 62 6f 74 than setting bot
c800: 68 20 3c 62 3e 4e 4f 20 4c 49 4e 4b 53 3c 2f 62 h <b>NO LINKS</b
c810: 3e 20 61 6e 64 20 3c 62 3e 4e 4f 20 47 45 4f 4d > and <b>NO GEOM
c820: 45 54 52 49 45 53 3c 2f 62 3e 20 61 74 20 74 68 ETRIES</b> at th
c830: 65 20 73 61 6d 65 20 74 69 6d 65 2e 3c 62 72 3e e same time.<br>
c840: 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 74 ..<u>Note</u>: t
c850: 68 69 73 20 69 73 20 65 78 70 65 63 74 65 64 20 his is expected
c860: 74 6f 20 62 65 20 74 68 65 20 66 61 73 74 65 73 to be the fastes
c870: 74 20 73 65 74 74 69 6e 67 2e 3c 62 72 3e 0d 0a t setting.<br>..
c880: 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 The following ta
c890: 62 6c 65 20 73 68 6f 77 73 20 74 68 65 20 72 65 ble shows the re
c8a0: 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 sultset returned
c8b0: 20 62 79 20 74 68 65 20 70 72 65 76 69 6f 75 73 by the previous
c8c0: 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 20 71 Shortest Path q
c8d0: 75 65 72 79 3b 20 70 6c 65 61 73 65 20 6e 6f 74 uery; please not
c8e0: 69 63 65 20 74 68 65 20 76 61 6c 75 65 20 69 6e ice the value in
c8f0: 20 74 68 65 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c the <b>Options<
c900: 2f 62 3e 20 63 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 /b> column...<br
c910: 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f ><br>..<table bo
c920: 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 rder="1" bgcolor
c930: 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 ="#ffffcf" cells
c940: 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 pacing="4" cellp
c950: 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 adding="6">..<tr
c960: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
c970: 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 0d0a0">Algorithm
c980: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
c990: 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f ="#d0d0a0">Optio
c9a0: 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ns</th><th bgcol
c9b0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 or="#d0d0a0">Rou
c9c0: 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 teRow</th><th bg
c9d0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
c9e0: 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 Role</th><th bgc
c9f0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4c olor="#d0d0a0">L
ca00: 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 inkRowid</th><th
ca10: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
ca20: 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 0">NodeFrom</th>
ca30: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
ca40: 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 d0a0">NodeTo</th
ca50: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
ca60: 30 64 30 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 0d0a0">Cost</th>
ca70: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
ca80: 64 30 61 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f d0a0">Geometry</
ca90: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
caa0: 23 64 30 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 #d0d0a0">Name</t
cab0: 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c h></tr>..<tr>..<
cac0: 74 64 3e 41 2a 3c 2f 74 64 3e 3c 74 64 3e 53 69 td>A*</td><td>Si
cad0: 6d 70 6c 65 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 mple</td><td ali
cae0: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
caf0: 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
cb00: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
cb10: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
cb20: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
cb30: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 gn="right">18328
cb40: 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 6</td><td align=
cb50: 22 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 32 "right">300.9122
cb60: 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 08</td><td>NULL<
cb70: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
cb80: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c >..</tr>..</tabl
cb90: 65 3e 0d 0a 3c 62 72 3e 0d 0a 46 69 6e 61 6c 6c e>..<br>..Finall
cba0: 79 2c 20 69 66 20 79 6f 75 20 77 69 73 68 20 74 y, if you wish t
cbb0: 6f 20 73 65 6c 65 63 74 20 61 67 61 69 6e 20 74 o select again t
cbc0: 68 65 20 69 6e 69 74 69 61 6c 20 73 74 61 6e 64 he initial stand
cbd0: 61 72 64 20 73 65 74 74 69 6e 67 20 79 6f 75 20 ard setting you
cbe0: 6a 75 73 74 20 68 61 76 65 20 74 6f 20 65 78 65 just have to exe
cbf0: 63 75 74 65 3c 62 72 3e 20 3c 62 3e 55 50 44 41 cute<br> <b>UPDA
cc00: 54 45 20 62 79 66 6f 6f 74 20 53 45 54 20 4f 70 TE byfoot SET Op
cc10: 74 69 6f 6e 73 20 3d 20 27 46 55 4c 4c 27 3b 3c tions = 'FULL';<
cc20: 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 /b>.<br><br>..<h
cc30: 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 3c 61 20 6e r><br>..<h1><a n
cc40: 61 6d 65 3d 22 6d 75 6c 74 69 22 3e 35 20 2d 20 ame="multi">5 -
cc50: 53 6f 6c 76 69 6e 67 20 6d 75 6c 74 69 2d 64 65 Solving multi-de
cc60: 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 74 65 stination Shorte
cc70: 73 74 20 50 61 74 68 20 70 72 6f 62 6c 65 6d 73 st Path problems
cc80: 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a 41 20 76 65 72 </a></h1>..A ver
cc90: 79 20 69 6e 74 65 72 65 73 74 69 6e 67 20 66 65 y interesting fe
cca0: 61 74 75 72 65 20 73 75 70 70 6f 72 74 65 64 20 ature supported
ccb0: 62 79 20 74 68 65 20 44 69 6a 6b 73 74 72 61 27 by the Dijkstra'
ccc0: 73 20 41 6c 67 6f 72 69 74 68 6d 20 69 73 20 74 s Algorithm is t
ccd0: 68 61 74 20 69 74 20 72 6f 62 75 73 74 6c 79 20 hat it robustly
cce0: 65 6e 73 75 72 65 73 20 74 68 61 74 20 77 68 65 ensures that whe
ccf0: 6e 20 61 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 n a destination
cd00: 69 73 20 72 65 61 63 68 65 64 20 61 6c 6c 20 74 is reached all t
cd10: 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 73 20 he destinations
cd20: 70 72 65 73 65 6e 74 69 6e 67 20 61 20 3c 62 3e presenting a <b>
cd30: 6c 65 73 73 65 72 20 63 6f 73 74 3c 2f 62 3e 20 lesser cost</b>
cd40: 68 61 76 65 20 61 6c 72 65 61 64 79 20 62 65 65 have already bee
cd50: 6e 20 72 65 61 63 68 65 64 20 69 6e 20 73 6f 6d n reached in som
cd60: 65 20 70 72 65 76 69 6f 75 73 20 73 74 65 70 20 e previous step
cd70: 6f 66 20 74 68 65 20 70 72 6f 63 65 73 73 2e 3c of the process.<
cd80: 62 72 3e 0d 0a 54 68 69 73 20 61 6c 6c 6f 77 73 br>..This allows
cd90: 20 74 6f 20 65 66 66 69 63 69 65 6e 74 6c 79 20 to efficiently
cda0: 73 75 70 70 6f 72 74 20 3c 62 3e 6d 75 6c 74 69 support <b>multi
cdb0: 70 6c 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 73 ple destinations
cdc0: 3c 2f 62 3e 20 53 68 6f 72 74 65 73 74 20 50 61 </b> Shortest Pa
cdd0: 74 68 20 71 75 65 72 69 65 73 2e 0d 0a 59 6f 75 th queries...You
cde0: 20 73 69 6d 70 6c 79 20 68 61 76 65 20 74 6f 20 simply have to
cdf0: 73 70 65 63 69 66 79 20 61 20 3c 62 3e 73 69 6e specify a <b>sin
ce00: 67 6c 65 20 6f 72 69 67 69 6e 20 4e 6f 64 65 3c gle origin Node<
ce10: 2f 62 3e 20 61 6e 64 20 61 6e 20 3c 62 3e 61 72 /b> and an <b>ar
ce20: 62 69 74 72 61 72 79 20 6c 69 73 74 20 6f 66 20 bitrary list of
ce30: 64 65 73 74 69 6e 61 74 69 6f 6e 20 4e 6f 64 65 destination Node
ce40: 73 3c 2f 62 3e 20 69 6e 20 61 20 73 69 6e 67 6c s</b> in a singl
ce50: 65 20 44 69 6a 6b 73 74 72 61 27 73 20 65 78 65 e Dijkstra's exe
ce60: 63 75 74 69 6f 6e 2e 3c 62 72 3e 3c 62 72 3e 0d cution.<br><br>.
ce70: 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 65 78 .<u>Note</u>: ex
ce80: 65 63 75 74 69 6e 67 20 61 20 6d 75 6c 74 69 2d ecuting a multi-
ce90: 64 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 destination Shor
cea0: 74 65 73 74 20 50 61 74 68 20 71 75 65 72 79 20 test Path query
ceb0: 72 65 71 75 69 72 65 73 20 61 20 3c 62 3e 70 72 requires a <b>pr
cec0: 6f 63 65 73 73 69 6e 67 20 74 69 6d 65 3c 2f 62 ocessing time</b
ced0: 3e 20 74 68 61 74 20 69 73 6e 27 74 20 74 68 65 > that isn't the
cee0: 20 3c 75 3e 73 75 6d 20 6f 66 20 61 6c 6c 20 69 <u>sum of all i
cef0: 6e 64 69 76 69 64 75 61 6c 20 74 69 6d 69 6e 67 ndividual timing
cf00: 73 20 66 6f 72 20 65 61 63 68 20 64 65 73 74 69 s for each desti
cf10: 6e 61 74 69 6f 6e 3c 2f 75 3e 2c 20 62 75 74 20 nation</u>, but
cf20: 73 69 6d 70 6c 79 20 69 73 20 74 68 65 20 3c 75 simply is the <u
cf30: 3e 74 69 6d 65 20 72 65 71 75 69 72 65 64 20 74 >time required t
cf40: 6f 20 72 65 61 63 68 20 74 68 65 20 6d 6f 73 74 o reach the most
cf50: 20 63 6f 73 74 6c 79 20 6f 66 20 61 6c 6c 20 64 costly of all d
cf60: 65 73 74 69 6e 61 74 69 6f 6e 73 20 69 6e 20 74 estinations in t
cf70: 68 65 20 6c 69 73 74 3c 2f 75 3e 2e 3c 62 72 3e he list</u>.<br>
cf80: 0d 0a 54 68 69 73 20 69 73 6e 27 74 20 72 69 67 ..This isn't rig
cf90: 6f 72 6f 75 73 6c 79 20 74 72 75 65 20 69 6e 20 orously true in
cfa0: 74 68 65 20 63 61 73 65 20 6f 66 20 74 68 65 20 the case of the
cfb0: 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 73 VirtualRouting s
cfc0: 70 65 63 69 66 69 63 20 69 6d 70 6c 65 6d 65 6e pecific implemen
cfd0: 74 61 74 69 6f 6e 2c 20 62 65 63 61 75 73 65 20 tation, because
cfe0: 61 72 72 61 6e 67 69 6e 67 20 74 68 65 20 72 65 arranging the re
cff0: 73 75 6c 74 73 65 74 20 74 6f 20 62 65 20 72 65 sultset to be re
d000: 74 75 72 6e 65 64 20 61 6e 64 20 63 72 65 61 74 turned and creat
d010: 69 6e 67 20 61 6c 6c 20 74 68 65 20 69 6e 64 69 ing all the indi
d020: 76 69 64 75 61 6c 20 4c 69 6e 65 73 74 72 69 6e vidual Linestrin
d030: 67 73 20 66 6f 72 20 65 61 63 68 20 64 65 73 74 gs for each dest
d040: 69 6e 61 74 69 6f 6e 20 77 69 6c 6c 20 73 75 72 ination will sur
d050: 65 6c 79 20 69 6d 70 6f 73 65 20 73 6f 6d 65 20 ely impose some
d060: 66 75 72 74 68 65 72 20 6f 76 65 72 68 65 61 64 further overhead
d070: 2c 20 62 75 74 20 6e 6f 6e 65 74 68 65 6c 65 73 , but nonetheles
d080: 73 20 69 74 20 72 65 6d 61 69 6e 73 20 63 6f 6e s it remains con
d090: 66 69 72 6d 65 64 20 74 68 61 74 20 65 78 65 63 firmed that exec
d0a0: 75 74 69 6e 67 20 61 20 73 69 6e 67 6c 65 20 6d uting a single m
d0b0: 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e ulti-destination
d0c0: 20 71 75 65 72 79 20 77 69 6c 6c 20 73 75 72 65 query will sure
d0d0: 6c 79 20 62 65 20 20 6e 6f 74 69 63 65 61 62 6c ly be noticeabl
d0e0: 79 20 66 61 73 74 65 72 20 74 68 65 6e 20 65 78 y faster then ex
d0f0: 65 63 75 74 69 6e 67 20 6d 61 6e 79 20 73 70 61 ecuting many spa
d100: 72 73 65 20 73 69 6e 67 6c 65 2d 64 65 73 74 69 rse single-desti
d110: 6e 61 74 69 6f 6e 20 71 75 65 72 69 65 73 2e 0d nation queries..
d120: 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c .<verbatim>..SEL
d130: 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 ECT Algorithm, R
d140: 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c equest, Options,
d150: 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 Delimiter, Rout
d160: 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 eId, RouteRow, R
d170: 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 ole, LinkRowid,
d180: 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f NodeFrom, NodeTo
d190: 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 , Cost, Geometry
d1a0: 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 , Name..FROM byf
d1b0: 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 oot..WHERE NodeF
d1c0: 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
d1d0: 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 38 NodeTo = '18328
d1e0: 36 2c 32 39 30 34 35 38 2c 31 38 31 39 39 39 2c 6,290458,181999,
d1f0: 31 38 34 30 33 30 2c 31 32 34 36 32 32 2c 31 38 184030,124622,18
d200: 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 0a 3c 3882,178754';..<
d210: 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 73 20 79 /verbatim>..As y
d220: 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 6e 6f ou can easily no
d230: 74 69 63 65 2c 20 61 20 3c 62 3e 6d 75 6c 74 69 tice, a <b>multi
d240: 70 6c 65 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 ple-destinations
d250: 3c 2f 62 3e 20 71 75 65 72 79 20 68 61 73 20 74 </b> query has t
d260: 68 65 20 73 61 6d 65 20 69 64 65 6e 74 69 63 61 he same identica
d270: 6c 20 66 6f 72 6d 20 6f 66 20 61 6e 79 20 75 73 l form of any us
d280: 75 61 6c 20 53 68 6f 72 74 65 73 74 20 50 61 74 ual Shortest Pat
d290: 68 20 71 75 65 72 79 2c 20 65 78 63 65 70 74 20 h query, except
d2a0: 69 6e 20 74 68 61 74 20 3c 62 3e 4e 6f 64 65 54 in that <b>NodeT
d2b0: 6f 3c 2f 62 3e 20 6e 6f 77 20 63 6f 72 72 65 73 o</b> now corres
d2c0: 70 6f 6e 64 73 20 74 6f 20 61 20 63 6f 6d 6d 61 ponds to a comma
d2d0: 2d 73 65 70 61 72 61 74 65 64 20 6c 69 73 74 2e -separated list.
d2e0: 3c 62 72 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 <br>..The follow
d2f0: 69 6e 67 20 74 61 62 6c 65 20 73 68 6f 77 73 20 ing table shows
d300: 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 72 65 the resultset re
d310: 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 70 72 turned by the pr
d320: 65 76 69 6f 75 73 20 6d 75 6c 74 69 2d 64 65 73 evious multi-des
d330: 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 74 65 73 tination Shortes
d340: 74 20 50 61 74 68 20 71 75 65 72 79 2e 0d 0a 3c t Path query...<
d350: 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 br><br>..<table
d360: 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c border="1" bgcol
d370: 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c or="#ffffcf" cel
d380: 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c lspacing="4" cel
d390: 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c lpadding="6">..<
d3a0: 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 tr><th bgcolor="
d3b0: 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 #d0d0a0">Algorit
d3c0: 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c hm</th><th bgcol
d3d0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 65 71 or="#d0d0a0">Req
d3e0: 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 uest</th><th bgc
d3f0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4f olor="#d0d0a0">O
d400: 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 ptions</th><th b
d410: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
d420: 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 3e 3c >Delimiter</th><
d430: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
d440: 30 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 74 68 0a0">RouteId</th
d450: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
d460: 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 0d0a0">RouteRow<
d470: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
d480: 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f "#d0d0a0">Role</
d490: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
d4a0: 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 #d0d0a0">LinkRow
d4b0: 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c id</th><th bgcol
d4c0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 or="#d0d0a0">Nod
d4d0: 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 eFrom</th><th bg
d4e0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
d4f0: 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 NodeTo</th><th b
d500: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
d510: 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 >Cost</th><th bg
d520: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
d530: 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 Geometry</th><th
d540: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
d550: 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 0">Name</th></tr
d560: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 69 6a >..<tr>..<td>Dij
d570: 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e 53 68 kstra</td><td>Sh
d580: 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 74 64 3e ortest Path</td>
d590: 3c 74 64 3e 46 75 6c 6c 3c 2f 74 64 3e 3c 74 64 <td>Full</td><td
d5a0: 3e 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 2c 20 >, [dec=44,
d5b0: 68 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 64 3e hex=2c]</td>
d5c0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
d5d0: 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">0</td><td alig
d5e0: 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
d5f0: 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
d600: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
d610: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
d620: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
d630: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 38 38 32 n="right">183882
d640: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
d650: 72 69 67 68 74 22 3e 31 35 34 2e 37 35 30 38 33 right">154.75083
d660: 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 9</td><td>BLOB s
d670: 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 3c 2f z=240 GEOMETRY</
d680: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
d690: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
d6a0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
d6b0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
d6c0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
d6d0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
d6e0: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 ght">0</td><td a
d6f0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f lign="right">1</
d700: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
d710: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
d720: 22 3e 32 32 32 36 33 36 3c 2f 74 64 3e 3c 74 64 ">222636</td><td
d730: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
d740: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
d750: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 30 ign="right">1820
d760: 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 00</td><td align
d770: 3d 22 72 69 67 68 74 22 3e 31 30 33 2e 37 33 35 ="right">103.735
d780: 37 32 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 722</td><td>NULL
d790: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 </td><td>VIA PIE
d7a0: 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e TRO ARETINO</td>
d7b0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
d7c0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
d7d0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
d7e0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
d7f0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
d800: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 ght">0</td><td a
d810: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f lign="right">2</
d820: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
d830: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
d840: 22 3e 32 32 35 35 32 37 3c 2f 74 64 3e 3c 74 64 ">225527</td><td
d850: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
d860: 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 82000</td><td al
d870: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 38 ign="right">1838
d880: 38 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 82</td><td align
d890: 3d 22 72 69 67 68 74 22 3e 35 31 2e 30 31 35 31 ="right">51.0151
d8a0: 31 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 17</td><td>NULL<
d8b0: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4c 49 43 49 /td><td>VIA LICI
d8c0: 4f 20 4e 45 4e 43 45 54 54 49 3c 2f 74 64 3e 0d O NENCETTI</td>.
d8d0: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
d8e0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
d8f0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
d900: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
d910: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
d920: 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">1</td><td al
d930: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
d940: 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
d950: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
d960: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
d970: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
d980: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 ign="right">1840
d990: 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 30</td><td align
d9a0: 3d 22 72 69 67 68 74 22 3e 31 37 36 2e 33 36 34 ="right">176.364
d9b0: 37 35 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 755</td><td>BLOB
d9c0: 20 73 7a 3d 33 30 34 20 47 45 4f 4d 45 54 52 59 sz=304 GEOMETRY
d9d0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
d9e0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
d9f0: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
da00: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
da10: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
da20: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
da30: 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 right">1</td><td
da40: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
da50: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
da60: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
da70: 68 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c ht">224014</td><
da80: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
da90: 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
daa0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
dab0: 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2885</td><td ali
dac0: 67 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 gn="right">94.81
dad0: 32 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2424</td><td>NUL
dae0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 L</td><td>VIA PI
daf0: 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 ETRO ARETINO</td
db00: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
db10: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
db20: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
db30: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
db40: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
db50: 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 ight">1</td><td
db60: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c align="right">2<
db70: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
db80: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
db90: 74 22 3e 32 32 34 38 36 32 3c 2f 74 64 3e 3c 74 t">224862</td><t
dba0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
dbb0: 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 182885</td><td a
dbc0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
dbd0: 30 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 043</td><td alig
dbe0: 6e 3d 22 72 69 67 68 74 22 3e 33 37 2e 30 39 35 n="right">37.095
dbf0: 32 38 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 287</td><td>NULL
dc00: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 </td><td>VIA MAR
dc10: 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c GARITONE</td>..<
dc20: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
dc30: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
dc40: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
dc50: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
dc60: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
dc70: 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">1</td><td alig
dc80: 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e n="right">3</td>
dc90: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
dca0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
dcb0: 32 36 30 37 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 26070</td><td al
dcc0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 30 ign="right">1820
dcd0: 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 43</td><td align
dce0: 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 30 3c ="right">184030<
dcf0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
dd00: 69 67 68 74 22 3e 34 34 2e 34 35 37 30 34 34 3c ight">44.457044<
dd10: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
dd20: 3e 3c 74 64 3e 50 49 41 5a 5a 41 20 53 41 4e 54 ><td>PIAZZA SANT
dd30: 27 41 47 4f 53 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 'AGOSTINO</td>..
dd40: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
dd50: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
dd60: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
dd70: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
dd80: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
dd90: 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">2</td><td ali
dda0: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
ddb0: 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
ddc0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
ddd0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
dde0: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
ddf0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 gn="right">17875
de00: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
de10: 22 72 69 67 68 74 22 3e 32 32 34 2e 36 37 37 30 "right">224.6770
de20: 39 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 95</td><td>BLOB
de30: 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 3c sz=240 GEOMETRY<
de40: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
de50: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
de60: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
de70: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
de80: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
de90: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
dea0: 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >2</td><td align
deb0: 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c ="right">1</td><
dec0: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
ded0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 31 align="right">21
dee0: 39 30 34 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 9045</td><td ali
def0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
df00: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
df10: 22 72 69 67 68 74 22 3e 31 37 38 37 33 32 3c 2f "right">178732</
df20: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
df30: 67 68 74 22 3e 37 36 2e 30 32 31 30 30 37 3c 2f ght">76.021007</
df40: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
df50: 3c 74 64 3e 56 49 41 20 41 53 53 41 42 3c 2f 74 <td>VIA ASSAB</t
df60: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
df70: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
df80: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
df90: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
dfa0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
dfb0: 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 right">2</td><td
dfc0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
dfd0: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
dfe0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
dff0: 68 74 22 3e 32 31 39 30 35 38 3c 2f 74 64 3e 3c ht">219058</td><
e000: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e010: 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 >178732</td><td
e020: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
e030: 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8754</td><td ali
e040: 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 38 2e 36 gn="right">148.6
e050: 35 36 30 38 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 56089</td><td>NU
e060: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 LL</td><td>VIA F
e070: 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c RANCESCO CRISPI<
e080: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
e090: 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
e0a0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e0b0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
e0c0: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
e0d0: 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c ="right">3</td><
e0e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e0f0: 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
e100: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
e110: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e120: 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c ht">178731</td><
e130: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e140: 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 >181999</td><td
e150: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 36 align="right">26
e160: 30 2e 31 33 32 33 35 34 3c 2f 74 64 3e 3c 74 64 0.132354</td><td
e170: 3e 42 4c 4f 42 20 73 7a 3d 32 34 30 20 47 45 4f >BLOB sz=240 GEO
e180: 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
e190: 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
e1a0: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
e1b0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e1c0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e1d0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
e1e0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
e1f0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e200: 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
e210: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
e220: 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 3c ="right">224014<
e230: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e240: 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
e250: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e260: 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 t">182885</td><t
e270: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e280: 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e 3c 74 94.812424</td><t
e290: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
e2a0: 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 4e IA PIETRO ARETIN
e2b0: 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c O</td>..</tr>..<
e2c0: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
e2d0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
e2e0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e2f0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
e300: 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 gn="right">3</td
e310: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e320: 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">2</td><td>Lin
e330: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
e340: 22 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c 2f "right">224446</
e350: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e360: 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e ght">182885</td>
e370: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e380: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
e390: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
e3a0: 39 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 9.727726</td><td
e3b0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
e3c0: 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 A MARGARITONE</t
e3d0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
e3e0: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
e3f0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e400: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
e410: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e420: 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 right">3</td><td
e430: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
e440: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
e450: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e460: 68 74 22 3e 32 32 35 38 30 30 3c 2f 74 64 3e 3c ht">225800</td><
e470: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e480: 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 >178880</td><td
e490: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
e4a0: 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1999</td><td ali
e4b0: 67 6e 3d 22 72 69 67 68 74 22 3e 39 35 2e 35 39 gn="right">95.59
e4c0: 32 32 30 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2204</td><td>NUL
e4d0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 L</td><td>VIA FR
e4e0: 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c 2f ANCESCO CRISPI</
e4f0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
e500: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
e510: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e520: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
e530: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
e540: 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 "right">4</td><t
e550: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e560: 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 0</td><td>Route<
e570: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e580: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e590: 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
e5a0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e5b0: 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 183286</td><td a
e5c0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 30 30 lign="right">300
e5d0: 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 64 3e .912208</td><td>
e5e0: 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f 4d BLOB sz=272 GEOM
e5f0: 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c ETRY</td><td>NUL
e600: 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c L</td>..</tr>..<
e610: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
e620: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
e630: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e640: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
e650: 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 gn="right">4</td
e660: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e670: 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">1</td><td>Lin
e680: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
e690: 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 3c 2f "right">224014</
e6a0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e6b0: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
e6c0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e6d0: 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 ">182885</td><td
e6e0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 align="right">9
e6f0: 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e 3c 74 64 4.812424</td><td
e700: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
e710: 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 4e 4f A PIETRO ARETINO
e720: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
e730: 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
e740: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e750: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e760: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
e770: 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e n="right">4</td>
e780: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e790: 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">2</td><td>Link
e7a0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e7b0: 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c 2f 74 right">224446</t
e7c0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e7d0: 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c ht">182885</td><
e7e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e7f0: 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 >178880</td><td
e800: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 39 align="right">69
e810: 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 3e .727726</td><td>
e820: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
e830: 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 MARGARITONE</td
e840: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
e850: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e860: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
e870: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
e880: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e890: 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 ight">4</td><td
e8a0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c align="right">3<
e8b0: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
e8c0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e8d0: 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 t">224414</td><t
e8e0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e8f0: 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
e900: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
e910: 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 286</td><td alig
e920: 6e 3d 22 72 69 67 68 74 22 3e 31 33 36 2e 33 37 n="right">136.37
e930: 32 30 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2057</td><td>NUL
e940: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 L</td><td>VIA MA
e950: 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a RGARITONE</td>..
e960: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
e970: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
e980: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
e990: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e9a0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e9b0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 55 d>NULL</td><td>U
e9c0: 6e 72 65 61 63 68 61 62 6c 65 20 4e 6f 64 65 54 nreachable NodeT
e9d0: 6f 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f o</td><td>NULL</
e9e0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e9f0: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
ea00: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
ea10: 22 3e 32 39 30 34 35 38 3c 2f 74 64 3e 3c 74 64 ">290458</td><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 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
ea50: 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
ea60: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
ea70: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
ea80: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
ea90: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
eaa0: 3e 3c 74 64 3e 55 6e 72 65 61 63 68 61 62 6c 65 ><td>Unreachable
eab0: 20 4e 6f 64 65 54 6f 3c 2f 74 64 3e 3c 74 64 3e NodeTo</td><td>
eac0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
ead0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
eae0: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
eaf0: 22 72 69 67 68 74 22 3e 31 32 34 36 32 32 3c 2f "right">124622</
eb00: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
eb10: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
eb20: 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
eb30: 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 >..</table>..<br
eb40: 3e 0d 0a 4c 65 74 27 73 20 71 75 69 63 6b 6c 79 >..Let's quickly
eb50: 20 65 78 61 6d 69 6e 65 20 74 68 65 20 72 65 73 examine the res
eb60: 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 ultset returned
eb70: 62 79 20 74 68 65 20 61 62 6f 76 65 20 3c 62 3e by the above <b>
eb80: 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f multi-destinatio
eb90: 6e 73 3c 2f 62 3e 20 71 75 65 72 79 2e 0d 0a 3c ns</b> query...<
eba0: 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 20 6f 76 65 ul>..<li>the ove
ebb0: 72 61 6c 6c 20 6c 61 79 6f 75 74 20 69 73 20 61 rall layout is a
ebc0: 6c 6d 6f 73 74 20 65 78 61 63 74 6c 79 20 74 68 lmost exactly th
ebd0: 65 20 73 61 6d 65 20 61 73 20 79 6f 75 27 76 65 e same as you've
ebe0: 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 69 6e already seen in
ebf0: 20 74 68 65 20 63 61 73 65 20 6f 66 20 3c 62 3e the case of <b>
ec00: 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 single-destinati
ec10: 6f 6e 3c 2f 62 3e 20 71 75 65 72 69 65 73 2c 20 on</b> queries,
ec20: 62 75 74 20 69 6e 20 74 68 69 73 20 63 61 73 65 but in this case
ec30: 20 6d 6f 72 65 20 69 6e 64 69 76 69 64 75 61 6c more individual
ec40: 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e travel solution
ec50: 73 20 61 72 65 20 67 72 6f 75 70 65 64 20 61 6c s are grouped al
ec60: 74 6f 67 65 74 68 65 72 2e 3c 2f 6c 69 3e 0d 0a together.</li>..
ec70: 3c 6c 69 3e 74 68 65 20 3c 62 3e 66 69 72 73 74 <li>the <b>first
ec80: 20 72 6f 77 3c 2f 62 3e 20 6f 66 20 74 68 65 20 row</b> of the
ec90: 72 65 73 75 6c 74 73 65 74 20 69 73 20 73 6f 6d resultset is som
eca0: 65 77 61 79 20 65 78 63 65 70 74 69 6f 6e 61 6c eway exceptional
ecb0: 2c 20 61 6e 64 20 69 73 20 74 68 65 20 75 6e 69 , and is the uni
ecc0: 71 75 65 20 72 6f 77 20 6f 66 20 74 68 65 20 72 que row of the r
ecd0: 65 73 75 6c 74 73 65 74 20 70 72 65 73 65 6e 74 esultset present
ece0: 69 6e 67 20 3c 62 3e 4e 4f 54 20 4e 55 4c 4c 3c ing <b>NOT NULL<
ecf0: 2f 62 3e 20 76 61 6c 75 65 73 20 69 6e 20 74 68 /b> values in th
ed00: 65 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f e <b>Algorithm</
ed10: 62 3e 2c 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f b>, <b>Request</
ed20: 62 3e 2c 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f b>, <b>Options</
ed30: 62 3e 20 61 6e 64 20 3c 62 3e 44 65 6c 69 6d 69 b> and <b>Delimi
ed40: 74 65 72 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 2e ter</b> columns.
ed50: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c </li>..<li>the <
ed60: 62 3e 52 6f 75 74 65 49 64 3c 2f 62 3e 20 63 6f b>RouteId</b> co
ed70: 6c 75 6d 6e 20 69 73 20 69 6e 74 65 6e 64 65 64 lumn is intended
ed80: 20 74 6f 20 67 72 6f 75 70 20 74 6f 67 65 74 68 to group togeth
ed90: 65 72 20 61 6c 6c 20 72 6f 77 73 20 62 65 6c 6f er all rows belo
eda0: 6e 67 69 6e 67 20 74 6f 20 73 61 6d 65 20 74 72 nging to same tr
edb0: 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 20 28 3c avel solution (<
edc0: 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 52 6f 75 i>aka</i> <b>Rou
edd0: 74 65 3c 2f 62 3e 29 2e 3c 62 72 3e 0d 0a 52 6f te</b>).<br>..Ro
ede0: 75 74 65 73 20 61 72 65 20 70 72 6f 67 72 65 73 utes are progres
edf0: 73 69 76 65 6c 79 20 6e 75 6d 62 65 72 65 64 20 sively numbered
ee00: 61 6e 64 20 61 72 65 20 6f 72 64 65 72 65 64 20 and are ordered
ee10: 61 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 74 accordingly to t
ee20: 68 65 69 72 20 3c 62 3e 74 6f 74 61 6c 20 63 6f heir <b>total co
ee30: 73 74 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c st</b>.</li>..<l
ee40: 69 3e 74 68 65 20 3c 62 3e 52 6f 75 74 65 52 6f i>the <b>RouteRo
ee50: 77 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 20 68 61 73 w</b> column has
ee60: 20 74 68 65 20 73 61 6d 65 20 69 6e 74 65 72 70 the same interp
ee70: 72 65 74 61 74 69 6f 6e 20 61 73 20 69 6e 20 73 retation as in s
ee80: 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 6f ingle-destinatio
ee90: 6e 20 72 65 73 75 6c 74 73 65 74 73 2c 20 61 6e n resultsets, an
eea0: 64 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f d is intended to
eeb0: 20 70 72 6f 67 72 65 73 73 69 76 65 6c 79 20 6f progressively o
eec0: 72 64 65 72 20 69 6e 20 74 68 65 20 63 6f 72 72 rder in the corr
eed0: 65 63 74 20 73 65 71 75 65 6e 63 65 20 61 6c 6c ect sequence all
eee0: 20 4c 69 6e 6b 73 20 63 6f 6e 6e 65 63 74 69 6e Links connectin
eef0: 67 20 74 68 65 20 4f 72 69 67 69 6e 20 61 6e 64 g the Origin and
ef00: 20 74 68 65 20 44 65 73 74 69 6e 61 74 69 6f 6e the Destination
ef10: 20 6f 66 20 65 61 63 68 20 52 6f 75 74 65 2e 3c of each Route.<
ef20: 62 72 3e 0d 0a 3c 62 3e 52 6f 75 74 65 52 6f 77 br>..<b>RouteRow
ef30: 3d 30 3c 2f 62 3e 20 61 6c 77 61 79 73 20 69 64 =0</b> always id
ef40: 65 6e 74 69 66 69 65 73 20 74 68 65 20 68 65 61 entifies the hea
ef50: 64 65 72 20 72 6f 77 20 6f 66 20 65 61 63 68 20 der row of each
ef60: 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 2e travel solution.
ef70: 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 </li>..</ul>..<b
ef80: 72 3e 0d 0a 3c 75 3e 4e 6f 74 69 63 65 3c 2f 75 r>..<u>Notice</u
ef90: 3e 3a 20 74 68 65 20 6c 61 73 74 20 74 77 6f 20 >: the last two
efa0: 72 6f 77 73 20 69 6e 20 74 68 65 20 72 65 73 75 rows in the resu
efb0: 6c 74 73 65 74 20 72 65 70 6f 72 74 73 20 3c 62 ltset reports <b
efc0: 3e 55 6e 72 65 61 63 68 61 62 6c 65 20 4e 6f 64 >Unreachable Nod
efd0: 65 54 6f 09 3c 2f 62 3e 20 69 6e 20 74 68 65 20 eTo.</b> in the
efe0: 3c 62 3e 52 6f 6c 65 3c 2f 62 3e 20 63 6f 6c 75 <b>Role</b> colu
eff0: 6d 6e 2c 20 74 68 75 73 20 69 6d 70 6c 79 69 6e mn, thus implyin
f000: 67 20 61 20 3c 62 3e 66 6f 72 62 69 64 64 65 6e g a <b>forbidden
f010: 20 63 6f 6e 6e 65 63 74 69 6f 6e 3c 2f 62 3e 2e connection</b>.
f020: 3c 62 72 3e 0d 0a 54 68 69 73 20 77 61 73 20 70 <br>..This was p
f030: 75 72 70 6f 73 65 6c 79 20 69 6e 74 65 6e 64 65 urposely intende
f040: 64 3a 20 4e 6f 64 65 73 20 3c 62 3e 32 39 30 34 d: Nodes <b>2904
f050: 35 38 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 31 32 58</b> and <b>12
f060: 34 36 32 32 3c 2f 62 3e 20 61 72 65 20 6c 6f 63 4622</b> are loc
f070: 61 74 65 64 20 6f 6e 20 45 6c 62 61 20 61 6e 64 ated on Elba and
f080: 20 47 69 67 6c 69 6f 20 69 73 6c 61 6e 64 73 2e Giglio islands.
f090: 20 54 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 The underlaying
f0a0: 20 4e 65 74 77 6f 72 6b 20 69 73 20 62 61 73 65 Network is base
f0b0: 64 20 6f 6e 20 3c 62 3e 49 74 65 72 2e 4e 65 74 d on <b>Iter.Net
f0c0: 3c 2f 62 3e 20 74 68 61 74 20 64 6f 6e 27 74 20 </b> that don't
f0d0: 73 75 70 70 6f 72 74 73 20 66 65 72 72 79 20 63 supports ferry c
f0e0: 6f 6e 6e 65 63 74 69 6f 6e 73 2c 20 73 6f 20 61 onnections, so a
f0f0: 6e 79 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 ny travel soluti
f100: 6f 6e 20 62 65 74 77 65 65 6e 20 74 68 65 20 69 on between the i
f110: 73 6c 61 6e 64 73 20 61 6e 64 20 74 68 65 20 6d slands and the m
f120: 61 69 6e 6c 61 6e 64 20 77 69 6c 6c 20 61 6c 77 ainland will alw
f130: 61 79 73 20 66 61 69 6c 2e 0d 0a 3c 62 72 3e 3c ays fail...<br><
f140: 62 72 3e 3c 62 72 3e 0d 0a 41 6c 73 6f 20 3c 62 br><br>..Also <b
f150: 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 >multi-destinati
f160: 6f 6e 73 3c 2f 62 3e 20 71 75 65 72 69 65 73 20 ons</b> queries
f170: 63 61 6e 20 62 65 20 63 75 73 74 6f 6d 69 7a 65 can be customize
f180: 64 2c 20 62 75 74 20 74 68 65 20 63 6f 6e 66 69 d, but the confi
f190: 67 75 72 61 74 69 6f 6e 20 72 75 6c 65 73 20 73 guration rules s
f1a0: 6c 69 67 68 74 6c 79 20 64 69 66 66 65 72 20 66 lightly differ f
f1b0: 72 6f 6d 20 77 68 61 74 20 79 6f 75 20 68 61 76 rom what you hav
f1c0: 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 69 e already seen i
f1d0: 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 73 69 n the case of si
f1e0: 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 6f 6e ngle-destination
f1f0: 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e ...<ul>..<li><b>
f200: 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 3a 20 6f Algorithm</b>: o
f210: 6e 6c 79 20 3c 62 3e 44 69 6a 6b 73 74 72 61 3c nly <b>Dijkstra<
f220: 2f 62 3e 20 69 73 20 73 75 70 70 6f 72 74 65 64 /b> is supported
f230: 20 62 79 20 6d 75 6c 74 69 2d 64 65 73 74 69 6e by multi-destin
f240: 61 74 69 6f 6e 2c 20 61 6e 64 20 77 69 6c 6c 20 ation, and will
f250: 62 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 61 73 be implicitly as
f260: 73 75 6d 65 64 20 65 76 65 6e 20 77 68 65 6e 20 sumed even when
f270: 74 68 65 20 61 6c 74 65 72 6e 61 74 69 76 65 20 the alternative
f280: 3c 62 3e 41 2a 3c 2f 62 3e 20 61 6c 67 6f 72 69 <b>A*</b> algori
f290: 74 68 6d 20 69 73 20 63 75 72 72 65 6e 74 6c 79 thm is currently
f2a0: 20 73 65 6c 65 63 74 65 64 2e 3c 2f 6c 69 3e 0d selected.</li>.
f2b0: 0a 3c 6c 69 3e 3c 62 3e 4f 70 74 69 6f 6e 73 3c .<li><b>Options<
f2c0: 2f 62 3e 3a 20 74 68 65 20 75 73 75 61 6c 20 3c /b>: the usual <
f2d0: 62 3e 46 55 4c 4c 3c 2f 62 3e 2c 20 3c 62 3e 53 b>FULL</b>, <b>S
f2e0: 49 4d 50 4c 45 3c 2f 62 3e 2c 20 3c 62 3e 4e 4f IMPLE</b>, <b>NO
f2f0: 20 4c 49 4e 4b 53 3c 2f 62 3e 20 61 6e 64 20 3c LINKS</b> and <
f300: 62 3e 4e 4f 20 47 45 4f 4d 45 54 52 49 45 53 3c b>NO GEOMETRIES<
f310: 2f 62 3e 20 61 72 65 20 73 75 70 70 6f 72 74 65 /b> are supporte
f320: 64 20 61 6e 64 20 77 69 6c 6c 20 68 61 76 65 20 d and will have
f330: 74 68 65 20 73 61 6d 65 20 65 66 66 65 63 74 20 the same effect
f340: 61 73 20 69 6e 20 73 69 6e 67 6c 65 2d 64 65 73 as in single-des
f350: 74 69 6e 61 74 69 6f 6e 20 71 75 65 72 69 65 73 tination queries
f360: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c .</li>..</ul>..<
f370: 76 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 verbatim>..UPDAT
f380: 45 20 62 79 66 6f 6f 74 20 53 45 54 20 4f 70 74 E byfoot SET Opt
f390: 69 6f 6e 73 20 3d 20 27 53 49 4d 50 4c 45 27 3b ions = 'SIMPLE';
f3a0: 0d 0a 0d 0a 53 45 4c 45 43 54 20 41 6c 67 6f 72 ....SELECT Algor
f3b0: 69 74 68 6d 2c 20 52 65 71 75 65 73 74 2c 20 4f ithm, Request, O
f3c0: 70 74 69 6f 6e 73 2c 20 44 65 6c 69 6d 69 74 65 ptions, Delimite
f3d0: 72 2c 20 52 6f 75 74 65 49 64 2c 20 52 6f 75 74 r, RouteId, Rout
f3e0: 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b eRow, Role, Link
f3f0: 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c Rowid, NodeFrom,
f400: 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 NodeTo, Cost, G
f410: 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 eometry, Name..F
f420: 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 ROM byfoot..WHER
f430: 45 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 37 38 E NodeFrom = 178
f440: 37 33 31 20 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 731 AND NodeTo =
f450: 20 27 31 38 33 32 38 36 2c 32 39 30 34 35 38 2c '183286,290458,
f460: 31 38 31 39 39 39 2c 31 38 34 30 33 30 2c 31 32 181999,184030,12
f470: 34 36 32 32 2c 31 38 33 38 38 32 2c 31 37 38 37 4622,183882,1787
f480: 35 34 27 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 54';..</verbatim
f490: 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 >..The following
f4a0: 20 74 61 62 6c 65 20 73 68 6f 77 73 20 74 68 65 table shows the
f4b0: 20 72 65 73 75 6c 74 73 65 74 20 72 65 74 75 72 resultset retur
f4c0: 6e 65 64 20 62 79 20 74 68 65 20 73 61 6d 65 20 ned by the same
f4d0: 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f multi-destinatio
f4e0: 6e 20 71 75 65 72 79 20 75 73 65 64 20 69 6e 20 n query used in
f4f0: 74 68 65 20 70 72 65 76 69 6f 75 73 20 65 78 61 the previous exa
f500: 6d 70 6c 65 20 61 66 74 65 72 20 65 6e 61 62 6c mple after enabl
f510: 69 6e 67 20 74 68 65 20 3c 62 3e 53 49 4d 50 4c ing the <b>SIMPL
f520: 45 3c 2f 62 3e 20 6f 70 74 69 6f 6e 2e 0d 0a 3c E</b> option...<
f530: 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 br><br>..<table
f540: 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c border="1" bgcol
f550: 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c or="#ffffcf" cel
f560: 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c lspacing="4" cel
f570: 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c lpadding="6">..<
f580: 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 tr><th bgcolor="
f590: 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 #d0d0a0">Algorit
f5a0: 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c hm</th><th bgcol
f5b0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 65 71 or="#d0d0a0">Req
f5c0: 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 uest</th><th bgc
f5d0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4f olor="#d0d0a0">O
f5e0: 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 ptions</th><th b
f5f0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
f600: 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 3e 3c >Delimiter</th><
f610: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
f620: 30 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 74 68 0a0">RouteId</th
f630: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
f640: 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 0d0a0">RouteRow<
f650: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
f660: 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f "#d0d0a0">Role</
f670: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
f680: 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 #d0d0a0">LinkRow
f690: 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c id</th><th bgcol
f6a0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 or="#d0d0a0">Nod
f6b0: 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 eFrom</th><th bg
f6c0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
f6d0: 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 NodeTo</th><th b
f6e0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
f6f0: 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 >Cost</th><th bg
f700: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
f710: 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 Geometry</th><th
f720: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
f730: 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 0">Name</th></tr
f740: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 69 6a >..<tr>..<td>Dij
f750: 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e 53 68 kstra</td><td>Sh
f760: 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 74 64 3e ortest Path</td>
f770: 3c 74 64 3e 46 75 6c 6c 3c 2f 74 64 3e 3c 74 64 <td>Full</td><td
f780: 3e 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 2c 20 >, [dec=44,
f790: 68 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 64 3e hex=2c]</td>
f7a0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
f7b0: 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">0</td><td alig
f7c0: 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
f7d0: 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
f7e0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
f7f0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
f800: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
f810: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 38 38 32 n="right">183882
f820: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
f830: 72 69 67 68 74 22 3e 31 35 34 2e 37 35 30 38 33 right">154.75083
f840: 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 9</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: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
f870: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
f880: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
f890: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
f8a0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
f8b0: 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 ght">1</td><td a
f8c0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
f8d0: 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 td><td>Route</td
f8e0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
f8f0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
f900: 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
f910: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 lign="right">184
f920: 30 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 030</td><td alig
f930: 6e 3d 22 72 69 67 68 74 22 3e 31 37 36 2e 33 36 n="right">176.36
f940: 34 37 35 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4755</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 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
f970: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
f980: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
f990: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
f9a0: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
f9b0: 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 "right">2</td><t
f9c0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
f9d0: 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 0</td><td>Route<
f9e0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
f9f0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
fa00: 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
fa10: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
fa20: 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 178754</td><td a
fa30: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
fa40: 2e 36 37 37 30 39 35 3c 2f 74 64 3e 3c 74 64 3e .677095</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 0d 0a 3c 2f 74 72 3e 0d 0a 3c L</td>..</tr>..<
fa70: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
fa80: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
fa90: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
faa0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
fab0: 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 gn="right">3</td
fac0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
fad0: 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 t">0</td><td>Rou
fae0: 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c te</td><td>NULL<
faf0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
fb00: 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
fb10: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
fb20: 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 t">181999</td><t
fb30: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
fb40: 32 36 30 2e 31 33 32 33 35 34 3c 2f 74 64 3e 3c 260.132354</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 0d 0a 3c 2f 74 72 3e NULL</td>..</tr>
fb70: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
fb80: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
fb90: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
fba0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
fbb0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c align="right">4<
fbc0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
fbd0: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
fbe0: 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
fbf0: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
fc00: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
fc10: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
fc20: 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
fc30: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
fc40: 74 22 3e 33 30 30 2e 39 31 32 32 30 38 3c 2f 74 t">300.912208</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 0d 0a 3c 2f td>NULL</td>..</
fc70: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
fc80: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
fc90: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
fca0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
fcb0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
fcc0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 55 6e 72 NULL</td><td>Unr
fcd0: 65 61 63 68 61 62 6c 65 20 4e 6f 64 65 54 6f 3c eachable NodeTo<
fce0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
fcf0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
fd00: 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
fd10: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
fd20: 32 39 30 34 35 38 3c 2f 74 64 3e 3c 74 64 3e 4e 290458</td><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 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
fd60: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
fd70: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
fd80: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
fd90: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
fda0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
fdb0: 74 64 3e 55 6e 72 65 61 63 68 61 62 6c 65 20 4e td>Unreachable N
fdc0: 6f 64 65 54 6f 3c 2f 74 64 3e 3c 74 64 3e 4e 55 odeTo</td><td>NU
fdd0: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
fde0: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c ="right">178731<
fdf0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
fe00: 69 67 68 74 22 3e 31 32 34 36 32 32 3c 2f 74 64 ight">124622</td
fe10: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
fe20: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
fe30: 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
fe40: 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d .</table>..<br>.
fe50: 0a 54 68 65 20 6d 61 70 20 62 65 6c 6f 77 20 67 .The map below g
fe60: 72 61 70 68 69 63 61 6c 6c 79 20 73 68 6f 77 73 raphically shows
fe70: 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 3c 62 the previous <b
fe80: 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 >multi-destinati
fe90: 6f 6e 73 3c 2f 62 3e 20 71 75 65 72 69 65 73 2e ons</b> queries.
fea0: 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 69 6d 67 ..<br><br>..<img
feb0: 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77 77 src="https://ww
fec0: 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 67 61 w.gaia-gis.it/ga
fed0: 69 61 2d 73 69 6e 73 2f 72 6f 75 74 69 6e 67 2d ia-sins/routing-
fee0: 66 69 67 73 2f 72 6f 75 74 69 6e 67 33 2e 6a 70 figs/routing3.jp
fef0: 67 22 20 61 6c 74 3d 22 66 69 67 33 22 3e 0d 0a g" alt="fig3">..
ff00: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 52 65 64 20 73 74 <ul>..<li>Red st
ff10: 61 72 3a 20 74 68 65 20 4f 72 69 67 69 6e 20 4e ar: the Origin N
ff20: 6f 64 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 47 ode.</li>..<li>G
ff30: 72 65 65 6e 20 64 6f 74 73 3a 20 74 68 65 20 44 reen dots: the D
ff40: 65 73 74 69 6e 61 74 69 6f 6e 20 4e 6f 64 65 73 estination Nodes
ff50: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 59 65 6c 6c .</li>..<li>Yell
ff60: 6f 77 20 6c 69 6e 65 73 3a 20 61 6c 6c 20 69 6e ow lines: all in
ff70: 64 69 76 69 64 75 61 6c 20 74 72 61 76 65 6c 20 dividual travel
ff80: 73 6f 6c 75 74 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d solutions.</li>.
ff90: 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 .</ul>..<br>..<t
ffa0: 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 66 able bgcolor="#f
ffb0: 66 62 30 36 30 22 20 63 65 6c 6c 73 70 61 63 69 fb060" cellspaci
ffc0: 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 ng="10" cellpadd
ffd0: 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e ing="6"><tr><td>
ffe0: 0d 0a 3c 68 33 3e 44 61 6e 67 65 72 6f 75 73 20 ..<h3>Dangerous
fff0: 70 69 74 66 61 6c 6c 73 20 72 65 6c 61 74 65 64 pitfalls related
10000 20 74 6f 20 6d 75 6c 74 69 70 6c 65 20 64 65 73 to multiple des
10010 74 69 6e 61 74 69 6f 6e 20 6c 69 73 74 73 3c 2f tination lists</
10020 68 33 3e 0d 0a 53 51 4c 20 73 79 6e 74 61 78 20 h3>..SQL syntax
10030 64 69 72 65 63 74 6c 79 20 61 6c 6c 6f 77 73 20 directly allows
10040 74 6f 20 73 70 65 63 69 66 79 20 6c 69 73 74 73 to specify lists
10050 20 6f 66 20 20 6d 75 6c 74 69 70 6c 65 20 76 61 of multiple va
10060 6c 75 65 73 2c 20 73 6f 20 6d 61 79 20 62 65 20 lues, so may be
10070 79 6f 75 20 61 72 65 20 6e 6f 77 20 77 6f 6e 64 you are now wond
10080 65 72 69 6e 67 20 61 62 6f 75 74 20 77 72 69 74 ering about writ
10090 69 6e 67 20 74 68 65 20 3c 62 3e 6d 75 6c 74 69 ing the <b>multi
100a0 70 6c 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 73 ple destinations
100b0 3c 2f 62 3e 20 71 75 65 72 79 20 74 65 73 74 65 </b> query teste
100c0 64 20 69 6e 20 74 68 65 20 70 72 65 76 69 6f 75 d in the previou
100d0 73 20 65 78 61 6d 70 6c 65 73 20 74 68 69 73 20 s examples this
100e0 77 61 79 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e way:..<verbatim>
100f0 0d 0a 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 ..SELECT Algorit
10100 68 6d 2c 20 52 65 71 75 65 73 74 2c 20 4f 70 74 hm, Request, Opt
10110 69 6f 6e 73 2c 20 44 65 6c 69 6d 69 74 65 72 2c ions, Delimiter,
10120 20 52 6f 75 74 65 49 64 2c 20 52 6f 75 74 65 52 RouteId, RouteR
10130 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f ow, Role, LinkRo
10140 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e wid, NodeFrom, N
10150 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f odeTo, Cost, Geo
10160 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f metry, Name..FRO
10170 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 M byfoot..WHERE
10180 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 NodeFrom = 17873
10190 31 20 41 4e 44 20 4e 6f 64 65 54 6f 20 49 4e 20 1 AND NodeTo IN
101a0 28 31 38 33 32 38 36 2c 20 32 39 30 34 35 38 2c (183286, 290458,
101b0 20 31 38 31 39 39 39 2c 20 31 38 34 30 33 30 2c 181999, 184030,
101c0 20 31 32 34 36 32 32 2c 20 31 38 33 38 38 32 2c 124622, 183882,
101d0 20 31 37 38 37 35 34 29 3b 0d 0a 3c 2f 76 65 72 178754);..</ver
101e0 62 61 74 69 6d 3e 0d 0a 54 68 65 72 65 20 69 73 batim>..There is
101f0 20 61 20 76 65 72 79 20 67 6f 6f 64 20 72 65 61 a very good rea
10200 73 6f 6e 20 64 69 73 63 6f 75 72 61 67 69 6e 67 son discouraging
10210 20 66 72 6f 6d 20 64 6f 69 6e 67 20 73 75 63 68 from doing such
10220 20 61 20 74 68 69 6e 67 2c 20 6c 65 74 27 73 20 a thing, let's
10230 73 65 65 20 77 68 79 2e 3c 62 72 3e 0d 0a 3c 62 see why.<br>..<b
10240 3e 53 51 4c 69 74 65 3c 2f 62 3e 20 77 69 6c 6c >SQLite</b> will
10250 20 70 72 6f 63 65 73 73 20 61 20 72 65 71 75 65 process a reque
10260 73 74 20 77 72 69 74 74 65 6e 20 74 68 69 73 20 st written this
10270 77 61 79 20 62 79 20 72 65 70 65 61 74 65 64 6c way by repeatedl
10280 79 20 63 61 6c 6c 69 6e 67 20 56 69 72 74 75 61 y calling Virtua
10290 6c 52 6f 75 74 69 6e 67 20 70 61 73 73 69 6e 67 lRouting passing
102a0 20 65 61 63 68 20 74 69 6d 65 20 61 20 73 69 6e each time a sin
102b0 67 6c 65 20 44 65 73 74 69 6e 61 74 69 6f 6e 3b gle Destination;
102c0 20 61 6e 64 20 63 6f 6e 73 65 71 75 65 6e 74 6c and consequentl
102d0 79 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 74 y <b>VirtualRout
102e0 69 6e 67 3c 2f 62 3e 20 77 69 6c 6c 20 6e 65 76 ing</b> will nev
102f0 65 72 20 72 65 63 65 69 76 65 20 74 68 65 20 63 er receive the c
10300 72 69 74 69 63 61 6c 20 69 6e 66 6f 72 6d 61 74 ritical informat
10310 69 6f 6e 20 74 68 61 74 20 61 20 73 69 6e 67 6c ion that a singl
10320 65 20 6d 6f 6e 6f 6c 69 74 68 69 63 20 72 65 71 e monolithic req
10330 75 65 73 74 20 77 61 73 20 69 6e 74 65 6e 64 65 uest was intende
10340 64 20 74 6f 20 62 65 20 65 78 65 63 75 74 65 64 d to be executed
10350 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 73 68 6f in a single sho
10360 74 2e 20 53 6f 20 74 68 65 20 72 65 71 75 65 73 t. So the reques
10370 74 20 63 6f 6e 74 65 78 74 20 77 69 6c 6c 20 62 t context will b
10380 65 20 65 61 73 69 6c 79 20 6d 69 73 69 6e 74 65 e easily misinte
10390 72 70 72 65 74 65 64 2c 20 61 6e 64 20 61 6e 79 rpreted, and any
103a0 20 65 78 70 65 63 74 65 64 20 73 70 65 65 64 20 expected speed
103b0 62 65 6e 65 66 69 74 20 77 69 6c 6c 20 62 65 20 benefit will be
103c0 63 6f 6d 70 6c 65 74 65 6c 79 20 66 72 75 73 74 completely frust
103d0 72 61 74 65 64 2e 0d 0a 3c 68 33 3e 42 65 77 61 rated...<h3>Bewa
103e0 72 65 3c 2f 68 33 3e 0d 0a 3c 62 3e 4e 65 76 65 re</h3>..<b>Neve
103f0 72 20 65 76 65 72 3c 2f 62 3e 20 61 74 74 65 6d r ever</b> attem
10400 70 74 20 74 6f 20 64 65 66 69 6e 65 20 61 20 6c pt to define a l
10410 69 73 74 20 6f 66 20 6d 75 6c 74 69 70 6c 65 20 ist of multiple
10420 64 65 73 74 69 6e 61 74 69 6f 6e 73 20 75 73 69 destinations usi
10430 6e 67 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 ng the standard
10440 53 51 4c 20 73 79 6e 74 61 78 20 3c 62 3e 3c 69 SQL syntax <b><i
10450 3e 57 48 45 52 45 20 4e 6f 64 65 54 6f 20 49 4e >WHERE NodeTo IN
10460 20 28 2e 2e 2e 2e 2e 2e 29 3c 2f 69 3e 3c 2f 62 (......)</i></b
10470 3e 2c 20 62 65 63 61 75 73 65 20 74 68 69 73 20 >, because this
10480 77 69 6c 6c 20 63 65 72 74 61 69 6e 6c 79 20 63 will certainly c
10490 61 75 73 65 20 6d 61 6e 79 20 75 6e 65 78 70 65 ause many unexpe
104a0 63 74 65 64 20 74 72 6f 75 62 6c 65 73 2e 3c 62 cted troubles.<b
104b0 72 3e 0d 0a 42 61 64 6c 79 20 66 6f 72 6d 61 74 r>..Badly format
104c0 74 65 64 20 72 65 73 75 6c 74 73 65 74 73 20 77 ted resultsets w
104d0 69 6c 6c 20 62 65 20 74 68 65 6e 20 72 65 74 75 ill be then retu
104e0 72 6e 65 64 2c 20 6d 61 79 20 62 65 20 63 6f 6e rned, may be con
104f0 74 61 69 6e 69 6e 67 20 77 72 6f 6e 67 20 72 65 taining wrong re
10500 73 75 6c 74 73 2e 20 3c 62 3e 59 6f 75 20 61 72 sults. <b>You ar
10510 65 20 77 61 72 6e 65 64 3c 2f 62 3e 2e 3c 62 72 e warned</b>.<br
10520 3e 3c 62 72 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 ><br>..</td></tr
10530 3e 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d ></table>..<br>.
10540 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d .<table bgcolor=
10550 22 23 63 30 66 66 63 30 22 20 63 65 6c 6c 73 70 "#c0ffc0" cellsp
10560 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 acing="10" cellp
10570 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c adding="6"><tr><
10580 74 64 3e 0d 0a 3c 68 33 3e 48 6f 77 20 74 6f 20 td>..<h3>How to
10590 63 6f 72 72 65 63 74 6c 79 20 66 6f 72 6d 61 74 correctly format
105a0 20 6d 75 6c 74 69 70 6c 65 20 64 65 73 74 69 6e multiple destin
105b0 61 74 69 6f 6e 73 20 6c 69 73 74 73 3c 2f 68 33 ations lists</h3
105c0 3e 0d 0a 56 69 72 74 75 61 6c 52 6f 75 74 69 6e >..VirtualRoutin
105d0 67 20 61 6c 77 61 79 73 20 65 78 70 65 63 74 73 g always expects
105e0 20 74 6f 20 72 65 63 65 69 76 65 20 61 20 3c 62 to receive a <b
105f0 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 >multi-destinati
10600 6f 6e 73 3c 2f 62 3e 20 6c 69 73 74 20 61 73 20 ons</b> list as
10610 61 20 3c 62 3e 54 45 58 54 3c 2f 62 3e 20 73 74 a <b>TEXT</b> st
10620 72 69 6e 67 20 63 6f 6e 74 61 69 6e 69 6e 67 20 ring containing
10630 74 69 67 68 74 6c 79 20 70 61 63 6b 65 64 20 76 tightly packed v
10640 61 6c 75 65 73 20 73 65 70 61 72 61 74 65 64 20 alues separated
10650 62 79 20 61 20 63 6f 6e 76 65 6e 74 69 6f 6e 61 by a conventiona
10660 6c 20 3c 62 3e 64 65 6c 69 6d 69 74 65 72 3c 2f l <b>delimiter</
10670 62 3e 20 28 75 73 75 61 6c 6c 79 20 72 65 70 72 b> (usually repr
10680 65 73 65 6e 74 65 64 20 62 79 20 61 20 3c 62 3e esented by a <b>
10690 63 6f 6d 6d 61 3c 2f 62 3e 29 2e 3c 62 72 3e 0d comma</b>).<br>.
106a0 0a 45 78 61 6d 70 6c 65 73 20 6f 66 20 3c 62 3e .Examples of <b>
106b0 77 65 6c 6c 20 66 6f 72 6d 61 74 74 65 64 3c 2f well formatted</
106c0 62 3e 20 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 b> multi-destina
106d0 74 69 6f 6e 73 20 6c 69 73 74 73 3a 0d 0a 3c 76 tions lists:..<v
106e0 65 72 62 61 74 69 6d 3e 0d 0a 27 31 2c 32 2c 33 erbatim>..'1,2,3
106f0 2c 34 2c 35 2c 31 30 2c 31 30 30 2c 31 30 30 30 ,4,5,10,100,1000
10700 2c 31 30 30 30 30 30 27 20 20 20 2d 2d 20 69 6e ,100000' -- in
10710 74 65 67 65 72 20 4e 6f 64 65 20 49 44 73 0d 0a teger Node IDs..
10720 0d 0a 27 41 31 30 30 42 2c 41 31 30 30 46 2c 42 ..'A100B,A100F,B
10730 32 35 30 5a 2c 43 30 31 30 4d 2c 5a 39 39 39 41 250Z,C010M,Z999A
10740 27 20 20 2d 2d 20 61 6c 70 68 61 6e 75 6d 65 72 ' -- alphanumer
10750 69 63 20 4e 6f 64 65 20 43 6f 64 65 73 0d 0a 3c ic Node Codes..<
10760 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 45 78 61 6d /verbatim>..Exam
10770 70 6c 65 73 20 6f 66 20 3c 62 3e 62 61 64 6c 79 ples of <b>badly
10780 20 66 6f 72 6d 61 74 74 65 64 3c 2f 62 3e 20 6d formatted</b> m
10790 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e ulti-destination
107a0 73 20 6c 69 73 74 73 3a 0d 0a 3c 76 65 72 62 61 s lists:..<verba
107b0 74 69 6d 3e 0d 0a 27 20 20 31 2c 20 32 2c 20 33 tim>..' 1, 2, 3
107c0 2c 20 34 20 2c 20 35 20 2c 20 31 30 2c 20 31 30 , 4 , 5 , 10, 10
107d0 30 2c 20 31 30 30 30 2c 20 31 30 30 30 30 30 20 0, 1000, 100000
107e0 20 27 20 20 20 2d 2d 20 69 6e 74 65 67 65 72 20 ' -- integer
107f0 4e 6f 64 65 20 49 44 73 0d 0a 0d 0a 27 20 20 41 Node IDs....' A
10800 31 30 30 42 2c 20 41 31 30 30 46 20 2c 20 42 32 100B, A100F , B2
10810 35 30 5a 20 2c 20 43 30 31 30 4d 2c 20 5a 39 39 50Z , C010M, Z99
10820 39 41 20 20 27 20 20 20 20 20 20 2d 2d 20 61 6c 9A ' -- al
10830 70 68 61 6e 75 6d 65 72 69 63 20 4e 6f 64 65 20 phanumeric Node
10840 43 6f 64 65 73 0d 0a 3c 2f 76 65 72 62 61 74 69 Codes..</verbati
10850 6d 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a m>..<u>Note</u>:
10860 20 61 6c 6c 20 77 68 69 74 65 73 70 61 63 65 73 all whitespaces
10870 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 70 72 65 immediately pre
10880 63 65 64 69 6e 67 20 6f 72 20 66 6f 6c 6c 6f 77 ceding or follow
10890 69 6e 67 20 74 68 65 20 3c 62 3e 64 65 6c 69 6d ing the <b>delim
108a0 69 74 65 72 3c 2f 62 3e 20 77 69 6c 6c 20 62 65 iter</b> will be
108b0 20 63 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 considered to b
108c0 65 20 69 6e 74 65 67 72 61 6c 20 70 61 72 74 20 e integral part
108d0 6f 66 20 74 68 65 20 76 61 6c 75 65 20 69 74 73 of the value its
108e0 65 6c 66 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 77 elf.<br>..This w
108f0 69 6c 6c 20 68 61 76 65 20 6e 6f 20 61 64 76 65 ill have no adve
10900 72 73 65 20 63 6f 6e 73 65 71 75 65 6e 63 65 73 rse consequences
10910 20 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 in the case of
10920 69 6e 74 65 67 65 72 20 76 61 6c 75 65 73 2c 20 integer values,
10930 62 75 74 20 63 61 6e 20 65 61 73 69 6c 79 20 68 but can easily h
10940 61 76 65 20 63 61 74 61 73 74 72 6f 70 68 69 63 ave catastrophic
10950 20 65 66 66 65 63 74 73 20 6f 6e 20 61 6c 70 68 effects on alph
10960 61 6e 75 6d 65 72 69 63 20 76 61 6c 75 65 73 2e anumeric values.
10970 0d 0a 3c 68 33 3e 44 65 66 69 6e 69 6e 67 20 61 ..<h3>Defining a
10980 20 63 75 73 74 6f 6d 20 64 65 6c 69 6d 69 74 65 custom delimite
10990 72 3c 2f 68 33 3e 0d 0a 53 6f 6d 65 74 69 6d 65 r</h3>..Sometime
109a0 73 20 69 74 20 63 6f 75 6c 64 20 62 65 20 75 73 s it could be us
109b0 65 66 75 6c 20 73 65 74 74 69 6e 67 20 75 70 20 eful setting up
109c0 61 20 64 65 6c 69 6d 69 74 65 72 20 64 69 66 66 a delimiter diff
109d0 65 72 65 6e 74 20 66 72 6f 6d 20 3c 62 3e 63 6f erent from <b>co
109e0 6d 6d 61 3c 2f 62 3e 2e 0d 0a 3c 76 65 72 62 61 mma</b>...<verba
109f0 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 tim>..UPDATE byf
10a00 6f 6f 74 20 53 45 54 20 44 65 6c 69 6d 69 74 65 oot SET Delimite
10a10 72 20 3d 20 27 2a 27 3b 0d 0a 0d 0a 53 45 4c 45 r = '*';....SELE
10a20 43 54 20 44 65 6c 69 6d 69 74 65 72 20 46 52 4f CT Delimiter FRO
10a30 4d 20 62 79 66 6f 6f 74 3b 0d 0a 2d 2d 2d 2d 2d M byfoot;..-----
10a40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 2a -------------..*
10a50 20 5b 64 65 63 3d 34 32 2c 20 68 65 78 3d 32 61 [dec=42, hex=2a
10a60 5d 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 20 0d ]..</verbatim> .
10a70 0a 59 6f 75 20 73 69 6d 70 6c 79 20 68 61 76 65 .You simply have
10a80 20 74 6f 20 65 78 65 63 75 74 65 20 61 6e 20 3c to execute an <
10a90 62 3e 55 50 44 41 54 45 3c 2f 62 3e 20 73 74 61 b>UPDATE</b> sta
10aa0 74 65 6d 65 6e 74 20 62 79 20 73 70 65 63 69 66 tement by specif
10ab0 79 69 6e 67 20 74 68 65 20 6e 65 77 20 64 65 6c ying the new del
10ac0 69 6d 69 74 65 72 20 76 61 6c 75 65 2e 3c 62 72 imiter value.<br
10ad0 3e 3c 62 72 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 ><br>..</td></tr
10ae0 3e 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c ></table>..<br><
10af0 62 72 3e 0d 0a 3c 68 72 3e 3c 62 72 3e 0d 0a 3c br>..<hr><br>..<
10b00 68 31 3e 3c 61 20 6e 61 6d 65 3d 22 69 73 6f 63 h1><a name="isoc
10b10 68 72 6f 6e 65 22 3e 36 20 2d 20 53 6f 6c 76 69 hrone">6 - Solvi
10b20 6e 67 20 49 73 6f 63 68 72 6f 6e 65 20 70 72 6f ng Isochrone pro
10b30 62 6c 65 6d 73 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a blems</a></h1>..
10b40 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f <a href="https:/
10b50 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 /en.wikipedia.or
10b60 67 2f 77 69 6b 69 2f 49 73 6f 63 68 72 6f 6e 65 g/wiki/Isochrone
10b70 5f 6d 61 70 22 3e 49 73 6f 63 68 72 6f 6e 65 73 _map">Isochrones
10b80 3c 2f 61 3e 20 61 72 65 20 61 72 65 61 73 20 28 </a> are areas (
10b90 6f 72 20 63 75 72 76 65 73 29 20 63 6f 6e 6e 65 or curves) conne
10ba0 63 74 69 6e 67 20 70 6f 69 6e 74 73 20 61 74 20 cting points at
10bb0 77 68 69 63 68 20 73 6f 6d 65 74 68 69 6e 67 20 which something
10bc0 6f 63 63 75 72 73 20 6f 72 20 61 72 72 69 76 65 occurs or arrive
10bd0 73 20 61 74 20 74 68 65 20 73 61 6d 65 20 74 69 s at the same ti
10be0 6d 65 2e 3c 62 72 3e 0d 0a 49 73 6f 63 68 72 6f me.<br>..Isochro
10bf0 6e 65 73 20 61 72 65 20 75 73 75 61 6c 6c 79 20 nes are usually
10c00 72 65 6c 61 74 65 64 20 74 6f 20 4e 65 74 77 6f related to Netwo
10c10 72 6b 20 41 6e 61 6c 79 73 69 73 20 61 6e 64 20 rk Analysis and
10c20 52 6f 75 74 69 6e 67 20 62 65 63 61 75 73 65 20 Routing because
10c30 74 68 65 79 20 61 6c 6c 6f 77 20 74 6f 20 65 61 they allow to ea
10c40 73 69 6c 79 20 69 64 65 6e 74 69 66 79 20 77 68 sily identify wh
10c50 69 63 68 20 73 70 65 63 69 66 69 63 20 70 6f 72 ich specific por
10c60 74 69 6f 6e 20 6f 66 20 74 68 65 20 4e 65 74 77 tion of the Netw
10c70 6f 72 6b 20 63 61 6e 20 62 65 20 72 65 61 63 68 ork can be reach
10c80 65 64 20 73 74 61 72 74 69 6e 67 20 62 79 20 73 ed starting by s
10c90 6f 6d 65 20 3c 62 3e 6f 72 69 67 69 6e 20 4e 6f ome <b>origin No
10ca0 64 65 3c 2f 62 3e 20 73 70 65 6e 64 69 6e 67 20 de</b> spending
10cb0 6e 6f 20 6d 6f 72 65 20 74 68 61 6e 20 61 20 67 no more than a g
10cc0 69 76 65 6e 20 3c 62 3e 43 6f 73 74 3c 2f 62 3e iven <b>Cost</b>
10cd0 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 41 73 20 79 6f .<br><br>..As yo
10ce0 75 20 68 61 76 65 20 61 6c 72 65 61 64 79 20 73 u have already s
10cf0 65 65 6e 20 61 62 6f 75 74 20 3c 62 3e 6d 75 6c een about <b>mul
10d00 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f ti-destination</
10d10 62 3e 20 71 75 65 72 69 65 73 2c 20 74 68 65 20 b> queries, the
10d20 44 69 6a 6b 73 74 72 61 27 73 20 41 6c 67 6f 72 Dijkstra's Algor
10d30 69 74 68 6d 20 72 6f 62 75 73 74 6c 79 20 65 6e ithm robustly en
10d40 73 75 72 65 73 20 74 68 61 74 20 77 68 65 6e 20 sures that when
10d50 61 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 69 73 a destination is
10d60 20 72 65 61 63 68 65 64 20 61 6c 6c 20 74 68 65 reached all the
10d70 20 64 65 73 74 69 6e 61 74 69 6f 6e 73 20 70 72 destinations pr
10d80 65 73 65 6e 74 69 6e 67 20 61 20 3c 62 3e 6c 65 esenting a <b>le
10d90 73 73 65 72 20 63 6f 73 74 3c 2f 62 3e 20 68 61 sser cost</b> ha
10da0 76 65 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 ve already been
10db0 72 65 61 63 68 65 64 20 69 6e 20 73 6f 6d 65 20 reached in some
10dc0 70 72 65 76 69 6f 75 73 20 73 74 65 70 20 6f 66 previous step of
10dd0 20 74 68 65 20 70 72 6f 63 65 73 73 2e 3c 62 72 the process.<br
10de0 3e 0d 0a 54 68 69 73 20 61 6c 6c 6f 77 73 20 74 >..This allows t
10df0 6f 20 65 66 66 69 63 69 65 6e 74 6c 79 20 73 75 o efficiently su
10e00 70 70 6f 72 74 20 3c 62 3e 49 73 6f 63 68 72 6f pport <b>Isochro
10e10 6e 65 3c 2f 62 3e 20 71 75 65 72 69 65 73 2e 0d ne</b> queries..
10e20 0a 59 6f 75 20 73 69 6d 70 6c 79 20 68 61 76 65 .You simply have
10e30 20 74 6f 20 73 70 65 63 69 66 79 20 61 20 3c 62 to specify a <b
10e40 3e 73 69 6e 67 6c 65 20 6f 72 69 67 69 6e 20 4e >single origin N
10e50 6f 64 65 3c 2f 62 3e 20 61 6e 64 20 61 20 3c 62 ode</b> and a <b
10e60 3e 43 6f 73 74 20 74 68 72 65 73 68 6f 6c 64 3c >Cost threshold<
10e70 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 75 /b>.<br><br>..<u
10e80 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 65 78 65 63 75 >Note</u>: execu
10e90 74 69 6e 67 20 61 6e 20 49 73 6f 63 68 72 6f 6e ting an Isochron
10ea0 65 20 71 75 65 72 79 20 72 65 71 75 69 72 65 73 e query requires
10eb0 20 61 20 3c 62 3e 70 72 6f 63 65 73 73 69 6e 67 a <b>processing
10ec0 20 74 69 6d 65 3c 2f 62 3e 20 74 68 61 74 20 69 time</b> that i
10ed0 73 6e 27 74 20 74 68 65 20 3c 75 3e 73 75 6d 20 sn't the <u>sum
10ee0 6f 66 20 61 6c 6c 20 69 6e 64 69 76 69 64 75 61 of all individua
10ef0 6c 20 74 69 6d 69 6e 67 73 20 66 6f 72 20 65 61 l timings for ea
10f00 63 68 20 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f ch destination</
10f10 75 3e 2c 20 62 75 74 20 73 69 6d 70 6c 79 20 69 u>, but simply i
10f20 73 20 74 68 65 20 3c 75 3e 74 69 6d 65 20 72 65 s the <u>time re
10f30 71 75 69 72 65 64 20 74 6f 20 72 65 61 63 68 20 quired to reach
10f40 74 68 65 20 6d 6f 73 74 20 63 6f 73 74 6c 79 20 the most costly
10f50 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 75 3e 2e destination</u>.
10f60 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e <br>..<verbatim>
10f70 0d 0a 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 ..SELECT Algorit
10f80 68 6d 2c 20 52 65 71 75 65 73 74 2c 20 52 6f 6c hm, Request, Rol
10f90 65 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 e, NodeFrom, Nod
10fa0 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 eTo, Cost, Geome
10fb0 74 72 79 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 try..FROM byfoot
10fc0 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d ..WHERE NodeFrom
10fd0 20 3d 20 31 38 31 39 39 39 20 41 4e 44 20 43 6f = 181999 AND Co
10fe0 73 74 20 3c 3d 20 31 30 30 30 2e 30 3b 0d 0a 3c st <= 1000.0;..<
10ff0 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 6e 20 3c /verbatim>..An <
11000 62 3e 49 73 6f 63 68 72 6f 6e 65 3c 2f 62 3e 20 b>Isochrone</b>
11010 71 75 65 72 79 20 61 73 20 73 75 70 70 6f 72 74 query as support
11020 65 64 20 62 79 20 3c 62 3e 56 69 72 74 75 61 6c ed by <b>Virtual
11030 52 6f 75 74 69 6e 67 3c 2f 62 3e 20 6a 75 73 74 Routing</b> just
11040 20 72 65 71 75 69 72 65 73 20 74 6f 20 73 70 65 requires to spe
11050 63 69 66 79 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 cify:..<ul>..<li
11060 3e 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e ><b>NodeFrom</b>
11070 3a 20 74 68 65 20 3c 62 3e 3c 69 3e 49 44 3c 2f : the <b><i>ID</
11080 69 3e 3c 2f 62 3e 20 6f 72 20 3c 62 3e 3c 69 3e i></b> or <b><i>
11090 43 6f 64 65 3c 2f 69 3e 3c 2f 62 3e 20 75 6e 69 Code</i></b> uni
110a0 71 75 65 6c 79 20 69 64 65 6e 74 69 66 79 69 6e quely identifyin
110b0 67 20 74 68 65 20 3c 62 3e 6f 72 69 67 69 6e 20 g the <b>origin
110c0 4e 6f 64 65 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a Node</b>.</li>..
110d0 3c 6c 69 3e 3c 62 3e 43 6f 73 74 3c 2f 62 3e 3a <li><b>Cost</b>:
110e0 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 3c 62 3e the maximum <b>
110f0 43 6f 73 74 20 74 68 72 65 73 68 6f 6c 64 3c 2f Cost threshold</
11100 62 3e 20 6e 6f 74 20 74 6f 20 62 65 20 65 78 63 b> not to be exc
11110 65 65 64 65 64 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e eeded.<br>..<u>N
11120 6f 74 65 3c 2f 75 3e 3a 20 61 6e 79 20 76 61 6c ote</u>: any val
11130 69 64 20 49 73 6f 63 68 72 6f 6e 65 20 71 75 65 id Isochrone que
11140 72 79 20 3c 62 3e 6d 75 73 74 3c 2f 62 3e 20 6e ry <b>must</b> n
11150 65 63 65 73 73 61 72 69 6c 79 20 73 70 65 63 69 ecessarily speci
11160 66 79 20 61 20 3c 62 3e 3c 3d 3c 2f 62 3e 20 28 fy a <b><=</b> (
11170 3c 75 3e 3c 69 3e 6c 65 73 73 65 72 20 74 68 61 <u><i>lesser tha
11180 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 3c 2f 69 n or equal to</i
11190 3e 3c 2f 75 3e 29 20 63 6f 6d 70 61 72 69 73 6f ></u>) compariso
111a0 6e 20 6f 70 65 72 61 74 6f 72 2e 3c 2f 6c 69 3e n operator.</li>
111b0 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 54 ..</ul>..<br>..T
111c0 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 he following tab
111d0 6c 65 20 73 68 6f 77 73 20 74 68 65 20 72 65 73 le shows the res
111e0 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 ultset returned
111f0 62 79 20 74 68 65 20 61 62 6f 76 65 20 49 73 6f by the above Iso
11200 63 68 72 6f 6e 65 20 71 75 65 72 79 2e 0d 0a 3c chrone query...<
11210 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 br><br>..<table
11220 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c border="1" bgcol
11230 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c or="#ffffcf" cel
11240 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c lspacing="4" cel
11250 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c lpadding="6">..<
11260 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 tr><th bgcolor="
11270 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 #d0d0a0">Algorit
11280 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c hm</th><th bgcol
11290 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 65 71 or="#d0d0a0">Req
112a0 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 uest</th><th bgc
112b0 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
112c0 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f ole</th><th bgco
112d0 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f lor="#d0d0a0">No
112e0 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 deFrom</th><th b
112f0 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
11300 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 >NodeTo</th><th
11310 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
11320 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 ">Cost</th><th b
11330 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
11340 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 2f >Geometry</th></
11350 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 72 3e 0d tr>..<tr>..<tr>.
11360 0a 3c 74 64 3e 44 69 6a 6b 73 74 72 61 3c 2f 74 .<td>Dijkstra</t
11370 64 3e 3c 74 64 3e 49 73 6f 63 68 72 6f 6e 65 3c d><td>Isochrone<
11380 2f 74 64 3e 3c 74 64 3e 53 6f 6c 75 74 69 6f 6e /td><td>Solution
11390 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
113a0 72 69 67 68 74 22 3e 31 38 31 39 39 39 3c 2f 74 right">181999</t
113b0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
113c0 68 74 22 3e 31 37 38 37 31 37 3c 2f 74 64 3e 3c ht">178717</td><
113d0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
113e0 3e 35 37 32 2e 34 35 35 31 34 33 3c 2f 74 64 3e >572.455143</td>
113f0 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 36 30 20 47 <td>BLOB sz=60 G
11400 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 0d 0a 3c 2f EOMETRY</td>..</
11410 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
11420 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
11430 3c 2f 74 64 3e 3c 74 64 3e 53 6f 6c 75 74 69 6f </td><td>Solutio
11440 6e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 n<td align="righ
11450 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 t">181999</td><t
11460 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
11470 31 37 38 37 31 38 3c 2f 74 64 3e 3c 74 64 20 61 178718</td><td a
11480 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 38 37 lign="right">587
11490 2e 33 30 33 37 37 39 3c 2f 74 64 3e 3c 74 64 3e .303779</td><td>
114a0 42 4c 4f 42 20 73 7a 3d 36 30 20 47 45 4f 4d 45 BLOB sz=60 GEOME
114b0 54 52 59 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d TRY</td>..</tr>.
114c0 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e .<tr>..<td align
114d0 3d 22 63 65 6e 74 65 72 22 20 63 6f 6c 73 70 61 ="center" colspa
114e0 6e 3d 22 37 22 3e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e n="7">..........
114f0 2e 2e 2e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ...</td>..</tr>.
11500 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
11510 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
11520 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
11530 74 22 3e 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e t">Solution</td>
11540 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
11550 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 ">181999</td><td
11560 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
11570 38 34 30 33 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 84035</td><td al
11580 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 37 39 2e ign="right">579.
11590 37 38 36 37 32 34 3c 2f 74 64 3e 3c 74 64 3e 42 786724</td><td>B
115a0 4c 4f 42 20 73 7a 3d 36 30 20 47 45 4f 4d 45 54 LOB sz=60 GEOMET
115b0 52 59 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a RY</td>..</tr>..
115c0 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
115d0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
115e0 3c 74 64 3e 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 <td>Solution</td
115f0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
11600 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 t">181999</td><t
11610 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
11620 31 38 34 30 33 36 3c 2f 74 64 3e 3c 74 64 20 61 184036</td><td a
11630 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 34 32 lign="right">642
11640 2e 36 39 31 35 39 37 3c 2f 74 64 3e 3c 74 64 3e .691597</td><td>
11650 42 4c 4f 42 20 73 7a 3d 36 30 20 47 45 4f 4d 45 BLOB sz=60 GEOME
11660 54 52 59 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d TRY</td>..</tr>.
11670 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d .</table>..<br>.
11680 0a 4c 65 74 27 73 20 71 75 69 63 6b 6c 79 20 65 .Let's quickly e
11690 78 61 6d 69 6e 65 20 74 68 65 20 72 65 73 75 6c xamine the resul
116a0 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 tset returned by
116b0 20 74 68 65 20 61 62 6f 76 65 20 3c 62 3e 69 73 the above <b>is
116c0 6f 63 68 72 6f 6e 65 3c 2f 62 3e 20 71 75 65 72 ochrone</b> quer
116d0 79 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 y...<ul>..<li>th
116e0 65 20 3c 62 3e 66 69 72 73 74 20 72 6f 77 3c 2f e <b>first row</
116f0 62 3e 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 b> of the result
11700 73 65 74 20 69 73 20 73 6f 6d 65 77 61 79 20 65 set is someway e
11710 78 63 65 70 74 69 6f 6e 61 6c 2c 20 61 6e 64 20 xceptional, and
11720 69 73 20 74 68 65 20 75 6e 69 71 75 65 20 72 6f is the unique ro
11730 77 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 73 w of the results
11740 65 74 20 70 72 65 73 65 6e 74 69 6e 67 20 3c 62 et presenting <b
11750 3e 4e 4f 54 20 4e 55 4c 4c 3c 2f 62 3e 20 76 61 >NOT NULL</b> va
11760 6c 75 65 73 20 69 6e 20 74 68 65 20 3c 62 3e 41 lues in the <b>A
11770 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 2c 20 3c 62 lgorithm</b>, <b
11780 3e 52 65 71 75 65 73 74 3c 2f 62 3e 2c 20 3c 2f >Request</b>, </
11790 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 28 61 b>Options</b> (a
117a0 6e 64 20 3c 2f 62 3e 44 65 6c 69 6d 69 74 65 72 nd </b>Delimiter
117b0 3c 2f 62 3e 29 20 63 6f 6c 75 6d 6e 73 2e 3c 2f </b>) columns.</
117c0 6c 69 3e 0d 0a 3c 6c 69 3e 61 6c 6c 20 72 6f 77 li>..<li>all row
117d0 73 20 28 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 s (including the
117e0 20 66 69 72 73 74 20 6f 6e 65 29 20 68 61 76 65 first one) have
117f0 20 3c 62 3e 52 6f 6c 65 20 3d 20 53 6f 6c 75 74 <b>Role = Solut
11800 69 6f 6e 3c 2f 62 3e 2c 20 61 6e 64 20 72 65 70 ion</b>, and rep
11810 72 65 73 65 6e 74 20 61 20 73 69 6e 67 6c 65 20 resent a single
11820 63 6f 6e 6e 65 63 74 69 6f 6e 20 62 65 74 77 65 connection betwe
11830 65 6e 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f en <b>NodeFrom</
11840 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f 64 65 54 6f b> and <b>NodeTo
11850 3c 2f 62 3e 2c 20 77 69 74 68 20 74 68 65 20 63 </b>, with the c
11860 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 3c 62 3e orresponding <b>
11870 43 6f 73 74 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a Cost</b>.</li>..
11880 3c 6c 69 3e 74 68 65 20 3c 62 3e 47 65 6f 6d 65 <li>the <b>Geome
11890 74 72 79 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 20 61 try</b> column a
118a0 6c 77 61 79 73 20 63 6f 72 72 65 73 70 6f 6e 64 lways correspond
118b0 73 20 74 6f 20 74 68 65 20 3c 62 3e 32 44 20 50 s to the <b>2D P
118c0 6f 69 6e 74 3c 2f 62 3e 20 77 68 65 72 65 20 3c oint</b> where <
118d0 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 69 73 20 b>NodeTo</b> is
118e0 6c 6f 63 61 74 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c located.</li>..<
118f0 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 3c 75 3e 4e /ul>..<br>..<u>N
11900 6f 74 65 3c 2f 75 3e 3a 20 3c 62 3e 69 73 6f 63 ote</u>: <b>isoc
11910 68 72 6f 6e 65 3c 2f 62 3e 20 71 75 65 72 69 65 hrone</b> querie
11920 73 20 61 72 65 20 6e 6f 74 20 61 66 66 65 63 74 s are not affect
11930 65 64 20 62 79 20 63 6f 6e 66 69 67 75 72 61 62 ed by configurab
11940 6c 65 20 6f 70 74 69 6f 6e 73 2e 0d 0a 3c 62 3e le options...<b>
11950 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 20 77 69 Algorithm</b> wi
11960 6c 6c 20 62 65 20 61 6c 77 61 79 73 20 61 73 73 ll be always ass
11970 75 6d 65 64 20 74 6f 20 62 65 20 3c 62 3e 44 69 umed to be <b>Di
11980 6a 73 6b 74 72 61 3c 2f 62 3e 2c 20 61 6e 64 20 jsktra</b>, and
11990 74 68 65 20 63 75 72 72 65 6e 74 20 3c 62 3e 4f the current <b>O
119a0 70 74 69 6f 6e 73 3c 2f 62 3e 20 73 65 74 74 69 ptions</b> setti
119b0 6e 67 73 20 77 69 6c 6c 20 62 65 20 73 69 6d 70 ngs will be simp
119c0 6c 79 20 69 67 6e 6f 72 65 64 2e 0d 0a 3c 76 65 ly ignored...<ve
119d0 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 rbatim>..SELECT
119e0 53 54 5f 43 6f 6e 63 61 76 65 48 75 6c 6c 28 53 ST_ConcaveHull(S
119f0 54 5f 43 6f 6c 6c 65 63 74 28 47 65 6f 6d 65 74 T_Collect(Geomet
11a00 72 79 29 29 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f ry))..FROM byfoo
11a10 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f t..WHERE NodeFro
11a20 6d 20 3d 20 31 38 31 39 39 39 20 41 4e 44 20 43 m = 181999 AND C
11a30 6f 73 74 20 3c 3d 20 31 30 30 30 2e 30 3b 0d 0a ost <= 1000.0;..
11a40 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 6e 79 </verbatim>..Any
11a50 20 69 73 6f 63 68 72 6f 6e 65 20 71 75 65 72 79 isochrone query
11a60 20 77 69 6c 6c 20 6a 75 73 74 20 72 65 74 75 72 will just retur
11a70 6e 20 61 20 50 6f 69 6e 74 2d 73 65 74 3b 20 69 n a Point-set; i
11a80 66 20 79 6f 75 20 65 76 65 6e 74 75 61 6c 6c 79 f you eventually
11a90 20 77 69 73 68 20 74 6f 20 6f 62 74 61 69 6e 20 wish to obtain
11aa0 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e the correspondin
11ab0 67 20 61 72 65 61 6c 20 72 65 70 72 65 73 65 6e g areal represen
11ac0 74 61 74 69 6f 6e 20 79 6f 75 20 6a 75 73 74 20 tation you just
11ad0 68 61 76 65 20 74 6f 20 63 61 6c 6c 20 3c 62 3e have to call <b>
11ae0 53 54 5f 43 6f 6c 6c 65 63 74 28 29 3c 2f 62 3e ST_Collect()</b>
11af0 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 67 65 74 in order to get
11b00 20 61 20 6d 6f 6e 6f 6c 69 74 68 69 63 20 4d 75 a monolithic Mu
11b10 6c 74 69 50 6f 69 6e 74 2c 20 74 68 65 6e 20 63 ltiPoint, then c
11b20 61 6c 6c 69 6e 67 20 3c 62 3e 53 54 5f 43 6f 6e alling <b>ST_Con
11b30 63 61 76 65 48 75 6c 6c 28 29 3c 2f 62 3e 20 69 caveHull()</b> i
11b40 6e 20 6f 72 64 65 72 20 74 6f 20 67 65 74 20 61 n order to get a
11b50 20 50 6f 6c 79 67 6f 6e 2e 0d 0a 3c 62 72 3e 3c Polygon...<br><
11b60 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 20 6d 61 70 br><br>..The map
11b70 20 62 65 6c 6f 77 20 67 72 61 70 68 69 63 61 6c below graphical
11b80 6c 79 20 73 68 6f 77 73 20 74 68 65 20 70 72 65 ly shows the pre
11b90 76 69 6f 75 73 20 3c 62 3e 69 73 6f 63 68 72 6f vious <b>isochro
11ba0 6e 65 3c 2f 62 3e 20 71 75 65 72 79 2e 0d 0a 3c ne</b> query...<
11bb0 62 72 3e 3c 62 72 3e 0d 0a 3c 69 6d 67 20 73 72 br><br>..<img sr
11bc0 63 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 c="https://www.g
11bd0 61 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d aia-gis.it/gaia-
11be0 73 69 6e 73 2f 72 6f 75 74 69 6e 67 2d 66 69 67 sins/routing-fig
11bf0 73 2f 69 73 6f 63 68 72 6f 6e 65 2e 6a 70 67 22 s/isochrone.jpg"
11c00 20 61 6c 74 3d 22 69 73 6f 63 68 72 6f 6e 65 22 alt="isochrone"
11c10 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 59 65 6c >..<ul>..<li>Yel
11c20 6c 6f 77 20 73 74 61 72 3a 20 74 68 65 20 4f 72 low star: the Or
11c30 69 67 69 6e 20 4e 6f 64 65 2e 3c 2f 6c 69 3e 0d igin Node.</li>.
11c40 0a 3c 6c 69 3e 42 6c 75 65 20 64 6f 74 73 3a 20 .<li>Blue dots:
11c50 61 6c 6c 20 44 65 73 74 69 6e 61 74 69 6f 6e 20 all Destination
11c60 4e 6f 64 65 73 20 77 69 74 68 69 6e 20 74 68 65 Nodes within the
11c70 20 67 69 76 65 6e 20 43 6f 73 74 2e 3c 2f 6c 69 given Cost.</li
11c80 3e 0d 0a 3c 6c 69 3e 57 68 69 74 65 20 6c 69 6e >..<li>White lin
11c90 65 3a 20 74 68 65 20 62 6f 75 6e 64 61 72 79 20 e: the boundary
11ca0 6f 66 20 74 68 65 20 49 73 6f 63 68 72 6f 6e 65 of the Isochrone
11cb0 2e 20 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 . ..<br><br>..<t
11cc0 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 able bgcolor="#c
11cd0 30 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 0ffc0" cellspaci
11ce0 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 ng="10" cellpadd
11cf0 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e ing="6"><tr><td>
11d00 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 75 3e 3c ..<br><br>..<u><
11d10 62 3e 4e 6f 74 65 3c 2f 62 3e 3c 2f 75 3e 3a 20 b>Note</b></u>:
11d20 69 74 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 it this example
11d30 79 6f 75 27 76 65 20 75 73 65 64 20 74 68 65 20 you've used the
11d40 3c 62 3e 62 79 66 6f 6f 74 3c 2f 62 3e 20 4e 65 <b>byfoot</b> Ne
11d50 74 77 6f 72 6b 2c 20 74 68 61 74 20 69 73 20 62 twork, that is b
11d60 61 73 65 64 20 6f 6e 20 3c 62 3e 43 6f 73 74 73 ased on <b>Costs
11d70 3c 2f 62 3e 20 65 78 70 72 65 73 73 65 64 20 69 </b> expressed i
11d80 6e 20 3c 62 3e 6d 65 74 65 72 73 3c 2f 62 3e 20 n <b>meters</b>
11d90 28 67 65 6f 6d 65 74 72 69 63 20 6c 65 6e 67 74 (geometric lengt
11da0 68 20 6f 66 20 65 61 63 68 20 4c 69 6e 6b 29 2e h of each Link).
11db0 3c 62 72 3e 0d 0a 54 68 69 73 20 4e 65 74 77 6f <br>..This Netwo
11dc0 72 6b 20 69 73 20 6d 61 69 6e 6c 79 20 69 6e 74 rk is mainly int
11dd0 65 6e 64 65 64 20 66 6f 72 20 3c 62 3e 70 65 64 ended for <b>ped
11de0 65 73 74 72 69 61 6e 73 3c 2f 62 3e 2c 20 73 6f estrians</b>, so
11df0 20 77 65 20 63 61 6e 20 73 61 66 65 6c 79 20 61 we can safely a
11e00 73 73 75 6d 65 20 61 20 3c 75 3e 3c 69 3e 63 6f ssume a <u><i>co
11e10 6e 73 74 61 6e 74 20 73 70 65 65 64 3c 2f 69 3e nstant speed</i>
11e20 3c 2f 75 3e 20 6f 66 20 61 62 6f 75 74 20 3c 62 </u> of about <b
11e30 3e 34 3c 2f 62 3e 20 74 6f 20 3c 62 3e 36 20 6b >4</b> to <b>6 k
11e40 6d 2f 68 3c 2f 62 3e 2c 20 61 6e 64 20 63 6f 6e m/h</b>, and con
11e50 73 65 71 75 65 6e 74 6c 79 20 74 68 65 20 3c 62 sequently the <b
11e60 3e 49 73 6f 63 68 72 6f 6e 65 3c 2f 62 3e 20 65 >Isochrone</b> e
11e70 66 66 65 63 74 69 76 65 6c 79 20 72 65 73 70 65 ffectively respe
11e80 63 74 73 20 74 68 65 20 3c 75 3e 3c 69 3e 73 61 cts the <u><i>sa
11e90 6d 65 20 74 69 6d 65 3c 2f 69 3e 3c 2f 75 3e 20 me time</i></u>
11ea0 72 65 71 75 69 73 69 74 65 2e 3c 62 72 3e 3c 62 requisite.<br><b
11eb0 72 3e 0d 0a 53 70 65 61 6b 69 6e 67 20 69 6e 20 r>..Speaking in
11ec0 6d 6f 72 65 20 67 65 6e 65 72 61 6c 20 74 65 72 more general ter
11ed0 6d 73 2c 20 61 6e 20 49 73 6f 63 68 72 6f 6e 65 ms, an Isochrone
11ee0 20 63 61 6e 20 62 65 20 69 6e 74 65 6e 64 65 64 can be intended
11ef0 20 61 73 20 61 20 67 65 6e 65 72 69 63 20 73 79 as a generic sy
11f00 6e 6f 6e 79 6d 20 66 6f 72 20 3c 75 3e 3c 69 3e nonym for <u><i>
11f10 73 61 6d 65 20 43 6f 73 74 3c 2f 69 3e 3c 2f 75 same Cost</i></u
11f20 3e 2c 20 65 76 65 6e 20 77 68 65 6e 20 74 68 65 >, even when the
11f30 72 65 20 69 73 20 6e 6f 20 6f 62 76 69 6f 75 73 re is no obvious
11f40 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 77 69 74 68 connection with
11f50 20 3c 62 3e 54 69 6d 65 2e 3c 2f 62 3e 2e 3c 62 <b>Time.</b>.<b
11f60 72 3e 3c 62 72 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 r><br>..</td></t
11f70 72 3e 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 68 72 3e r></table>..<hr>
11f80 3c 62 72 3e 0d 0a 3c 68 31 3e 3c 61 20 6e 61 6d <br>..<h1><a nam
11f90 65 3d 22 74 73 70 22 3e 37 20 2d 20 53 6f 6c 76 e="tsp">7 - Solv
11fa0 69 6e 67 20 54 53 50 20 28 74 72 61 76 65 6c 69 ing TSP (traveli
11fb0 6e 67 20 73 61 6c 65 73 6d 61 6e 29 20 70 72 6f ng salesman) pro
11fc0 62 6c 65 6d 73 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a blems</a></h1>..
11fd0 3c 62 3e 54 53 50 3c 2f 62 3e 20 28 3c 61 20 68 <b>TSP</b> (<a h
11fe0 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e ref="https://en.
11ff0 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 wikipedia.org/wi
12000 6b 69 2f 54 72 61 76 65 6c 6c 69 6e 67 5f 73 61 ki/Travelling_sa
12010 6c 65 73 6d 61 6e 5f 70 72 6f 62 6c 65 6d 22 3e lesman_problem">
12020 54 72 61 76 65 6c 69 6e 67 20 53 61 6c 65 73 6d Traveling Salesm
12030 61 6e 20 50 72 6f 62 6c 65 6d 3c 2f 61 3e 29 20 an Problem</a>)
12040 69 73 20 61 20 77 65 6c 6c 20 6b 6e 6f 77 6e 20 is a well known
12050 4f 70 65 72 61 74 69 6f 6e 73 20 52 65 73 65 61 Operations Resea
12060 72 63 68 20 70 72 6f 62 6c 65 6d 2e 0d 0a 3c 62 rch problem...<b
12070 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 r><br>..<table b
12080 67 63 6f 6c 6f 72 3d 22 23 63 30 66 66 63 30 22 gcolor="#c0ffc0"
12090 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 cellspacing="10
120a0 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 " cellpadding="6
120b0 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e "><tr><td>..<h3>
120c0 54 68 65 20 54 72 61 76 65 6c 69 6e 67 20 53 61 The Traveling Sa
120d0 6c 65 73 6d 61 6e 20 50 72 6f 62 6c 65 6d 3c 2f lesman Problem</
120e0 68 33 3e 0d 0a 3c 62 3e 3c 69 3e 47 69 76 65 6e h3>..<b><i>Given
120f0 20 61 20 6c 69 73 74 20 6f 66 20 63 69 74 69 65 a list of citie
12100 73 20 61 6e 64 20 74 68 65 20 64 69 73 74 61 6e s and the distan
12110 63 65 73 20 62 65 74 77 65 65 6e 20 65 61 63 68 ces between each
12120 20 70 61 69 72 20 6f 66 20 63 69 74 69 65 73 2c pair of cities,
12130 20 77 68 61 74 20 69 73 20 74 68 65 20 73 68 6f what is the sho
12140 72 74 65 73 74 20 70 6f 73 73 69 62 6c 65 20 72 rtest possible r
12150 6f 75 74 65 20 74 68 61 74 20 76 69 73 69 74 73 oute that visits
12160 20 65 61 63 68 20 63 69 74 79 20 61 6e 64 20 72 each city and r
12170 65 74 75 72 6e 73 20 74 6f 20 74 68 65 20 6f 72 eturns to the or
12180 69 67 69 6e 20 63 69 74 79 20 3f 3c 2f 69 3e 3c igin city ?</i><
12190 2f 62 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c /b>..<br><br>..<
121a0 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 6c 65 /td></tr></table
121b0 3e 0d 0a 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 >..<br>..<u>Note
121c0 3a 3c 2f 75 3e 20 74 68 65 20 74 65 72 6d 73 20 :</u> the terms
121d0 3c 69 3e 3c 75 3e 73 61 6c 65 73 6d 61 6e 3c 2f <i><u>salesman</
121e0 75 3e 3c 2f 69 3e 20 61 6e 64 20 3c 69 3e 3c 75 u></i> and <i><u
121f0 3e 63 69 74 79 3c 2f 75 3e 3c 2f 69 3e 20 61 72 >city</u></i> ar
12200 65 20 75 6e 69 76 65 72 73 61 6c 6c 79 20 75 73 e universally us
12210 65 64 20 66 6f 72 20 68 69 73 74 6f 72 69 63 61 ed for historica
12220 6c 20 72 65 61 73 6f 6e 73 2c 20 62 75 74 20 79 l reasons, but y
12230 6f 75 20 73 68 6f 75 6c 64 20 61 76 6f 69 64 20 ou should avoid
12240 74 6f 20 6c 69 74 65 72 61 6c 6c 79 20 69 6e 74 to literally int
12250 65 6e 64 20 62 6f 74 68 20 74 68 65 6d 2e 3c 62 end both them.<b
12260 72 3e 0d 0a 54 68 65 20 74 65 72 6d 20 3c 75 3e r>..The term <u>
12270 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c 2f 69 3e 3c <i>salesman</i><
12280 2f 75 3e 20 69 6e 20 74 68 69 73 20 73 70 65 63 /u> in this spec
12290 69 66 69 63 20 63 6f 6e 74 65 78 74 20 69 6e 74 ific context int
122a0 65 6e 64 73 20 61 6e 79 20 70 6f 73 73 69 62 6c ends any possibl
122b0 65 20 6b 69 6e 64 20 6f 66 20 3c 75 3e 3c 69 3e e kind of <u><i>
122c0 6d 6f 76 69 6e 67 20 61 67 65 6e 74 3c 2f 69 3e moving agent</i>
122d0 3c 2f 75 3e 20 28 70 65 64 65 73 74 72 69 61 6e </u> (pedestrian
122e0 2c 20 76 65 68 69 63 6c 65 2c 20 70 61 73 73 65 , vehicle, passe
122f0 6e 67 65 72 20 6f 72 20 77 68 61 74 65 76 65 72 nger or whatever
12300 20 65 6c 73 65 29 2c 20 65 78 61 63 74 6c 79 20 else), exactly
12310 61 73 20 3c 69 3e 3c 75 3e 63 69 74 79 3c 2f 75 as <i><u>city</u
12320 3e 3c 2f 69 3e 20 73 69 6d 70 6c 79 20 73 74 61 ></i> simply sta
12330 6e 64 73 20 66 6f 72 20 61 6e 79 20 3c 69 3e 3c nds for any <i><
12340 75 3e 67 65 6e 65 72 69 63 20 64 65 73 74 69 6e u>generic destin
12350 61 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 20 6f 6e ation</u></i> on
12360 20 61 20 67 69 76 65 6e 20 4e 65 74 77 6f 72 6b a given Network
12370 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 57 65 20 ...<br><br>..We
12380 63 61 6e 20 63 6f 6e 63 65 70 74 75 61 6c 79 20 can conceptualy
12390 73 70 6c 69 74 20 54 50 53 20 69 6e 20 74 77 6f split TPS in two
123a0 20 68 61 6c 76 65 73 3a 0d 0a 3c 6f 6c 3e 0d 0a halves:..<ol>..
123b0 3c 6c 69 3e 63 6f 6d 70 75 74 69 6e 67 20 61 6c <li>computing al
123c0 6c 20 64 69 73 74 61 6e 63 65 73 20 62 65 74 77 l distances betw
123d0 65 65 6e 20 70 61 69 72 73 20 6f 66 20 3c 69 3e een pairs of <i>
123e0 63 69 74 69 65 73 3c 2f 69 3e 2e 20 54 68 69 73 cities</i>. This
123f0 20 69 73 20 61 20 74 79 70 69 63 61 6c 20 3c 62 is a typical <b
12400 3e 53 68 6f 72 74 65 73 74 50 61 74 68 3c 2f 62 >ShortestPath</b
12410 3e 20 70 72 6f 62 6c 65 6d 2c 20 61 6e 64 20 77 > problem, and w
12420 65 20 63 61 6e 20 64 75 6c 79 20 75 73 65 20 74 e can duly use t
12430 68 65 20 44 69 6a 6b 73 74 72 61 27 73 20 61 6c he Dijkstra's al
12440 67 6f 72 69 74 68 6d 20 66 6f 72 20 74 68 69 73 gorithm for this
12450 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 6e .</li>..<li>then
12460 20 77 65 20 68 61 76 65 20 74 6f 20 63 68 65 63 we have to chec
12470 6b 20 61 6c 6c 20 70 6f 73 73 69 62 6c 65 20 3c k all possible <
12480 62 3e 70 65 72 6d 75 74 61 74 69 6f 6e 73 3c 2f b>permutations</
12490 62 3e 20 2f 20 3c 62 3e 63 6f 6d 62 69 6e 61 74 b> / <b>combinat
124a0 69 6f 6e 73 3c 2f 62 3e 20 73 6f 20 74 6f 20 69 ions</b> so to i
124b0 64 65 6e 74 69 66 79 20 74 68 65 20 6f 70 74 69 dentify the opti
124c0 6d 61 6c 20 54 53 50 20 73 6f 6c 75 74 69 6f 6e mal TSP solution
124d0 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 55 .</li>..</ol>..U
124e0 6e 68 61 70 70 69 6c 79 20 74 68 65 72 65 20 69 nhappily there i
124f0 73 20 61 20 70 72 61 63 74 69 63 61 6c 20 64 69 s a practical di
12500 66 66 69 63 75 6c 74 79 20 69 6e 20 73 75 63 68 fficulty in such
12510 20 61 20 73 74 72 61 69 67 68 74 20 61 70 70 72 a straight appr
12520 6f 61 63 68 3b 20 74 68 65 20 6e 75 6d 62 65 72 oach; the number
12530 20 6f 66 20 63 6f 6d 62 69 6e 61 74 69 6f 6e 73 of combinations
12540 20 77 69 6c 6c 20 67 72 6f 77 20 65 78 74 72 65 will grow extre
12550 6d 65 6c 79 20 66 61 73 74 20 61 73 20 74 68 65 mely fast as the
12560 20 6e 75 6d 62 65 72 20 6f 66 20 3c 62 3e 3c 69 number of <b><i
12570 3e 63 69 74 69 65 73 3c 2f 69 3e 3c 2f 62 3e 20 >cities</i></b>
12580 69 6e 63 72 65 61 73 65 73 2e 3c 62 72 3e 0d 0a increases.<br>..
12590 53 69 6d 70 6c 79 20 63 6f 6d 70 75 74 69 6e 67 Simply computing
125a0 20 74 68 65 20 63 6f 6d 70 6c 65 74 65 20 54 53 the complete TS
125b0 50 20 73 6f 6c 75 74 69 6f 6e 20 66 6f 72 20 61 P solution for a
125c0 62 6f 75 74 20 74 65 6e 20 63 69 74 69 65 73 20 bout ten cities
125d0 77 69 6c 6c 20 72 65 71 75 69 72 65 20 61 20 3c will require a <
125e0 62 3e 76 65 72 79 20 6c 6f 6e 67 20 74 69 6d 65 b>very long time
125f0 3c 2f 62 3e 20 65 76 65 6e 20 75 73 69 6e 67 20 </b> even using
12600 61 20 73 75 70 65 72 63 6f 6d 70 75 74 65 72 2e a supercomputer.
12610 3c 62 72 3e 0d 0a 41 6e 64 20 61 74 74 65 6d 70 <br>..And attemp
12620 74 69 6e 67 20 74 6f 20 63 6f 6d 70 75 74 65 20 ting to compute
12630 61 20 54 53 50 20 73 6f 6c 75 74 69 6f 6e 20 66 a TSP solution f
12640 6f 72 20 61 62 6f 75 74 20 68 75 6e 64 72 65 64 or about hundred
12650 20 63 69 74 69 65 73 20 77 69 6c 6c 20 72 65 71 cities will req
12660 75 69 72 65 20 61 20 3c 62 3e 70 72 61 63 74 69 uire a <b>practi
12670 63 61 6c 6c 79 20 69 6e 66 69 6e 69 74 65 3c 2f cally infinite</
12680 62 3e 20 74 69 6d 65 2e 0d 0a 3c 62 72 3e 3c 62 b> time...<br><b
12690 72 3e 0d 0a 48 6f 77 65 76 65 72 20 73 6f 6c 76 r>..However solv
126a0 69 6e 67 20 54 53 50 20 69 73 20 68 69 67 68 6c ing TSP is highl
126b0 79 20 64 65 73 69 72 61 62 6c 65 20 69 6e 20 6d y desirable in m
126c0 61 6e 79 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 any application
126d0 66 69 65 6c 64 73 3a 20 3c 62 3e 6c 6f 67 69 73 fields: <b>logis
126e0 74 69 63 73 3c 2f 62 3e 20 28 6a 75 73 74 20 74 tics</b> (just t
126f0 68 69 6e 6b 20 61 62 6f 75 74 20 63 6f 75 72 69 hink about couri
12700 65 72 20 63 6f 6d 70 61 6e 69 65 73 20 61 73 20 er companies as
12710 44 48 4c 2c 20 46 65 64 45 58 2c 20 55 50 53 20 DHL, FedEX, UPS
12720 6f 72 20 54 4e 54 29 2c 20 3c 62 3e 66 69 65 6c or TNT), <b>fiel
12730 64 20 6d 61 69 6e 74 65 6e 61 6e 63 65 3c 2f 62 d maintenance</b
12740 3e 20 2f 20 3c 62 3e 61 73 73 69 73 74 61 6e 63 > / <b>assistanc
12750 65 3c 2f 62 3e 2c 20 3c 62 3e 77 61 73 74 65 20 e</b>, <b>waste
12760 63 6f 6c 6c 65 63 74 69 6f 6e 3c 2f 62 3e 2c 20 collection</b>,
12770 3c 62 3e 73 63 68 6f 6f 6c 62 75 73 3c 2f 62 3e <b>schoolbus</b>
12780 20 2f 20 3c 62 3e 73 68 61 72 65 64 20 74 61 78 / <b>shared tax
12790 69 20 73 65 72 76 69 63 65 73 3c 2f 62 3e 20 65 i services</b> e
127a0 74 63 2e 3c 62 72 3e 0d 0a 4d 61 6e 79 20 61 6c tc.<br>..Many al
127b0 67 6f 72 69 74 68 6d 73 20 68 61 76 65 20 62 65 gorithms have be
127c0 65 6e 20 69 6e 76 65 6e 74 65 64 20 64 75 72 69 en invented duri
127d0 6e 67 20 6c 61 73 74 20 64 65 63 61 64 65 73 20 ng last decades
127e0 69 6e 74 65 6e 64 65 64 20 74 6f 20 70 72 6f 64 intended to prod
127f0 75 63 65 20 70 72 61 63 74 69 63 61 6c 20 61 6c uce practical al
12800 74 68 6f 75 67 68 20 61 70 70 72 6f 78 69 6d 61 though approxima
12810 74 65 20 2f 20 69 6d 70 65 72 66 65 63 74 20 54 te / imperfect T
12820 53 50 20 73 6f 6c 75 74 69 6f 6e 73 20 69 6e 20 SP solutions in
12830 61 20 72 65 61 73 6f 6e 61 62 6c 79 20 73 68 6f a reasonably sho
12840 72 74 20 74 69 6d 65 2e 0d 0a 4d 61 6e 79 20 6f rt time...Many o
12850 66 20 74 68 65 6d 20 73 74 72 6f 6e 67 6c 79 20 f them strongly
12860 64 65 70 65 6e 64 20 6f 6e 20 3c 61 20 68 72 65 depend on <a hre
12870 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 f="https://en.wi
12880 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 kipedia.org/wiki
12890 2f 48 65 75 72 69 73 74 69 63 22 3e 68 65 75 72 /Heuristic">heur
128a0 69 73 74 69 63 3c 2f 61 3e 20 61 6e 64 20 2f 20 istic</a> and /
128b0 6f 72 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 or <a href="http
128c0 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 s://en.wikipedia
128d0 2e 6f 72 67 2f 77 69 6b 69 2f 52 61 6e 64 6f 6d .org/wiki/Random
128e0 6e 65 73 73 22 3e 72 61 6e 64 6f 6d 6e 65 73 73 ness">randomness
128f0 3c 2f 61 3e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d </a>...<br><br>.
12900 0a 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 74 69 .<b>VirtualRouti
12910 6e 67 3c 2f 62 3e 20 73 75 70 70 6f 72 74 73 20 ng</b> supports
12920 74 77 6f 20 64 69 66 66 65 72 65 6e 74 20 54 53 two different TS
12930 50 20 61 6c 67 6f 72 69 74 68 6d 73 3a 0d 0a 3c P algorithms:..<
12940 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 54 53 50 20 ul>..<li><b>TSP
12950 4e 4e 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f NN</b> (<i>aka</
12960 69 3e 20 3c 62 3e 3c 69 3e 4e 65 61 72 65 73 74 i> <b><i>Nearest
12970 20 4e 65 69 67 68 62 6f 75 72 3c 2f 69 3e 3c 2f Neighbour</i></
12980 62 3e 29 3c 62 72 3e 0d 0a 54 68 69 73 20 3c 61 b>)<br>..This <a
12990 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 href="https://e
129a0 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f n.wikipedia.org/
129b0 77 69 6b 69 2f 4e 65 61 72 65 73 74 5f 6e 65 69 wiki/Nearest_nei
129c0 67 68 62 6f 75 72 5f 61 6c 67 6f 72 69 74 68 6d ghbour_algorithm
129d0 22 3e 66 69 72 73 74 20 61 6c 67 6f 72 69 74 68 ">first algorith
129e0 6d 3c 2f 61 3e 20 69 73 20 73 74 72 61 69 67 68 m</a> is straigh
129f0 74 66 6f 72 77 61 72 64 20 73 69 6d 70 6c 65 20 tforward simple
12a00 61 6e 64 20 76 65 72 79 20 66 61 73 74 3b 20 69 and very fast; i
12a10 74 20 63 61 6e 20 65 66 66 65 63 74 69 76 65 6c t can effectivel
12a20 79 20 73 6f 6c 76 65 20 68 75 67 65 20 54 53 50 y solve huge TSP
12a30 20 73 6f 6c 75 74 69 6f 6e 73 20 28 74 68 6f 75 solutions (thou
12a40 73 61 6e 64 20 3c 69 3e 63 69 74 69 65 73 3c 2f sand <i>cities</
12a50 69 3e 20 6f 72 20 65 76 65 6e 20 6d 6f 72 65 29 i> or even more)
12a60 20 69 6e 20 61 20 76 65 72 79 20 73 68 6f 72 74 in a very short
12a70 20 74 69 6d 65 2e 3c 62 72 3e 0d 0a 3c 75 3e 53 time.<br>..<u>S
12a80 68 6f 72 74 20 64 65 73 63 72 69 70 74 69 6f 6e hort description
12a90 3c 2f 75 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 </u>:..<ul>..<li
12aa0 3e 73 74 61 72 74 69 6e 67 20 66 72 6f 6d 20 74 >starting from t
12ab0 68 65 20 3c 75 3e 3c 69 3e 62 61 73 65 20 63 69 he <u><i>base ci
12ac0 74 79 3c 2f 69 3e 3c 2f 75 3e 20 74 68 65 20 3c ty</i></u> the <
12ad0 75 3e 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c 2f 69 u><i>salesman</i
12ae0 3e 3c 2f 75 3e 20 67 6f 65 73 20 74 6f 20 74 68 ></u> goes to th
12af0 65 20 3c 75 3e 3c 69 3e 63 69 74 79 3c 2f 69 3e e <u><i>city</i>
12b00 3c 2f 75 3e 20 70 72 65 73 65 6e 74 69 6e 67 20 </u> presenting
12b10 74 68 65 20 3c 69 3e 3c 75 3e 6c 65 73 73 65 72 the <i><u>lesser
12b20 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 63 6f 73 74 connection cost
12b30 3c 2f 75 3e 3c 2f 69 3e 2e 3c 2f 6c 69 3e 0d 0a </u></i>.</li>..
12b40 3c 6c 69 3e 74 68 65 20 61 6c 72 65 61 64 79 20 <li>the already
12b50 76 69 73 69 74 65 64 20 3c 69 3e 3c 75 3e 63 69 visited <i><u>ci
12b60 74 79 3c 2f 75 3e 3c 2f 69 3e 20 69 73 20 63 61 ty</u></i> is ca
12b70 6e 63 65 6c 6c 65 64 20 66 72 6f 6d 20 74 68 65 ncelled from the
12b80 20 6c 69 73 74 2c 20 61 6e 64 20 74 68 65 6e 20 list, and then
12b90 74 68 65 20 3c 75 3e 3c 69 3e 73 61 6c 65 73 6d the <u><i>salesm
12ba0 61 6e 3c 2f 69 3e 3c 2f 75 3e 20 67 6f 65 73 20 an</i></u> goes
12bb0 74 6f 20 74 68 65 20 6e 65 78 74 20 3c 75 3e 3c to the next <u><
12bc0 69 3e 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e 20 70 i>city</i></u> p
12bd0 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 3c 69 resenting the <i
12be0 3e 3c 75 3e 6c 65 73 73 65 72 20 63 6f 6e 6e 65 ><u>lesser conne
12bf0 63 74 69 6f 6e 20 63 6f 73 74 3c 2f 75 3e 3c 2f ction cost</u></
12c00 69 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 i>.</li>..<li>th
12c10 65 20 63 79 63 6c 65 20 63 6f 6e 74 69 6e 75 65 e cycle continue
12c20 73 20 75 6e 74 69 6c 20 61 6c 6c 20 20 3c 69 3e s until all <i>
12c30 3c 75 3e 63 69 74 69 65 73 3c 2f 75 3e 3c 2f 69 <u>cities</u></i
12c40 3e 20 69 6e 20 74 68 65 20 6c 69 73 74 20 68 61 > in the list ha
12c50 76 65 20 62 65 65 6e 20 76 69 73 69 74 65 64 2e ve been visited.
12c60 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 66 69 6e 61 6c </li>..<li>final
12c70 6c 79 2c 20 74 68 65 20 3c 75 3e 3c 69 3e 73 61 ly, the <u><i>sa
12c80 6c 65 73 6d 61 6e 3c 2f 69 3e 3c 2f 75 3e 20 72 lesman</i></u> r
12c90 65 74 75 72 6e 73 20 74 6f 20 68 69 73 2f 68 65 eturns to his/he
12ca0 72 20 69 6e 69 74 69 61 6c 20 3c 75 3e 3c 69 3e r initial <u><i>
12cb0 62 61 73 65 20 63 69 74 79 3c 2f 69 3e 3c 2f 75 base city</i></u
12cc0 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c ></li>..</ul>..<
12cd0 75 3e 4e 6f 74 65 3c 2f 75 3e 20 69 74 27 73 20 u>Note</u> it's
12ce0 76 65 72 79 20 75 6e 6c 69 6b 65 20 74 68 61 74 very unlike that
12cf0 20 54 53 50 20 4e 4e 20 63 6f 75 6c 64 20 66 69 TSP NN could fi
12d00 6e 64 20 74 68 65 20 3c 62 3e 6f 70 74 69 6d 61 nd the <b>optima
12d10 6c 3c 2f 62 3e 20 73 6f 6c 75 74 69 6f 6e 2c 20 l</b> solution,
12d20 62 75 74 20 69 74 20 63 61 6e 20 71 75 69 63 6b but it can quick
12d30 6c 79 20 66 69 6e 64 20 73 6f 6d 65 20 72 65 61 ly find some rea
12d40 73 6f 6e 61 62 6c 65 20 3c 62 3e 61 70 70 72 6f sonable <b>appro
12d50 78 69 6d 61 74 65 3c 2f 62 3e 20 73 6f 6c 75 74 ximate</b> solut
12d60 69 6f 6e 20 28 3c 69 3e 66 65 77 20 69 73 20 73 ion (<i>few is s
12d70 75 72 65 6c 79 20 62 65 74 74 65 72 20 74 68 61 urely better tha
12d80 6e 20 6e 6f 74 68 69 6e 67 3c 2f 69 3e 29 2e 3c n nothing</i>).<
12d90 62 72 3e 0d 0a 49 6e 20 74 68 65 20 6d 6f 73 74 br>..In the most
12da0 20 75 6e 6c 75 63 6b 79 20 63 61 73 65 20 54 53 unlucky case TS
12db0 50 20 4e 4e 20 63 6f 75 6c 64 20 70 6f 73 73 69 P NN could possi
12dc0 62 6c 79 20 72 65 74 75 72 6e 20 74 68 65 20 3c bly return the <
12dd0 62 3e 77 6f 72 73 74 20 73 6f 6c 75 74 69 6f 6e b>worst solution
12de0 3c 2f 62 3e 2c 20 62 75 74 20 74 68 65 20 73 70 </b>, but the sp
12df0 65 63 69 66 69 63 20 69 6d 70 6c 65 6d 65 6e 74 ecific implement
12e00 61 74 69 6f 6e 20 61 64 6f 70 74 65 64 20 62 79 ation adopted by
12e10 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
12e20 63 68 65 63 6b 73 20 61 67 61 69 6e 73 74 20 74 checks against t
12e30 68 69 73 20 70 6f 73 73 69 62 69 6c 69 74 79 3a his possibility:
12e40 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 65 61 63 68 ..<ul>..<li>each
12e50 20 54 53 50 20 4e 4e 20 69 73 20 61 6c 77 61 79 TSP NN is alway
12e60 73 20 63 6f 6d 70 75 74 65 64 20 74 77 69 63 65 s computed twice
12e70 20 62 79 20 72 61 6e 64 6f 6d 6c 79 20 63 68 6f by randomly cho
12e80 6f 73 69 6e 67 20 61 20 64 69 66 66 65 72 65 6e osing a differen
12e90 74 20 3c 75 3e 3c 69 3e 62 61 73 65 20 63 69 74 t <u><i>base cit
12ea0 79 3c 2f 69 3e 3c 2f 75 3e 20 61 6e 64 20 74 68 y</i></u> and th
12eb0 65 6e 20 6e 6f 72 6d 61 6c 69 7a 69 6e 67 20 74 en normalizing t
12ec0 68 65 20 73 6f 6c 75 74 69 6f 6e 3b 20 74 68 65 he solution; the
12ed0 20 62 65 73 74 20 6f 66 20 74 68 65 20 74 77 6f best of the two
12ee0 20 73 6f 6c 75 74 69 6f 6e 73 20 69 73 20 74 68 solutions is th
12ef0 65 6e 20 72 65 74 75 72 6e 65 64 2e 3c 2f 6c 69 en returned.</li
12f00 3e 0d 0a 3c 6c 69 3e 74 68 69 73 20 73 69 6d 70 >..<li>this simp
12f10 6c 65 20 62 75 74 20 65 66 66 65 63 74 69 76 65 le but effective
12f20 20 70 72 65 63 61 75 74 69 6f 6e 20 72 6f 62 75 precaution robu
12f30 73 74 6c 79 20 65 6e 73 75 72 65 73 20 74 68 61 stly ensures tha
12f40 74 20 74 68 65 20 3c 62 3e 77 6f 72 73 74 20 73 t the <b>worst s
12f50 6f 6c 75 74 69 6f 6e 3c 2f 62 3e 20 77 69 6c 6c olution</b> will
12f60 20 6e 65 76 65 72 20 62 65 20 72 65 74 75 72 6e never be return
12f70 65 64 2c 20 61 6e 64 20 6a 75 73 74 20 69 6d 70 ed, and just imp
12f80 6c 69 65 73 20 61 20 6d 6f 64 65 72 61 74 65 6c lies a moderatel
12f90 79 20 69 6e 63 72 65 61 73 65 64 20 65 78 65 63 y increased exec
12fa0 75 74 69 6f 6e 20 74 69 6d 65 2e 3c 2f 6c 69 3e ution time.</li>
12fb0 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c ..</ul></li>..<l
12fc0 69 3e 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e 20 i><b>TSP GA</b>
12fd0 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 3c (<i>aka</i> <b><
12fe0 69 3e 47 65 6e 65 74 69 63 20 41 6c 67 6f 72 69 i>Genetic Algori
12ff0 74 68 6d 3c 2f 69 3e 3c 2f 62 3e 29 2e 3c 62 72 thm</i></b>).<br
13000 3e 0d 0a 54 68 69 73 20 3c 61 20 68 72 65 66 3d >..This <a href=
13010 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 "https://en.wiki
13020 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 2f 47 pedia.org/wiki/G
13030 65 6e 65 74 69 63 5f 61 6c 67 6f 72 69 74 68 6d enetic_algorithm
13040 22 3e 61 6c 74 65 72 6e 61 74 69 76 65 20 61 6c ">alternative al
13050 67 6f 72 69 74 68 6d 3c 2f 61 3e 20 69 73 20 6d gorithm</a> is m
13060 75 63 68 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 78 uch more complex
13070 20 61 6e 64 20 73 6f 70 68 69 73 74 69 63 61 74 and sophisticat
13080 65 64 2c 20 61 6e 64 20 69 73 20 64 69 72 65 63 ed, and is direc
13090 74 6c 79 20 69 6e 73 70 69 72 65 64 20 62 79 20 tly inspired by
130a0 62 69 6f 6c 6f 67 69 63 61 6c 20 63 6f 6e 63 65 biological conce
130b0 70 74 73 20 73 75 63 68 20 61 73 20 3c 62 3e 73 pts such as <b>s
130c0 65 78 75 61 6c 20 72 65 70 72 6f 64 75 63 74 69 exual reproducti
130d0 6f 6e 3c 2f 62 3e 2c 20 3c 62 3e 67 65 6e 65 74 on</b>, <b>genet
130e0 69 63 20 6d 75 74 61 74 69 6f 6e 73 3c 2f 62 3e ic mutations</b>
130f0 20 61 6e 64 20 3c 62 3e 6e 61 74 75 72 61 6c 20 and <b>natural
13100 73 65 6c 65 63 74 69 6f 6e 3c 2f 62 3e 2e 3c 62 selection</b>.<b
13110 72 3e 0d 0a 3c 75 3e 53 68 6f 72 74 20 64 65 73 r>..<u>Short des
13120 63 72 69 70 74 69 6f 6e 3c 2f 75 3e 3a 0d 0a 3c cription</u>:..<
13130 75 6c 3e 0d 0a 3c 6c 69 3e 61 20 66 69 72 73 74 ul>..<li>a first
13140 20 69 6e 69 74 69 61 6c 20 73 65 74 20 6f 66 20 initial set of
13150 73 6f 6c 75 74 69 6f 6e 73 20 28 3c 69 3e 3c 75 solutions (<i><u
13160 3e 74 68 65 20 70 6f 70 75 6c 61 74 69 6f 6e 3c >the population<
13170 2f 75 3e 3c 2f 69 3e 29 20 69 73 20 63 72 65 61 /u></i>) is crea
13180 74 65 64 20 62 79 20 75 73 69 6e 67 20 54 53 50 ted by using TSP
13190 20 4e 4e 20 61 66 74 65 72 20 72 61 6e 64 6f 6d NN after random
131a0 6c 79 20 63 68 6f 6f 73 69 6e 67 20 74 68 65 20 ly choosing the
131b0 3c 75 3e 3c 69 3e 62 61 73 65 20 63 69 74 79 3c <u><i>base city<
131c0 2f 69 3e 3c 2f 75 3e 20 61 6e 64 20 74 68 65 6e /i></u> and then
131d0 20 6e 6f 72 6d 61 6c 69 7a 69 6e 67 20 65 61 63 normalizing eac
131e0 68 20 73 6f 6c 75 74 69 6f 6e 2e 3c 2f 6c 69 3e h solution.</li>
131f0 0d 0a 3c 6c 69 3e 74 68 65 6e 20 64 75 72 69 6e ..<li>then durin
13200 67 20 65 61 63 68 20 73 74 65 70 20 6f 66 20 74 g each step of t
13210 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6c 6f 6f he execution loo
13220 70 20 28 3c 69 3e 3c 75 3e 67 65 6e 65 72 61 74 p (<i><u>generat
13230 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 29 20 70 61 69 ion</u></i>) pai
13240 72 73 20 6f 66 20 73 6f 6c 75 74 69 6f 6e 73 20 rs of solutions
13250 3c 69 3e 3c 75 3e 73 65 78 75 61 6c 6c 79 20 72 <i><u>sexually r
13260 65 70 72 6f 64 75 63 65 73 3c 2f 69 3e 3c 2f 75 eproduces</i></u
13270 3e 20 67 69 76 69 6e 67 20 62 69 72 74 68 20 74 > giving birth t
13280 6f 20 3c 75 3e 3c 69 3e 63 68 69 6c 64 72 65 6e o <u><i>children
13290 20 73 6f 6c 75 74 69 6f 6e 73 3c 2f 69 3e 3c 2f solutions</i></
132a0 75 3e 3b 20 72 65 70 72 6f 64 75 63 74 69 6f 6e u>; reproduction
132b0 20 69 73 20 73 75 62 6a 65 63 74 20 74 6f 20 3c is subject to <
132c0 75 3e 3c 69 3e 63 68 72 6f 6d 6f 73 6f 6d 65 20 u><i>chromosome
132d0 63 72 6f 73 73 6f 76 65 72 73 3c 2f 69 3e 3c 2f crossovers</i></
132e0 75 3e 20 61 6e 64 20 3c 69 3e 3c 75 3e 72 61 6e u> and <i><u>ran
132f0 64 6f 6d 20 6d 75 74 61 74 69 6f 6e 3c 2f 75 3e dom mutation</u>
13300 3c 2f 69 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e </i>.</li>..<li>
13310 66 6f 72 20 65 61 63 68 20 3c 69 3e 3c 75 3e 67 for each <i><u>g
13320 65 6e 65 72 61 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 eneration</u></i
13330 3e 20 74 68 65 20 3c 69 3e 3c 75 3e 6e 61 74 75 > the <i><u>natu
13340 72 61 6c 20 73 65 6c 65 63 74 69 6f 6e 3c 2f 75 ral selection</u
13350 3e 3c 2f 69 3e 20 65 6c 69 6d 69 6e 61 74 65 73 ></i> eliminates
13360 20 61 6c 6c 20 70 6f 6f 72 6c 79 20 66 69 74 20 all poorly fit
13370 69 6e 64 69 76 69 64 75 61 6c 73 20 66 72 6f 6d individuals from
13380 20 74 68 65 20 3c 75 3e 3c 69 3e 70 6f 70 75 6c the <u><i>popul
13390 61 74 69 6f 6e 3c 2f 69 3e 3c 2f 75 3e 20 61 6e ation</i></u> an
133a0 64 20 63 6f 6e 73 65 71 75 65 6e 74 6c 79 20 6f d consequently o
133b0 6e 6c 79 20 74 68 65 20 62 65 73 74 20 66 69 74 nly the best fit
133c0 20 69 6e 64 69 76 69 64 75 61 6c 73 20 63 61 6e individuals can
133d0 20 66 75 72 74 68 65 72 20 70 72 6f 70 61 67 61 further propaga
133e0 74 65 20 74 68 65 69 72 20 3c 75 3e 3c 69 3e 67 te their <u><i>g
133f0 65 6e 6f 6d 65 3c 2f 69 3e 3c 2f 75 3e 20 74 6f enome</i></u> to
13400 20 74 68 65 20 6e 65 78 74 20 3c 75 3e 3c 69 3e the next <u><i>
13410 67 65 6e 65 72 61 74 69 6f 6e 3c 2f 69 3e 3c 2f generation</i></
13420 75 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 66 u>.</li>..<li>af
13430 74 65 72 20 61 20 63 65 72 74 61 69 6e 20 6e 75 ter a certain nu
13440 6d 62 65 72 20 6f 66 20 3c 69 3e 3c 75 3e 67 65 mber of <i><u>ge
13450 6e 65 72 61 74 69 6f 6e 73 3c 2f 69 3e 3c 2f 75 nerations</i></u
13460 3e 20 28 6c 65 74 27 73 20 73 61 79 20 61 62 6f > (let's say abo
13470 75 74 20 73 6f 6d 65 20 68 75 6e 64 72 65 64 74 ut some hundredt
13480 68 20 69 74 65 72 61 74 69 6f 6e 73 29 20 74 68 h iterations) th
13490 65 20 3c 62 3e 6f 70 74 69 6d 61 6c 20 73 6f 6c e <b>optimal sol
134a0 75 74 69 6f 6e 3c 2f 62 3e 20 28 6f 72 20 61 74 ution</b> (or at
134b0 20 6c 65 61 73 74 20 61 20 3c 62 3e 66 61 69 72 least a <b>fair
134c0 6c 79 20 67 6f 6f 64 20 73 75 62 2d 6f 70 74 69 ly good sub-opti
134d0 6d 61 6c 20 73 6f 6c 75 74 69 6f 6e 3c 2f 62 3e mal solution</b>
134e0 29 20 73 68 6f 75 6c 64 20 66 69 6e 61 6c 6c 79 ) should finally
134f0 20 65 6d 65 72 67 65 2c 20 61 6e 64 20 73 6f 20 emerge, and so
13500 74 68 65 20 6c 6f 6f 70 20 63 61 6e 20 65 78 69 the loop can exi
13510 74 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f t.</li>..</ul></
13520 6c 69 3e 0d 0a 3c 6c 69 3e 3c 75 3e 4e 6f 74 65 li>..<li><u>Note
13530 3c 2f 75 3e 3a 20 54 53 50 20 47 41 20 69 73 20 </u>: TSP GA is
13540 75 73 75 61 6c 6c 79 20 65 78 70 65 63 74 65 64 usually expected
13550 20 74 6f 20 69 64 65 6e 74 69 66 79 20 62 65 74 to identify bet
13560 74 65 72 20 73 6f 6c 75 74 69 6f 6e 73 20 74 68 ter solutions th
13570 61 6e 20 54 53 50 20 4e 4e 20 63 61 6e 20 64 6f an TSP NN can do
13580 2c 20 62 75 74 20 69 74 20 77 69 6c 6c 20 73 75 , but it will su
13590 72 65 6c 79 20 72 65 71 75 69 72 65 20 6d 75 63 rely require muc
135a0 68 20 6d 6f 72 65 20 74 69 6d 65 20 74 6f 20 63 h more time to c
135b0 6f 6d 70 6c 65 74 65 2e 3c 2f 6c 69 3e 20 0d 0a omplete.</li> ..
135c0 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d </ul>..<br><br>.
135d0 0a 4c 65 74 27 73 20 6e 6f 77 20 65 78 61 6d 69 .Let's now exami
135e0 6e 65 20 61 20 70 72 61 63 74 69 63 61 6c 20 65 ne a practical e
135f0 78 61 6d 70 6c 65 20 6f 66 20 54 53 50 20 73 6f xample of TSP so
13600 6c 76 69 6e 67 20 75 73 69 6e 67 20 56 69 72 74 lving using Virt
13610 75 61 6c 52 6f 75 74 69 6e 67 2e 20 0d 0a 3c 76 ualRouting. ..<v
13620 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 erbatim>..UPDATE
13630 20 62 79 66 6f 6f 74 20 53 45 54 20 52 65 71 75 byfoot SET Requ
13640 65 73 74 20 3d 20 27 54 53 50 27 3b 0d 0a 0d 0a est = 'TSP';....
13650 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d SELECT Algorithm
13660 2c 20 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f , Request, Optio
13670 6e 73 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 ns, Delimiter, R
13680 6f 75 74 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 outeId, RouteRow
13690 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 , Role, LinkRowi
136a0 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 d, NodeFrom, Nod
136b0 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 eTo, Cost, Geome
136c0 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 try, Name..FROM
136d0 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f byfoot..WHERE No
136e0 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 deFrom = 178731
136f0 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 AND NodeTo = '18
13700 33 32 38 36 2c 31 38 31 39 39 39 2c 31 38 34 30 3286,181999,1840
13710 33 30 2c 31 38 33 38 38 32 2c 31 37 38 37 35 34 30,183882,178754
13720 27 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d ';..</verbatim>.
13730 0a 41 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e .A VirtualRoutin
13740 67 20 3c 62 3e 54 53 50 3c 2f 62 3e 20 71 75 65 g <b>TSP</b> que
13750 72 79 20 68 61 73 20 74 68 65 20 73 61 6d 65 20 ry has the same
13760 69 64 65 6e 74 69 63 61 6c 20 66 6f 72 6d 20 6f identical form o
13770 66 20 61 20 3c 62 3e 6d 75 6c 74 69 2d 64 65 73 f a <b>multi-des
13780 74 69 6e 61 74 69 6f 6e 3c 2f 62 3e 20 71 75 65 tination</b> que
13790 72 79 3b 20 74 68 65 20 3c 69 3e 3c 75 3e 62 61 ry; the <i><u>ba
137a0 73 65 20 63 69 74 79 3c 75 3e 3c 2f 69 3e 20 69 se city<u></i> i
137b0 73 20 61 6c 77 61 79 73 20 65 78 70 65 63 74 65 s always expecte
137c0 64 20 74 6f 20 63 6f 72 72 65 73 70 6f 6e 64 20 d to correspond
137d0 74 6f 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f to <b>NodeFrom</
137e0 62 3e 20 61 6e 64 20 61 6c 6c 20 6f 74 68 65 72 b> and all other
137f0 20 3c 69 3e 3c 75 3e 63 69 74 69 65 73 3c 2f 75 <i><u>cities</u
13800 3e 3c 2f 69 3e 20 74 6f 20 62 65 20 76 69 73 69 ></i> to be visi
13810 74 65 64 20 61 72 65 20 65 78 70 65 63 74 65 64 ted are expected
13820 20 74 6f 20 62 65 20 65 6e 75 6d 65 72 61 74 65 to be enumerate
13830 64 20 69 6e 74 6f 20 61 20 3c 62 3e 6d 75 6c 74 d into a <b>mult
13840 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 62 i-destination</b
13850 3e 20 6c 69 73 74 20 61 73 73 69 67 6e 65 64 20 > list assigned
13860 74 6f 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e to <b>NodeTo</b>
13870 2e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 ...<u>Note</u>:
13880 79 6f 75 20 6d 75 73 74 20 65 78 70 6c 69 63 69 you must explici
13890 74 6c 79 20 73 65 74 20 74 68 65 20 63 75 72 72 tly set the curr
138a0 65 6e 74 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f ent <b>Request</
138b0 62 3e 20 61 73 20 3c 62 3e 54 53 50 3c 2f 62 3e b> as <b>TSP</b>
138c0 2c 20 3c 62 3e 54 53 50 20 4e 4e 3c 2f 62 3e 20 , <b>TSP NN</b>
138d0 6f 72 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e or <b>TSP GA</b>
138e0 20 28 54 53 50 20 61 6e 64 20 54 53 50 20 4e 4e (TSP and TSP NN
138f0 20 61 72 65 20 73 79 6e 6f 6e 79 6d 73 29 2e 0d are synonyms)..
13900 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c .<br><br>..<tabl
13910 65 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 e border="1" bgc
13920 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 olor="#ffffcf" c
13930 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 ellspacing="4" c
13940 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d ellpadding="6">.
13950 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 .<tr><th bgcolor
13960 3d 22 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 ="#d0d0a0">Algor
13970 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 ithm</th><th bgc
13980 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
13990 65 71 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 equest</th><th b
139a0 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
139b0 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 >Options</th><th
139c0 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
139d0 30 22 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 0">Delimiter</th
139e0 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
139f0 30 64 30 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 0d0a0">RouteId</
13a00 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
13a10 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f #d0d0a0">RouteRo
13a20 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f w</th><th bgcolo
13a30 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 r="#d0d0a0">Role
13a40 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
13a50 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 ="#d0d0a0">LinkR
13a60 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 owid</th><th bgc
13a70 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
13a80 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 odeFrom</th><th
13a90 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
13aa0 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 ">NodeTo</th><th
13ab0 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
13ac0 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 0">Cost</th><th
13ad0 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
13ae0 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c ">Geometry</th><
13af0 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
13b00 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 0a0">Name</th></
13b10 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 tr>..<tr>..<td>D
13b20 69 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e ijkstra</td><td>
13b30 54 53 50 20 4e 4e 3c 2f 74 64 3e 3c 74 64 3e 46 TSP NN</td><td>F
13b40 75 6c 6c 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 23 ull</td><td>, &#
13b50 39 31 3b 64 65 63 3d 34 34 2c 20 68 65 78 3d 32 91;dec=44, hex=2
13b60 63 26 23 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 61 c]</td><td a
13b70 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
13b80 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
13b90 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 54 ght">0</td><td>T
13ba0 53 50 20 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e SP Solution</td>
13bb0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13bc0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
13bd0 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
13be0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
13bf0 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
13c00 3d 22 72 69 67 68 74 22 3e 31 32 35 34 2e 34 33 ="right">1254.43
13c10 33 39 33 33 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 3933</td><td>BLO
13c20 42 20 73 7a 3d 32 30 30 30 20 47 45 4f 4d 45 54 B sz=2000 GEOMET
13c30 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
13c40 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
13c50 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
13c60 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13c70 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
13c80 4c 4c 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 LL<td align="rig
13c90 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">1</td><td al
13ca0 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
13cb0 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
13cc0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13cd0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
13ce0 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
13cf0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 ign="right">1840
13d00 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 30</td><td align
13d10 3d 22 72 69 67 68 74 22 3e 31 37 36 2e 33 36 34 ="right">176.364
13d20 37 35 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 755</td><td>BLOB
13d30 20 73 7a 3d 33 30 34 20 47 45 4f 4d 45 54 52 59 sz=304 GEOMETRY
13d40 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13d50 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
13d60 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
13d70 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
13d80 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
13d90 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
13da0 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 right">2</td><td
13db0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
13dc0 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
13dd0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13de0 68 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c ht">224014</td><
13df0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13e00 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
13e10 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
13e20 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2885</td><td ali
13e30 67 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 gn="right">94.81
13e40 32 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2424</td><td>NUL
13e50 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 L</td><td>VIA PI
13e60 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 ETRO ARETINO</td
13e70 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
13e80 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
13e90 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13ea0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13eb0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
13ec0 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 ign="right">2</t
13ed0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13ee0 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">2</td><td>Li
13ef0 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
13f00 3d 22 72 69 67 68 74 22 3e 32 32 34 38 36 32 3c ="right">224862<
13f10 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13f20 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 ight">182885</td
13f30 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13f40 74 22 3e 31 38 32 30 34 33 3c 2f 74 64 3e 3c 74 t">182043</td><t
13f50 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13f60 33 37 2e 30 39 35 32 38 37 3c 2f 74 64 3e 3c 74 37.095287</td><t
13f70 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
13f80 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f IA MARGARITONE</
13f90 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
13fa0 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
13fb0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
13fc0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
13fd0 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
13fe0 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 "right">2</td><t
13ff0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14000 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 3</td><td>Link</
14010 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
14020 67 68 74 22 3e 32 32 36 30 37 30 3c 2f 74 64 3e ght">226070</td>
14030 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14040 22 3e 31 38 32 30 34 33 3c 2f 74 64 3e 3c 74 64 ">182043</td><td
14050 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
14060 38 34 30 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 84030</td><td al
14070 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 34 2e 34 ign="right">44.4
14080 35 37 30 34 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 57044</td><td>NU
14090 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 50 49 41 5a 5a LL</td><td>PIAZZ
140a0 41 20 53 41 4e 54 27 41 47 4f 53 54 49 4e 4f 3c A SANT'AGOSTINO<
140b0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
140c0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
140d0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
140e0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
140f0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
14100 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
14110 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14120 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
14130 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14140 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14150 68 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 3e 3c ht">184030</td><
14160 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14170 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 >181999</td><td
14180 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 align="right">13
14190 39 2e 31 31 34 39 33 38 3c 2f 74 64 3e 3c 74 64 9.114938</td><td
141a0 3e 42 4c 4f 42 20 73 7a 3d 34 39 36 20 47 45 4f >BLOB sz=496 GEO
141b0 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
141c0 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
141d0 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
141e0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
141f0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14200 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
14210 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
14220 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14230 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
14240 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
14250 3d 22 72 69 67 68 74 22 3e 32 32 36 30 37 31 3c ="right">226071<
14260 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14270 69 67 68 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 ight">184030</td
14280 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14290 74 22 3e 31 38 32 36 32 39 3c 2f 74 64 3e 3c 74 t">182629</td><t
142a0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
142b0 35 35 2e 36 38 39 30 30 39 3c 2f 74 64 3e 3c 74 55.689009</td><t
142c0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
142d0 49 41 20 47 49 55 53 45 50 50 45 20 47 41 52 49 IA GIUSEPPE GARI
142e0 42 41 4c 44 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 BALDI</td>..</tr
142f0 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
14300 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
14310 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
14320 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14330 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
14340 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
14350 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 right">2</td><td
14360 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
14370 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 35 ign="right">2255
14380 31 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 12</td><td align
14390 3d 22 72 69 67 68 74 22 3e 31 38 32 36 32 39 3c ="right">182629<
143a0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
143b0 69 67 68 74 22 3e 31 38 32 39 33 33 3c 2f 74 64 ight">182933</td
143c0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
143d0 74 22 3e 33 34 2e 31 38 34 31 39 34 3c 2f 74 64 t">34.184194</td
143e0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
143f0 64 3e 43 4f 52 53 4f 20 49 54 41 4c 49 41 3c 2f d>CORSO ITALIA</
14400 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
14410 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
14420 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
14430 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
14440 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
14450 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 "right">3</td><t
14460 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14470 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 3</td><td>Link</
14480 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
14490 67 68 74 22 3e 32 32 35 35 31 31 3c 2f 74 64 3e ght">225511</td>
144a0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
144b0 22 3e 31 38 32 39 33 33 3c 2f 74 64 3e 3c 74 64 ">182933</td><td
144c0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
144d0 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 81999</td><td al
144e0 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 39 2e 32 ign="right">49.2
144f0 34 31 37 33 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 41735</td><td>NU
14500 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f LL</td><td>CORSO
14510 20 49 54 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f ITALIA</td>..</
14520 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
14530 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
14540 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14550 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
14560 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14570 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >3</td><td align
14580 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
14590 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 td>Route</td><td
145a0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
145b0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 ign="right">1819
145c0 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 99</td><td align
145d0 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c ="right">183286<
145e0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
145f0 69 67 68 74 22 3e 32 31 37 2e 36 37 32 38 38 35 ight">217.672885
14600 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a </td><td>BLOB sz
14610 3d 36 38 38 20 47 45 4f 4d 45 54 52 59 3c 2f 74 =688 GEOMETRY</t
14620 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
14630 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
14640 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
14650 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
14660 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14670 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14680 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">4</td><td al
14690 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 ign="right">1</t
146a0 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
146b0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
146c0 3e 32 32 32 36 33 35 3c 2f 74 64 3e 3c 74 64 20 >222635</td><td
146d0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
146e0 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1999</td><td ali
146f0 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 gn="right">18199
14700 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 8</td><td align=
14710 22 72 69 67 68 74 22 3e 31 30 31 2e 36 32 39 37 "right">101.6297
14720 35 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 50</td><td>NULL<
14730 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 54 /td><td>CORSO IT
14740 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ALIA</td>..</tr>
14750 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
14760 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14770 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
14780 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
14790 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c align="right">4<
147a0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
147b0 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e ight">2</td><td>
147c0 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
147d0 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 37 38 gn="right">22478
147e0 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
147f0 22 72 69 67 68 74 22 3e 31 38 31 39 39 38 3c 2f "right">181998</
14800 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
14810 67 68 74 22 3e 31 38 33 35 36 30 3c 2f 74 64 3e ght">183560</td>
14820 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14830 22 3e 37 33 2e 37 33 33 35 37 32 3c 2f 74 64 3e ">73.733572</td>
14840 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14850 3e 56 49 41 20 44 45 4c 4c 27 41 4e 46 49 54 45 >VIA DELL'ANFITE
14860 41 54 52 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ATRO</td>..</tr>
14870 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
14880 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14890 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
148a0 74 64 3e 4e 55 4c 4c 3c 74 64 20 61 6c 69 67 6e td>NULL<td align
148b0 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c ="right">4</td><
148c0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
148d0 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >3</td><td>Link<
148e0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
148f0 69 67 68 74 22 3e 32 32 35 38 32 37 3c 2f 74 64 ight">225827</td
14900 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14910 74 22 3e 31 38 33 35 36 30 3c 2f 74 64 3e 3c 74 t">183560</td><t
14920 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14930 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 183286</td><td a
14940 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 32 2e lign="right">42.
14950 33 30 39 35 36 34 3c 2f 74 64 3e 3c 74 64 3e 4e 309564</td><td>N
14960 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
14970 44 45 4c 4c 27 41 4e 46 49 54 45 41 54 52 4f 3c DELL'ANFITEATRO<
14980 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
14990 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
149a0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
149b0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
149c0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
149d0 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c ="right">4</td><
149e0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
149f0 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
14a00 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
14a10 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14a20 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c ht">183286</td><
14a30 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14a40 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 >178754</td><td
14a50 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 37 align="right">37
14a60 38 2e 33 31 33 36 38 34 3c 2f 74 64 3e 3c 74 64 8.313684</td><td
14a70 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f >BLOB sz=272 GEO
14a80 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
14a90 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
14aa0 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
14ab0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
14ac0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14ad0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
14ae0 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 ign="right">5</t
14af0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14b00 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
14b10 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
14b20 3d 22 72 69 67 68 74 22 3e 32 32 34 34 31 34 3c ="right">224414<
14b30 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14b40 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
14b50 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14b60 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
14b70 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14b80 31 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 136.372057</td><
14b90 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
14ba0 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c VIA MARGARITONE<
14bb0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
14bc0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
14bd0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14be0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
14bf0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
14c00 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c ="right">5</td><
14c10 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14c20 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >2</td><td>Link<
14c30 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14c40 69 67 68 74 22 3e 32 31 39 31 37 31 3c 2f 74 64 ight">219171</td
14c50 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14c60 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
14c70 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
14c80 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 178732</td><td a
14c90 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 33 2e lign="right">93.
14ca0 32 38 35 35 33 38 3c 2f 74 64 3e 3c 74 64 3e 4e 285538</td><td>N
14cb0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
14cc0 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 FRANCESCO CRISPI
14cd0 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
14ce0 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
14cf0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
14d00 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
14d10 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
14d20 6e 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e n="right">5</td>
14d30 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14d40 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">3</td><td>Link
14d50 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
14d60 72 69 67 68 74 22 3e 32 31 39 30 35 38 3c 2f 74 right">219058</t
14d70 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14d80 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c ht">178732</td><
14d90 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14da0 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 >178754</td><td
14db0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 align="right">14
14dc0 38 2e 36 35 36 30 38 39 3c 2f 74 64 3e 3c 74 64 8.656089</td><td
14dd0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
14de0 41 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 A FRANCESCO CRIS
14df0 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a PI</td>..</tr>..
14e00 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
14e10 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
14e20 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14e30 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
14e40 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 ign="right">5</t
14e50 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14e60 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
14e70 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
14e80 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
14e90 72 69 67 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 right">178754</t
14ea0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
14eb0 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c ht">183882</td><
14ec0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
14ed0 3e 31 38 38 2e 32 31 36 38 33 31 3c 2f 74 64 3e >188.216831</td>
14ee0 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 34 30 30 20 <td>BLOB sz=400
14ef0 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 GEOMETRY</td><td
14f00 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
14f10 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
14f20 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
14f30 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
14f40 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
14f50 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
14f60 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
14f70 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 right">1</td><td
14f80 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
14f90 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 35 ign="right">2245
14fa0 33 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 38</td><td align
14fb0 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 34 3c ="right">178754<
14fc0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
14fd0 69 67 68 74 22 3e 31 38 31 39 37 32 3c 2f 74 64 ight">181972</td
14fe0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
14ff0 74 22 3e 35 30 2e 39 30 30 36 36 33 3c 2f 74 64 t">50.900663</td
15000 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
15010 64 3e 56 49 41 20 41 4e 54 4f 4e 49 4f 20 47 55 d>VIA ANTONIO GU
15020 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 3e 0d 0a 3c ADAGNOLI</td>..<
15030 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
15040 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
15050 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
15060 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
15070 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
15080 68 74 22 3e 36 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">6</td><td al
15090 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 ign="right">2</t
150a0 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
150b0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
150c0 3e 32 32 34 35 33 37 3c 2f 74 64 3e 3c 74 64 20 >224537</td><td
150d0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
150e0 31 39 37 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1972</td><td ali
150f0 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 30 30 gn="right">18200
15100 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
15110 22 72 69 67 68 74 22 3e 38 36 2e 33 30 31 30 35 "right">86.30105
15120 31 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 1</td><td>NULL</
15130 74 64 3e 3c 74 64 3e 56 49 41 20 44 45 4c 20 4e td><td>VIA DEL N
15140 49 4e 46 45 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 INFEO</td>..</tr
15150 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
15160 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
15170 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
15180 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
15190 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
151a0 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
151b0 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 right">3</td><td
151c0 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
151d0 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 35 ign="right">2255
151e0 32 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 27</td><td align
151f0 3d 22 72 69 67 68 74 22 3e 31 38 32 30 30 30 3c ="right">182000<
15200 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
15210 69 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 ight">183882</td
15220 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
15230 74 22 3e 35 31 2e 30 31 35 31 31 37 3c 2f 74 64 t">51.015117</td
15240 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
15250 64 3e 56 49 41 20 4c 49 43 49 4f 20 4e 45 4e 43 d>VIA LICIO NENC
15260 45 54 54 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ETTI</td>..</tr>
15270 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
15280 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
15290 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
152a0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
152b0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c align="right">6<
152c0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
152d0 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
152e0 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
152f0 4c 4c 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 LL<td align="rig
15300 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c ht">183882</td><
15310 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
15320 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
15330 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 35 align="right">15
15340 34 2e 37 35 30 38 33 39 3c 2f 74 64 3e 3c 74 64 4.750839</td><td
15350 3e 42 4c 4f 42 20 73 7a 3d 32 34 30 20 47 45 4f >BLOB sz=240 GEO
15360 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
15370 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
15380 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
15390 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
153a0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
153b0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
153c0 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 3c 2f 74 ign="right">7</t
153d0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
153e0 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
153f0 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
15400 3d 22 72 69 67 68 74 22 3e 32 32 35 35 32 37 3c ="right">225527<
15410 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
15420 69 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 ight">183882</td
15430 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
15440 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 t">182000</td><t
15450 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
15460 35 31 2e 30 31 35 31 31 37 3c 2f 74 64 3e 3c 74 51.015117</td><t
15470 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
15480 49 41 20 4c 49 43 49 4f 20 4e 45 4e 43 45 54 54 IA LICIO NENCETT
15490 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c I</td>..</tr>..<
154a0 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
154b0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
154c0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
154d0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
154e0 67 6e 3d 22 72 69 67 68 74 22 3e 37 3c 2f 74 64 gn="right">7</td
154f0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
15500 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">2</td><td>Lin
15510 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
15520 22 72 69 67 68 74 22 3e 32 32 32 36 33 36 3c 2f "right">222636</
15530 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
15540 67 68 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 3e ght">182000</td>
15550 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
15560 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 ">178731</td><td
15570 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
15580 30 33 2e 37 33 35 37 32 32 3c 2f 74 64 3e 3c 74 03.735722</td><t
15590 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
155a0 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 4e IA PIETRO ARETIN
155b0 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c O</td>..</tr>..<
155c0 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c /table>..<br>..L
155d0 65 74 27 73 20 6e 6f 77 20 71 75 69 63 6b 6c 79 et's now quickly
155e0 20 65 78 61 6d 69 6e 65 20 74 68 65 20 72 65 73 examine the res
155f0 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 ultset returned
15600 62 79 20 61 6e 79 20 54 53 50 20 71 75 65 72 79 by any TSP query
15610 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 :..<ul>..<li>the
15620 20 67 65 6e 65 72 61 6c 20 6c 61 79 6f 75 74 20 general layout
15630 69 73 20 6d 6f 72 65 20 6f 72 20 6c 65 73 73 20 is more or less
15640 74 68 65 20 73 61 6d 65 20 61 73 20 79 6f 75 27 the same as you'
15650 76 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 ve already seen
15660 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 3c in the case of <
15670 62 3e 53 68 6f 72 74 65 73 74 50 61 74 68 3c 2f b>ShortestPath</
15680 62 3e 20 71 75 65 72 69 65 73 2e 3c 2f 6c 69 3e b> queries.</li>
15690 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 66 69 72 ..<li>the <b>fir
156a0 73 74 20 72 6f 77 3c 2f 62 3e 20 6f 66 20 74 68 st row</b> of th
156b0 65 20 72 65 73 75 6c 74 73 65 74 20 69 73 20 73 e resultset is s
156c0 6f 6d 65 77 61 79 20 65 78 63 65 70 74 69 6f 6e omeway exception
156d0 61 6c 2c 20 61 6e 64 20 69 73 20 74 68 65 20 75 al, and is the u
156e0 6e 69 71 75 65 20 72 6f 77 20 6f 66 20 74 68 65 nique row of the
156f0 20 72 65 73 75 6c 74 73 65 74 20 70 72 65 73 65 resultset prese
15700 6e 74 69 6e 67 20 3c 62 3e 4e 4f 54 20 4e 55 4c nting <b>NOT NUL
15710 4c 3c 2f 62 3e 20 76 61 6c 75 65 73 20 69 6e 20 L</b> values in
15720 74 68 65 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d the <b>Algorithm
15730 3c 2f 62 3e 2c 20 3c 62 3e 52 65 71 75 65 73 74 </b>, <b>Request
15740 3c 2f 62 3e 2c 20 3c 62 3e 4f 70 74 69 6f 6e 73 </b>, <b>Options
15750 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 44 65 6c 69 </b> and <b>Deli
15760 6d 69 74 65 72 3c 2f 62 3e 20 63 6f 6c 75 6d 6e miter</b> column
15770 73 2e 3c 62 72 3e 0d 0a 49 74 20 63 6f 6e 74 61 s.<br>..It conta
15780 69 6e 73 20 74 68 65 20 3c 62 3e 54 53 50 20 73 ins the <b>TSP s
15790 6f 6c 75 74 69 6f 6e 3c 2f 62 3e 20 61 73 20 61 olution</b> as a
157a0 20 77 68 6f 6c 65 3a 20 63 6f 6c 75 6d 6e 20 3c whole: column <
157b0 62 3e 43 6f 73 74 3c 2f 62 3e 20 69 73 20 74 68 b>Cost</b> is th
157c0 65 20 3c 75 3e 74 6f 74 61 6c 20 63 6f 73 74 3c e <u>total cost<
157d0 2f 75 3e 20 61 6e 64 20 63 6f 6c 75 6d 6e 20 3c /u> and column <
157e0 62 3e 47 65 6f 6d 65 74 72 79 3c 2f 62 3e 20 69 b>Geometry</b> i
157f0 73 20 74 68 65 20 3c 75 3e 6f 76 65 72 61 6c 6c s the <u>overall
15800 20 73 6f 6c 75 74 69 6f 6e 20 70 61 74 68 3c 2f solution path</
15810 75 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f u>.</li>..<li>co
15820 6c 75 6d 6e 73 20 3c 62 3e 52 6f 75 74 65 49 64 lumns <b>RouteId
15830 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 52 6f 75 74 </b> and <b>Rout
15840 65 52 6f 77 3c 2f 62 3e 20 68 61 76 65 20 74 68 eRow</b> have th
15850 65 20 73 61 6d 65 20 69 6e 74 65 72 70 72 65 74 e same interpret
15860 61 74 69 6f 6e 20 61 73 20 69 6e 20 3c 62 3e 6d ation as in <b>m
15870 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e ulti-destination
15880 20 53 68 6f 72 74 65 73 74 50 61 74 68 3c 2f 62 ShortestPath</b
15890 3e 20 71 75 65 72 69 65 73 2c 20 62 75 74 20 69 > queries, but i
158a0 6e 20 74 68 69 73 20 73 70 65 63 69 66 69 63 20 n this specific
158b0 63 61 73 65 20 65 61 63 68 20 3c 75 3e 3c 69 3e case each <u><i>
158c0 72 6f 75 74 65 3c 2f 69 3e 3c 2f 75 3e 20 63 6f route</i></u> co
158d0 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 61 20 63 rresponds to a c
158e0 6f 6e 6e 65 63 74 69 6f 6e 20 62 65 74 77 65 65 onnection betwee
158f0 6e 20 74 77 6f 20 3c 69 3e 3c 75 3e 63 69 74 69 n two <i><u>citi
15900 65 73 3c 2f 75 3e 3c 2f 69 3e 2e 3c 62 72 3e 0d es</u></i>.<br>.
15910 0a 41 6c 6c 20 3c 69 3e 3c 75 3e 72 6f 75 74 65 .All <i><u>route
15920 73 3c 2f 75 3e 3c 2f 69 3e 20 61 72 65 20 6f 72 s</u></i> are or
15930 64 65 72 20 61 63 63 6f 72 64 69 6e 67 6c 79 20 der accordingly
15940 74 6f 20 74 68 65 20 72 75 6e 6e 69 6e 67 20 73 to the running s
15950 65 71 75 65 6e 63 65 20 6f 66 20 74 68 65 20 54 equence of the T
15960 53 50 20 73 6f 6c 75 74 69 6f 6e 2e 20 3c 62 3e SP solution. <b>
15970 52 6f 75 74 65 49 64 3d 30 3c 2f 62 3e 20 69 64 RouteId=0</b> id
15980 65 6e 74 69 66 69 65 73 20 74 68 65 20 6f 76 65 entifies the ove
15990 72 61 6c 6c 20 54 53 50 20 73 6f 6c 75 74 69 6f rall TSP solutio
159a0 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 62 n.</li>..</ul><b
159b0 72 3e 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 r><br>..<verbati
159c0 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f 6f m>..UPDATE byfoo
159d0 74 20 53 45 54 20 52 65 71 75 65 73 74 20 3d 20 t SET Request =
159e0 27 54 53 50 20 47 41 27 3b 0d 0a 0d 0a 53 45 4c 'TSP GA';....SEL
159f0 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 ECT Algorithm, R
15a00 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c equest, Options,
15a10 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 Delimiter, Rout
15a20 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 eId, RouteRow, R
15a30 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 ole, LinkRowid,
15a40 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f NodeFrom, NodeTo
15a50 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 , Cost, Geometry
15a60 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 , Name..FROM byf
15a70 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 oot..WHERE NodeF
15a80 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
15a90 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 38 NodeTo = '18328
15aa0 36 2c 31 38 31 39 39 39 2c 31 38 34 30 33 30 2c 6,181999,184030,
15ab0 31 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 183882,178754';.
15ac0 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 49 66 .</verbatim>..If
15ad0 20 79 6f 75 20 77 69 73 68 20 74 6f 20 67 65 74 you wish to get
15ae0 20 61 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e a <b>TSP GA</b>
15af0 20 73 6f 6c 75 74 69 6f 6e 20 79 6f 75 20 73 69 solution you si
15b00 6d 70 6c 65 20 68 61 76 65 20 74 6f 20 73 65 74 mple have to set
15b10 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f 62 3e 20 <b>Request</b>
15b20 61 73 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e as <b>TSP GA</b>
15b30 3b 20 61 6e 64 20 79 6f 75 20 63 61 6e 20 73 65 ; and you can se
15b40 74 20 61 67 61 69 6e 20 3c 62 3e 52 65 71 75 65 t again <b>Reque
15b50 73 74 3c 2f 62 3e 20 61 73 20 3c 62 3e 54 53 50 st</b> as <b>TSP
15b60 3c 2f 62 3e 20 6f 72 20 3c 62 3e 54 53 50 20 4e </b> or <b>TSP N
15b70 4e 3c 2f 62 3e 20 74 6f 20 72 65 76 65 72 74 20 N</b> to revert
15b80 62 61 63 6b 20 74 6f 20 74 68 65 20 73 69 6d 70 back to the simp
15b90 6c 65 72 20 2f 20 66 61 73 74 65 72 20 61 6c 67 ler / faster alg
15ba0 6f 72 69 74 68 6d 2e 0d 0a 3c 62 72 3e 0d 0a 41 orithm...<br>..A
15bb0 6c 73 6f 20 69 6e 20 74 68 65 20 63 61 73 65 20 lso in the case
15bc0 6f 66 20 54 53 50 20 79 6f 75 20 63 61 6e 20 65 of TSP you can e
15bd0 76 65 6e 74 75 61 6c 6c 79 20 61 63 74 69 76 61 ventually activa
15be0 74 65 20 74 68 65 20 75 73 75 61 6c 20 3c 62 3e te the usual <b>
15bf0 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 61 6c 72 65 Options</b> alre
15c00 61 64 79 20 65 78 70 6c 61 69 6e 65 64 20 69 6e ady explained in
15c10 20 74 68 65 20 53 68 6f 72 74 65 73 74 50 61 74 the ShortestPat
15c20 68 20 65 78 61 6d 70 6c 65 73 2e 3c 62 72 3e 0d h examples.<br>.
15c30 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 54 53 50 .<u>Note</u>:TSP
15c40 20 70 72 6f 62 6c 65 6d 73 20 77 69 6c 6c 20 61 problems will a
15c50 6c 77 61 79 73 20 69 6d 70 6c 79 20 75 73 69 6e lways imply usin
15c60 67 20 74 68 65 20 3c 62 3e 44 69 6a 6b 73 74 72 g the <b>Dijkstr
15c70 61 27 73 3c 2f 62 3e 20 61 6c 67 6f 72 69 74 68 a's</b> algorith
15c80 6d 2c 20 65 76 65 6e 20 77 68 65 6e 20 74 68 65 m, even when the
15c90 20 61 6c 74 65 72 6e 61 74 69 76 65 20 3c 62 3e alternative <b>
15ca0 41 2a 3c 2f 62 3e 20 61 6c 67 6f 72 69 74 68 6d A*</b> algorithm
15cb0 20 69 73 20 63 75 72 72 65 6e 74 6c 79 20 73 65 is currently se
15cc0 6c 65 63 74 65 64 2e 0d 0a 3c 76 65 72 62 61 74 lected...<verbat
15cd0 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f im>..UPDATE byfo
15ce0 6f 74 20 53 45 54 20 52 65 71 75 65 73 74 20 3d ot SET Request =
15cf0 20 27 54 53 50 27 2c 20 4f 70 74 69 6f 6e 73 20 'TSP', Options
15d00 3d 20 27 4e 4f 20 4c 49 4e 4b 53 27 3b 0d 0a 0d = 'NO LINKS';...
15d10 0a 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 .SELECT Algorith
15d20 6d 2c 20 52 65 71 75 65 73 74 2c 20 4f 70 74 69 m, Request, Opti
15d30 6f 6e 73 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 ons, Delimiter,
15d40 52 6f 75 74 65 49 64 2c 20 52 6f 75 74 65 52 6f RouteId, RouteRo
15d50 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 w, Role, LinkRow
15d60 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f id, NodeFrom, No
15d70 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d deTo, Cost, Geom
15d80 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d etry, Name..FROM
15d90 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e byfoot..WHERE N
15da0 6f 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 odeFrom = 178731
15db0 20 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 27 31 AND NodeTo = '1
15dc0 38 33 32 38 36 2c 31 38 31 39 39 39 2c 31 38 34 83286,181999,184
15dd0 30 33 30 2c 31 38 33 38 38 32 2c 31 37 38 37 35 030,183882,17875
15de0 34 27 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 4';..</verbatim>
15df0 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 ..The following
15e00 74 61 62 6c 65 20 73 68 6f 77 73 20 74 68 65 20 table shows the
15e10 72 65 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e resultset return
15e20 65 64 20 62 79 20 74 68 65 20 73 61 6d 65 20 54 ed by the same T
15e30 53 50 20 71 75 65 72 79 20 75 73 65 64 20 69 6e SP query used in
15e40 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 65 78 the previous ex
15e50 61 6d 70 6c 65 20 61 66 74 65 72 20 65 6e 61 62 ample after enab
15e60 6c 69 6e 67 20 74 68 65 20 3c 62 3e 4e 4f 20 4c ling the <b>NO L
15e70 49 4e 4b 53 3c 2f 62 3e 20 6f 70 74 69 6f 6e 2e INKS</b> option.
15e80 20 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c <br><br>..<tabl
15e90 65 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 e border="1" bgc
15ea0 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 olor="#ffffcf" c
15eb0 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 ellspacing="4" c
15ec0 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d ellpadding="6">.
15ed0 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 .<tr><th bgcolor
15ee0 3d 22 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 ="#d0d0a0">Algor
15ef0 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 ithm</th><th bgc
15f00 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
15f10 65 71 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 equest</th><th b
15f20 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
15f30 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 >Options</th><th
15f40 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
15f50 30 22 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 0">Delimiter</th
15f60 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
15f70 30 64 30 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 0d0a0">RouteId</
15f80 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
15f90 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f #d0d0a0">RouteRo
15fa0 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f w</th><th bgcolo
15fb0 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 r="#d0d0a0">Role
15fc0 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
15fd0 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 ="#d0d0a0">LinkR
15fe0 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 owid</th><th bgc
15ff0 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
16000 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 odeFrom</th><th
16010 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
16020 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 ">NodeTo</th><th
16030 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
16040 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 0">Cost</th><th
16050 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
16060 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c ">Geometry</th><
16070 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
16080 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 0a0">Name</th></
16090 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 tr>..<tr>..<td>D
160a0 69 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e ijkstra</td><td>
160b0 54 53 50 20 4e 4e 3c 2f 74 64 3e 3c 74 64 3e 4e TSP NN</td><td>N
160c0 6f 20 4c 69 6e 6b 73 3c 2f 74 64 3e 3c 74 64 3e o Links</td><td>
160d0 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 2c 20 68 , [dec=44, h
160e0 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 64 3e 3c ex=2c]</td><
160f0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
16100 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >0</td><td align
16110 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
16120 74 64 3e 54 53 50 20 53 6f 6c 75 74 69 6f 6e 3c td>TSP Solution<
16130 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
16140 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
16150 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
16160 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
16170 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
16180 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 32 35 lign="right">125
16190 34 2e 34 33 33 39 33 33 3c 2f 74 64 3e 3c 74 64 4.433933</td><td
161a0 3e 42 4c 4f 42 20 73 7a 3d 32 30 30 30 20 47 45 >BLOB sz=2000 GE
161b0 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e OMETRY</td><td>N
161c0 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
161d0 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
161e0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
161f0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
16200 64 3e 4e 55 4c 4c 3c 74 64 20 61 6c 69 67 6e 3d d>NULL<td align=
16210 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 "right">1</td><t
16220 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
16230 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 0</td><td>Route<
16240 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
16250 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
16260 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
16270 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
16280 31 38 34 30 33 30 3c 2f 74 64 3e 3c 74 64 20 61 184030</td><td a
16290 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 36 lign="right">176
162a0 2e 33 36 34 37 35 35 3c 2f 74 64 3e 3c 74 64 3e .364755</td><td>
162b0 42 4c 4f 42 20 73 7a 3d 33 30 34 20 47 45 4f 4d BLOB sz=304 GEOM
162c0 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c ETRY</td><td>NUL
162d0 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c L</td>..</tr>..<
162e0 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
162f0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
16300 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
16310 4e 55 4c 4c 3c 74 64 20 61 6c 69 67 6e 3d 22 72 NULL<td align="r
16320 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 ight">2</td><td
16330 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
16340 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
16350 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
16360 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
16370 3e 31 38 34 30 33 30 3c 2f 74 64 3e 3c 74 64 20 >184030</td><td
16380 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
16390 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1999</td><td ali
163a0 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 39 2e 31 gn="right">139.1
163b0 31 34 39 33 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 14938</td><td>BL
163c0 4f 42 20 73 7a 3d 34 39 36 20 47 45 4f 4d 45 54 OB sz=496 GEOMET
163d0 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
163e0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
163f0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
16400 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
16410 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
16420 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
16430 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c ="right">3</td><
16440 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
16450 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
16460 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
16470 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
16480 68 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c ht">181999</td><
16490 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
164a0 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 >183286</td><td
164b0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 31 align="right">21
164c0 37 2e 36 37 32 38 38 35 3c 2f 74 64 3e 3c 74 64 7.672885</td><td
164d0 3e 42 4c 4f 42 20 73 7a 3d 36 38 38 20 47 45 4f >BLOB sz=688 GEO
164e0 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
164f0 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
16500 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
16510 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
16520 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
16530 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
16540 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 ign="right">4</t
16550 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
16560 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
16570 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
16580 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
16590 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 right">183286</t
165a0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
165b0 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c ht">178754</td><
165c0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
165d0 3e 33 37 38 2e 33 31 33 36 38 34 3c 2f 74 64 3e >378.313684</td>
165e0 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 <td>BLOB sz=272
165f0 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 GEOMETRY</td><td
16600 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
16610 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
16620 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
16630 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
16640 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
16650 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 align="right">5
16660 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
16670 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 right">0</td><td
16680 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e >Route</td><td>N
16690 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
166a0 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 34 n="right">178754
166b0 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
166c0 72 69 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 right">183882</t
166d0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
166e0 68 74 22 3e 31 38 38 2e 32 31 36 38 33 31 3c 2f ht">188.216831</
166f0 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 34 td><td>BLOB sz=4
16700 30 30 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 00 GEOMETRY</td>
16710 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c <td>NULL</td>..<
16720 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
16730 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
16740 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
16750 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
16760 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
16770 22 3e 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">6</td><td alig
16780 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
16790 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
167a0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
167b0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
167c0 38 38 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 882</td><td alig
167d0 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 n="right">178731
167e0 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
167f0 72 69 67 68 74 22 3e 31 35 34 2e 37 35 30 38 33 right">154.75083
16800 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 9</td><td>BLOB s
16810 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 3c 2f z=240 GEOMETRY</
16820 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
16830 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 ..</tr>..</table
16840 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d >..<br><br><br>.
16850 0a 54 68 65 20 6d 61 70 20 62 65 6c 6f 77 20 67 .The map below g
16860 72 61 70 68 69 63 61 6c 6c 79 20 73 68 6f 77 73 raphically shows
16870 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 3c 62 the previous <b
16880 3e 54 53 50 3c 2f 62 3e 20 71 75 65 72 69 65 73 >TSP</b> queries
16890 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 69 6d ...<br><br>..<im
168a0 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77 g src="https://w
168b0 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 67 ww.gaia-gis.it/g
168c0 61 69 61 2d 73 69 6e 73 2f 72 6f 75 74 69 6e 67 aia-sins/routing
168d0 2d 66 69 67 73 2f 74 73 70 31 2e 6a 70 67 22 20 -figs/tsp1.jpg"
168e0 61 6c 74 3d 22 66 69 67 34 22 3e 0d 0a 3c 75 6c alt="fig4">..<ul
168f0 3e 0d 0a 3c 6c 69 3e 52 65 64 20 73 74 61 72 3a >..<li>Red star:
16900 20 74 68 65 20 3c 75 3e 3c 69 3e 62 61 73 65 2d the <u><i>base-
16910 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e 20 28 66 72 city</i></u> (fr
16920 6f 6d 20 77 68 65 72 65 20 74 68 65 20 3c 75 3e om where the <u>
16930 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c 2f 69 3e 3c <i>salesman</i><
16940 2f 75 3e 29 20 62 65 67 69 6e 73 20 68 69 73 2f /u>) begins his/
16950 68 65 72 20 74 72 69 70 2e 3c 2f 6c 69 3e 0d 0a her trip.</li>..
16960 3c 6c 69 3e 47 72 65 65 6e 20 64 6f 74 73 3a 20 <li>Green dots:
16970 74 68 65 20 3c 75 3e 3c 69 3e 63 69 74 69 65 73 the <u><i>cities
16980 3c 2f 69 3e 3c 2f 75 3e 20 74 6f 20 62 65 20 76 </i></u> to be v
16990 69 73 69 74 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c isited.</li>..<l
169a0 69 3e 59 65 6c 6c 6f 77 20 6c 69 6e 65 3a 20 74 i>Yellow line: t
169b0 68 65 20 54 53 50 20 73 6f 6c 75 74 69 6f 6e 20 he TSP solution
169c0 28 74 68 61 74 20 69 73 20 61 6c 77 61 79 73 20 (that is always
169d0 61 20 63 69 72 63 75 6c 61 72 20 70 61 74 68 29 a circular path)
169e0 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 62 72 .</li>..</ul><br
169f0 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f >..<table bgcolo
16a00 72 3d 22 23 66 66 62 30 36 30 22 20 63 65 6c 6c r="#ffb060" cell
16a10 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c spacing="10" cel
16a20 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 lpadding="6"><tr
16a30 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 57 61 72 6e 69 ><td>..<h3>Warni
16a40 6e 67 3a 20 68 6f 77 20 74 6f 20 63 6f 72 72 65 ng: how to corre
16a50 63 74 6c 79 20 68 61 6e 64 6c 69 6e 67 20 54 53 ctly handling TS
16a60 50 20 72 65 73 75 6c 74 73 65 74 73 20 77 69 74 P resultsets wit
16a70 68 20 73 70 61 74 69 61 6c 69 74 65 5f 67 75 69 h spatialite_gui
16a80 3c 2f 68 33 3e 0d 0a 59 6f 75 20 73 68 6f 75 6c </h3>..You shoul
16a90 64 20 6e 65 76 65 72 20 66 6f 72 67 65 74 20 6f d never forget o
16aa0 72 20 6f 76 65 72 6c 6f 6f 6b 20 74 68 61 74 20 r overlook that
16ab0 62 6f 74 68 20 3c 62 3e 54 53 50 20 4e 4e 3c 2f both <b>TSP NN</
16ac0 62 3e 20 61 6e 64 20 3c 62 3e 54 53 50 20 47 41 b> and <b>TSP GA
16ad0 3c 2f 62 3e 20 61 72 65 20 3c 75 3e 3c 69 3e 68 </b> are <u><i>h
16ae0 65 75 72 69 73 74 69 63 20 61 6c 67 6f 72 69 74 euristic algorit
16af0 68 6d 73 3c 2f 69 3e 3c 2f 75 3e 20 68 65 61 76 hms</i></u> heav
16b00 69 6c 79 20 72 65 6c 79 69 6e 67 20 6f 6e 20 3c ily relying on <
16b10 75 3e 3c 69 3e 72 61 6e 64 6f 6d 3c 69 3e 3c 2f u><i>random<i></
16b20 75 3e 20 63 68 6f 69 63 65 73 2e 3c 62 72 3e 0d u> choices.<br>.
16b30 0a 54 68 69 73 20 63 6f 75 6c 64 20 65 61 73 69 .This could easi
16b40 6c 79 20 68 61 76 65 20 74 68 65 20 70 72 61 63 ly have the prac
16b50 74 69 63 61 6c 20 63 6f 6e 73 65 71 75 65 6e 63 tical consequenc
16b60 65 20 74 68 61 74 20 72 65 73 6f 6c 76 69 6e 67 e that resolving
16b70 20 74 77 69 63 65 20 28 6f 72 20 65 76 65 6e 20 twice (or even
16b80 6d 6f 72 65 20 74 69 6d 65 73 29 20 74 68 65 20 more times) the
16b90 73 61 6d 65 20 69 64 65 6e 74 69 63 61 6c 20 54 same identical T
16ba0 53 50 20 71 75 65 72 79 20 63 6f 75 6c 64 20 65 SP query could e
16bb0 76 65 6e 74 75 61 6c 6c 79 20 72 65 74 75 72 6e ventually return
16bc0 20 64 69 66 66 65 72 65 6e 74 20 72 65 73 75 6c different resul
16bd0 74 73 65 74 73 2e 3c 62 72 3e 0d 0a 54 68 65 72 tsets.<br>..Ther
16be0 65 20 69 73 20 6e 6f 74 68 69 6e 67 20 69 6e 74 e is nothing int
16bf0 72 69 6e 73 69 63 61 6c 6c 79 20 77 72 6f 6e 67 rinsically wrong
16c00 20 69 6e 20 74 68 69 73 2c 20 69 74 20 73 69 6d in this, it sim
16c10 70 6c 79 20 69 73 20 61 20 64 69 72 65 63 74 20 ply is a direct
16c20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 20 75 consequence of u
16c30 73 69 6e 67 20 3c 75 3e 3c 69 3e 72 61 6e 64 6f sing <u><i>rando
16c40 6d 6e 65 73 73 3c 2f 69 3e 3c 2f 75 3e 3b 20 77 mness</i></u>; w
16c50 65 20 61 72 65 20 73 69 6d 70 6c 79 20 62 61 72 e are simply bar
16c60 67 61 69 6e 69 6e 67 20 3c 62 3e 65 78 61 63 74 gaining <b>exact
16c70 6e 65 73 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e ness</b> and <b>
16c80 72 65 70 72 6f 64 75 63 69 62 69 6c 69 74 79 3c reproducibility<
16c90 2f 62 3e 20 66 6f 72 20 3c 62 3e 71 75 69 63 6b /b> for <b>quick
16ca0 6e 65 73 73 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 ness</b>.<br><br
16cb0 3e 0d 0a 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 >..<b>spatialite
16cc0 5f 67 75 69 3c 2f 62 3e 20 6f 6e 20 69 74 73 20 _gui</b> on its
16cd0 6f 77 6e 20 61 64 6f 70 74 73 20 61 20 3c 62 3e own adopts a <b>
16ce0 70 61 67 65 64 20 73 74 72 61 74 65 67 79 3c 2f paged strategy</
16cf0 62 3e 20 77 68 65 6e 20 73 68 6f 77 69 6e 67 20 b> when showing
16d00 68 75 67 65 20 72 65 73 75 6c 74 73 65 74 73 3b huge resultsets;
16d10 20 74 68 69 73 20 72 65 71 75 69 72 65 73 20 72 this requires r
16d20 65 70 65 61 74 69 6e 67 20 61 67 61 69 6e 20 74 epeating again t
16d30 68 65 20 69 6e 69 74 69 61 6c 20 53 51 4c 20 71 he initial SQL q
16d40 75 65 72 79 20 65 61 63 68 20 74 69 6d 65 20 74 uery each time t
16d50 68 61 74 20 61 20 3c 62 3e 6e 65 77 20 70 61 67 hat a <b>new pag
16d60 65 20 6f 66 20 35 30 30 20 72 6f 77 73 3c 2f 62 e of 500 rows</b
16d70 3e 20 68 61 73 20 74 6f 20 62 65 20 73 68 6f 77 > has to be show
16d80 6e 20 6f 6e 20 74 68 65 20 63 75 72 72 65 6e 74 n on the current
16d90 20 77 69 6e 64 6f 77 20 70 61 6e 65 6c 2e 3c 62 window panel.<b
16da0 72 3e 0d 0a 54 68 65 20 74 77 6f 20 74 68 69 6e r>..The two thin
16db0 67 73 20 64 6f 6e 27 74 20 67 6f 20 74 6f 67 65 gs don't go toge
16dc0 74 68 65 72 20 77 65 6c 6c 3b 20 73 6f 20 64 6f ther well; so do
16dd0 6e 27 74 20 62 65 20 73 75 72 70 72 69 73 65 64 n't be surprised
16de0 20 77 68 65 6e 20 65 76 65 6e 74 75 61 6c 6c 79 when eventually
16df0 20 64 69 73 63 6f 76 65 72 69 6e 67 20 74 68 61 discovering tha
16e00 74 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 5f t <b>spatialite_
16e10 67 75 69 3c 2f 62 3e 20 77 69 6c 6c 20 62 65 68 gui</b> will beh
16e20 61 76 65 20 62 69 7a 61 72 72 65 6c 79 20 77 68 ave bizarrely wh
16e30 69 6c 65 20 70 72 65 73 65 6e 74 69 6e 67 20 73 ile presenting s
16e40 6f 6d 65 20 72 65 73 75 6c 74 73 65 74 20 72 65 ome resultset re
16e50 74 75 72 6e 65 64 20 62 79 20 61 20 54 53 50 20 turned by a TSP
16e60 71 75 65 72 79 2e 20 0d 0a 3c 76 65 72 62 61 74 query. ..<verbat
16e70 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f im>..UPDATE byfo
16e80 6f 74 20 53 45 54 20 52 65 71 75 65 73 74 20 3d ot SET Request =
16e90 20 27 54 53 50 27 3b 0d 0a 0d 0a 43 52 45 41 54 'TSP';....CREAT
16ea0 45 20 54 41 42 4c 45 20 6d 79 5f 74 73 70 5f 73 E TABLE my_tsp_s
16eb0 6f 6c 75 74 69 6f 6e 20 41 53 0d 0a 53 45 4c 45 olution AS..SELE
16ec0 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 65 CT Algorithm, Re
16ed0 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c 20 quest, Options,
16ee0 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 65 Delimiter, Route
16ef0 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f Id, RouteRow, Ro
16f00 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e le, LinkRowid, N
16f10 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c odeFrom, NodeTo,
16f20 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c Cost, Geometry,
16f30 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f Name..FROM byfo
16f40 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 ot..WHERE NodeFr
16f50 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 om = 178731 AND
16f60 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 38 36 NodeTo = '183286
16f70 2c 31 38 31 39 39 39 2c 31 38 34 30 33 30 2c 31 ,181999,184030,1
16f80 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 0a 83882,178754';..
16f90 0d 0a 2e 2e 2e 20 20 3c 6e 6f 77 20 71 75 65 72 ..... <now quer
16fa0 79 20 22 6d 79 5f 74 73 70 5f 73 6f 6c 75 74 69 y "my_tsp_soluti
16fb0 6f 6e 22 20 75 73 69 6e 67 20 73 70 61 74 69 61 on" using spatia
16fc0 6c 69 74 65 5f 67 75 69 3e 20 20 2e 2e 2e 0d 0a lite_gui> .....
16fd0 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6d 79 5f ..DROP TABLE my_
16fe0 74 73 70 5f 73 6f 6c 75 74 69 6f 6e 3b 0d 0a 3c tsp_solution;..<
16ff0 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 3c 75 3e 48 /verbatim>..<u>H
17000 69 6e 74 3c 2f 75 3e 3a 20 72 65 73 6f 6c 76 69 int</u>: resolvi
17010 6e 67 20 74 68 69 73 20 70 75 7a 7a 6c 69 6e 67 ng this puzzling
17020 20 69 73 73 75 65 20 69 73 20 68 6f 77 65 76 65 issue is howeve
17030 72 20 62 61 73 69 63 61 6c 6c 79 20 73 69 6d 70 r basically simp
17040 6c 65 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 79 le:..<ol>..<li>y
17050 6f 75 20 73 69 6d 70 6c 79 20 68 61 76 65 20 74 ou simply have t
17060 6f 20 74 61 6b 65 20 61 20 3c 62 3e 73 74 61 74 o take a <b>stat
17070 69 63 20 73 6e 61 70 73 68 6f 74 3c 2f 62 3e 20 ic snapshot</b>
17080 6f 66 20 79 6f 75 72 20 54 53 50 20 72 65 73 75 of your TSP resu
17090 6c 74 73 65 74 20 62 79 20 75 73 69 6e 67 20 74 ltset by using t
170a0 68 65 20 3c 62 3e 43 52 45 41 54 45 20 54 41 42 he <b>CREATE TAB
170b0 4c 45 20 3c 69 3e 6e 61 6d 65 3c 2f 69 3e 20 41 LE <i>name</i> A
170c0 53 20 3c 69 3e 54 53 50 20 71 75 65 72 79 3c 69 S <i>TSP query<i
170d0 3e 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 ></b>.</li>..<li
170e0 3e 74 68 65 6e 20 79 6f 75 20 63 61 6e 20 66 72 >then you can fr
170f0 65 65 6c 79 20 65 78 61 6d 69 6e 65 20 74 68 65 eely examine the
17100 20 61 62 6f 76 65 20 73 6e 61 70 73 68 6f 74 2e above snapshot.
17110 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 6e 64 20 66 </li>..<li>and f
17120 69 6e 61 6c 6c 79 20 79 6f 75 20 63 61 6e 20 64 inally you can d
17130 75 6c 79 20 3c 62 3e 44 52 4f 50 3c 2f 62 3e 20 uly <b>DROP</b>
17140 74 68 65 20 73 6e 61 70 73 68 6f 74 20 6f 6e 63 the snapshot onc
17150 65 20 69 74 27 73 20 6e 6f 20 6c 6f 6e 67 65 72 e it's no longer
17160 20 75 73 65 66 75 6c 2e 3c 2f 6c 69 3e 0d 0a 3c useful.</li>..<
17170 2f 6f 6c 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e /ol>..</td></tr>
17180 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e ..</table>..<br>
17190 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 ..<table bgcolor
171a0 3d 22 23 63 30 66 66 63 30 22 20 63 65 6c 6c 73 ="#c0ffc0" cells
171b0 70 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c 6c pacing="10" cell
171c0 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 3e padding="6"><tr>
171d0 3c 74 64 3e 0d 0a 3c 68 33 3e 4d 6f 72 65 20 61 <td>..<h3>More a
171e0 62 6f 75 74 20 4c 69 6e 65 61 72 20 52 65 66 65 bout Linear Refe
171f0 72 65 6e 63 69 6e 67 20 61 6e 64 20 56 69 72 74 rencing and Virt
17200 75 61 6c 52 6f 75 74 69 6e 67 20 4c 69 6e 65 73 ualRouting Lines
17210 74 72 69 6e 67 73 3c 2f 68 33 3e 20 0d 0a 59 6f trings</h3> ..Yo
17220 75 20 68 61 76 65 20 61 6c 72 65 61 64 79 20 73 u have already s
17230 65 65 6e 20 69 6e 20 61 20 70 72 65 76 69 6f 75 een in a previou
17240 73 20 65 78 61 6d 70 6c 65 20 74 68 61 74 20 61 s example that a
17250 6c 6c 20 4c 49 4e 45 53 54 52 49 4e 47 73 20 63 ll LINESTRINGs c
17260 72 65 61 74 65 64 20 62 79 20 56 69 72 74 75 61 reated by Virtua
17270 6c 52 6f 75 74 69 6e 67 20 73 75 70 70 6f 72 74 lRouting support
17280 20 74 68 65 20 3c 62 3e 4d 3c 2f 62 3e 20 28 3c the <b>M</b> (<
17290 62 3e 3c 69 3e 6d 65 61 73 75 72 65 3c 2f 69 3e b><i>measure</i>
172a0 3c 2f 62 3e 29 20 63 6f 6f 72 64 69 6e 61 74 65 </b>) coordinate
172b0 20 69 6e 74 65 6e 64 65 64 20 61 73 20 61 20 3c intended as a <
172c0 62 3e 70 72 6f 67 72 65 73 73 69 76 65 20 63 6f b>progressive co
172d0 73 74 3c 2f 62 3e 20 66 6f 72 20 65 61 63 68 20 st</b> for each
172e0 76 65 72 74 65 78 2e 20 41 6e 64 20 79 6f 75 20 vertex. And you
172f0 61 6c 72 65 61 64 79 20 6b 6e 6f 77 20 74 68 65 already know the
17300 20 74 68 65 79 20 63 61 6e 20 73 75 70 70 6f 72 they can suppor
17310 74 20 3c 62 3e 3c 69 3e 6c 69 6e 65 61 72 20 72 t <b><i>linear r
17320 65 66 65 72 65 6e 63 69 6e 67 3c 2f 69 3e 3c 2f eferencing</i></
17330 62 3e 20 28 3c 62 3e 4c 52 3c 2f 62 3e 29 20 53 b> (<b>LR</b>) S
17340 51 4c 20 66 75 6e 63 74 69 6f 6e 73 2e 3c 62 72 QL functions.<br
17350 3e 0d 0a 4c 65 74 27 73 20 6e 6f 77 20 67 6f 20 >..Let's now go
17360 69 6e 20 66 75 72 74 68 65 72 20 64 65 70 74 68 in further depth
17370 2e 0d 0a 3c 68 33 3e 54 72 61 6a 65 63 74 6f 72 ...<h3>Trajector
17380 79 20 6f 62 6a 65 63 74 73 3c 2f 68 33 3e 0d 0a y objects</h3>..
17390 41 20 3c 62 3e 54 72 61 6a 65 63 74 6f 72 79 3c A <b>Trajectory<
173a0 2f 62 3e 20 69 73 20 61 6e 79 20 4c 69 6e 65 73 /b> is any Lines
173b0 74 72 69 6e 67 20 73 75 70 70 6f 72 74 69 6e 67 tring supporting
173c0 20 3c 62 3e 4d 20 63 6f 6f 72 64 69 6e 61 74 65 <b>M coordinate
173d0 73 3c 2f 62 3e 20 77 69 74 68 20 61 20 63 6f 6e s</b> with a con
173e0 74 69 6e 75 6f 75 73 6c 79 20 69 6e 63 72 65 61 tinuously increa
173f0 73 69 6e 67 20 74 72 65 6e 64 2e 3c 62 72 3e 0d sing trend.<br>.
17400 0a 49 6e 20 73 69 6d 70 6c 65 72 20 77 6f 72 64 .In simpler word
17410 73 2c 20 74 68 65 20 3c 62 3e 4d 2d 76 61 6c 75 s, the <b>M-valu
17420 65 3c 2f 62 3e 20 6f 66 20 65 61 63 68 20 76 65 e</b> of each ve
17430 72 74 65 78 20 28 65 78 63 65 70 74 20 74 68 65 rtex (except the
17440 20 6c 61 73 74 20 6f 6e 65 29 20 6d 75 73 74 20 last one) must
17450 62 65 20 3c 62 3e 6c 65 73 73 65 72 3c 2f 62 3e be <b>lesser</b>
17460 20 74 68 61 6e 20 74 68 65 20 4d 2d 56 61 6c 75 than the M-Valu
17470 65 20 6f 66 20 74 68 65 20 6e 65 78 74 20 76 65 e of the next ve
17480 72 74 65 78 2e 0d 0a 3c 76 65 72 62 61 74 69 6d rtex...<verbatim
17490 3e 0d 0a 53 45 4c 45 43 54 20 2a 20 46 52 4f 4d >..SELECT * FROM
174a0 20 6d 79 5f 74 73 70 5f 73 6f 6c 75 74 69 6f 6e my_tsp_solution
174b0 20 57 48 45 52 45 20 53 54 5f 49 73 56 61 6c 69 WHERE ST_IsVali
174c0 64 54 72 61 6a 65 63 74 6f 72 79 28 67 65 6f 6d dTrajectory(geom
174d0 65 74 72 79 29 20 3d 20 31 3b 0d 0a 2d 2d 2d 2d etry) = 1;..----
174e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d ---------------.
174f0 0a 31 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d .1..</verbatim>.
17500 0a 41 73 20 79 6f 75 20 63 61 6e 20 65 61 73 69 .As you can easi
17510 6c 79 20 63 68 65 63 6b 20 62 79 20 63 61 6c 6c ly check by call
17520 69 6e 67 20 3c 62 3e 53 54 5f 49 73 56 61 6c 69 ing <b>ST_IsVali
17530 64 54 72 61 6a 65 63 74 6f 72 79 28 29 3c 2f 62 dTrajectory()</b
17540 3e 20 65 76 65 72 79 20 4c 69 6e 65 73 74 72 69 > every Linestri
17550 6e 67 20 63 72 65 61 74 65 64 20 62 79 20 56 69 ng created by Vi
17560 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 69 73 20 rtualRouting is
17570 61 20 3c 62 3e 76 61 6c 69 64 20 54 72 61 6a 65 a <b>valid Traje
17580 63 74 6f 72 79 3c 2f 62 3e 2e 0d 0a 3c 76 65 72 ctory</b>...<ver
17590 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 53 batim>..SELECT S
175a0 54 5f 54 72 61 6a 65 63 74 6f 72 79 49 6e 74 65 T_TrajectoryInte
175b0 72 70 6f 6c 61 74 65 50 6f 69 6e 74 28 47 65 6f rpolatePoint(Geo
175c0 6d 65 74 72 79 2c 20 31 30 30 2e 30 29 0d 0a 46 metry, 100.0)..F
175d0 52 4f 4d 20 6d 79 5f 74 73 70 5f 73 6f 6c 75 74 ROM my_tsp_solut
175e0 69 6f 6e 0d 0a 57 48 45 52 45 20 52 6f 75 74 65 ion..WHERE Route
175f0 49 64 20 3d 20 30 3b 0d 0a 3c 2f 76 65 72 62 61 Id = 0;..</verba
17600 74 69 6d 3e 0d 0a 53 6f 20 79 6f 75 20 6a 75 73 tim>..So you jus
17610 74 20 68 61 76 65 20 74 6f 20 63 61 6c 6c 20 3c t have to call <
17620 62 3e 53 54 5f 54 72 61 6a 65 63 74 6f 72 79 49 b>ST_TrajectoryI
17630 6e 74 65 72 70 6f 6c 61 74 65 50 6f 69 6e 74 28 nterpolatePoint(
17640 29 3c 2f 62 3e 20 69 6e 20 6f 72 64 65 72 20 74 )</b> in order t
17650 6f 20 63 72 65 61 74 65 20 61 20 50 4f 49 4e 54 o create a POINT
17660 20 70 72 65 63 69 73 65 6c 79 20 6c 6f 63 61 74 precisely locat
17670 65 64 20 6f 6e 20 74 68 65 20 4c 69 6e 65 73 74 ed on the Linest
17680 72 69 6e 67 20 61 74 20 74 68 65 20 67 69 76 65 ring at the give
17690 6e 20 3c 62 3e 63 6f 73 74 3c 2f 62 3e 2e 0d 0a n <b>cost</b>...
176a0 3c 62 72 3e 3c 62 72 3e 3c 68 72 3e 3c 62 72 3e <br><br><hr><br>
176b0 3c 62 72 3e 0d 0a 54 68 65 20 73 69 64 65 20 6d <br>..The side m
176c0 61 70 20 67 72 61 70 68 69 63 61 6c 6c 79 20 73 ap graphically s
176d0 68 6f 77 73 20 74 68 65 20 65 73 74 69 6d 61 74 hows the estimat
176e0 65 64 20 70 6f 73 69 74 69 6f 6e 73 20 65 76 65 ed positions eve
176f0 72 79 20 31 30 30 6d 20 61 73 73 75 6d 69 6e 67 ry 100m assuming
17700 20 74 68 65 20 73 61 6d 65 20 70 61 74 68 20 72 the same path r
17710 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 6c eturned by the l
17720 61 74 65 73 74 20 54 53 50 20 71 75 65 72 79 2e atest TSP query.
17730 0d 0a 3c 2f 74 64 3e 3c 74 64 3e 20 20 20 20 20 ..</td><td>
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 20 20 20 20
1fe50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fe60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fe70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1fe80 20 20 0d 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 ..<img src="ht
1fe90 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 tps://www.gaia-g
1fea0 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f is.it/gaia-sins/
1feb0 72 6f 75 74 69 6e 67 2d 66 69 67 73 2f 74 73 70 routing-figs/tsp
1fec0 32 2e 6a 70 67 22 20 61 6c 74 3d 22 66 69 67 35 2.jpg" alt="fig5
1fed0 22 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f ">..</td></tr></
1fee0 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e table>..<br><br>
1fef0 0d 0a 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e ..<hr><br>..<h1>
1ff00 3c 61 20 6e 61 6d 65 3d 22 70 32 70 22 3e 38 20 <a name="p2p">8
1ff10 2d 20 53 6f 6c 76 69 6e 67 20 50 6f 69 6e 74 2d - Solving Point-
1ff20 74 6f 2d 50 6f 69 6e 74 20 70 72 6f 62 6c 65 6d to-Point problem
1ff30 73 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a 41 20 3c 62 s</a></h1>..A <b
1ff40 3e 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 3c >Point-to-Point<
1ff50 2f 62 3e 20 71 75 65 72 79 20 69 73 20 76 65 72 /b> query is ver
1ff60 79 20 73 69 6d 69 6c 61 72 20 74 6f 20 61 20 6d y similar to a m
1ff70 6f 73 74 20 75 73 75 61 6c 20 3c 62 3e 73 69 6e ost usual <b>sin
1ff80 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 6f 6e 20 gle-destination
1ff90 53 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 62 Shortest Path</b
1ffa0 3e 20 71 75 65 72 79 2c 20 65 78 63 65 70 74 20 > query, except
1ffb0 74 68 61 74 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 that:..<ul>..<li
1ffc0 3e 41 20 63 6c 61 73 73 69 63 20 53 68 6f 72 74 >A classic Short
1ffd0 65 73 74 20 50 61 74 68 20 71 75 65 72 79 20 72 est Path query r
1ffe0 65 71 75 69 72 65 73 20 74 6f 20 73 70 65 63 69 equires to speci
1fff0 66 79 20 61 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d fy a <b>NodeFrom
20000 3c 2f 62 3e 20 28 3c 75 3e 3c 69 3e 6f 72 69 67 </b> (<u><i>orig
20010 69 6e 3c 2f 69 3e 3c 2f 75 3e 29 20 61 6e 64 20 in</i></u>) and
20020 61 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 a <b>NodeTo</b>
20030 28 3c 75 3e 3c 69 3e 64 65 73 74 69 6e 61 74 69 (<u><i>destinati
20040 6f 6e 3c 2f 69 3e 3c 2f 75 3e 29 2e 3c 2f 6c 69 on</i></u>).</li
20050 3e 0d 0a 3c 6c 69 3e 41 20 50 6f 69 6e 74 2d 74 >..<li>A Point-t
20060 6f 2d 50 6f 69 6e 74 20 71 75 65 72 79 20 68 61 o-Point query ha
20070 73 20 6d 6f 72 65 20 72 65 6c 61 78 65 64 20 72 s more relaxed r
20080 65 71 75 69 73 69 74 65 73 2c 20 61 6e 64 20 6a equisites, and j
20090 75 73 74 20 72 65 71 75 69 72 65 73 20 74 6f 20 ust requires to
200a0 73 70 65 63 69 66 79 20 61 20 3c 62 3e 50 6f 69 specify a <b>Poi
200b0 6e 74 46 72 6f 6d 3c 2f 62 3e 20 28 3c 75 3e 3c ntFrom</b> (<u><
200c0 69 3e 6f 72 69 67 69 6e 3c 2f 69 3e 3c 2f 75 3e i>origin</i></u>
200d0 29 20 61 6e 64 20 61 20 3c 62 3e 50 6f 69 6e 74 ) and a <b>Point
200e0 54 6f 3c 2f 62 3e 20 28 3c 75 3e 3c 69 3e 64 65 To</b> (<u><i>de
200f0 73 74 69 6e 61 74 69 6f 6e 3c 2f 69 3e 3c 2f 75 stination</i></u
20100 3e 29 2e 3c 62 72 3e 0d 0a 42 6f 74 68 20 3c 62 >).<br>..Both <b
20110 3e 50 6f 69 6e 74 73 3c 2f 62 3e 20 63 61 6e 20 >Points</b> can
20120 62 65 20 66 72 65 65 6c 79 20 70 6f 73 69 74 69 be freely positi
20130 6f 6e 65 64 20 65 76 65 72 79 77 68 65 72 65 20 oned everywhere
20140 6f 6e 20 61 20 6d 61 70 2c 20 61 6e 64 20 61 72 on a map, and ar
20150 65 20 6e 6f 74 20 72 65 71 75 69 72 65 64 20 74 e not required t
20160 6f 20 70 72 65 63 69 73 65 6c 79 20 69 6e 74 65 o precisely inte
20170 72 73 65 63 74 20 6e 65 69 74 68 65 72 20 61 20 rsect neither a
20180 3c 62 3e 4e 6f 64 65 3c 2f 62 3e 20 6e 6f 72 20 <b>Node</b> nor
20190 61 20 3c 62 3e 4c 69 6e 6b 3c 2f 62 3e 20 6f 66 a <b>Link</b> of
201a0 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 the underlaying
201b0 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 54 Network.<br>..T
201c0 68 65 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e he Point-to-Poin
201d0 74 27 73 20 3c 75 3e 3c 69 3e 69 6e 74 65 72 6e t's <u><i>intern
201e0 61 6c 20 6c 6f 67 69 63 3c 2f 69 3e 3c 2f 75 3e al logic</i></u>
201f0 20 77 69 6c 6c 20 74 68 65 6e 20 61 75 74 6f 6d will then autom
20200 61 74 69 63 61 6c 6c 79 20 69 64 65 6e 74 69 66 atically identif
20210 79 20 28 69 66 20 70 6f 73 73 69 62 6c 65 29 20 y (if possible)
20220 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 the appropriate
20230 4e 6f 64 65 73 20 66 6f 72 20 63 6f 6d 70 75 74 Nodes for comput
20240 69 6e 67 20 61 20 53 68 6f 72 74 65 73 74 20 50 ing a Shortest P
20250 61 74 68 20 73 6f 6c 75 74 69 6f 6e 2e 3c 62 72 ath solution.<br
20260 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 >..<u>Note</u>:
20270 74 68 65 20 74 77 6f 20 50 6f 69 6e 74 73 20 3c the two Points <
20280 62 3e 6d 75 73 74 3c 2f 62 3e 20 62 65 20 69 6e b>must</b> be in
20290 20 74 68 65 20 73 61 6d 65 20 3c 62 3e 53 52 49 the same <b>SRI
202a0 44 3c 2f 62 3e 20 6f 66 20 74 68 65 20 75 6e 64 D</b> of the und
202b0 65 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f 72 6b erlaying Network
202c0 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c .</li>..</ul>..<
202d0 68 33 3e 48 6f 77 20 69 74 20 70 72 61 63 74 69 h3>How it practi
202e0 63 61 6c 6c 79 20 77 6f 72 6b 73 3c 2f 68 33 3e cally works</h3>
202f0 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e 61 20 66 69 ..<ol>..<li>a fi
20300 72 73 74 20 3c 75 3e 3c 69 3e 73 70 61 74 69 61 rst <u><i>spatia
20310 6c 20 73 65 61 72 63 68 3c 2f 69 3e 3c 2f 75 3e l search</i></u>
20320 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 3c 62 based on the <b
20330 3e 50 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 20 77 >PointFrom</b> w
20340 69 6c 6c 20 61 74 74 65 6d 70 74 20 74 6f 20 69 ill attempt to i
20350 64 65 6e 74 69 66 79 20 61 6c 6c 20 3c 62 3e 4c dentify all <b>L
20360 69 6e 6b 73 3c 2f 62 3e 20 66 61 6c 6c 69 6e 67 inks</b> falling
20370 20 77 69 74 68 69 6e 20 61 20 67 69 76 65 6e 20 within a given
20380 3c 62 3e 74 6f 6c 65 72 61 6e 63 65 20 72 61 64 <b>tolerance rad
20390 69 75 73 3c 2f 62 3e 20 66 72 6f 6d 20 74 68 65 ius</b> from the
203a0 20 50 6f 69 6e 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c Point.</li>..<l
203b0 69 3e 61 20 73 65 63 6f 6e 64 20 73 69 6d 69 6c i>a second simil
203c0 61 72 20 73 70 61 74 69 61 6c 20 73 65 61 72 63 ar spatial searc
203d0 68 20 77 69 6c 6c 20 61 74 74 65 6d 70 74 20 74 h will attempt t
203e0 6f 20 69 64 65 6e 74 69 66 79 20 61 6c 6c 20 3c o identify all <
203f0 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 72 65 6c 61 b>Links</b> rela
20400 74 65 64 20 74 6f 20 74 68 65 20 3c 62 3e 50 6f ted to the <b>Po
20410 69 6e 74 54 6f 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d intTo</b>.</li>.
20420 0a 3c 6c 69 3e 61 6c 6c 20 3c 62 3e 4e 6f 64 65 .<li>all <b>Node
20430 73 3c 2f 62 3e 20 62 65 6c 6f 6e 67 69 6e 67 20 s</b> belonging
20440 74 6f 20 61 6e 79 20 3c 62 3e 4c 69 6e 6b 3c 2f to any <b>Link</
20450 62 3e 20 69 64 65 6e 74 69 66 69 65 64 20 62 79 b> identified by
20460 20 74 68 65 20 66 69 72 73 74 20 73 70 61 74 69 the first spati
20470 61 6c 20 73 65 61 72 63 68 20 77 69 6c 6c 20 62 al search will b
20480 65 20 63 6f 6e 73 69 64 65 72 65 64 20 61 73 20 e considered as
20490 70 6f 73 73 69 62 6c 65 20 3c 62 3e 4e 6f 64 65 possible <b>Node
204a0 46 72 6f 6d 20 63 61 6e 64 69 64 61 74 65 73 3c From candidates<
204b0 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 /b>.</li>..<li>a
204c0 6e 64 20 73 79 6d 6d 65 74 72 69 63 61 6c 6c 79 nd symmetrically
204d0 2c 20 61 6c 6c 20 3c 62 3e 4e 6f 64 65 73 3c 2f , all <b>Nodes</
204e0 62 3e 20 62 65 6c 6f 6e 67 69 6e 67 20 74 6f 20 b> belonging to
204f0 61 6e 79 20 3c 62 3e 4c 69 6e 6b 3c 2f 62 3e 20 any <b>Link</b>
20500 69 64 65 6e 74 69 66 69 65 64 20 62 79 20 74 68 identified by th
20510 65 20 73 65 63 6f 6e 64 20 73 70 61 74 69 61 6c e second spatial
20520 20 73 65 61 72 63 68 20 77 69 6c 6c 20 62 65 20 search will be
20530 63 6f 6e 73 69 64 65 72 65 64 20 61 73 20 70 6f considered as po
20540 73 73 69 62 6c 65 20 3c 62 3e 4e 6f 64 65 54 6f ssible <b>NodeTo
20550 20 63 61 6e 64 69 64 61 74 65 73 3c 2f 62 3e 2e candidates</b>.
20560 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 20 66 75 6c </li>..<li>a ful
20570 6c 20 70 65 72 6d 75 74 61 74 69 6f 6e 20 6f 66 l permutation of
20580 20 61 6c 6c 20 53 68 6f 72 74 65 73 74 20 50 61 all Shortest Pa
20590 74 68 20 73 6f 6c 75 74 69 6f 6e 73 20 63 6f 6e th solutions con
205a0 6e 65 63 74 69 6e 67 20 6f 6e 65 20 74 68 65 20 necting one the
205b0 46 72 6f 6d 20 63 61 6e 64 69 64 61 74 65 73 20 From candidates
205c0 74 6f 20 6f 6e 65 20 6f 66 20 74 68 65 20 54 6f to one of the To
205d0 20 63 61 6e 64 69 64 61 74 65 73 20 77 69 6c 6c candidates will
205e0 20 62 65 20 74 68 65 6e 20 63 6f 6d 70 75 74 65 be then compute
205f0 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 6e 64 d.</li>..<li>and
20600 20 66 69 6e 61 6c 6c 79 20 74 68 65 20 3c 62 3e finally the <b>
20610 6f 70 74 69 6d 61 6c 20 50 6f 69 6e 74 2d 74 6f optimal Point-to
20620 2d 50 6f 69 6e 74 20 73 6f 6c 75 74 69 6f 6e 3c -Point solution<
20630 2f 62 3e 20 77 69 6c 6c 20 62 65 20 73 65 6c 65 /b> will be sele
20640 63 74 65 64 20 62 79 20 69 64 65 6e 74 69 66 79 cted by identify
20650 69 6e 67 20 77 68 69 63 68 20 73 70 65 63 69 66 ing which specif
20660 69 63 20 63 61 6e 64 69 64 61 74 65 20 70 72 65 ic candidate pre
20670 73 65 6e 74 73 20 74 68 65 20 3c 62 3e 6c 65 73 sents the <b>les
20680 73 65 72 20 43 6f 73 74 3c 2f 62 3e 20 6f 66 20 ser Cost</b> of
20690 74 68 65 6d 20 61 6c 6c 2e 3c 2f 6c 69 3e 0d 0a them all.</li>..
206a0 3c 2f 6f 6c 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c </ol><br>..<tabl
206b0 65 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 62 30 e bgcolor="#ffb0
206c0 36 30 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 60" cellspacing=
206d0 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 "10" cellpadding
206e0 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c ="6"><tr><td>..<
206f0 68 33 3e 42 65 20 61 77 61 72 65 3c 2f 68 33 3e h3>Be aware</h3>
20700 0d 0a 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 ..Attempting to
20710 73 6f 6c 76 65 20 50 6f 69 6e 74 2d 74 6f 2d 50 solve Point-to-P
20720 6f 69 6e 74 20 71 75 65 72 69 65 73 20 73 74 72 oint queries str
20730 69 63 74 6c 79 20 72 65 71 75 69 72 65 73 20 74 ictly requires t
20740 68 61 74 20 61 6e 20 61 70 70 72 6f 70 72 69 61 hat an appropria
20750 74 65 20 3c 62 3e 53 70 61 74 69 61 6c 20 49 6e te <b>Spatial In
20760 64 65 78 3c 2f 62 3e 20 63 61 6e 20 65 66 66 65 dex</b> can effe
20770 63 74 69 76 65 6c 79 20 73 75 70 70 6f 72 74 20 ctively support
20780 61 6c 6c 20 4c 69 6e 6b 73 20 6f 66 20 74 68 65 all Links of the
20790 20 75 6e 64 65 72 6c 61 79 69 6e 67 20 4e 65 74 underlaying Net
207a0 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 49 66 20 73 75 work.<br>..If su
207b0 63 68 20 61 20 72 65 71 75 69 73 69 74 65 20 69 ch a requisite i
207c0 73 20 6e 6f 74 20 73 61 74 69 73 66 69 65 64 20 s not satisfied
207d0 74 68 65 20 61 62 6f 76 65 20 6d 65 6e 74 69 6f the above mentio
207e0 6e 65 64 20 3c 75 3e 3c 69 3e 73 70 61 74 69 61 ned <u><i>spatia
207f0 6c 20 73 65 61 72 63 68 65 73 3c 2f 69 3e 3c 2f l searches</i></
20800 75 3e 20 77 69 6c 6c 20 6d 69 73 65 72 61 62 6c u> will miserabl
20810 79 20 66 61 69 6c 2c 20 61 6e 64 20 63 6f 6e 73 y fail, and cons
20820 65 71 75 65 6e 74 6c 79 20 61 6c 6c 20 50 6f 69 equently all Poi
20830 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 71 75 65 72 nt-to-Point quer
20840 69 65 73 20 77 69 6c 6c 20 62 65 20 75 6e 61 62 ies will be unab
20850 6c 65 20 74 6f 20 69 64 65 6e 74 69 66 79 20 61 le to identify a
20860 6e 79 20 70 6f 73 73 69 62 6c 65 20 43 61 6e 64 ny possible Cand
20870 69 64 61 74 65 20 74 6f 20 62 65 20 65 76 61 6c idate to be eval
20880 75 61 74 65 64 2e 0d 0a 3c 68 33 3e 41 6c 77 61 uated...<h3>Alwa
20890 79 73 20 72 65 6d 65 6d 62 65 72 3c 2f 68 33 3e ys remember</h3>
208a0 0d 0a 43 61 72 65 66 75 6c 6c 79 20 63 68 65 63 ..Carefully chec
208b0 6b 20 69 66 20 61 6e 20 61 70 70 72 6f 70 72 69 k if an appropri
208c0 61 74 65 20 53 70 61 74 69 61 6c 20 49 6e 64 65 ate Spatial Inde
208d0 78 20 64 6f 20 72 65 61 6c 6c 79 20 65 78 69 73 x do really exis
208e0 74 73 20 62 65 66 6f 72 65 20 61 74 74 65 6d 70 ts before attemp
208f0 74 69 6e 67 20 74 6f 20 65 78 65 63 75 74 65 20 ting to execute
20900 61 6e 79 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 any Point-to-Poi
20910 6e 74 20 71 75 65 72 79 2e 0d 0a 3c 62 72 3e 3c nt query...<br><
20920 62 72 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c br>..</td></tr><
20930 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c /table>..<br>..<
20940 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 table bgcolor="#
20950 63 30 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 c0ffc0" cellspac
20960 69 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 ing="10" cellpad
20970 64 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 ding="6"><tr><td
20980 20 61 6c 69 67 6e 3d 22 63 65 6e 74 65 72 22 20 align="center"
20990 63 6f 6c 73 70 61 6e 3d 22 32 22 3e 0d 0a 3c 68 colspan="2">..<h
209a0 32 3e 42 61 73 69 63 20 63 6f 6e 63 65 70 74 73 2>Basic concepts
209b0 2c 20 74 65 63 68 6e 69 63 61 6c 20 64 65 74 61 , technical deta
209c0 69 6c 73 20 61 6e 64 20 72 65 6c 61 74 65 64 20 ils and related
209d0 67 6c 6f 73 73 61 72 79 3c 2f 68 32 3e 0d 0a 3c glossary</h2>..<
209e0 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 3c /td></tr>..<tr><
209f0 74 64 3e 0d 0a 54 68 65 20 73 69 64 65 20 66 69 td>..The side fi
20a00 67 75 72 65 20 73 68 6f 77 73 20 61 20 68 79 70 gure shows a hyp
20a10 6f 74 68 65 74 69 63 61 6c 20 50 6f 69 6e 74 2d othetical Point-
20a20 74 6f 2d 50 6f 69 6e 74 20 73 6f 6c 75 74 69 6f to-Point solutio
20a30 6e 20 61 6c 6d 6f 73 74 20 70 72 65 63 69 73 65 n almost precise
20a40 6c 79 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 ly based on the
20a50 66 6f 6c 6c 6f 77 69 6e 67 20 73 65 71 75 65 6e following sequen
20a60 63 65 20 6f 66 20 4e 6f 64 65 73 3a 3c 62 72 3e ce of Nodes:<br>
20a70 0d 0a 3c 62 3e 3c 69 3e 4e 31 2d 4e 32 2d 4e 33 ..<b><i>N1-N2-N3
20a80 2d 4e 34 2d 4e 35 2d 4e 36 2d 4e 37 2d 4e 38 2d -N4-N5-N6-N7-N8-
20a90 4e 39 2d 4e 31 30 2d 4e 31 31 2d 4e 31 32 2d 4e N9-N10-N11-N12-N
20aa0 31 33 2d 4e 31 34 2d 4e 31 35 3c 2f 69 3e 3c 2f 13-N14-N15</i></
20ab0 62 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 48 6f b>..<br><br>..Ho
20ac0 77 65 76 65 72 2c 20 61 73 20 79 6f 75 20 63 61 wever, as you ca
20ad0 6e 20 65 61 73 69 6c 79 20 6e 6f 74 69 63 65 2c n easily notice,
20ae0 20 74 68 65 72 65 20 61 72 65 20 74 77 6f 20 73 there are two s
20af0 74 72 69 6b 69 6e 67 20 65 78 63 65 70 74 69 6f triking exceptio
20b00 6e 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 54 ns:..<ul>..<li>T
20b10 68 65 20 3c 62 3e 66 69 72 73 74 3c 2f 62 3e 20 he <b>first</b>
20b20 4c 69 6e 6b 20 28 63 6f 6e 6e 65 63 74 69 6e 67 Link (connecting
20b30 20 3c 62 3e 4e 31 3c 2f 62 3e 20 74 6f 20 3c 62 <b>N1</b> to <b
20b40 3e 4e 32 3c 2f 62 3e 29 20 69 73 20 6e 6f 74 20 >N2</b>) is not
20b50 63 6f 6d 70 6c 65 74 65 6c 79 20 72 65 71 75 69 completely requi
20b60 72 65 64 20 62 79 20 74 68 65 20 53 6f 6c 75 74 red by the Solut
20b70 69 6f 6e 2e 3c 62 72 3e 0d 0a 4a 75 73 74 20 61 ion.<br>..Just a
20b80 20 73 6d 61 6c 6c 20 70 6f 72 74 69 6f 6e 20 28 small portion (
20b90 64 72 61 77 6e 20 69 6e 20 72 65 64 29 20 6f 66 drawn in red) of
20ba0 20 74 68 69 73 20 4c 69 6e 6b 20 69 73 20 65 66 this Link is ef
20bb0 66 65 63 74 69 76 65 6c 79 20 72 65 71 75 69 72 fectively requir
20bc0 65 64 2e 3c 62 72 3e 0d 0a 54 68 65 20 72 65 6d ed.<br>..The rem
20bd0 61 69 6e 69 6e 67 20 70 61 72 74 20 28 64 72 61 aining part (dra
20be0 77 6e 20 69 6e 20 67 72 61 79 29 20 69 73 6e 27 wn in gray) isn'
20bf0 74 20 63 6f 76 65 72 65 64 20 62 79 20 74 68 65 t covered by the
20c00 20 53 6f 6c 75 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d Solution.</li>.
20c10 0a 3c 6c 69 3e 45 78 61 63 74 6c 79 20 74 68 65 .<li>Exactly the
20c20 20 73 61 6d 65 20 69 73 20 66 6f 72 20 74 68 65 same is for the
20c30 20 3c 62 3e 6c 61 73 74 3c 2f 62 3e 20 4c 69 6e <b>last</b> Lin
20c40 6b 20 63 6f 6e 6e 65 63 74 69 6e 67 20 3c 62 3e k connecting <b>
20c50 4e 31 34 3c 2f 62 3e 20 74 6f 20 3c 62 3e 4e 31 N14</b> to <b>N1
20c60 35 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 5</b>.</li>..<li
20c70 3e 54 68 61 74 27 73 20 6e 6f 74 20 61 6c 6c 3a >That's not all:
20c80 20 74 68 65 72 65 20 61 72 65 20 74 77 6f 20 73 there are two s
20c90 68 6f 72 74 20 73 65 67 6d 65 6e 74 73 20 28 64 hort segments (d
20ca0 72 61 77 6e 20 69 6e 20 67 72 65 65 6e 29 20 63 rawn in green) c
20cb0 6f 6e 6e 65 63 74 69 6e 67 20 3c 62 3e 50 66 72 onnecting <b>Pfr
20cc0 6f 6d 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 50 74 om</b> and <b>Pt
20cd0 6f 3c 2f 62 3e 20 28 3c 69 3e 6f 72 69 67 69 6e o</b> (<i>origin
20ce0 3c 2f 69 3e 20 61 6e 64 20 3c 69 3e 64 65 73 74 </i> and <i>dest
20cf0 69 6e 61 74 69 6f 6e 3c 2f 69 3e 20 50 6f 69 6e ination</i> Poin
20d00 74 73 29 20 72 65 73 70 65 63 74 69 76 65 6c 79 ts) respectively
20d10 20 74 6f 20 74 68 65 20 3c 62 3e 66 69 72 73 74 to the <b>first
20d20 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 6c 61 73 74 </b> and <b>last
20d30 3c 2f 62 3e 20 70 61 72 74 69 61 6c 20 4c 69 6e </b> partial Lin
20d40 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d ks.</li>..</ul>.
20d50 0a 3c 62 72 3e 0d 0a 41 6c 6c 20 74 68 69 73 20 .<br>..All this
20d60 73 68 6f 75 6c 64 6e 27 74 20 62 65 20 75 6e 65 shouldn't be une
20d70 78 70 65 63 74 65 64 2c 20 62 65 63 61 75 73 65 xpected, because
20d80 20 69 74 20 73 69 6d 70 6c 79 20 69 73 20 74 68 it simply is th
20d90 65 20 6d 6f 73 74 20 6f 62 76 69 6f 75 73 20 64 e most obvious d
20da0 69 72 65 63 74 20 63 6f 6e 73 65 71 75 65 6e 63 irect consequenc
20db0 65 20 6f 66 20 74 68 65 20 76 65 72 79 20 62 61 e of the very ba
20dc0 73 69 63 20 61 73 73 75 6d 70 74 69 6f 6e 73 20 sic assumptions
20dd0 61 74 20 74 68 65 20 62 61 73 69 73 20 6f 66 20 at the basis of
20de0 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 71 Point-to-Point q
20df0 75 65 72 69 65 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c ueries:..<ul>..<
20e00 6c 69 3e 4e 65 69 74 68 65 72 20 74 68 65 20 3c li>Neither the <
20e10 62 3e 50 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 20 b>PointFrom</b>
20e20 6e 6f 72 20 74 68 65 20 3c 62 3e 50 6f 69 6e 74 nor the <b>Point
20e30 54 6f 3c 2f 62 3e 20 61 72 65 20 72 65 71 75 69 To</b> are requi
20e40 72 65 64 20 74 6f 20 65 78 61 63 74 6c 79 20 69 red to exactly i
20e50 6e 74 65 72 73 65 63 74 20 61 20 3c 62 3e 4e 6f ntersect a <b>No
20e60 64 65 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 43 6f 6e de</b>.<br>..Con
20e70 73 65 71 75 65 6e 74 6c 79 20 74 68 65 20 3c 62 sequently the <b
20e80 3e 66 69 72 73 74 3c 2f 62 3e 20 61 6e 64 20 3c >first</b> and <
20e90 62 3e 6c 61 73 74 3c 2f 62 3e 20 4c 69 6e 6b 73 b>last</b> Links
20ea0 20 6f 66 20 74 68 65 20 6f 76 65 72 61 6c 6c 20 of the overall
20eb0 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 53 Point-to-Point S
20ec0 6f 6c 75 74 69 6f 6e 20 63 6f 75 6c 64 20 62 65 olution could be
20ed0 20 6f 6e 6c 79 20 70 61 72 74 69 61 6c 6c 79 20 only partially
20ee0 69 6e 76 6f 6c 76 65 64 2e 3c 62 72 3e 0d 0a 49 involved.<br>..I
20ef0 6e 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 n VirtualRouting
20f00 20 6a 61 72 67 6f 6e 20 74 68 65 73 65 20 74 77 jargon these tw
20f10 6f 20 3c 75 3e 3c 69 3e 73 70 65 63 69 61 6c 20 o <u><i>special
20f20 69 74 65 6d 73 3c 2f 69 3e 3c 2f 75 3e 20 61 72 items</i></u> ar
20f30 65 20 72 65 73 70 65 63 74 69 76 65 6c 79 20 63 e respectively c
20f40 61 6c 6c 65 64 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c alled:..<ul>..<l
20f50 69 3e 3c 62 3e 50 61 72 74 69 61 6c 20 4c 69 6e i><b>Partial Lin
20f60 6b 20 28 53 74 61 72 74 29 3c 2f 62 3e 3c 2f 6c k (Start)</b></l
20f70 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 50 61 72 74 69 i>..<li><b>Parti
20f80 61 6c 20 4c 69 6e 6b 20 28 45 6e 64 29 3c 2f 62 al Link (End)</b
20f90 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c ></li>..</ul></l
20fa0 69 3e 20 0d 0a 3c 6c 69 3e 42 6f 74 68 20 74 68 i> ..<li>Both th
20fb0 65 20 3c 62 3e 50 6f 69 6e 74 46 72 6f 6d 3c 2f e <b>PointFrom</
20fc0 62 3e 20 61 6e 64 20 74 68 65 20 3c 62 3e 50 6f b> and the <b>Po
20fd0 69 6e 74 54 6f 3c 2f 62 3e 20 63 61 6e 20 6c 65 intTo</b> can le
20fe0 67 69 74 69 6d 61 74 65 6c 79 20 68 61 76 65 20 gitimately have
20ff0 61 6e 79 20 61 72 62 69 74 72 61 72 79 20 70 6f any arbitrary po
21000 73 69 74 69 6f 6e 20 61 6e 64 20 61 72 65 20 6e sition and are n
21010 65 76 65 72 20 72 65 71 75 69 72 65 64 20 74 6f ever required to
21020 20 65 78 61 63 74 6c 79 20 69 6e 74 65 72 73 65 exactly interse
21030 63 74 20 61 20 3c 62 3e 4c 69 6e 6b 3c 2f 62 3e ct a <b>Link</b>
21040 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 63 61 6e 20 .<br>..This can
21050 65 61 73 69 6c 79 20 69 6d 70 6c 79 20 74 68 61 easily imply tha
21060 74 20 61 6e 20 3c 75 3e 3c 69 3e 65 78 74 72 61 t an <u><i>extra
21070 20 73 68 6f 72 74 20 6c 65 67 3c 2f 69 3e 3c 2f short leg</i></
21080 75 3e 20 63 6f 75 6c 64 20 62 65 20 72 65 71 75 u> could be requ
21090 69 72 65 64 20 69 6e 20 6f 72 64 65 72 20 74 6f ired in order to
210a0 20 63 6f 6e 6e 65 63 74 20 74 68 65 20 46 72 6f connect the Fro
210b0 6d 2f 54 6f 20 50 6f 69 6e 74 73 20 74 6f 20 74 m/To Points to t
210c0 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 he corresponding
210d0 20 4c 69 6e 6b 73 2e 3c 62 72 3e 0d 0a 49 6e 20 Links.<br>..In
210e0 56 69 72 75 74 61 6c 52 6f 75 74 69 6e 67 20 6a VirutalRouting j
210f0 61 72 67 6f 6e 20 74 68 65 73 65 20 74 77 6f 20 argon these two
21100 3c 75 3e 3c 69 3e 73 70 65 63 69 61 6c 20 69 74 <u><i>special it
21110 65 6d 73 3c 2f 69 3e 3c 2f 75 3e 20 61 72 65 20 ems</i></u> are
21120 72 65 73 70 65 63 74 69 76 65 6c 79 20 63 61 6c respectively cal
21130 6c 65 64 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e led:..<ul>..<li>
21140 3c 62 3e 49 6e 67 72 65 73 73 20 50 61 74 68 3c <b>Ingress Path<
21150 2f 62 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 /b></li>..<li><b
21160 3e 45 67 72 65 73 73 20 50 61 74 68 3c 2f 62 3e >Egress Path</b>
21170 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 </li>..</ul></li
21180 3e 20 0d 0a 3c 6c 69 3e 3c 75 3e 4e 6f 74 65 3c > ..<li><u>Note<
21190 2f 75 3e 3a 20 6e 6f 6e 65 20 6f 66 20 74 68 65 /u>: none of the
211a0 6d 20 69 73 20 61 20 73 74 72 69 63 74 6c 79 20 m is a strictly
211b0 6d 61 6e 64 61 74 6f 72 79 20 69 74 65 6d 3a 0d mandatory item:.
211c0 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c .<ul>..<li>the <
211d0 62 3e 49 6e 67 72 65 73 73 3c 2f 62 3e 20 61 6e b>Ingress</b> an
211e0 64 2f 6f 72 20 3c 62 3e 45 67 72 65 73 73 20 50 d/or <b>Egress P
211f0 61 74 68 73 3c 2f 62 3e 20 61 72 65 20 6e 6f 74 aths</b> are not
21200 20 72 65 71 75 69 72 65 64 20 77 68 65 6e 20 74 required when t
21210 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 he corresponding
21220 20 50 6f 69 6e 74 20 65 78 61 63 74 6c 79 20 69 Point exactly i
21230 6e 74 65 72 73 65 63 74 73 20 61 20 4c 69 6e 6b ntersects a Link
21240 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 50 .</li>..<li><b>P
21250 61 72 74 69 61 6c 20 4c 69 6e 6b 73 3c 2f 62 3e artial Links</b>
21260 20 28 65 69 74 68 65 72 20 3c 62 3e 28 53 74 61 (either <b>(Sta
21270 72 74 29 3c 2f 62 3e 20 6f 72 20 3c 62 3e 28 45 rt)</b> or <b>(E
21280 6e 64 28 3c 2f 62 3e 29 20 61 72 65 20 6e 65 76 nd(</b>) are nev
21290 65 72 20 72 65 71 75 69 72 65 64 20 77 68 65 6e er required when
212a0 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 the correspondi
212b0 6e 67 20 50 6f 69 6e 74 20 65 78 61 63 74 6c 79 ng Point exactly
212c0 20 6d 61 74 63 68 65 73 20 61 20 4e 6f 64 65 2e matches a Node.
212d0 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 </li>..</ul></li
212e0 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 2f 74 64 3e 0d >..</ul>..</td>.
212f0 0a 3c 74 64 3e 0d 0a 3c 69 6d 67 20 73 72 63 3d .<td>..<img src=
21300 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 "https://www.gai
21310 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 a-gis.it/gaia-si
21320 6e 73 2f 72 6f 75 74 69 6e 67 2d 66 69 67 73 2f ns/routing-figs/
21330 70 32 70 2d 73 74 72 75 63 74 2e 70 6e 67 22 20 p2p-struct.png"
21340 61 6c 74 3d 22 70 32 70 2d 73 74 72 75 63 74 22 alt="p2p-struct"
21350 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c >..</td></tr>..<
21360 74 72 3e 3c 74 64 3e 0d 0a 41 20 6d 6f 72 65 20 tr><td>..A more
21370 63 6f 6d 70 72 65 68 65 6e 73 69 76 65 20 61 6e comprehensive an
21380 64 20 64 65 74 61 69 6c 65 64 20 65 78 70 6c 61 d detailed expla
21390 6e 61 74 69 6f 6e 20 62 61 73 65 64 20 6f 6e 20 nation based on
213a0 74 68 65 20 73 69 64 65 20 66 69 67 75 72 65 3a the side figure:
213b0 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 4c ..<ul>..<li><b>L
213c0 31 3c 2f 62 3e 20 69 73 20 61 20 4c 69 6e 6b 20 1</b> is a Link
213d0 63 6f 6e 6e 65 63 74 69 6e 67 20 4e 6f 64 65 73 connecting Nodes
213e0 20 3c 62 3e 4e 31 3c 2f 62 3e 20 61 6e 64 20 3c <b>N1</b> and <
213f0 62 3e 4e 32 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a b>N2</b>.</li>..
21400 3c 6c 69 3e 3c 62 3e 50 74 3c 2f 62 3e 20 69 73 <li><b>Pt</b> is
21410 20 6f 6e 65 20 62 65 74 77 65 65 6e 20 50 6f 69 one between Poi
21420 6e 74 46 72 6f 6d 20 6f 72 20 50 6f 69 6e 74 54 ntFrom or PointT
21430 6f 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a o.</li>..</ul>..
21440 3c 62 72 3e 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e <br>..<ol>..<li>
21450 54 68 65 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 The Point-to-Poi
21460 6e 74 20 69 6e 74 65 72 6e 61 6c 20 6c 6f 67 69 nt internal logi
21470 63 20 77 69 6c 6c 20 73 74 61 72 74 20 62 79 20 c will start by
21480 69 64 65 6e 74 69 66 79 69 6e 67 20 3c 62 3e 69 identifying <b>i
21490 3c 2f 62 3e 2c 0d 0a 74 68 61 74 20 69 73 20 74 </b>,..that is t
214a0 68 65 20 50 6f 69 6e 74 20 69 6e 74 65 72 73 65 he Point interse
214b0 63 74 69 6e 67 20 3c 62 3e 4c 31 3c 2f 62 3e 20 cting <b>L1</b>
214c0 61 6e 64 20 70 72 65 73 65 6e 74 69 6e 67 20 74 and presenting t
214d0 68 65 20 6d 69 6e 69 6d 75 6d 20 64 69 73 74 61 he minimum dista
214e0 6e 63 65 20 62 65 74 77 65 65 6e 20 74 68 65 20 nce between the
214f0 4c 69 6e 6b 20 61 6e 64 20 3c 62 3e 50 74 3c 2f Link and <b>Pt</
21500 62 3e 0d 0a 28 63 6f 72 72 65 73 70 6f 6e 64 69 b>..(correspondi
21510 6e 67 20 74 6f 20 74 68 65 20 72 65 73 75 6c 74 ng to the result
21520 20 72 65 74 75 72 6e 65 64 20 62 79 20 63 61 6c returned by cal
21530 6c 69 6e 67 20 74 68 65 20 3c 62 3e 53 54 5f 4c ling the <b>ST_L
21540 69 6e 65 5f 4c 6f 63 61 74 65 5f 50 6f 69 6e 74 ine_Locate_Point
21550 28 29 3c 2f 62 3e 20 53 51 4c 20 66 75 6e 63 74 ()</b> SQL funct
21560 69 6f 6e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e ion).</li>..<li>
21570 4e 6f 77 20 74 68 65 20 4c 69 6e 6b 20 3c 62 3e Now the Link <b>
21580 4c 31 3c 2f 62 3e 20 77 69 6c 6c 20 62 65 20 73 L1</b> will be s
21590 70 6c 69 74 20 69 6e 20 74 77 6f 20 68 61 6c 76 plit in two halv
215a0 65 73 20 3c 62 3e 4c 31 2d 61 3c 2f 62 3e 20 61 es <b>L1-a</b> a
215b0 6e 64 20 3c 62 3e 4c 31 2d 62 3c 2f 62 3e 20 61 nd <b>L1-b</b> a
215c0 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 74 68 ccordingly to th
215d0 65 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 3c 62 e position of <b
215e0 3e 69 3c 2f 62 3e 0d 0a 28 63 6f 72 72 65 73 70 >i</b>..(corresp
215f0 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 72 65 onding to the re
21600 73 75 6c 74 73 20 72 65 74 75 72 6e 65 64 20 62 sults returned b
21610 79 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 3c 62 y calling the <b
21620 3e 53 54 5f 4c 69 6e 65 5f 53 75 62 73 74 72 69 >ST_Line_Substri
21630 6e 67 28 29 3c 2f 62 3e 20 53 51 4c 20 66 75 6e ng()</b> SQL fun
21640 63 74 69 6f 6e 29 2e 3c 62 72 3e 0d 0a 42 6f 74 ction).<br>..Bot
21650 68 20 68 61 6c 76 65 73 20 77 69 6c 6c 20 62 65 h halves will be
21660 20 6e 6f 77 20 63 6f 6e 73 69 64 65 72 65 64 20 now considered
21670 61 73 20 70 6f 73 73 69 62 6c 65 20 3c 62 3e 50 as possible <b>P
21680 61 72 74 69 61 6c 20 4c 69 6e 6b 73 20 28 53 74 artial Links (St
21690 61 72 74 29 20 63 61 6e 64 69 64 61 74 65 73 3c art) candidates<
216a0 2f 62 3e 20 6c 65 61 64 69 6e 67 20 72 65 73 70 /b> leading resp
216b0 65 63 74 69 76 65 6c 79 20 74 6f 20 3c 62 3e 4e ectively to <b>N
216c0 31 3c 2f 62 3e 20 6f 72 20 3c 62 3e 4e 32 3c 2f 1</b> or <b>N2</
216d0 62 3e 3b 0d 0a 64 69 72 65 63 74 69 6f 6e 73 20 b>;..directions
216e0 77 69 6c 6c 20 62 65 20 61 75 74 6f 6d 61 74 69 will be automati
216f0 63 61 6c 6c 79 20 69 6e 76 65 72 74 65 64 20 61 cally inverted a
21700 73 20 72 65 71 75 69 72 65 64 2c 20 62 75 74 20 s required, but
21710 6f 6e 6c 79 20 69 66 20 74 68 65 72 65 20 61 72 only if there ar
21720 65 20 6e 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 3c e no <b>one-way<
21730 2f 62 3e 20 66 6f 72 62 69 64 64 69 6e 67 20 72 /b> forbidding r
21740 65 73 74 72 69 63 74 69 6f 6e 73 2e 3c 62 72 3e estrictions.<br>
21750 0d 0a 28 74 68 65 20 64 69 72 65 63 74 69 6f 6e ..(the direction
21760 73 20 77 69 6c 6c 20 62 65 20 6f 62 76 69 6f 75 s will be obviou
21770 73 6c 79 20 69 6e 76 65 72 74 65 64 20 69 6e 20 sly inverted in
21780 74 68 65 20 63 61 73 65 20 6f 66 20 3c 62 3e 50 the case of <b>P
21790 61 72 74 69 61 6c 20 4c 69 6e 6b 73 20 28 45 6e artial Links (En
217a0 64 29 3c 2f 62 3e 20 2f 20 3c 62 3e 4e 6f 64 65 d)</b> / <b>Node
217b0 54 6f 3c 2f 62 3e 29 3c 2f 6c 69 3e 0d 0a 3c 6c To</b>)</li>..<l
217c0 69 3e 41 6e 64 20 66 69 6e 61 6c 6c 79 20 61 20 i>And finally a
217d0 73 74 72 61 69 67 68 74 20 73 65 67 6d 65 6e 74 straight segment
217e0 20 3c 62 3e 70 3c 2f 62 3e 20 63 6f 6e 6e 65 63 <b>p</b> connec
217f0 74 69 6e 67 20 3c 62 3e 50 74 3c 2f 62 3e 20 74 ting <b>Pt</b> t
21800 6f 20 3c 62 3e 69 3c 2f 62 3e 20 77 69 6c 6c 20 o <b>i</b> will
21810 62 65 20 63 6f 6e 73 74 72 75 63 74 65 64 2e 0d be constructed..
21820 0a 53 6f 20 3c 62 3e 70 3c 2f 62 3e 20 65 78 61 .So <b>p</b> exa
21830 63 74 6c 79 20 63 6f 72 72 65 73 70 6f 6e 64 73 ctly corresponds
21840 20 74 6f 20 74 68 65 20 3c 62 3e 49 6e 67 72 65 to the <b>Ingre
21850 73 73 20 50 61 74 68 3c 2f 62 3e 20 69 66 20 3c ss Path</b> if <
21860 62 3e 50 74 3c 2f 62 3e 20 69 73 20 3c 62 3e 50 b>Pt</b> is <b>P
21870 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 2e 3c 62 72 ointFrom</b>.<br
21880 3e 0d 0a 28 74 68 65 20 64 69 72 65 63 74 69 6f >..(the directio
21890 6e 20 73 68 6f 75 6c 64 20 62 65 20 6f 62 76 69 n should be obvi
218a0 6f 75 73 6c 79 20 69 6e 76 65 72 74 65 64 20 69 ously inverted i
218b0 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 74 68 n the case of th
218c0 65 20 3c 62 3e 45 67 72 65 73 73 20 50 61 74 68 e <b>Egress Path
218d0 3c 2f 62 3e 20 2f 20 3c 62 3e 50 6f 69 6e 74 54 </b> / <b>PointT
218e0 6f 3c 2f 62 3e 29 3c 2f 6c 69 3e 0d 0a 3c 2f 6f o</b>)</li>..</o
218f0 6c 3e 0d 0a 3c 2f 74 64 3e 0d 0a 3c 74 64 3e 0d l>..</td>..<td>.
21900 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 .<img src="https
21910 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e ://www.gaia-gis.
21920 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 it/gaia-sins/rou
21930 74 69 6e 67 2d 66 69 67 73 2f 73 70 6c 69 74 2d ting-figs/split-
21940 6c 69 6e 6b 2e 70 6e 67 22 20 61 6c 74 3d 22 70 link.png" alt="p
21950 32 70 2d 73 74 72 75 63 74 22 3e 0d 0a 3c 2f 74 2p-struct">..</t
21960 64 3e 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 d></tr>..</table
21970 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 4c 65 74 >..<br><br>..Let
21980 27 73 20 6e 6f 77 20 65 78 61 6d 69 6e 65 20 61 's now examine a
21990 20 70 72 61 63 74 69 63 61 6c 20 65 78 61 6d 70 practical examp
219a0 6c 65 20 6f 66 20 50 6f 69 6e 74 2d 74 6f 2d 50 le of Point-to-P
219b0 6f 69 6e 74 20 73 6f 6c 76 69 6e 67 20 75 73 69 oint solving usi
219c0 6e 67 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e ng VirtualRoutin
219d0 67 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a g...<verbatim>..
219e0 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d SELECT Algorithm
219f0 2c 20 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f , Request, Optio
21a00 6e 73 2c 20 52 6f 75 74 65 49 64 2c 20 52 6f 75 ns, RouteId, Rou
21a10 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e teRow, Role, Lin
21a20 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d kRowid, NodeFrom
21a30 2c 20 4e 6f 64 65 54 6f 2c 20 50 6f 69 6e 74 46 , NodeTo, PointF
21a40 72 6f 6d 2c 20 50 6f 69 6e 74 54 6f 2c 20 54 6f rom, PointTo, To
21a50 6c 65 72 61 6e 63 65 2c 20 43 6f 73 74 2c 20 47 lerance, Cost, G
21a60 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 eometry, Name..F
21a70 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 ROM byfoot..WHER
21a80 45 20 50 6f 69 6e 74 46 72 6f 6d 20 3d 20 28 53 E PointFrom = (S
21a90 45 4c 45 43 54 20 67 65 6f 6d 20 46 52 4f 4d 20 ELECT geom FROM
21aa0 68 6f 75 73 65 5f 6e 72 5f 76 77 20 57 48 45 52 house_nr_vw WHER
21ab0 45 20 6d 75 6e 69 63 69 70 61 6c 69 74 79 20 3d E municipality =
21ac0 20 27 41 52 45 5a 5a 4f 27 20 41 4e 44 20 61 64 'AREZZO' AND ad
21ad0 64 72 65 73 73 20 3d 20 27 56 49 41 20 44 45 27 dress = 'VIA DE'
21ae0 27 20 43 45 4e 43 49 20 31 33 27 29 0d 0a 20 20 ' CENCI 13')..
21af0 20 20 41 4e 44 20 50 6f 69 6e 74 54 6f 20 3d 20 AND PointTo =
21b00 28 53 45 4c 45 43 54 20 67 65 6f 6d 20 46 52 4f (SELECT geom FRO
21b10 4d 20 68 6f 75 73 65 5f 6e 72 5f 76 77 20 57 48 M house_nr_vw WH
21b20 45 52 45 20 6d 75 6e 69 63 69 70 61 6c 69 74 79 ERE municipality
21b30 20 3d 20 27 41 52 45 5a 5a 4f 27 20 41 4e 44 20 = 'AREZZO' AND
21b40 61 64 64 72 65 73 73 20 3d 20 27 56 49 41 20 41 address = 'VIA A
21b50 4e 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c NTONIO GUADAGNOL
21b60 49 20 31 39 2f 42 27 29 3b 0d 0a 3c 2f 76 65 72 I 19/B');..</ver
21b70 62 61 74 69 6d 3e 0d 0a 41 20 3c 62 3e 50 6f 69 batim>..A <b>Poi
21b80 6e 74 2d 74 6f 2d 50 6f 69 6e 74 3c 2f 62 3e 20 nt-to-Point</b>
21b90 71 75 65 72 79 20 68 61 73 20 74 68 65 20 73 61 query has the sa
21ba0 6d 65 20 66 6f 72 6d 20 6f 66 20 61 20 3c 62 3e me form of a <b>
21bb0 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 single-destinati
21bc0 6f 6e 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 on Shortest Path
21bd0 3c 2f 62 3e 20 71 75 65 72 79 2c 20 65 78 63 65 </b> query, exce
21be0 70 74 20 74 68 61 74 20 3c 62 3e 4e 6f 64 65 46 pt that <b>NodeF
21bf0 6f 72 6d 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e orm</b> and <b>N
21c00 6f 64 65 54 6f 3c 2f 62 3e 20 61 72 65 20 6e 6f odeTo</b> are no
21c10 77 20 72 65 70 6c 61 63 65 64 20 62 79 20 3c 62 w replaced by <b
21c20 3e 50 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 20 61 >PointFrom</b> a
21c30 6e 64 20 3c 62 3e 50 6f 69 6e 74 54 6f 3c 2f 62 nd <b>PointTo</b
21c40 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c >.<br>..<u>Note<
21c50 2f 75 3e 20 74 68 65 20 73 61 6d 70 6c 65 20 44 /u> the sample D
21c60 42 2d 66 69 6c 65 20 73 75 70 70 6f 72 74 73 20 B-file supports
21c70 3c 62 3e 48 6f 75 73 65 20 4e 75 6d 62 65 72 73 <b>House Numbers
21c80 3c 2f 62 3e 2c 20 73 6f 20 79 6f 75 20 63 61 6e </b>, so you can
21c90 20 64 69 72 65 63 74 6c 79 20 75 73 65 20 48 6f directly use Ho
21ca0 75 73 65 20 4e 75 6d 62 65 72 20 63 6f 6f 72 64 use Number coord
21cb0 69 6e 61 74 65 73 20 61 73 20 72 65 66 65 72 65 inates as refere
21cc0 6e 63 65 20 50 6f 69 6e 74 73 2e 0d 0a 3c 62 72 nce Points...<br
21cd0 3e 3c 62 72 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f ><br>..The follo
21ce0 77 69 6e 67 20 74 61 62 6c 65 20 73 68 6f 77 73 wing table shows
21cf0 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 72 the resultset r
21d00 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 61 eturned by the a
21d10 62 6f 76 65 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f bove Point-to-Po
21d20 69 6e 74 20 71 75 65 72 79 2e 3c 62 72 3e 3c 62 int query.<br><b
21d30 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 r>..<table borde
21d40 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 r="1" bgcolor="#
21d50 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 ffffcf" cellspac
21d60 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 ing="4" cellpadd
21d70 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 ing="6">..<tr><t
21d80 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
21d90 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 a0">Algorithm</t
21da0 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
21db0 64 30 64 30 61 30 22 3e 52 65 71 75 65 73 74 3c d0d0a0">Request<
21dc0 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
21dd0 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e "#d0d0a0">Option
21de0 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f s</th><th bgcolo
21df0 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 r="#d0d0a0">Rout
21e00 65 49 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f eId</th><th bgco
21e10 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f lor="#d0d0a0">Ro
21e20 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 uteRow</th><th b
21e30 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
21e40 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 >Role</th><th bg
21e50 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
21e60 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 LinkRowid</th><t
21e70 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
21e80 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 a0">NodeFrom</th
21e90 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
21ea0 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 0d0a0">NodeTo</t
21eb0 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
21ec0 64 30 64 30 61 30 22 3e 50 6f 69 6e 74 46 72 6f d0d0a0">PointFro
21ed0 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f m</th><th bgcolo
21ee0 72 3d 22 23 64 30 64 30 61 30 22 3e 50 6f 69 6e r="#d0d0a0">Poin
21ef0 74 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f tTo</th><th bgco
21f00 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 54 6f lor="#d0d0a0">To
21f10 6c 65 72 61 6e 63 65 3c 2f 74 68 3e 3c 74 68 20 lerance</th><th
21f20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
21f30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 ">Cost</th><th b
21f40 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
21f50 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 >Geometry</th><t
21f60 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
21f70 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 a0">Name</th></t
21f80 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 69 r>..<tr>..<td>Di
21f90 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e 50 jkstra</td><td>P
21fa0 6f 69 6e 74 32 50 6f 69 6e 74 20 50 61 74 68 3c oint2Point Path<
21fb0 2f 74 64 3e 3c 74 64 3e 46 75 6c 6c 3c 2f 74 64 /td><td>Full</td
21fc0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
21fd0 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">0</td><td ali
21fe0 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
21ff0 3e 3c 74 64 3e 50 6f 69 6e 74 32 50 6f 69 6e 74 ><td>Point2Point
22000 20 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e 3c 74 Solution</td><t
22010 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
22020 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
22030 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a </td><td>BLOB sz
22040 3d 36 38 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 =68 GEOMETRY</td
22050 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 36 38 20 ><td>BLOB sz=68
22060 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 GEOMETRY</td><td
22070 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
22080 30 2e 30 30 30 30 30 30 3c 2f 74 64 3e 3c 74 64 0.000000</td><td
22090 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
220a0 35 32 2e 38 31 35 31 33 39 3c 2f 74 64 3e 3c 74 52.815139</td><t
220b0 64 3e 42 4c 4f 42 20 73 7a 3d 31 35 35 32 20 47 d>BLOB sz=1552 G
220c0 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e EOMETRY</td><td>
220d0 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e NULL</td>..</tr>
220e0 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
220f0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
22100 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
22110 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22120 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >0</td><td align
22130 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c ="right">1</td><
22140 74 64 3e 49 6e 67 72 65 73 73 20 50 61 74 68 3c td>Ingress Path<
22150 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
22160 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22170 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
22180 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
22190 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
221a0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
221b0 68 74 22 3e 32 2e 33 30 31 36 38 37 3c 2f 74 64 ht">2.301687</td
221c0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
221d0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 d>NULL</td>..</t
221e0 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
221f0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
22200 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
22210 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
22220 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">0</td><td ali
22230 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 gn="right">2</td
22240 3e 3c 74 64 3e 50 61 72 74 69 61 6c 20 4c 69 6e ><td>Partial Lin
22250 6b 20 28 53 74 61 72 74 29 3c 2f 74 64 3e 3c 74 k (Start)</td><t
22260 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
22270 32 32 34 32 36 34 3c 2f 74 64 3e 3c 74 64 3e 4e 224264</td><td>N
22280 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
22290 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 36 33 30 n="right">182630
222a0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
222b0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
222c0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
222d0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 36 align="right">46
222e0 2e 30 38 32 37 36 31 3c 2f 74 64 3e 3c 74 64 3e .082761</td><td>
222f0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
22300 20 44 45 27 20 43 45 4e 43 49 3c 2f 74 64 3e 0d DE' CENCI</td>.
22310 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
22320 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
22330 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
22340 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
22350 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 right">0</td><td
22360 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
22370 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
22380 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
22390 68 74 22 3e 32 32 33 37 35 38 3c 2f 74 64 3e 3c ht">223758</td><
223a0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
223b0 3e 31 38 32 36 33 30 3c 2f 74 64 3e 3c 74 64 20 >182630</td><td
223c0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
223d0 32 36 32 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2629</td><td>NUL
223e0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
223f0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22400 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
22410 22 3e 32 34 2e 31 39 38 31 31 35 3c 2f 74 64 3e ">24.198115</td>
22420 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
22430 3e 43 4f 52 53 4f 20 49 54 41 4c 49 41 3c 2f 74 >CORSO ITALIA</t
22440 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
22450 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
22460 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
22470 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
22480 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
22490 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
224a0 22 3e 34 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">4</td><td>Link
224b0 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
224c0 72 69 67 68 74 22 3e 32 32 35 35 31 32 3c 2f 74 right">225512</t
224d0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
224e0 68 74 22 3e 31 38 32 36 32 39 3c 2f 74 64 3e 3c ht">182629</td><
224f0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22500 3e 31 38 32 39 33 33 3c 2f 74 64 3e 3c 74 64 3e >182933</td><td>
22510 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
22520 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
22530 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
22540 67 68 74 22 3e 33 34 2e 31 38 34 31 39 34 3c 2f ght">34.184194</
22550 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22560 3c 74 64 3e 43 4f 52 53 4f 20 49 54 41 4c 49 41 <td>CORSO ITALIA
22570 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
22580 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
22590 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
225a0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
225b0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
225c0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
225d0 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 3e 4c ght">5</td><td>L
225e0 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
225f0 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 35 31 31 n="right">225511
22600 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
22610 72 69 67 68 74 22 3e 31 38 32 39 33 33 3c 2f 74 right">182933</t
22620 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
22630 68 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c ht">181999</td><
22640 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
22650 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
22660 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
22670 22 72 69 67 68 74 22 3e 34 39 2e 32 34 31 37 33 "right">49.24173
22680 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 5</td><td>NULL</
22690 74 64 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 54 41 td><td>CORSO ITA
226a0 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d LIA</td>..</tr>.
226b0 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
226c0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
226d0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
226e0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
226f0 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
22700 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 3e 3c 74 "right">6</td><t
22710 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
22720 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 32 lign="right">222
22730 36 33 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 635</td><td alig
22740 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 39 n="right">181999
22750 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
22760 72 69 67 68 74 22 3e 31 38 31 39 39 38 3c 2f 74 right">181998</t
22770 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
22780 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
22790 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
227a0 67 6e 3d 22 72 69 67 68 74 22 3e 31 30 31 2e 36 gn="right">101.6
227b0 32 39 37 35 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 29750</td><td>NU
227c0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f LL</td><td>CORSO
227d0 20 49 54 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f ITALIA</td>..</
227e0 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
227f0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
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 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
22820 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">0</td><td al
22830 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 3c 2f 74 ign="right">7</t
22840 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
22850 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22860 3e 32 32 34 37 38 30 3c 2f 74 64 3e 3c 74 64 20 >224780</td><td
22870 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
22880 31 39 39 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1998</td><td ali
22890 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 35 36 gn="right">18356
228a0 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 0</td><td>NULL</
228b0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
228c0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
228d0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 align="right">7
228e0 33 2e 37 33 33 35 37 32 3c 2f 74 64 3e 3c 74 64 3.733572</td><td
228f0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
22900 41 20 44 45 4c 4c 27 41 4e 46 49 54 45 41 54 52 A DELL'ANFITEATR
22910 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c O</td>..</tr>..<
22920 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
22930 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
22940 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
22950 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
22960 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
22970 69 67 68 74 22 3e 38 3c 2f 74 64 3e 3c 74 64 3e ight">8</td><td>
22980 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
22990 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 38 32 gn="right">22582
229a0 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 7</td><td align=
229b0 22 72 69 67 68 74 22 3e 31 38 33 35 36 30 3c 2f "right">183560</
229c0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
229d0 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e ght">183286</td>
229e0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
229f0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
22a00 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
22a10 3d 22 72 69 67 68 74 22 3e 34 32 2e 33 30 39 35 ="right">42.3095
22a20 36 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 64</td><td>NULL<
22a30 2f 74 64 3e 3c 74 64 3e 56 49 41 20 44 45 4c 4c /td><td>VIA DELL
22a40 27 41 4e 46 49 54 45 41 54 52 4f 3c 2f 74 64 3e 'ANFITEATRO</td>
22a50 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
22a60 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
22a70 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
22a80 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
22a90 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 "right">0</td><t
22aa0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
22ab0 39 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 9</td><td>Link</
22ac0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
22ad0 67 68 74 22 3e 32 32 34 38 39 37 3c 2f 74 64 3e ght">224897</td>
22ae0 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
22af0 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 ">183286</td><td
22b00 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
22b10 38 33 31 32 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 83128</td><td>NU
22b20 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
22b30 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
22b40 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
22b50 74 22 3e 37 32 2e 34 34 34 36 30 39 3c 2f 74 64 t">72.444609</td
22b60 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22b70 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e d>VIA MARGARITON
22b80 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c E</td>..</tr>..<
22b90 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
22ba0 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
22bb0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
22bc0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
22bd0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
22be0 69 67 68 74 22 3e 31 30 3c 2f 74 64 3e 3c 74 64 ight">10</td><td
22bf0 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
22c00 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 32 ign="right">2242
22c10 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 32</td><td align
22c20 3d 22 72 69 67 68 74 22 3e 31 38 33 31 32 38 3c ="right">183128<
22c30 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
22c40 69 67 68 74 22 3e 31 38 32 38 39 30 3c 2f 74 64 ight">182890</td
22c50 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
22c60 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
22c70 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
22c80 6e 3d 22 72 69 67 68 74 22 3e 31 30 33 2e 36 31 n="right">103.61
22c90 32 32 32 31 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2221</td><td>NUL
22ca0 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4e 49 L</td><td>VIA NI
22cb0 43 43 4f 4c 4f 27 20 41 52 45 54 49 4e 4f 3c 2f CCOLO' ARETINO</
22cc0 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
22cd0 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
22ce0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
22cf0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
22d00 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
22d10 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
22d20 74 22 3e 31 31 3c 2f 74 64 3e 3c 74 64 3e 50 61 t">11</td><td>Pa
22d30 72 74 69 61 6c 20 4c 69 6e 6b 20 28 45 6e 64 29 rtial Link (End)
22d40 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
22d50 72 69 67 68 74 22 3e 32 32 34 30 31 39 3c 2f 74 right">224019</t
22d60 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
22d70 68 74 22 3e 31 38 32 38 39 30 3c 2f 74 64 3e 3c ht">182890</td><
22d80 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
22d90 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
22da0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
22db0 74 64 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 td>..<td align="
22dc0 72 69 67 68 74 22 3e 39 35 2e 37 36 30 32 32 32 right">95.760222
22dd0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
22de0 64 3e 3c 74 64 3e 56 49 41 20 41 4e 54 4f 4e 49 d><td>VIA ANTONI
22df0 4f 20 47 55 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 O GUADAGNOLI</td
22e00 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
22e10 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
22e20 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
22e30 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
22e40 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
22e50 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
22e60 3e 31 32 3c 2f 74 64 3e 3c 74 64 3e 45 67 72 65 >12</td><td>Egre
22e70 73 73 20 50 61 74 68 3c 2f 74 64 3e 3c 74 64 3e ss Path</td><td>
22e80 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
22e90 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
22ea0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
22eb0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
22ec0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
22ed0 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 33 31 ign="right">7.31
22ee0 36 37 30 39 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 6709</td><td>NUL
22ef0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
22f00 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 td>..</tr>..</ta
22f10 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 74 27 ble>..<br>..Let'
22f20 73 20 6e 6f 77 20 71 75 69 63 6b 6c 79 20 65 78 s now quickly ex
22f30 61 6d 69 6e 65 20 74 68 65 20 72 65 73 75 6c 74 amine the result
22f40 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 set returned by
22f50 74 68 65 20 61 62 6f 76 65 20 3c 62 3e 50 6f 69 the above <b>Poi
22f60 6e 74 2d 74 6f 2d 50 6f 69 6e 74 3c 2f 62 3e 20 nt-to-Point</b>
22f70 71 75 65 72 79 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c query:..<ul>..<l
22f80 69 3e 74 68 65 20 67 65 6e 65 72 61 6c 20 6c 61 i>the general la
22f90 79 6f 75 74 20 69 73 20 61 6c 6d 6f 73 74 20 65 yout is almost e
22fa0 78 61 63 74 6c 79 20 74 68 65 20 73 61 6d 65 20 xactly the same
22fb0 61 73 20 79 6f 75 27 76 65 20 61 6c 72 65 61 64 as you've alread
22fc0 79 20 73 65 65 6e 20 69 6e 20 74 68 65 20 63 61 y seen in the ca
22fd0 73 65 20 6f 66 20 53 68 6f 72 74 65 73 74 50 61 se of ShortestPa
22fe0 74 68 20 71 75 65 72 69 65 73 2e 3c 2f 6c 69 3e th queries.</li>
22ff0 0d 0a 3c 6c 69 3e 69 6e 20 74 68 65 20 73 70 65 ..<li>in the spe
23000 63 69 66 69 63 20 63 61 73 65 20 6f 66 20 50 6f cific case of Po
23010 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 74 68 65 int-to-Point the
23020 20 3c 62 3e 66 69 72 73 74 20 72 6f 77 3c 2f 62 <b>first row</b
23030 3e 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 73 > of the results
23040 65 74 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 63 et will always c
23050 6f 6e 74 61 69 6e 20 74 68 65 20 66 6f 6c 6c 6f ontain the follo
23060 77 69 6e 67 73 20 3c 62 3e 4e 4f 54 20 4e 55 4c wings <b>NOT NUL
23070 4c 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 3a 0d 0a L</b> columns:..
23080 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 4e 6f 64 <ul>..<li><b>Nod
23090 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 20 3c 62 eFrom</b> and <b
230a0 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 3a 20 74 68 65 >NodeTo</b>: the
230b0 20 74 77 6f 20 47 65 6f 6d 65 74 72 69 65 73 20 two Geometries
230c0 64 65 66 69 6e 69 6e 67 20 74 68 65 20 3c 75 3e defining the <u>
230d0 3c 69 3e 6f 72 69 67 69 6e 3c 2f 69 3e 3c 2f 75 <i>origin</i></u
230e0 3e 20 61 6e 64 20 3c 75 3e 3c 69 3e 64 65 73 74 > and <u><i>dest
230f0 69 6e 61 74 69 6f 6e 3c 2f 69 3e 3c 2f 75 3e 20 ination</i></u>
23100 50 6f 69 6e 74 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c Points.</li>..<l
23110 69 3e 3c 62 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f i><b>Tolerance</
23120 62 3e 3a 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 b>: the maximum
23130 64 69 73 74 61 6e 63 65 20 61 6c 6c 6f 77 65 64 distance allowed
23140 20 62 65 74 77 65 65 6e 20 72 65 66 65 72 65 6e between referen
23150 63 65 20 50 6f 69 6e 74 73 20 61 6e 64 20 43 61 ce Points and Ca
23160 6e 64 69 64 61 74 65 20 4c 69 6e 6b 73 2e 3c 2f ndidate Links.</
23170 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d li>..</ul></li>.
23180 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 52 6f 6c 65 .<li>the <b>Role
23190 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 20 63 61 6e 20 </b> column can
231a0 61 73 73 75 6d 65 20 6f 6e 65 20 6f 66 20 74 68 assume one of th
231b0 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 76 61 6c 75 e following valu
231c0 65 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c es:..<ul>..<li><
231d0 62 3e 50 6f 69 6e 74 32 50 6f 69 6e 74 20 53 6f b>Point2Point So
231e0 6c 75 74 69 6f 6e 3c 2f 62 3e 3a 20 74 68 65 20 lution</b>: the
231f0 6f 76 65 72 61 6c 20 68 65 61 64 65 72 20 72 6f overal header ro
23200 77 20 73 75 6d 6d 61 72 69 7a 69 6e 67 20 74 68 w summarizing th
23210 65 20 53 6f 6c 75 74 69 6f 6e 20 61 73 20 61 20 e Solution as a
23220 77 68 6f 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 whole.</li>..<li
23230 3e 3c 62 3e 49 6e 67 72 65 73 73 20 50 61 74 68 ><b>Ingress Path
23240 3c 2f 62 3e 3a 20 61 20 73 74 72 61 69 67 68 74 </b>: a straight
23250 20 73 65 67 6d 65 6e 74 20 63 6f 6e 6e 65 63 74 segment connect
23260 69 6e 67 20 74 68 65 20 4f 72 69 67 69 6e 20 50 ing the Origin P
23270 6f 69 6e 74 20 74 6f 20 74 68 65 20 66 69 72 73 oint to the firs
23280 74 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c t Link.</li>..<l
23290 69 3e 3c 62 3e 45 67 72 65 73 73 20 50 61 74 68 i><b>Egress Path
232a0 3c 2f 62 3e 3a 20 61 20 73 74 72 61 69 67 68 74 </b>: a straight
232b0 20 73 65 67 6d 65 6e 74 20 63 6f 6e 6e 65 63 74 segment connect
232c0 69 6e 67 20 74 68 65 20 6c 61 73 74 20 4c 69 6e ing the last Lin
232d0 6b 20 74 6f 20 74 68 65 20 44 65 73 74 69 6e 61 k to the Destina
232e0 74 69 6f 6e 20 50 6f 69 6e 74 2e 3c 2f 6c 69 3e tion Point.</li>
232f0 0d 0a 3c 6c 69 3e 3c 62 3e 50 61 72 74 69 61 6c ..<li><b>Partial
23300 20 4c 69 6e 6b 20 28 53 74 61 72 74 29 3c 2f 62 Link (Start)</b
23310 3e 3a 20 74 68 65 20 70 61 72 74 69 61 6c 20 73 >: the partial s
23320 65 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 69 ection of the fi
23330 72 73 74 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a rst Link.</li>..
23340 3c 6c 69 3e 3c 62 3e 50 61 72 74 69 61 6c 20 4c <li><b>Partial L
23350 69 6e 6b 20 28 45 6e 64 29 3c 2f 62 3e 3a 20 74 ink (End)</b>: t
23360 68 65 20 70 61 72 74 69 61 6c 20 73 65 63 74 69 he partial secti
23370 6f 6e 20 6f 66 20 74 68 65 20 6c 61 73 74 20 4c on of the last L
23380 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c ink.</li>..<li><
23390 62 3e 4c 69 6e 6b 3c 2f 62 3e 3a 20 61 6e 79 20 b>Link</b>: any
233a0 6f 74 68 65 72 20 4c 69 6e 6b 20 72 65 71 75 69 other Link requi
233b0 72 65 64 20 62 79 20 74 68 65 20 50 6f 69 6e 74 red by the Point
233c0 2d 74 6f 2d 50 6f 69 6e 74 20 53 6f 6c 75 74 69 -to-Point Soluti
233d0 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c on.</li>..</ul><
233e0 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 /li>..</ul>..<br
233f0 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 3e 50 6f ><br><br>..<b>Po
23400 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 3c 2f 62 3e int-to-Point</b>
23410 20 71 75 65 72 69 65 73 20 63 61 6e 20 62 65 20 queries can be
23420 63 75 73 74 6f 6d 69 7a 65 64 2c 20 62 75 74 20 customized, but
23430 74 68 65 20 63 6f 6e 66 69 67 75 72 61 74 69 6f the configuratio
23440 6e 20 72 75 6c 65 73 20 73 6c 69 67 68 74 6c 79 n rules slightly
23450 20 64 69 66 66 65 72 20 66 72 6f 6d 20 77 68 61 differ from wha
23460 74 20 79 6f 75 20 68 61 76 65 20 61 6c 72 65 61 t you have alrea
23470 64 79 20 73 65 65 6e 20 69 6e 20 70 72 65 76 69 dy seen in previ
23480 6f 75 73 20 65 78 61 6d 70 6c 65 73 2e 0d 0a 3c ous examples...<
23490 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 41 6c 67 6f ul>..<li><b>Algo
234a0 72 69 74 68 6d 3c 2f 62 3e 3a 20 6f 6e 6c 79 20 rithm</b>: only
234b0 3c 62 3e 44 69 6a 6b 73 74 72 61 3c 2f 62 3e 20 <b>Dijkstra</b>
234c0 69 73 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 is supported by
234d0 3c 62 3e 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e <b>Point-to-Poin
234e0 74 3c 2f 62 3e 2c 20 61 6e 64 20 77 69 6c 6c 20 t</b>, and will
234f0 62 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 61 73 be implicitly as
23500 73 75 6d 65 64 20 65 76 65 6e 20 77 68 65 6e 20 sumed even when
23510 74 68 65 20 61 6c 74 65 72 6e 61 74 69 76 65 20 the alternative
23520 3c 62 3e 41 2a 3c 2f 62 3e 20 61 6c 67 6f 72 69 <b>A*</b> algori
23530 74 68 6d 20 69 73 20 63 75 72 72 65 6e 74 6c 79 thm is currently
23540 20 73 65 6c 65 63 74 65 64 2e 3c 62 72 3e 0d 0a selected.<br>..
23550 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 This is because
23560 74 68 65 20 69 6e 74 65 72 6e 61 6c 20 6c 6f 67 the internal log
23570 69 63 20 6f 66 20 50 6f 69 6e 74 2d 74 6f 2d 50 ic of Point-to-P
23580 6f 69 6e 74 20 72 65 71 75 69 72 65 73 20 6d 75 oint requires mu
23590 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 20 lti-destination
235a0 71 75 65 72 69 65 73 20 69 6e 20 6f 72 64 65 72 queries in order
235b0 20 74 6f 20 65 76 61 6c 75 61 74 65 20 61 6c 6c to evaluate all
235c0 20 43 61 6e 64 69 64 61 74 65 20 53 6f 6c 75 74 Candidate Solut
235d0 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e ions.</li>..<li>
235e0 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 3a 20 <b>Options</b>:
235f0 74 68 65 20 75 73 75 61 6c 20 3c 62 3e 46 55 4c the usual <b>FUL
23600 4c 3c 2f 62 3e 2c 20 3c 62 3e 53 49 4d 50 4c 45 L</b>, <b>SIMPLE
23610 3c 2f 62 3e 2c 20 3c 62 3e 4e 4f 20 4c 49 4e 4b </b>, <b>NO LINK
23620 53 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 4f 20 S</b> and <b>NO
23630 47 45 4f 4d 45 54 52 49 45 53 3c 2f 62 3e 20 61 GEOMETRIES</b> a
23640 72 65 20 73 75 70 70 6f 72 74 65 64 20 61 6e 64 re supported and
23650 20 77 69 6c 6c 20 68 61 76 65 20 74 68 65 20 73 will have the s
23660 61 6d 65 20 65 66 66 65 63 74 20 61 73 20 69 6e ame effect as in
23670 20 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 single-destinat
23680 69 6f 6e 20 71 75 65 72 69 65 73 2e 0d 0a 3c 2f ion queries...</
23690 75 6c 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d ul>..<verbatim>.
236a0 0a 55 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 .UPDATE byfoot S
236b0 45 54 20 4f 70 74 69 6f 6e 73 20 3d 20 27 4e 4f ET Options = 'NO
236c0 20 47 45 4f 4d 45 54 52 49 45 53 27 3b 0d 0a 0d GEOMETRIES';...
236d0 0a 53 45 4c 45 43 54 20 52 65 71 75 65 73 74 2c .SELECT Request,
236e0 20 4f 70 74 69 6f 6e 73 2c 20 52 6f 75 74 65 52 Options, RouteR
236f0 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f ow, Role, LinkRo
23700 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e wid, NodeFrom, N
23710 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f odeTo, Cost, Geo
23720 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f metry, Name..FRO
23730 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 M byfoot..WHERE
23740 50 6f 69 6e 74 46 72 6f 6d 20 3d 20 28 53 45 4c PointFrom = (SEL
23750 45 43 54 20 67 65 6f 6d 20 46 52 4f 4d 20 68 6f ECT geom FROM ho
23760 75 73 65 5f 6e 72 5f 76 77 20 57 48 45 52 45 20 use_nr_vw WHERE
23770 6d 75 6e 69 63 69 70 61 6c 69 74 79 20 3d 20 27 municipality = '
23780 41 52 45 5a 5a 4f 27 20 41 4e 44 20 61 64 64 72 AREZZO' AND addr
23790 65 73 73 20 3d 20 27 56 49 41 20 44 45 27 27 20 ess = 'VIA DE''
237a0 43 45 4e 43 49 20 31 33 27 29 0d 0a 20 20 20 20 CENCI 13')..
237b0 41 4e 44 20 50 6f 69 6e 74 54 6f 20 3d 20 28 53 AND PointTo = (S
237c0 45 4c 45 43 54 20 67 65 6f 6d 20 46 52 4f 4d 20 ELECT geom FROM
237d0 68 6f 75 73 65 5f 6e 72 5f 76 77 20 57 48 45 52 house_nr_vw WHER
237e0 45 20 6d 75 6e 69 63 69 70 61 6c 69 74 79 20 3d E municipality =
237f0 20 27 41 52 45 5a 5a 4f 27 20 41 4e 44 20 61 64 'AREZZO' AND ad
23800 64 72 65 73 73 20 3d 20 27 56 49 41 20 41 4e 54 dress = 'VIA ANT
23810 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c 49 20 ONIO GUADAGNOLI
23820 31 39 2f 43 27 29 3b 0d 0a 3c 2f 76 65 72 62 61 19/C');..</verba
23830 74 69 6d 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 tim>..The follow
23840 69 6e 67 20 74 61 62 6c 65 20 73 68 6f 77 73 20 ing table shows
23850 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 72 65 the resultset re
23860 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 61 62 turned by the ab
23870 6f 76 65 20 50 6f 69 6e 74 2d 74 6f 2d 50 6f 69 ove Point-to-Poi
23880 6e 74 20 71 75 65 72 79 20 61 66 74 65 72 20 73 nt query after s
23890 65 6c 65 63 74 69 6e 67 20 3c 62 3e 4f 70 74 69 electing <b>Opti
238a0 6f 6e 73 20 3d 20 27 4e 4f 20 47 45 4f 4d 45 54 ons = 'NO GEOMET
238b0 52 49 45 53 27 3c 2f 62 3e 3c 62 72 3e 3c 62 72 RIES'</b><br><br
238c0 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 >..<table border
238d0 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 ="1" bgcolor="#f
238e0 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 fffcf" cellspaci
238f0 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 ng="4" cellpaddi
23900 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 ng="6">..<tr><th
23910 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
23920 30 22 3e 52 65 71 75 65 73 74 3c 2f 74 68 3e 3c 0">Request</th><
23930 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
23940 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 0a0">Options</th
23950 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
23960 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 0d0a0">RouteRow<
23970 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
23980 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f "#d0d0a0">Role</
23990 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
239a0 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 #d0d0a0">LinkRow
239b0 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c id</th><th bgcol
239c0 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 or="#d0d0a0">Nod
239d0 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 eFrom</th><th bg
239e0 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
239f0 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 NodeTo</th><th b
23a00 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
23a10 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 >Cost</th><th bg
23a20 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
23a30 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 Geometry</th><th
23a40 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
23a50 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 0">Name</th></tr
23a60 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 50 6f 69 >..<tr>..<td>Poi
23a70 6e 74 32 50 6f 69 6e 74 20 50 61 74 68 3c 2f 74 nt2Point Path</t
23a80 64 3e 3c 74 64 3e 4e 6f 20 47 65 6f 6d 65 74 72 d><td>No Geometr
23a90 69 65 73 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ies</td><td alig
23aa0 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
23ab0 3c 74 64 3e 50 6f 69 6e 74 32 50 6f 69 6e 74 20 <td>Point2Point
23ac0 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e 3c 74 64 Solution</td><td
23ad0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
23ae0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
23af0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
23b00 69 67 68 74 22 3e 36 35 31 2e 30 36 37 30 38 32 ight">651.067082
23b10 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
23b20 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
23b30 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
23b40 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
23b50 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
23b60 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e n="right">1</td>
23b70 3c 74 64 3e 49 6e 67 72 65 73 73 20 50 61 74 68 <td>Ingress Path
23b80 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
23b90 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
23ba0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
23bb0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 2e align="right">2.
23bc0 33 30 31 36 38 37 3c 2f 74 64 3e 3c 74 64 3e 4e 301687</td><td>N
23bd0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
23be0 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
23bf0 72 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c r><td>NULL</td><
23c00 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
23c10 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c align="right">2<
23c20 2f 74 64 3e 3c 74 64 3e 50 61 72 74 69 61 6c 20 /td><td>Partial
23c30 4c 69 6e 6b 20 28 53 74 61 72 74 29 3c 2f 74 64 Link (Start)</td
23c40 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
23c50 74 22 3e 32 32 34 32 36 34 3c 2f 74 64 3e 3c 74 t">224264</td><t
23c60 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
23c70 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
23c80 36 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 630</td><td alig
23c90 6e 3d 22 72 69 67 68 74 22 3e 34 36 2e 30 38 32 n="right">46.082
23ca0 37 36 31 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 761</td><td>NULL
23cb0 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 44 45 27 </td><td>VIA DE'
23cc0 20 43 45 4e 43 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 CENCI</td>..</t
23cd0 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
23ce0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
23cf0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
23d00 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e ight">3</td><td>
23d10 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
23d20 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 33 37 35 gn="right">22375
23d30 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 8</td><td align=
23d40 22 72 69 67 68 74 22 3e 31 38 32 36 33 30 3c 2f "right">182630</
23d50 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
23d60 67 68 74 22 3e 31 38 32 36 32 39 3c 2f 74 64 3e ght">182629</td>
23d70 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
23d80 22 3e 32 34 2e 31 39 38 31 31 35 3c 2f 74 64 3e ">24.198115</td>
23d90 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
23da0 3e 43 4f 52 53 4f 20 49 54 41 4c 49 41 3c 2f 74 >CORSO ITALIA</t
23db0 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
23dc0 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
23dd0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
23de0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f lign="right">4</
23df0 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
23e00 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
23e10 22 3e 32 32 35 35 31 32 3c 2f 74 64 3e 3c 74 64 ">225512</td><td
23e20 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
23e30 38 32 36 32 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 82629</td><td al
23e40 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 39 ign="right">1829
23e50 33 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 33</td><td align
23e60 3d 22 72 69 67 68 74 22 3e 33 34 2e 31 38 34 31 ="right">34.1841
23e70 39 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 94</td><td>NULL<
23e80 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 54 /td><td>CORSO IT
23e90 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ALIA</td>..</tr>
23ea0 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
23eb0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
23ec0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
23ed0 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">5</td><td>Li
23ee0 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
23ef0 3d 22 72 69 67 68 74 22 3e 32 32 35 35 31 31 3c ="right">225511<
23f00 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
23f10 69 67 68 74 22 3e 31 38 32 39 33 33 3c 2f 74 64 ight">182933</td
23f20 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
23f30 74 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 t">181999</td><t
23f40 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
23f50 34 39 2e 32 34 31 37 33 35 3c 2f 74 64 3e 3c 74 49.241735</td><t
23f60 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 43 d>NULL</td><td>C
23f70 4f 52 53 4f 20 49 54 41 4c 49 41 3c 2f 74 64 3e ORSO ITALIA</td>
23f80 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
23f90 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
23fa0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
23fb0 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 64 gn="right">6</td
23fc0 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
23fd0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
23fe0 32 32 35 38 30 30 3c 2f 74 64 3e 3c 74 64 20 61 225800</td><td a
23ff0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 lign="right">181
24000 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 999</td><td alig
24010 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 n="right">178880
24020 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
24030 72 69 67 68 74 22 3e 39 35 2e 35 39 32 32 30 34 right">95.592204
24040 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
24050 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 d><td>VIA FRANCE
24060 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d SCO CRISPI</td>.
24070 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
24080 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
24090 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
240a0 6e 3d 22 72 69 67 68 74 22 3e 37 3c 2f 74 64 3e n="right">7</td>
240b0 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
240c0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
240d0 31 39 31 37 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 19171</td><td al
240e0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 38 ign="right">1788
240f0 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 80</td><td align
24100 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 32 3c ="right">178732<
24110 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
24120 69 67 68 74 22 3e 39 33 2e 32 38 35 35 33 38 3c ight">93.285538<
24130 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
24140 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 53 ><td>VIA FRANCES
24150 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a CO CRISPI</td>..
24160 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<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 20 61 6c 69 67 6e LL</td><td align
24190 3d 22 72 69 67 68 74 22 3e 38 3c 2f 74 64 3e 3c ="right">8</td><
241a0 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
241b0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 31 align="right">21
241c0 39 30 35 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 9058</td><td ali
241d0 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
241e0 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 2</td><td align=
241f0 22 72 69 67 68 74 22 3e 31 37 38 37 35 34 3c 2f "right">178754</
24200 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
24210 67 68 74 22 3e 31 34 38 2e 36 35 36 30 38 39 3c ght">148.656089<
24220 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
24230 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 53 ><td>VIA FRANCES
24240 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a CO CRISPI</td>..
24250 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
24260 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
24270 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
24280 3d 22 72 69 67 68 74 22 3e 39 3c 2f 74 64 3e 3c ="right">9</td><
24290 74 64 3e 50 61 72 74 69 61 6c 20 4c 69 6e 6b 20 td>Partial Link
242a0 28 45 6e 64 29 3c 2f 74 64 3e 3c 74 64 20 61 6c (End)</td><td al
242b0 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 ign="right">2240
242c0 31 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 19</td><td align
242d0 3d 22 72 69 67 68 74 22 3e 31 38 32 38 39 30 3c ="right">182890<
242e0 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
242f0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
24300 74 22 3e 31 35 30 2e 32 36 30 36 34 31 3c 2f 74 t">150.260641</t
24310 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
24320 74 64 3e 56 49 41 20 41 4e 54 4f 4e 49 4f 20 47 td>VIA ANTONIO G
24330 55 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 3e 0d 0a UADAGNOLI</td>..
24340 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
24350 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
24360 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
24370 3d 22 72 69 67 68 74 22 3e 31 30 3c 2f 74 64 3e ="right">10</td>
24380 3c 74 64 3e 45 67 72 65 73 73 20 50 61 74 68 3c <td>Egress Path<
24390 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
243a0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
243b0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
243c0 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 32 lign="right">7.2
243d0 36 34 31 31 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 64118</td><td>NU
243e0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
243f0 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 /td>..</tr>..</t
24400 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c able>..<br><br><
24410 62 72 3e 0d 0a 54 68 65 20 6d 61 70 20 62 65 6c br>..The map bel
24420 6f 77 20 67 72 61 70 68 69 63 61 6c 6c 79 20 73 ow graphically s
24430 68 6f 77 73 20 74 68 65 20 74 77 6f 20 50 6f 69 hows the two Poi
24440 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 53 6f 6c 75 nt-to-Point Solu
24450 74 69 6f 6e 73 20 72 65 74 75 72 6e 65 64 20 62 tions returned b
24460 79 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 71 y the previous q
24470 75 65 72 69 65 73 2e 0d 0a 3c 62 72 3e 3c 62 72 ueries...<br><br
24480 3e 0d 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 >..<img src="htt
24490 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 ps://www.gaia-gi
244a0 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 s.it/gaia-sins/r
244b0 6f 75 74 69 6e 67 2d 66 69 67 73 2f 70 6f 69 6e outing-figs/poin
244c0 74 2d 74 6f 2d 70 6f 69 6e 74 2e 6a 70 67 22 20 t-to-point.jpg"
244d0 61 6c 74 3d 22 70 6f 69 6e 74 2d 74 6f 2d 70 6f alt="point-to-po
244e0 69 6e 74 22 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 int">..<ul>..<li
244f0 3e 74 68 65 20 67 72 65 65 6e 20 6c 69 6e 65 20 >the green line
24500 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 corresponds to t
24510 68 65 20 66 69 72 73 74 20 73 6f 6c 75 74 69 6f he first solutio
24520 6e 20 28 3c 69 3e 50 6f 69 6e 74 54 6f 20 3d 20 n (<i>PointTo =
24530 56 49 41 20 47 55 41 44 41 47 4e 4f 4c 49 20 31 VIA GUADAGNOLI 1
24540 39 2f 42 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a 9/B</i>).</li>..
24550 3c 6c 69 3e 74 68 65 20 79 65 6c 6c 6f 77 20 6c <li>the yellow l
24560 69 6e 65 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 ine corresponds
24570 74 6f 20 74 68 65 20 73 65 63 6f 6e 64 20 73 6f to the second so
24580 6c 75 74 69 6f 6e 20 28 3c 69 3e 50 6f 69 6e 74 lution (<i>Point
24590 54 6f 20 3d 20 56 49 41 20 47 55 41 44 41 47 4e To = VIA GUADAGN
245a0 4f 4c 49 20 31 39 2f 43 3c 2f 69 3e 29 2e 3c 2f OLI 19/C</i>).</
245b0 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e li>..</ul>..<br>
245c0 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 50 ..<u>Note</u>: P
245d0 6f 69 6e 74 2d 74 6f 2d 50 6f 69 6e 74 20 71 75 oint-to-Point qu
245e0 65 72 69 65 73 20 61 72 65 20 76 65 72 79 20 73 eries are very s
245f0 65 6e 73 74 69 76 65 2c 20 61 6e 64 20 61 20 76 enstive, and a v
24600 65 72 79 20 62 6c 61 6e 64 20 73 68 69 66 74 20 ery bland shift
24610 61 66 66 65 63 74 69 6e 67 20 74 68 65 20 70 6f affecting the po
24620 73 69 74 69 6f 6e 20 6f 66 20 61 20 72 65 66 65 sition of a refe
24630 72 65 6e 63 65 20 50 6f 69 6e 74 20 63 6f 75 6c rence Point coul
24640 64 20 65 61 73 69 6c 79 20 63 61 75 73 65 20 64 d easily cause d
24650 72 61 6d 61 74 69 63 20 63 68 61 6e 67 65 73 20 ramatic changes
24660 69 6e 20 74 68 65 20 53 6f 6c 75 74 69 6f 6e 27 in the Solution'
24670 73 20 50 61 74 68 20 28 61 73 20 69 73 20 69 6e s Path (as is in
24680 20 74 68 69 73 20 63 61 73 65 29 2e 0d 0a 3c 62 this case)...<b
24690 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 3c 62 72 3e r><br>..<hr><br>
246a0 0d 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 ..<a href="https
246b0 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e ://www.gaia-gis.
246c0 69 74 2f 66 6f 73 73 69 6c 2f 6c 69 62 73 70 61 it/fossil/libspa
246d0 74 69 61 6c 69 74 65 2f 77 69 6b 69 3f 6e 61 6d tialite/wiki?nam
246e0 65 3d 34 2e 33 2e 30 2d 64 6f 63 22 3e 62 61 63 e=4.3.0-doc">bac
246f0 6b 3c 2f 61 3e 0a 5a 20 36 35 34 35 39 39 65 62 k</a>.Z 654599eb
24700 37 33 38 38 64 63 32 30 30 37 65 39 66 63 62 64 7388dc2007e9fcbd
24710 36 39 31 33 62 61 34 62 0a 6913ba4b.