how to get value in MS SQL from XML

crundle
crundle used Ask the Experts™
on
how can I extract a value from a XML file that is over 8000 char (link is http://maps.googleapis.com/maps/api/directions/xml?origin=Boston,MA&destination=charleston,sc&sensor=false)

Need just to get the driving distance from google API
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Expert of the Quarter 2010
Expert of the Year 2010

Commented:
Use the XML data type for SQL Server 2008.
Query is last 2 lines in code box.
declare @xml xml
set @xml = '
<DirectionsResponse>
<status>OK</status>

<route>
<summary>I-95 S</summary>

<leg>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>42.3585300</lat>
<lng>-71.0600700</lng>
</start_location>

<end_location>
<lat>42.3486200</lat>
<lng>-71.0655500</lng>
</end_location>

<polyline>
<points>ycpaGl|upLdBfAjDdDpDfE|D~DpBjA~EnBjBj@zKlBbDt@|HdA</points>
<levels>B????@????B</levels>
</polyline>

<duration>
<value>188</value>
<text>3 mins</text>
</duration>

<html_instructions>
Head <b>southwest</b> on <b>Tremont St</b> toward <b>School St</b>
</html_instructions>

<distance>
<value>1215</value>
<text>0.8 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>42.3486200</lat>
<lng>-71.0655500</lng>
</start_location>

<end_location>
<lat>42.3487700</lat>
<lng>-71.0666400</lng>
</end_location>

<polyline>
<points>{enaGt~vpL]xE</points>
<levels>BB</levels>
</polyline>

<duration>
<value>19</value>
<text>1 min</text>
</duration>
<html_instructions>Turn <b>right</b> to stay on <b>Tremont St</b></html_instructions>

<distance>
<value>91</value>
<text>299 ft</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>42.3487700</lat>
<lng>-71.0666400</lng>
</start_location>

<end_location>
<lat>42.3479900</lat>
<lng>-71.0680100</lng>
</end_location>

<polyline>
<points>yfnaGnewpLzCpG</points>
<levels>BB</levels>
</polyline>

<duration>
<value>39</value>
<text>1 min</text>
</duration>

<html_instructions>
Take the 1st <b>left</b> to stay on <b>Tremont St</b>
</html_instructions>

<distance>
<value>143</value>
<text>469 ft</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>42.3479900</lat>
<lng>-71.0680100</lng>
</start_location>

<end_location>
<lat>42.3480900</lat>
<lng>-71.0691900</lng>
</end_location>

<polyline>
<points>}anaG`nwpLSjF</points>
<levels>BB</levels>
</polyline>

<duration>
<value>24</value>
<text>1 min</text>
</duration>

<html_instructions>
Turn <b>right</b> at the 2nd cross street onto <b>Marginal Rd</b>
</html_instructions>

<distance>
<value>98</value>
<text>322 ft</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>42.3480900</lat>
<lng>-71.0691900</lng>
</start_location>

<end_location>
<lat>42.1315500</lat>
<lng>-72.0538200</lng>
</end_location>

<polyline>

<points>
qbnaGluwpL?tDPjJFXAlJt@pmACzIi@hJNp{@]rH_Fjd@_A`FgB|FoFnLsCjJ}@~BsItRg@r@}ArAkIrEy@v@wAlBw@pBUtAu@zIKjGD`CNhBdDdPh@|EN|EUlH{Etr@uC~e@B|IbA`PRjHrAluAApLiA`w@LlFb@vF|Fhd@~@~J?r@|Gvg@dNxs@|BlOfApJl@dH`Exj@lGxd@pA|OnBve@lB|W^pU|Dx_Ab@tEl@`DjBxFvHnNbAdC~@fDvEdWbB~EtGnLlAtD`AnF^dDT~CBvBc@lj@h@fWxAxd@jAxNtLjaAr@zHZbFVzIB|HMbc@JvGn@xLlBlP~ArHfEdO|]pdApExL|FrKb^hg@lE`J|A|DfBxFrCjMtArLlCj]t@fFfAdFhAjEtAxDdE`JpExIpCvGrCpKr@tDj@pEn@|HNjED~FGtE[tGeSpbCaAjKiDxZ{@vKYdKC|EJlH^zHdAbKpa@jjCxBfOtArG`B~FpChHnSha@jCdGnCtItB`J`BjLt@nJrDdwA|@nJbBnJrAbFzAlE|C|G|M|Ulm@zcAzElJfAhCdEjMfBvH`BnIdWttAp`A|cGxAnHnBbHxd@bvAjDvInCnFvEbHnEzE|uAtoAdE~DzClDdGdIr\dj@bClEzCrGze@rmAhClIbBzHjKpp@|@tGl@zGd@tMC`LWnG_KhmB]dJChDHdJd@pJh@|FfF|`@|@jNJ~G{CjpCFnLh@jK~@bJ`DrQjIzb@jArH`BfN~@lN`@zMdDrwDr@lRlAzQnA`MtBbPvC`QxCvN~FlTpCxI`Qbc@hc@xcA`CdHbBlHxBxNx@~JXhItAnv@hAfVxAfQbJfw@z@rLvGjiAf@fGrA~IpB|HlClHtPvZdFnMbEpL`GbRhBrGnAnF`BpL~@~JzA`e@p@jIbApHz@zE~AxGtMna@fBlHrQncA|Lx}@bBbKvCfNdQln@|CjNtBzLbFfa@`D~TbEtR|DrNlEbMve@diAtDzJxEnOlUtw@lCzH~C`I~LhYtCbJzBnJ~AvJp@vFdA~NvAh}@\jIv@pLtAlNtMzfAxHtm@bBhKhDbPvB`IdCbIjElLpUll@nE~M`FrSlJzf@|`@vfB
</points>

<levels>
B????????@??@???@????@??@?????@??@???@??A??????@???@?????@??????????@????@??@??????A???@???@?????@????@??A????@???@????A??@?????@????@???????@?????A??@?????@??@??A???@????@?????@?@??????@?@???A???@???@????@?????@???@???@????@???@??@??@???@???@??????@??@??@???@?????@??B
</levels>
</polyline>

<duration>
<value>3587</value>
<text>1 hour 0 mins</text>
</duration>

<html_instructions>
Take the ramp onto <b>I-90 W</b><div style="font-size:0.9em">Partial toll road</div>
</html_instructions>

<distance>
<value>88367</value>
<text>54.9 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>42.1315500</lat>
<lng>-72.0538200</lng>
</start_location>

<end_location>
<lat>41.3890400</lat>
<lng>-73.5946300</lng>
</end_location>

<polyline>

<points>
eyc`Gj_xvLh@vFJlDE`Cg@fJBpDTnCb@|Bj@dBhAzBlGtHfHbIbFfFhUbXrE|EnEbDvN`ItCzBnBzBzBrDvI|PtBlDbB~BxFdFvFnCvLtD|QhF`GxAx`@lHjEhArHlCpHlDtHzEhk@fd@hJpG`E~BbEjBrOfFrGhCbEtB~FnDhHvF`WhU~F|E|P`LhGpEdLtHjZvQxJlGtI`GhSfPdIrFfJfFbHvC`HfCtDbBdJlFvH|Fva@n]p\lYhPrMvFpFzA`C`MhV`QbZfSj\xBtCtBvB|FhEpKhHvYtQr_@|Srb@lS|FxC|FjDnq@zf@|HrGlGhElNzIpZrPfHhDzElC`KjHxQ|Lt`Abr@~EzC~l@zb@nHtGrB|BbE~FnHhNxBpFxN~f@zE~Qb\fkAlo@bfBb^d`AfEzHnIjKhEvCbXrSvIpHx`@t[pJdHtMzKvBfCzCtEpB|D~AtErHd^vAnFvDpIlArBnCvClTfTxEtGzElKz]lcAbIlTdBfGlHjRbLf\`Vxp@`F`Ofr@boBlT~n@hJ~VlIzVxF|N~GpS~EtLvNtXrBrFtFz[pEfZ`EzZ`@|JWjIqAdI}FbSmAjFe@zDQdIRrHf@xEp@pDrCvK`ArJDbB`@~p@OhGiDvk@HdLNhDx@bIThAzA|GjBpFlDdHfBlCpm@ny@tEvHlSvf@zVtk@fEpK|AbD~U~j@nBpGpAnFv@fEjU|xApDbTtHhh@hC`PdCjNn@jCrBxGfE`Ile@zq@~DdIxEvM`BzF|BhMpFnVdHvT~Njb@bBpFbCrJzArH~CxR~@rIfExf@nArIfBjHfBxErC`FnBdC|DfDvBxAlAl@rPtLlDtCr@x@jh@v\lXpPdUfOvDxBbGvE~D|E`DpFhBvDlCrHpBbIdApGn@~FLpDAnR^fSdJtoAdCrYzBjOlMfx@pJli@xBpKdBlL~CjQnAnLl@tHj@hK@|KKrDi@~Is@|E}Fl[s@tEmBdJwC~P_CxIkCzLmE|PgAbFMpB@zi@u@|a@e@dG]vAsCdIu@fEEbDNxD\nBf@xA`CrDbBt@rAfAxClBtBtBdB|Ct@rBrMri@pDfLhAnClB|CvCzD`D`JlBbDlApAr@d@~Ap@lCn@|D^zOEdD^|C|@pAj@jAv@bAx@tC`D|CtF|@xB`BhG^hCRvCDdCg@dj@IbYAly@TrD`@zCpD`T^dAdBpCbBzAtC~@hCN`Ig@dHM`ADxBb@bBl@vDjCjIpH|HbIjDrCxAjBnAzB`AbDx@vEnBbRjDhWTlAjBnFhCvE~BjCrPrLfEvFdBjEz@fDZtBVfEc@dg@FvTl@xVhAvRxAhPnCjRpLvj@bChJrA|CxCzEbBrBfLtHrqAzi@pD~AnKnFjrAr{@fIrEjJ|C`QzEr}@|WbBl@lDnBfDxChArApB`Dn@vAbAtCZ~AT~AVfE?~CKnC}F~r@s@xPH|G`@jFd@`ChBdEzAjBxCrB|PlGxZnMzLlHxF|DbwAbgAvb@x[pEpDbC|BzC`DtG|ItGdK|C~DfJ|MvKlQfc@p}@hIdMtBfCzG~GpQrM~@~@~WjRlHbDnGvArjA`MnEHrFMdEe@pEuA|DcBzCgBdIsFnEmDpD_BhBi@tEg@dBG~AJlANdE~@lDhBfEbDrhAbx@|I`G|MzJlNhJjFhFnB|CtA`DxIfW`Vnu@`CfFjCjElCzCzNbRnf@`l@nDlGz@hCvAhGZlCtAza@r@pF`@jBp@dBxDhHzBxCrCvC`DdEt@bBjAfD~AbJT`GWpGcAjGeOvd@{EnMkHnUsCrHsBnJaAlJChEL`EX`E~@bGf\npA`BrHR`EWvEi@dEaHtU]bCInCFvDQxa@{@`Ii@dCsAtEeInSiAnByBnC{CbC_EhB_TlG_BlAeDfDgA`Bo@rAmBdFw@hC[jCSpDAvEL`GdAjQCdC{BvQQ`GdAnu@h@pSj@~EjA`FhJf[x@nGv@nPPhBp@pEd@dBn@nBxBpErUx]fDvFdAzB~ArElCdKtDtLnBjEjCrEdCnDvD`EnAdAdGzD`FpBtCx@xDh@~JL|L?|EJnDd@`AX|Ah@hDjBzC`C~C~DlBlDlAdDlN~d@hCnKlAdHvFda@rLrw@~]|eBlFfVtC|KfFrN~Spb@`Sxa@hKbPtWr]zB|DlEnLzOhk@vg@roBvKxd@zJjh@hIzg@jDlLdBjEdGdLtIdLfEzEnJ~IfEvC~JfGzHzD`A|@zDjFvAnCfX`o@|ArCrCbEdBpB~QlRnAdC|CpIvA|EdG|U~BrH|EhKtA`BlCxBtDpBvG|BzBh@hFp@lGZnCApMsBhVsJ|BmA`Es@jBKfBJvCb@bCn@dC`AfFfDpKbL`LpM~\j^fI~HrYvVxBzBfBrBrCfFlApDp@dDr@pFHnCAzEYhG}AnRyB|]aEdk@}@zJY|Ae@lBu@pByk@fnAoD~IqQrh@}@zDq@vEc@bILpH\jE\|BdAxEzGlUbAdFv@vIL|J_AxZE`HJ|FvDxj@\vIJhLKpZ\bJ\fDbArGp@jCxB|G`GnTrAjIP~CF|EIzCo@bHg@hCkI`Zu@`HKtEDnDzCvf@d@fFlAhHb@pB|BjHrPdc@fDxJtArHpCja@n@xEbAjFt@fCjExKdG`NzApEfArG\|E@jDStE_AdGk@xB}H|QgG`MmBzFo@nDa@jEE`HZvE\|BfHb[|M|v@tB~NbFje@dC~NtAvFrGvPrGdLjF`HxU`WvCtE`BlD|@dCrA`F~@rEbCrQ`BpGjBrFdBdEbBxCxAxBrEzF~DfDhBfAtBt@lB^|BRrBA~B[|A_@`P{G`Cy@zC[dBHlB^fC`BlBlBfAjBp@hBdCzIlDtOVpCHtG[lD_@nBgAnDmElMyB`JoK|r@eC|MeDrSe@hEc@nGgAtb@{@pc@SjDk@rFo@|CeBlGoCjIo@~Ca@pCs@jJE~FLvFj@nGp@fElA|EjKb\fA`GpCtUdDfP~Kzf@dBdMb@jE^dGfIlwBJnMUbHk@hGmAfIkClK{Xtu@
</points>

<levels>
B????@???@????@??@?????A???????@??@?????@??@???????@????@????@?????@??????@??@???@????@??A?@??@?@?@??????@?????@????@????????????@??A???@?????@?????@@?@???A??@??@????@????????@????@??????@?????A???@?????????@???A??@??@?@?????@??A???@???????@??@?????A???????@??@????@???@???@?????A???@??@??@???@?????@???@??@????@????@??????@?@??A??@??@?@????A???@???@???@???A????@????@????@?@??A???@?@???@?????@??@??A?????@????@????B?????@?????@??@?@???@?@???@??@???@??@??@??@????@????@????@?@?@??@????A???@???@???@???@?????@????A??@??@??@??@???@??@?@??A??@????@??@???@?????A??@??@?@??@????A??????@???A???@????@???@@??A??????@??@?????@??????@???????A??@???@???@????@???@???@??@???????A?@??@??????@???@??@??@???@??@??@???A?@???@??@????@??????@???@?@????@??@???@?B
</levels>
</polyline>

<duration>
<value>6390</value>
<text>1 hour 47 mins</text>
</duration>

<html_instructions>
Take exit <b>9</b> to merge onto <b>I-84 W</b> toward <b>US-20/Hartford/New York City</b><div style="font-size:0.9em">Partial toll road</div><div style="font-size:0.9em">Passing through Connecticut</div><div style="font-size:0.9em">Entering New York</div>
</html_instructions>

<distance>
<value>175407</value>
<text>109 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>41.3890400</lat>
<lng>-73.5946300</lng>
</start_location>

<end_location>
<lat>41.3906100</lat>
<lng>-73.5952800</lng>
</end_location>

<polyline>
<points>oxr{Fl}d`MkBnAwAd@uBJ</points>
<levels>B??B</levels>
</polyline>

<duration>
<value>9</value>
<text>1 min</text>
</duration>

<html_instructions>
Take exit <b>20</b> for <b>I-684</b> toward <b>NY-22/White Plains/Pawling</b>
</html_instructions>

<distance>
<value>185</value>
<text>0.1 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>41.3906100</lat>
<lng>-73.5952800</lng>
</start_location>

<end_location>
<lat>41.0152200</lat>
<lng>-73.7167000</lng>
</end_location>

<polyline>

<points>
ibs{Fnae`MqBx@mAx@e@h@y@tAc@hAo@nDItA@vBd@rDfAxCtB`CrAl@lATvCLnAYdAg@lEqCxAs@lAObBH~D`BfEpAbEz@jQzBzBf@zCdA~BjAvFpExD|EpDtHva@lrArCvHnGtMne@dw@lF~HbFzGfaBlrBfBxAxD`C|DbBnA^~Dr@lPhBtB\rGnBvLzEdFfAhFZ~DK|Di@vMkDbFc@|B@pD^`FvAnB~@xCxBrAtAtH|KjHnJ|s@bu@bDvC~A`ApB`AzDnAvDl@fSrApDh@rErAhMbFvGjAdFZfa@~@vGn@hDl@hLzC|NlHdi@nN`JxDxBrAxGhDtG`C`HzAzCPxDKnF_AjBc@zG{B`FoCpCwB~FgGrEyFpBsBfB_BpBuAhZgLlDiBfUaQnBmApAm@`EgAnBWhBG~@?`DZrCn@vQtHjJfDfD`A`PvD~EbB`DzAzJpFl]bSzK~EbG~B~N`EfEz@xEv@xHz@fDXxHZhGHpGGhKe@j_@wDbHW~J@fLj@tJ|@rx@|LjALzDFfFO|BWvOmDnVqG`GqAfDU`CErCBzDf@z[xHrEnAbW`G~Dr@~Gv@bFXhRHrHZfBN`JtA|FzAzCfAfGjChJzExoAru@fI`EjEbBvDvArEjAhJvAnHn@rDJ~IA|NJrN|AvHrBjA`@r`@|Rrp@b]pJdElKtDpRlFnIfBbU~ClNt@jQGtTkA~JWvDHpPbBtQvApEJp]UhEZ~Dr@fD`AxBdAjBfA|DtCjH|IdO|RnBvB~DjDhFtC|ChAzD`ArDf@nFVnEQzBYxjBaa@|Em@bHChHz@pD~@~HdChCj@vDTdCIdAOdDcA|BkArB{AlCuClB}CbIgTzAkDlBmCjAgA`BiAbBw@rCq@bCKhABjAJfB^hNpE
</points>

<levels>
B?????@????@??@?????@?????@??@???@?@?A???@?????@????@??@?????@???A??@??@???@????????A???@??????@?@?@???A???????@????@???A???@???@????@????@???A???@??????@?????@??@???@?@??@??@??@??@??????@???@???@???A??@?@???????@???@?????@???@??B
</levels>
</polyline>

<duration>
<value>1625</value>
<text>27 mins</text>
</duration>

<html_instructions>
Keep <b>left</b> at the fork to continue toward <b>I-684 S</b> and merge onto <b>I-684 S</b><div style="font-size:0.9em">Passing through Connecticut</div><div style="font-size:0.9em">Entering New York</div>
</html_instructions>

<distance>
<value>46907</value>
<text>29.1 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>41.0152200</lat>
<lng>-73.7167000</lng>
</start_location>

<end_location>
<lat>40.9383100</lat>
<lng>-73.8065600</lng>
</end_location>

<polyline>

<points>
cxiyFjx|`MjGzBrPhF~L~C|MrCfBf@nBl@nE|BrFhEpCtChKlOdGnHfCjCjHfGtGjExBnBv@x@pFlHhCvCbC~BfCrBhJvFpDlB~GvEnDnDlDvEbCvEhChHvAtGdBlKf@`B~@jBhA`BdAfA|T~NhAnAtAfCtAlEd@pEDjCStFClHDtENrC`AzJj@hDbBlHb@pAlB`EzAvBlCbCzIxFtD|D`CbEjAxDp@zD~@`KlBpOvA~PtAzGjA|D`CtFhDnFlBzBxHbHnBtBzBbDzCdG~CzJxDnTnCfKxCtIfAtBjAxA|A~AzBvAvKnElBl@tBN~AEv@OhA]fHoDzCa@fCJhMpCjGx@fAX~BfAl@b@bA|@bB`CfAdCbDlKrA|BjArAv@l@fBz@lLxDjF`C
</points>

<levels>
B??????@????@????????????A?????@????@?????????@??????@??????@??????@?????A???@?????@???@???@???@???B
</levels>
</polyline>

<duration>
<value>568</value>
<text>9 mins</text>
</duration>
<html_instructions>Merge onto <b>Hutchinson River Pkwy S</b></html_instructions>

<distance>
<value>12428</value>
<text>7.7 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.9383100</lat>
<lng>-73.8065600</lng>
</start_location>

<end_location>
<lat>40.9321600</lat>
<lng>-73.8775200</lng>
</end_location>

<polyline>

<points>
mwzxF~inaMxHxDnA^lCHzGQjBJpATzIhC`C~@|AnAxDxGhBtBr@h@fG~CbYbTp@~@bA|Bj@dDLbBIpCkApJ}CpS}F`QiAnCeAtD[lB[tB[bEKzNcBxLiCbPiGpVcAlGg@fEgCb[mBrRiKbp@iAjGa@pAcAzBwEbHe@`Ac@~Ag@~CJnFl@fDpC~HzEjLxAvFr@vDb@jDR~BD~BI`Eo@rEm@`B
</points>

<levels>
B???????@??@??@???A??@???@??@???????@??????@??????@????B
</levels>
</polyline>

<duration>
<value>263</value>
<text>4 mins</text>
</duration>

<html_instructions>
Continue onto <b>Cross County Pkwy</b> (signs for <b>George Washington Bridge</b>)
</html_instructions>

<distance>
<value>7517</value>
<text>4.7 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.9321600</lat>
<lng>-73.8775200</lng>
</start_location>

<end_location>
<lat>40.9276100</lat>
<lng>-73.8794800</lng>
</end_location>

<polyline>

<points>
_qyxFne|aMgA`DKbBh@pBv@n@bDn@dFTbAWpAoAbAq@~@Q~@?f@HrBz@
</points>
<levels>B???@????????B</levels>
</polyline>

<duration>
<value>39</value>
<text>1 min</text>
</duration>

<html_instructions>
Take the <b>Saw Mill Pkwy S</b> exit toward <b>New York City</b>
</html_instructions>

<distance>
<value>737</value>
<text>0.5 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.9276100</lat>
<lng>-73.8794800</lng>
</start_location>

<end_location>
<lat>40.9032300</lat>
<lng>-73.8881100</lng>
</end_location>

<polyline>

<points>
qtxxFvq|aMnGdEt@\hCp@lBTtGL|BZ|CbAhHxC`GjBxDt@vk@zIpEvA`NjFvCz@lLnCbHzB
</points>
<levels>B??@???????@????B</levels>
</polyline>

<duration>
<value>98</value>
<text>2 mins</text>
</duration>
<html_instructions>Merge onto <b>Saw Mill River Pkwy S</b></html_instructions>

<distance>
<value>2823</value>
<text>1.8 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.9032300</lat>
<lng>-73.8881100</lng>
</start_location>

<end_location>
<lat>40.8915900</lat>
<lng>-73.8868600</lng>
</end_location>

<polyline>

<points>
e|sxFtg~aMhDX|B]lAa@`BuA|@oA|B{EdCmChBcAfFcA`AEbCDvEz@lWfK
</points>
<levels>B??@???@?@???B</levels>
</polyline>

<duration>
<value>51</value>
<text>1 min</text>
</duration>
<html_instructions>Slight <b>left</b> at <b>Mosholu Pkwy</b></html_instructions>

<distance>
<value>1433</value>
<text>0.9 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.8915900</lat>
<lng>-73.8868600</lng>
</start_location>

<end_location>
<lat>40.8888800</lat>
<lng>-73.8902100</lng>
</end_location>

<polyline>
<points>msqxFz_~aMnE`D|CjDxAlCtA`E</points>
<levels>B???B</levels>
</polyline>

<duration>
<value>24</value>
<text>1 min</text>
</duration>

<html_instructions>
Take the <b>I-87 S/Deegan Expy</b> exit toward <b>Triboro Bridge</b>
</html_instructions>

<distance>
<value>420</value>
<text>0.3 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.8888800</lat>
<lng>-73.8902100</lng>
</start_location>

<end_location>
<lat>40.8474400</lat>
<lng>-73.9253700</lng>
</end_location>

<polyline>

<points>
obqxFxt~aMfCrNtClJrBvDvD`G`HlJxTvQdJjIzBbB`DrAvJfCnOdGlMnEba@`OjEbBvAx@fAz@vFbGpA~ArJlNzC|DfAfAvBvAhBx@|HlClD~ApD|BdClBn[xYbHzFrA|@
</points>
<levels>B???@??@???????@?????@????@???B</levels>
</polyline>

<duration>
<value>195</value>
<text>3 mins</text>
</duration>
<html_instructions>Merge onto <b>I-87 S</b></html_instructions>

<distance>
<value>5623</value>
<text>3.5 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.8474400</lat>
<lng>-73.9253700</lng>
</start_location>

<end_location>
<lat>40.8445700</lat>
<lng>-73.9274100</lng>
</end_location>

<polyline>
<points>o_ixFppebMnE`ElJtE</points>
<levels>B?B</levels>
</polyline>

<duration>
<value>20</value>
<text>1 min</text>
</duration>

<html_instructions>
Take exit <b>7</b> for <b>US-1/Cross Bronx Expy</b> toward <b>I-95/New Haven/Trenton</b>
</html_instructions>

<distance>
<value>365</value>
<text>0.2 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.8445700</lat>
<lng>-73.9274100</lng>
</start_location>

<end_location>
<lat>40.8460300</lat>
<lng>-73.9303000</lng>
</end_location>

<polyline>

<points>
qmhxFh}ebM`AAZQ\i@LsA[{BcA{BcAy@{@E_@Li@h@e@lAEzAh@tCCtB}B|O
</points>
<levels>B???@???@??????B</levels>
</polyline>

<duration>
<value>38</value>
<text>1 min</text>
</duration>

<html_instructions>
Keep <b>left</b> at the fork to continue toward <b>I-95 S/US-1 S/Cross Bronx Expy</b> and merge onto <b>I-95 S/US-1 S/Cross Bronx Expy</b><div style="font-size:0.9em">Continue to follow I-95 S/US-1 S</div>
</html_instructions>

<distance>
<value>795</value>
<text>0.5 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.8460300</lat>
<lng>-73.9303000</lng>
</start_location>

<end_location>
<lat>40.8580200</lat>
<lng>-73.9743300</lng>
</end_location>

<polyline>

<points>
uvhxFjofbMo@lE{Mlc@[xAoH|p@uTfmBo@dEsA|FS|BSpGcAjHaCrIqAlDsFnJwCvD
</points>
<levels>B??@??????@???B</levels>
</polyline>

<duration>
<value>168</value>
<text>3 mins</text>
</duration>

<html_instructions>
Continue onto <b>Interstate 95 Upper Level S/George Washington Bridge</b> (signs for <b>I-95 S/Trenton</b>)<div style="font-size:0.9em">Entering New Jersey</div>
</html_instructions>

<distance>
<value>3988</value>
<text>2.5 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.8580200</lat>
<lng>-73.9743300</lng>
</start_location>

<end_location>
<lat>40.8659400</lat>
<lng>-74.0082500</lng>
</end_location>

<polyline>

<points>
sakxFpbobMq@x@iAp@cBh@gBDiHcAsAa@gIgAqAEaCJiB\mE|AiNxH{GfF_FvEcGzG_DjEuEvHwD`IqAdEy@hEc@fGE~CXzGbApIbAfGjDhN|DpKzElJxFxI~LzNZ|@hFzGhBdDjAzCxAhH
</points>
<levels>B???@????@??@???@???A??@??@?@????@?B</levels>
</polyline>

<duration>
<value>205</value>
<text>3 mins</text>
</duration>
<html_instructions>Continue onto <b>Interstate 95 Express S</b></html_instructions>

<distance>
<value>4616</value>
<text>2.9 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.8659400</lat>
<lng>-74.0082500</lng>
</start_location>

<end_location>
<lat>40.1935300</lat>
<lng>-74.6012500</lng>
</end_location>

<polyline>

<points>
cslxFpvubM|A|GfApDt@`B|AzA|Ax@`B\tAF|O[jGt@zF|Abc@pP|PjGfEzAxD~@t@PtD^pUf@~CZ~FjApMzEjAXdQjGzDxB`DpCnEpFtaArqAjFrIxBjFnC`Jz\vwAvG~QdIfQpOfW|LrPpLxPbFzGbDrDdBnCjKrNbq@v|@fp@ds@pHdHt^~ZraBbuAnGtE|D|B|F~BpHdCxXnI|H~AtYjIxGbC`\rHxHl@`Qr@dEb@fDbA~BbA~EzCfBxA|HdJlK|M~DjE|HhHxHdFfBx@zAb@`NlB~EbAxBt@vFrCdDlCvB|B|BrCnBfDrAxCxDzKlGfUvAbEfFlKvD|EdChCrD|CdEdCdb@~QzGlDrx@jg@dKdGfLlHxt@bd@vHnF~FrE|L~K`R`R`XfWfNlJrf@tX|BzB|BrCdEfHz\fu@lF`IbClCzEzDxElCvP`HtJjEr]rRpU`Lty@jc@pdAxh@vXxNxN`HjS|LhPdLjF~DbRtIdIxCdKrE|i@xYxOzI~QvLvDnChMrKlZrXhCpC~VlUbl@bk@|IvJrIzKzNzTbNdWlLpUjDbIrHdS~C|KfDzOrDxVpH|l@dBpRrDvf@pCdX|D~UfC~L|DlOjE|MxD`KlCjGjG`MpTr_@dGpLlElJpGzOnGlQvHdUlXl_AdDvJvF~M~BbFbKtQjF|HnFfHfUpWrSnVthBduBjGvHjHjIxIbJzLtJr[nSrAr@fPhLdLzGj`Axf@|vB|eAdLdG|y@xi@|j@xa@vQ|LfFzC`O|HtKfFbPtGnMbErw@xSd~F|fBvStH`UtJjIbD`NjEh]vJpc@~NjAZt@BbeAl^xhAj_@pmBpn@b{@pYdYzJnhAh_@~J~CzvAp`@xMvEfGrCbGfDfIrFnFhExJnJzJxL|KtRvbAvvBhI|OblCvlEjaA~~AtQ~Z
</points>

<levels>
B????@???@????@????@????A??@???@???@????@@??A??@????@????@???????@?????A???@???@??@???@???@????@?@???@??A????????????????@??@???A??@???@??@???@??@???????@????A???@?????A????@??@??@???A??@??@???????????????A???@??@??B
</levels>
</polyline>

<duration>
<value>3824</value>
<text>1 hour 4 mins</text>
</duration>

<html_instructions>
Merge onto <b>I-95 S</b><div style="font-size:0.9em">Partial toll road</div>
</html_instructions>

<distance>
<value>93584</value>
<text>58.2 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>40.1935300</lat>
<lng>-74.6012500</lng>
</start_location>

<end_location>
<lat>39.6796200</lat>
<lng>-75.4791000</lng>
</end_location>

<polyline>

<points>
qhitFxpifMn@t@vA`CdM`WnnBjeEtI|PlIxNxHhMjLdQ|dAlwA`~CxfEfOxRlK`O~PdUvOlTnHdJbYl\fVlW`q@~p@~gA`gAfKzKbP`Rpa@bi@|wAnuBjZ|c@rD~F`JjP|I|Qzr@`~AbKpS`J~OvGdKnPhUbMpN~{@~{@tLhMlZfZnI~Ilh@nh@nN`O~GbJjEpGpErHbIfPpDxIvDpKzRvp@rE|MrF|MhKpRbF`Ir_@jo@`LtS~MzYp[bw@hEvJ|F`LbLvQzHrJfv@fz@nUxXh`AtoAlGzIl`AbwAvMfRx_AnmAlr@z}@jQtTfJxJv]h]buDfqDjFrGbI~K|E~HpFnKlFfLzB|FjElMhCvI|T`w@vDnPzChPx@vFdBhOrh@xlFbNptAvAdMnB`MnEjT~EvQhF`O~F`NjCjFhEtHlEbHbk@bx@fWb^nSvXnSrYxGpKjDvGnDxHnHdR~_A|gCdNz]tEtMfs@zlBbHhQ|jDzoH|r@lzA|Yvk@xClFvJxRhInOhP`\hJ|PbIvOxB|E|m@plA~LpUzs@dwAvj@hfA|D|IrDrJzlAriDhFfR~Uv~@h`@j|Afy@`{DtFzX|BtOpArLhT`gCTjHGpNDdDl@rIx@jFp@vCtD`MtAzGpKb`A`Dj^hBvN|BbO|Dl]
</points>

<levels>
B???@???@??????@????@?@??@???@??@????????A??@???@???@????A??@???@??@??@???A???@??@????@???A???@?????@??????@?@???????????@??A??@?@??@???@???@????B
</levels>
</polyline>

<duration>
<value>3677</value>
<text>1 hour 1 min</text>
</duration>

<html_instructions>
Continue onto <b>New Jersey Turnpike S</b><div style="font-size:0.9em">Partial toll road</div>
</html_instructions>

<distance>
<value>96254</value>
<text>59.8 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>39.6796200</lat>
<lng>-75.4791000</lng>
</start_location>

<end_location>
<lat>39.6794200</lat>
<lng>-75.4894200</lng>
</end_location>

<polyline>
<points>s|dqFj_ukMd@rEv@pLP`KE`OYpGg@rF</points>
<levels>B?????B</levels>
</polyline>

<duration>
<value>34</value>
<text>1 min</text>
</duration>

<html_instructions>
Continue onto <b>US-40 W</b><div style="font-size:0.9em">Toll road</div>
</html_instructions>

<distance>
<value>892</value>
<text>0.6 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>39.6794200</lat>
<lng>-75.4894200</lng>
</start_location>

<end_location>
<lat>39.7048600</lat>
<lng>-75.6022100</lng>
</end_location>

<polyline>

<points>
k{dqFz_wkM_BhLs@|CgGxTc@z@wdAvnEmJ`b@uAbHeApHkAjPw@bTmBtUg@rLd@tVlAnXDtFw@zo@i@hWArDJvBdCfUNdGYzE}@tEkChIsCrFsDrFiPnTiIhH{D`CwDrCkCfCwA`CyAnDs@~De@vGCzBRtJn@lF`AbFp@xBzFtN
</points>
<levels>B???????@???@??@??@???@???@??????@???@???B</levels>
</polyline>

<duration>
<value>456</value>
<text>8 mins</text>
</duration>

<html_instructions>
Merge onto <b>I-295 S</b><div style="font-size:0.9em">Partial toll road</div><div style="font-size:0.9em">Entering Delaware</div>
</html_instructions>

<distance>
<value>10631</value>
<text>6.6 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>39.7048600</lat>
<lng>-75.6022100</lng>
</start_location>

<end_location>
<lat>39.3230700</lat>
<lng>-76.5296900</lng>
</end_location>

<polyline>

<points>
kziqFx`mlM~f@fcA|ElKdBvE~BtHfHp[h`AtoE`E`PbHdThDjIhBxD|EpJnDhGpEbHhCjD`VfZvCdEfCrEfCvF~Vho@fClFR~@fIpOtFzIdDvEbNvQ\PzOdU`FvKlD~J~C|MxAhJb`@~~ChEj^fB~Pb@fOJ`tAT`H`@zEfBpLjEbTda@fmBxAbLl@tKHxEChJk@dLmOj{AaAbMq@jScA`cAQ|J]zHe@dGsAxJaJjc@{ApIy@bG]bEi@jKI~IHjHb@nLt@jIrU~xApAxKVxDVjIAdGQtHa@`I_B`PcF|Vo@nDq@xFe@dGWnGEnKPbJXhFbA~KvBnRhIvx@~@rKN|E?~DY`Ga@zDu@~DuQds@{BrKg@tFS|FHhHr@nIbHnb@|BnLnB`InAdEnK~[bHhQlLpWxGlP~Nl\~Qzb@dD~IpBjHtBlK`BtN`FjjAt@`Hv@nFv@lE`CjJbDfJtCnGdEjHjYdd@lFdKxChI|AlFfKrd@bCbJhAbD`BhDhK`QtAdDxBlGlBfIhAzHtMvnArB`MbAlEzBxHdUpk@|AzEfAfEfDvQpQthApBlIzB`GtDdHvR`ZzM`TnA~AbChFdCrHlApFv@rFVfE^`OIdh@ObWH|CZpDnAzFrCvIvj@j_BvAtGX`DRhHf@bt@LdGRjDz@lI`BdJzAzF`CnG~BfFrDdGtCxDrDzDnE|Dhc@n^jChCjC|Cra@~o@~P|Wzu@zaA|E`F|IzG|ZbPdK`GhDbC|AjAjDbD|FpHtFpJvCvG`Z~~@|CtHjB|C~C|DlLbMjb@de@hc@fe@`TrU|BrCvGzLrA`DrAbEdAlD`Spy@`CnHnClHzBhEnFdIbIdJnFlEdFjDtJnHxF|EdEjEfFfGrAnBfEjHlDdHxC`H`EvMjCpMzGja@|B`IhCrHjF|MvThm@zA`DhCdEvBvCvJvKbGpHtE|HdFpL`Rvg@`_@vqAvQdl@tIrU|HdSzItStOx\hGzN~BjGbGvRbE|ObTnu@zArH~@tHb@jJQ~`ACnv@n@vKdApHrBpI`B|EdCpF`AbBjh@dx@rGxKjUx]dHdLtFpKlFhMdDlJpRlo@tBvElDvFpDxDhAz@vIdFpOpI~DbD|D`FtcAh{A~EfG`E~Dpb@v]nLpKdTzUhTjU|D`FrYrZvOvQzHhIxCvDfF~H`DpGll@hyA|CbHjD`H`G`KxEzI|DbJhQrc@hIbWpLn\vFtN|MlZtN~ZdIbS`BhDtCfExA~AbEbDtAz@fFbCtQdIvEnCrKxHzDlDdPzPvl@hm@
</points>

<levels>
B???@???@???@????@????@????@???A??@???@??@??A???@???@??????@???@??@???@???@??@??????@???@?@???A?@??@??????@??@???@????@???@????@???@????@??@??????@???@???@???@???@???A???@????@?@@????@??@????@?????@??@????@?@????@???A?????@??@?????@??@?????@??@??@?@??@???????@???A?@???@??@??@??????@???????@???????@??@????@??B
</levels>
</polyline>

<duration>
<value>3853</value>
<text>1 hour 4 mins</text>
</duration>

<html_instructions>
Merge onto <b>I-95 S</b><div style="font-size:0.9em">Partial toll road</div><div style="font-size:0.9em">Entering Maryland</div>
</html_instructions>

<distance>
<value>95365</value>
<text>59.3 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>39.3230700</lat>
<lng>-76.5296900</lng>
</start_location>

<end_location>
<lat>39.2324200</lat>
<lng>-76.6502200</lng>
</end_location>

<polyline>

<points>
eh_oFpebrMn\p\|PzQzLvKbDxBrH`Ezh@~VhIpFfb@tZ|U~OfBz@bE~@|BPxA@vl@cBfo@g@zBHnBXvFzBjFjDzCfC|DrDlDxDdYv[zJdPnDpDfPjKnkAfq@tGnEpEnChJdFvAdA|BpChA|Bp@|Bb@|BZvDx@t_Cl@~PnBf]dAdLjA~EdBfFzBpElAdBtB|BpBbBxKrIlDzCrIfGlI~GhBxBrBtDhA`DlA`GZjGEzDWtDgTzoB}AxL
</points>

<levels>
B??@??@???@????@??@???@??@??????A???@@??@???@?????@???@??@?B
</levels>
</polyline>

<duration>
<value>831</value>
<text>14 mins</text>
</duration>

<html_instructions>
Continue onto <b>I-895 S</b><div style="font-size:0.9em">Partial toll road</div>
</html_instructions>

<distance>
<value>17030</value>
<text>10.6 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>39.2324200</lat>
<lng>-76.6502200</lng>
</start_location>

<end_location>
<lat>38.9191800</lat>
<lng>-76.9330900</lng>
</end_location>

<polyline>

<points>
sqmnFzvyrMy@lFq@lBq@l@q@LeAGe@We@g@_@cAGgAFmAZaAT[n@c@x@SrBG`d@dDfGr@dErA`EpC~GdHfDtE~AnC|DvIbAfD`Vz`AbShz@rB|HbCdHnBnEhq@pcAfFlH`EtGvCjG|@hCbJx]lBjGlB~E~DrIvC`FlG|H|DfEndAh}@jp@zk@vTnRzL~JdGrFlpAtvAtCzC|HhGbIhEpCfAhI|CzPrFbV|Izc@tOtGzCtMfIlJpGzH`GhUbRrP`O|HrH~BdC~JpMrFbJzW|d@nJbNvK`NrHvKnGpKrJrQnGvKtHtLzJnNjL|N|MhOxV|V|IrJzInKhIlKhXn_@~KfNpOjPpM~L~LfKhNlK|P~LtUjO|NjH`NdG|M~ElJ|C~KdElGjCbGpCvV`NbGxCri@jVvSzIr\~Mzn@rTlInC`JfCzfAzXhJ~C|HzD|GdFlEvE~CzEnDnGxC|GbArCxBtHbLlj@jCxHlFxKnDpGnDnFjJjMpInI`CnBdDrBpE~BfEvAbHtAvOhBbFnAfE`BvFfDxOnMrClBjNfHhHbEdVnQjEpCzGlCl@IxC\vCHpM@bD\~Bh@xFlChCvBpEnExC~BpDlBbFvAvC\rCF~Ss@nFJdCXpEbAxBv@pExBhF`EjF~FhErDlCdBtGjCfB|@~B`BdDbD~BfDhD`HlG`TnBxEzCbFnA|AzBxB`ZfSbCvBrK|L|BdBlBz@fCh@tBDtFe@
</points>

<levels>
B?@???@???@???@??@?@??@?????@???@????@??A?????@??@??????@?????A???????????@?????????A???@?????????@??@????A?@??@????@????A??@???@???????@?????@?????@???@???@???????@??????@???@???B
</levels>
</polyline>

<duration>
<value>2064</value>
<text>34 mins</text>
</duration>

<html_instructions>
Take exit <b>4</b> to merge onto <b>MD-295 S/Baltimore-Washington Pkwy</b> toward <b>Balt Pkwy/Wash Pkwy/Bwi Airport</b>
</html_instructions>

<distance>
<value>44841</value>
<text>27.9 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>38.9191800</lat>
<lng>-76.9330900</lng>
</start_location>

<end_location>
<lat>38.9145600</lat>
<lng>-76.9327000</lng>
</end_location>

<polyline>
<points>{kplFx~ptMnJiA~Gc@`C@hC\</points>
<levels>B???B</levels>
</polyline>

<duration>
<value>29</value>
<text>1 min</text>
</duration>
<html_instructions>Continue onto <b>MD-201</b></html_instructions>

<distance>
<value>518</value>
<text>0.3 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>38.9145600</lat>
<lng>-76.9327000</lng>
</start_location>

<end_location>
<lat>38.8677100</lat>
<lng>-76.9905300</lng>
</end_location>

<polyline>

<points>
_oolFj|ptMnCv@xC`Bzp@hk@tMnQzEtFzH`KbIfLzLfP~JlLjQvPtC~CpBhDnFdNpClDrAfAbB|@v\jKhHnCxDrBhFvD|DpDhCzCrCrEnA`Ef@xDf@hKl@xFfG|TzPxc@pKf]dCtEjDfE
</points>
<levels>B??@???????@??@???@???@?????@???B</levels>
</polyline>

<duration>
<value>405</value>
<text>7 mins</text>
</duration>

<html_instructions>
Continue onto <b>Anacostia Fwy/District of Columbia Hwy 295</b><div style="font-size:0.9em">Entering District of Columbia</div>
</html_instructions>

<distance>
<value>7486</value>
<text>4.7 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>38.8677100</lat>
<lng>-76.9905300</lng>
</start_location>

<end_location>
<lat>38.8008200</lat>
<lng>-77.0209700</lng>
</end_location>

<polyline>

<points>
ejflFxe|tMfLbIbCpCbAhBl@xAx@`DfA|HhBvPbAjFb@nAnB~DrAjBfCtBbDpAxNpC|IjCdJlDbPnIrDdAlBRjBB|VI`JNrD^fS`DfBp@rBfA`[fVfTvNzEzChBz@dBb@jCVzUGzFJlIp@~HlArJdCrHnC~H|DpSbLpCdAtB`@dEZ~P?tFSxD_@xCm@tGsBfEsB
</points>
<levels>B??@?????@???A????@???@?@?????@?????@????@???@???B</levels>
</polyline>

<duration>
<value>419</value>
<text>7 mins</text>
</duration>

<html_instructions>
Continue onto <b>I-295 S</b><div style="font-size:0.9em">Entering Maryland</div>
</html_instructions>

<distance>
<value>8440</value>
<text>5.2 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>38.8008200</lat>
<lng>-77.0209700</lng>
</start_location>

<end_location>
<lat>37.6695400</lat>
<lng>-77.4483300</lng>
</end_location>

<polyline>

<points>
chykF`dbuM^?j@UjJmF~CwAvA_@|CUdCBpAT|Az@`A`Ar@fA\bAfAjFjAxLXrDh@rLVnO`@|}@YxO}B|e@}@jMeDv^UbHgAnN{BxMyBjJoNdh@uCfOiBbOyJj_BuD`q@SdIEnI`@dR~AfSjAnIfXx}AtB|OjOxhBnHjx@^rAlF``@jA~J^xEd@rJb@zYLtCpAfIbEhSjB`Fh@~@jBrBbBhAlQ~F|c@|LdGjA`ZpEnDd@nIt@pRhApw@`BrXtBpLpAnIrAxLtCxIpClCdAjT~IrOrInH~EtOjLpRnOjM`L|KtK|IpJvHzIjPnSpO|T`Ul_@vL`QnGbHnGxEdEvBjFtB`DdAjRbFbJdB~LdBxsAzOvDj@jE`AvExAtEhBvGnD`DzBpFhF|PnTnDnFtCpFdB`ErChIjC`KjJzd@nBbLlAtIlAbLr@jJnF~z@n@nFz@dFbDzLnBbFzChGzFlIvEvEbCnBtGzDfiBdz@nN~FpFrBjNrEhq@hQrMbElcA``@|CvAbHfElBvAfExDnr@lw@vF|E~GnEhFdCpDpAnaBzg@~I`EzIpFxDzCjE~DtcAleAbFhEtFnDfErBtEdBdqB~i@zDrAhHlDjH~EzBnBrD~D~a@bh@dX`\fQ`Uh\`d@lGdInEbFxFpEjC`BvEbCfEbBzC~@dn@tN|Ez@t]bI`EhArHjC`JdEjFnCtIbFdIzFzeAv_AhJdI|HjGhPlLbu@|d@~D|BhF~BpH|BbHpAzEd@zHPjFKfZ_CtGYjECnHPbIp@pGdArHjBbFbBlEjBpt@ja@zRjJ`SxHhRnGtLlDhHrChGdDtDbCvIxGtIdGrElCrHvDjFxBrG|Bj~@|WzGnC`FfCxDbC|HnGtIfJhmBrjCzF~GrClC|HzF|F|Cdw@h\lFdCdMhHrMxJ|FnFlH|Hl{A~iBdIpIzHhGtGdEdFpCtIrDrWpIxGbCrTtGfGrAfEh@`EZvHHhEO`E_@b_@mFbFq@hBM`EQtE?vBDzE^xHnA`\hI`SnFffC|n@pMxBzNnAvOb@zKItI_@|Fg@hIiAbFcA`KgCjDiApKeExDgBvHaE`FaDvNeLpYuY|GsGbCqBrDcC|DmBbGyBfDu@~M}B~GYnHJ|Ht@xc@hGdIb@bJFdHUrI_AfEs@dRqEfGcAjIk@hGCrEPtEb@bEp@r_@tH`I`AzDZ|G\pxAvEpVbAzIr@fNrBrHbBxq@`S~DbAdGfAlHt@nIXvJMnIq@nh@gFdEW~DIzE@~J^rE^rDf@rDt@dDx@vDrArQpHpzAjk@~IhCnDv@~HxAbIbAxE`@lPn@nH@jh@WjyAgDxQk@pJ{@lCc@~EgAdCu@ph@mRhlA{c@~b@uO`c@kPzDqAjEiApHuAbKaAtFQpbBa@lrAaApLY`MaAtImAhaBk\`PuBlHm@hGUvGIriAOjGYvEc@`G_AxEaAfGeBhDmA|FeCrViN~LiGpJiEjbAq`@~DcBbI{DpKsGbh@}_@~PmL|lAku@jFiCjHiCjEcA~GaAbDSzGMnzAfDjL?hGOjKq@jKuAfZmGpPaDzS_DvXcCpt@_Fd_@sCxKGjLf@vDb@pTnDnHr@rDJ~D?vEW|De@fFoAxXgKhEmApH{ApKiAxH[rFAnFN`Gd@`JtAfHdB|HnCfXzLbNlFdM`EvPpE`NrC`N|BhLvAfLhAjQjAlHV`LPxLCvO]bj@wCbI[|GIlGB`IV~LbAva@dGlHp@tKd@tFHbFEjMe@lDYbJgA`PoCxlDqo@~cBsZxJkAtFc@vHYtFE`GDdu@hBvQz@xRbBxQfCnJdBpVjFhGdAhE^zENlHKnGg@`Ca@bGuAb[oJnJwBdEo@bJ_A`FUvGE
</points>

<levels>
B?????@?????@???@?A?????@????@?@??A???@????@???@????A??@?@????@????A??@???@??@??@?A???@???@???A??@???@???@????@??@??A??@???@?@?????@??@?@????@????A??@??????@???@???@??@????@??A???@????@???@???@???@?????@????A??@??@?????@????@??@??B???@????@???@???@???A???@???@??@??@???@??@???@??????A?????@???@?????@????@???@?????@???@???@?A???@??????A????@???@???@???A????????@???@???A????@????@??@???????@????@??A???@????@???@???@????@??????A??@????@????@??????@??@??@???B
</levels>
</polyline>

<duration>
<value>6048</value>
<text>1 hour 41 mins</text>
</duration>

<html_instructions>
Take exit <b>1C</b> to merge onto <b>I-495 S/I-95 S</b> toward <b>Richmond</b><div style="font-size:0.9em">Continue to follow I-95 S</div><div style="font-size:0.9em">Passing through District of Columbia</div><div style="font-size:0.9em">Entering Virginia</div>
</html_instructions>

<distance>
<value>151119</value>
<text>93.9 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>37.6695400</lat>
<lng>-77.4483300</lng>
</start_location>

<end_location>
<lat>37.1613100</lat>
<lng>-77.3518700</lng>
</end_location>

<polyline>

<points>
si|dF`suwMvDUhZMjGSrFg@`FgAzEiB`HeEpHuHrCkEhCeFdBuEjBcH|AeKpAeSb@}DfG}dAj@{Ez@_E`CyGnCwEpBaCfDqCjT{MlIwHxEmF~EsGzCwE|DqHtEcLlE_NjBgI~@cFrBuNdNofAjHwh@pBkPd@mCnCaJfCmFnB}CnBcCtCqCjBwAvFyCrsAqb@|EaBvJkE`LmGbMeIdKaIrHyGzDyDnFgGhGyHnxAekBpDyF|AsCjC_GdDsJnCuLlHyc@rBgK`BuG|BkHlFwMlEoI~GeKz]_d@~KcNzFeIvG{H~ScUl\i\vR}QpFoExCmBnGmD|CuBtL_GrXuO|`@mThEiCt`@oT|HiDdHcCzGgBnHwAnKi@|IKvFVrKhA|Ex@tFpAvErAdIbDjIrEfH|EvErDtHtGrPtOzi@vk@l`@~b@hL~KhFtEtFvEhIjGzTzN~LbHtxAxr@hQtJnIjFzJ`H|GhFvaB`rAnVdR~CrClk@jd@vHxFxD|BtGpCrElAlGdAlHV|FKlh@gFpIg@pGQ`IAjEDlHV`Lx@|NrB|K`Cj]jKfKnClJnAvHX~FEnQe@|gBgF~Fe@jDi@nEaAzDmAnGoCbGqDrq@ei@xCsBjDaBnCcA`E_A|Cc@`DSpF?vCRdG`AhCt@liAta@nFdBdCn@rCXhFFnBIzBa@nHiCtCeCjC}CrIuNxAmB~AaBzBcBnDiBjDcAfC_@xEObCL`CZ|D`AnVtHfSrFvFnAlDh@|BFfEEhAIbDm@jCy@tEkBdc@uXrH_EpEkBfFeBbJuBdDg@pJ_A~FM|F@`J`@lp@pGbE@vEa@fFoAjBu@zCcBnDwCbDwDzKeSfD_HnPe[rB_DtBiCzGkH~r@wq@|m@gn@bDuCbGaExEeCxFwBrEoAzGiAli@uEv{@{GfIQtFTvHbAfEjApFzBx`@dRhDnBpChBhElDlChCbE`FzFdJhEnJ~`@`dAdOx`@jL~X`@tAlHrQhBrFjCdFxDdGjDpExDdEfH~FbI~EtGrCjKzClHhArJr@vWLpCJxEv@`Bd@nChArAt@fClBjAbA`BnBlVd^fL|OzCvC`G~C
</points>

<levels>
B????@?@??A??@????@??@???@???@??@????@??A???@??@???@????@??@??@??@?????@???@???????@???B???@????@?????????@????@??????@???A???????@??????@??@????@??@???@???@??@??@??@????@???@??@???@??@???@?@???@??@???A????@????@????A???@??A???@?@???@???????@???@???@??????@?????@?B
</levels>
</polyline>

<duration>
<value>2550</value>
<text>43 mins</text>
</duration>

<html_instructions>
Take exit <b>84A</b> on the <b>left</b> to merge onto <b>I-295 S</b> toward <b>Rocky Mt NC/Richmond International</b>
</html_instructions>

<distance>
<value>70473</value>
<text>43.8 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>37.1613100</lat>
<lng>-77.3518700</lng>
</start_location>

<end_location>
<lat>33.3177800</lat>
<lng>-80.5486700</lng>
</end_location>

<polyline>

<points>
eayaFdxbwM`uAzT~WbDbHj@rSdArmAzInWvA~Rp@dLXrTXbYFdSKbq@u@|H[rGe@rIgA|XkE~H}@hEKhEDfEXpDf@rCr@lHbCjDjBlE|CpCfC|E|FpGtJlB|BjBfBrCrBp~@bl@dH~EbrAly@|LhHfHvDdO~GfQvGfIjCvO~DvH~ApLtBrNnBxJ|@fKj@zL`@hJJ`tAj@vc@DtLKvh@Jrd@z@h[VfF@vPOpP@|VSpmC{@ta@?`Mp@lMdBvo@`HvyGvo@dh@vE~Dn@pErA`F~Bzc@xVtg@dU|GfErGbFtHtHzGxIhl@r~@nLjQhXjb@fE|FtDlE|IjI|oAjeAjEdD~G|DlI`DtElAvCh@naDlf@`TtB|Mx@dGTfl@hAb[b@vOb@bFt@rDdAnChA`EbCrCbCnBvBdDzE~CzGdBxFj@jChAnIfJn{@nHho@bBhKvAbHzDxOfB`GhDrJxDjJjCrFzDlHxDnGnGbJhElFtCbDtGtGtFxE|LvI~IdFrfAti@~MhHvFjChE~B~H|EhLnIhLbKfLxLfGzHro@n{@tCbDlEjErD|CxEjDlIxEjvBfbA`FhB~HbBpE`@~HJ`FObfAwIlKs@bDOjGIlHBtHRhLbA`cDf_@lHt@jQjAvoB`Jl`AnAlk@XtnBbBfGNzG`@jIx@jHfA|GtAzWhHjOxEzcBjf@`YrI`C~@bHpDvq@ta@`CjApE|A`FdA|Eb@fo@lC`E`@nEbAbFdB`DvAvz@`d@h\zPhEjBlGrBrDx@haAxQfKlC~GzCdDlBha@tWbEtB|ErBz`Cjr@|EjBbGtCjFfErP|LhDvCp@\xg@da@~CjBxEtBrFpAlC`@dw@fJxOzAhVfE~MzDpOlG~a@xUrPbJdJdExYzKvs@zUjJdDfM~FrEhCbJ|F~PvN`l@lp@lKxK|N`NfIvGvT|OnaBdcA`LhHlPnMhMvKlaB~xAdGpEnMfHlDnAtElAlY`Gns@lLt^rGxFv@`n@|KjNjD~TxGxaA~^bNdErJfC|KfC`WdFnC\rLzBpY`GhKfBhh@fK~UlEtMpC|E|AtHvCvIfFvuBxyAla@xYrKbH~JjFbJxDvKrDdwDldArJnC`KvDdEfB~QbKh\tWtj@be@vI~FhJxE`KtDhG|A~c@bKv^~HvSjFvIbBdPpDnM`EnOrGp^vRvJ~EfA`@zLzGju@|_@pJlEbH`CrIlBzHhAxlBjMhK|@lOvBzDt@nLlCxJtCbN`FbFxBrMxGdHfEjDzBpOdLbObL~AvAdIvF|LxJb`@fYfKzFrIfDbrB`m@lH|BnD`BdDxBbD|CtCbE|}@bjBxCrDvG~Fl~@lk@fSvLdDhBpHhDjKzDfJdCpq@bM|b@lKrMtCdq@`QfQpFho@hTt^xN`m@xVrDlAvk@lPpKhFzdA|t@dLtIjC`C|GvHzc@lj@nFfFjXlRrH|EfShLhK`FtElBbHtDxHnDzGzDpSdNp@r@jVpOfJjHlElErJhL~HdKvL~NxHdK~OlQ~GjGpM~JhaCvcBzGlE`H`EhNpH`FxB|EpBtHlChh@~OpHrCfKxEnPnJrcAlm@pDbBhCdAxF`BrDr@bGv@xHZx]TfGV|MjAhDb@h\bGvO|CpOtDlNtEbN~FjG~CbFrCviAhr@xBjAvF|BrEtAvDz@~Fx@bIb@jdAfAxdAtAnOp@dLv@nHl@|Dp@nAZdJbDvBbAlu@jf@nGtEzFrFtEvFlBxClaAbhBxDrGtEdGjFjFlG|EtAz@fDhBb[lNdPfIrd@xX~`Ahm@|GhFxH|G`JxJbIhKbo@`dAbL~P|IhMtLdPpn@tx@bH|HbCrBdFrDjC|AbF~BvCfAvSlF|y@dS~DpAnEnBjC|AjDdClGhGlAzAvU`]tCjDnHxGf}ChpBrBhA`GjC`I|B|[bGvC`@~EfArIdCxg@~SvG`DzDhCrD~CnCxC`ExF~{@z~AzCfGbC`GbA|C|x@p~Cjg@hxB`C~KnF|St}AhrFrYvbArDrKjL`ZfRbg@`h@prAhI|Tf^f~@r_AbcCxMz]lJrUncAbkCpEbKtGxLfSvZ`_AduAtF`HtFbGrFjF~n@~k@xO|OlcAjfAxDdFdEfHnCbGhD`KbBzGfQtx@jC`LpBhHvB|FpDxHjDtFzs@neAvElHlDnGjD`IlBjF|FjSd~@`hDdBjFnAlD~ExKpf@p~@pFrKjEbK`DvIzClJl]|iAtFrOdErJbKtSbGnM`}At~C|HtLbH~GnG~E`LlFr{Bdx@p`AfZ`H`ChMvD~IvDbKhFpt@zb@bKdGfKhH~JpIxFzFvDlEtNdSp}@`tAdPdW`BjBhMdRtC|CzE~D~ZfPrPnIvI|Ebp@~\vjA`k@vtAfp@zKnGzAb@|DdBtx@l`@dc@jSlWdMxUrLvH|EzHjHpAzAdf@~l@tf@rl@zlA`zAd`C`hC~GbHzBnClyDndElr@~t@haA`eAn@z@xH`IvItJnDjDdDbEzNhO~LhN`a@lb@hA`Arc@~Xxp@pa@vS`MpBtAfFfEzMhMrEnDfFdDdNhH`b@tRlLzFlIdDtM`ElDv@xUbEfk@~I~C\xLpCnJnDfGvCbFxCvJhHlD~BnBdAtNvFfErAfoArWn@`@nZpFfY`GnHnBbJbDzI|ExDjCtFrEvH~G~H~FjItFvCbBpIbEpEpBhC|@`RvIhLzG~CrBrDvCtJxIfFnF|Xh]fH|H|U~UpG~FrUbU|CvDdCxDnB~D~Svk@vHxNpTt^zE|JnD~IpBrHtEzTlOj{@|AzGzAdF|GjPfDnGnGnKhB`CvhBfzBlIfMjM~SbKjTvJhWhKr\xCxLpJp\fE`PtBtGpFhKlGdIzDrDnK|G\h@nF`DfPbMtm@li@dKxHzDbC|IxE`JzDpJjD|Cz@pKxB`K`Bv{G`r@~L`BnH|AbIjCty@b\hGjCfExA`FxBlFrCzFvDd_@jZ`I|F~CbBvElBdEhAp|@~JrTnChADhDh@lDv@hYrJdtAtc@dJvBzF|@vz@fDrjAdEvOz@d\bArTZfx@XjjBV|QNbv@LnDHnLCvq@tAhk@b@~K\xa@v@fQjBroAfYrGv@`m@~M`rAbYn{@vRtOlE`K|EjHpEhJ|HrDzDhFtGtDrF|C~FpE|JrNta@nO~a@dG|QpNv`@|CbKbDnNvAlI~CdTtAtLlB~MfAtExBfH`A`C`AdBfMfR|DxGpLpYtHnSlWvgAbHrXhL|f@nCnKdFpLbGpHfIhHf[~Y|DbE~F~GrG~JzF|JdGdNdElLlF`R`EdTrI`k@zBjM~CrOhCtJtFpQpGbQ~KvVhLhVxStd@bWvh@pr@r}AtTfe@xEnKzLb[dJ~X`FtQrEdSpFjXhK~j@rGtXbTfv@|G|Yhn@|zCzF`UfHhU`FjNpInShIhQxRn_@jLxSx]tp@bIzMpf@lu@hJbO`CbDfB`DvAlBfKvPzBrC~Tv]lDfGlClHnBbIdGz_@lAzF|BjHr@bBzC|F|A|BbDxDvCnC`aAjz@pNzLhDjCnHbFnKtGdc@tUfQbKxqA`{@nGhFtBrBbFhGjBlCjDrGfEtJv_@n~@z\tw@~r@bdBjE`JbGvJzFnH|PxQjUvUhB~BrJnKlHnK|B~DhE~IrDpJfCdIfh@bqBjCbI`DlHbG~Jp`Bp_ClIlMvIrOtt@pvAbHfLxG`Jzr@`}@jGpJzB`E`FvKtC|H|]`dAbCbGdFtKxEnIfDdFtZbb@|P`UbFxIlCtG`AxChApEfWhtA`F`TzFnQntArzDvFtP|EbQ|l@t}B~J~ZdEjK~O~]~eAf_CpDlI~D~KvC`KdBhHhC`MvQdmArHde@nDhOtCtJlB`FdF`Llk@vfAhVde@nGzNhDjKjCbJfC|KfCnNjAfK~AhTb@tJVvMd@b}@P`o@^zHbB`LbD`KbI`OpcBbhCfD|GpCnG|AvEdBdH`Ox{@vCnN~CfJpAvC~ClG`BlCnGrI`I|IjFnFlSrUl_@xa@lFlHhMtV`Xdj@xQr^zPn^hCdF`EfGlBvBbCzBlDdCpd@|VvDnC~FfFjArAjJpIvH`IxEdGzClEfx@vyAnErG|G|HhIjHhIxFzEjCfF|BdHbCvCp@jK~C~ObExC`Ajy@zTx]|JdZ`Idh@~NzEhBfHlDpFjDrF~DbExDtFfGx\|a@l\x`@~mAlwAlMpNrYd]t|@`cAfK~KtL~KxE~DvFdEbMrIn[lSngA|s@~FzEtFdG`F`HpD~Gzm@xvAjA~BxDxG|CnEjDhE`DdDdFnElbBtqAfZhUzH~ElJlExHjC``Bzc@~XfInHvCnE|B|FpDrDlCdDvCry@tx@nEdFxEbGvH~K~h@f~@te@nx@pG`ItCrCnDtCnDdCdCtAbIjDt[pJ`UnHxNlEzKjEvI|E|HbGfh@je@^NpIbInLvJtNfK`dAxp@nJdHhKpIzw@rs@nOxNpQlO|GnFxIhGjKpGlO~Hlo@~Zt@h@hJfEhLzDrJfC`yA|[~QlEhMpEjLjGlj@b_@vF`Ev^dVvTjLfy@pa@|FpDjHxEtuBb|A`N`LlO~QhSlXh`@xg@bEnErDbDrH|EzDpBhQrHnt@vZdK`EtHnC|LxDj|@nW~PdGtqB`z@lL`FdEjCdEjDtEzF|DdHfaA||BbJlTt@vBbFhKrDhGfE|FxCzCxHjGpeAxw@vInHjGzF`pAvsAzPfRxLbMbElD|JtHzBrAnIdErIvEh_Axd@bIrEfN`JvGdFlGlF~w@rt@nGvEnBhA~DfBtFdBzDx@nEf@~CPdiAzApJd@lGdA|GpBtG~CdC~ApCxBnDhDdDbEbdCj~CxdB`pBfGhIvBdDtCjFvHtPxD~LlBvHn]~~AfChKtCnJdDtIjBfEtDbHPh@vOxVp}A|gClQlYfHtJnF~G`{@zbA~NdOfNhLvkCjmBt@^xGrFnL`L`EjE`@r@pOzRxnB|pCvBhDjUj\hDpEvFtGpOdM~KrG|LpF~a@jKzw@hRz]zH`RpCnnAdLpKtA`S|C~IfBvQtE|LvDreCv}@lJbFpB|AbGrDpEpDvJvJfy@|{@~FrFrMrJjF|CbF|BfJhDxo@pQzDtA|o@xQpAr@vBV~E`Bj]rJbK~CtQnE|j@`Md_@xI|~ChiAbFrBtExB`LnGrk@h_@
</points>

<levels>
B?@????@????@????@???A???@?????@???@???@???A???@?????@?????@??????A????@??????@???A???@?????@???A??@??@??@??@???@???A???@??????@???????@?A???@??@???@???@@??@???A????@????@????@????@???@????@?@???????@?????A???@??@??@????@??@????A??????@????@?????????A?????@????@?@???@???????@???????@???@???@???@???????@???A??@@?A????@????@??????A?@???@???????????@??????@?@???@????@??A???@???@???@??@?@???@???@???@??@?B??@??@?????????@????@???A???@???@??????@@??????@?@???A???@???@?@?????????A????@???@??A??????@?????@???@????@???@???@?B?@???@??@????@??????@?????????????A????@??????????????A??@????@??@??@???@???????@????@?@????@???????A????????@?@???@??@??@?????@?@?????@????????A??@??@??@????@?????@?????@???A???@??????@???A?????@??@??B??@????@??????@???@?@???@?@???@??@?@?????@????????@???????@@???A???@?????????@???@???A????@????@???A?????@?????@??@????@??@??@??@?????@????A????@??@??@????@??????@???@??A???@???@??A??@????@???@?????@?????@????@???@????B???@????????@???A????????@???????@???@???@???@???@???@???@??@??A???????@????@??@??????@????@???@???@??@??@??@??@???@???@??A??@?????@????@???A??????@?????@???@?@????A?????@??@??@??@?????A??@????@?????@??A?@??@??@???@?@?????@??@????????@??@?@??B
</levels>
</polyline>

<duration>
<value>19601</value>
<text>5 hours 27 mins</text>
</duration>

<html_instructions>
Merge onto <b>I-95 S</b><div style="font-size:0.9em">Passing through North Carolina</div><div style="font-size:0.9em">Entering South Carolina</div>
</html_instructions>

<distance>
<value>549264</value>
<text>341 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>33.3177800</lat>
<lng>-80.5486700</lng>
</start_location>

<end_location>
<lat>32.7998200</lat>
<lng>-79.9452400</lng>
</end_location>

<polyline>

<points>
ckjjEddsjNz@tAXdAB~@Gv@y@dAg@Pm@@mB_@]SaAmAOs@Gy@Dm@d@yAfXgWvJ{I~o@on@zlAmiAzEoFzDuFpBoDjCwFdg@ynApFwK~IwNvNoTbfAe~AtG_JlE{EvE_EvuCs}BjDoDzC{DjDaG|CcHlR_s@n]amAfEcMpCiHdIkPnDgGxGwJxLsNn}CykDva@ae@jNmPvSoXf~@uoA`MyObE{Ed`AufAxEgG`ImLnIcOnEoJjDgIjxDy_KxMy\bI_QhrCotFfIqPrHiQ~o@sgBxCgHrFcLvwCwgF|J_QbMaRpSaV|I{IdZs[bN_NdCyB`PgP|PaR`SyRxScTdIqJhFyG~DcGlLgRh\go@hwAinCrMqRpTgXbQkRZQ`^q`@nRmStG{H~FkFrHuE|FeCfJuBvTkCpVyB`YuCnKsAtEeAzE{ArF_CvFcDtHyFfCgCd{AsbB|EaFlHoGvC{BhJoFrTaK|@U~RiItUuKzE_CpG_EdI}Gbd@wb@pC{C~FoHdFoH~DgFbDcDzAmAvDcCb]eNjSaJ`K_GbVoM~MgIlCoAjD_A|Ba@~Da@hACtBBdHr@|JhAtGhAvKdAdBFnDIpFq@~DmAnPwIrb@eYrD{C~DyDfCyCvDiFhEsHvDyJ`Poj@tCqFfAaB`x@it@dDoClAw@vCiAdDq@bFQvLR`BEvEy@lBq@fBaAhCoBtDaFpA}Bt@iBp@kCjIgc@^oCReBNcHLgVXkC~@yD^eAv@uA|JoMlCyCbA_BlAuBzE}LfA_BfKmMvEoGpDeDtAw@ha@wQnDmAxCi@vDA~Fh@~Bj@nK`ErCv@vAPfCIlZuEfBi@hCwAdAmArHiLtD}CzC{@nLmCrTwExDmAzC_BpCoB`GqF
</points>

<levels>
B???@???@?????@????@????@???@????@?@?@???@????@?@????A??@?@??@???A??@???????????@??@?A??????@?@???@???@????@???????@????????A?????@???@????@??@??A????@???@??@?????@???@????@????@??????????A???@?????@?@????@???@??B
</levels>
</polyline>

<duration>
<value>3113</value>
<text>52 mins</text>
</duration>

<html_instructions>
Take exit <b>86A</b> to merge onto <b>I-26 E</b> toward <b>Charleston</b>
</html_instructions>

<distance>
<value>84126</value>
<text>52.3 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>32.7998200</lat>
<lng>-79.9452400</lng>
</start_location>

<end_location>
<lat>32.7971900</lat>
<lng>-79.9411500</lng>
</end_location>

<polyline>
<points>{eegEvh}fN`AsArFmF~EyDp@{@HoAcAiD</points>
<levels>B???@?B</levels>
</polyline>

<duration>
<value>89</value>
<text>1 min</text>
</duration>

<html_instructions>
Take exit <b>221B</b> on the <b>left</b> for <b>Meeting St</b> toward <b>Visitor Center</b>
</html_instructions>

<distance>
<value>547</value>
<text>0.3 mi</text>
</distance>
</step>

<step>
<travel_mode>DRIVING</travel_mode>

<start_location>
<lat>32.7971900</lat>
<lng>-79.9411500</lng>
</start_location>

<end_location>
<lat>32.7765600</lat>
<lng>-79.9310300</lng>
</end_location>

<polyline>
<points>mudgEdo|fNlRkKfP}JzL{G|B{ApAk@pGqDtT_NjFe@pFUtYkB</points>
<levels>B??????@??B</levels>
</polyline>

<duration>
<value>246</value>
<text>4 mins</text>
</duration>

<html_instructions>
Turn <b>right</b> at <b>Meeting St</b><div style="font-size:0.9em">Destination will be on the left</div>
</html_instructions>

<distance>
<value>2525</value>
<text>1.6 mi</text>
</distance>
</step>

<duration>
<value>60789</value>
<text>16 hours 53 mins</text>
</duration>

<distance>
<value>1586253</value>
<text>986 mi</text>
</distance>

<start_location>
<lat>42.3585300</lat>
<lng>-71.0600700</lng>
</start_location>

<end_location>
<lat>32.7765600</lat>
<lng>-79.9310300</lng>
</end_location>
<start_address>Boston, MA, USA</start_address>
<end_address>Charleston, SC, USA</end_address>
</leg>
<copyrights>Map data ©2010 Europa Technologies, Google</copyrights>

<overview_polyline>

<points>
ycpaGl|upLtbAzcD_~@haQj`Hj{c@wXvqGt}Gxn[`{Fz{Jxr@byY|pPhoz@lrb@lb[p|P`e`@xMpvIbiIpcWzhDvvC|UndStpHn}Tb{HnuD~K`iC~~HhxHhdFza@jqFtwG{^fcWp{ChrC`eH~tVf{JbrIuyA`pHfmB|hYfoDfjEyr@dyUpqHrtI|dM|_EhpCqpA`ad@j{IpqIah@|uGpsMd_FrxBc|@|gKz}Frm@hhH~sFcjAl{GiyBb{AhbAtyC|fE|eAx_Mx_Qdif@d`\heGxgR~|Ed}Fjbm@xcVnqNbsWljw@fweAlxC`eQ~}Wh_j@duEv}PnjAxcMylDpjTjiInpTh}AdwNog@|~YfzLjpg@h_P`rT`dHbyW||Q~mZhyRdgLro@b`Mh|FvkJthWdvVzq]r~RdaInmLt~K|iBws@toOb{AveMjxSjkIltB`~G~me@dtXriLdlDbmKzhKvwKdfBvnJ}hBp~VjwBpvU}|C|nIokEl_q@yfAbfEovMpnScuRf_R|yL|bFx\vvUeeBv{DgiE~_DaYlaJxgJvcNxa@xoItsE|t\nnA`cInrH~tIhdA|eBpkGxuKpsHf|Unw@`l\~_LdnQ`vLrdx@nfY|xg@tv[fiO~lCdfOtvOb{MriHpfQhdh@xjGdyHrcMvuZt|[hmRliUlbWdcThdJ|pPtjXb{Vt_GnzQnXnfJtgCzkTbso@z{ElmJvuGh}EpxSju`@~dN~sg@|zNxvUvnGj{Bbt^~w]`nj@dn[`sIb|KlkJv|Dj`\rqc@p~`@lbO|u^kif@hlM{mZljOqgUhjWoxNraG__Jj}IkbD
</points>

<levels>
BAAAAAAABAAAAAAAAAAABAAAAAAABAAAABAAAAAAAAAAAAAAABAAAAAAAABAAAAAAAAAAABAAAAABAAAAAAAAAAABAAAAAAAAAAAAABAAAABAAAAAABAAAAABAAAAAABAAAAAB
</levels>
</overview_polyline>
</route>
</DirectionsResponse>'

select sum(n.c.value('.', 'numeric(20,10)'))/1000 as TotalDistanceInKms
from @xml.nodes('//distance/value') n(c)

Open in new window

Author

Commented:
ok, I see but how do you get the xml? it's not static as it changes depending on the inquiry and you show it as a set variable
Expert of the Quarter 2010
Expert of the Year 2010

Commented:
What front end are you using for programming?
Is that file stored into a table?  A file on disk on the SQL Server?
Are you actually after SQL Server to retrieve it from the server [possible but warning: security issues]?

If you can provide more information on how you go about doing this with what tool, we might be able to better assist.

The last query will work with an xml variable.  How that is populated would be a front-end programming exercise.  You could have a stored procedure parameter that supplies it, like:

create proc getTotalDistanceFromGoogleXml
@xml xml
AS
select sum(n.c.value('.', 'numeric(20,10)'))/1000 as TotalDistanceInKms
from @xml.nodes('//distance/value') n(c)
GO
Should you be charging more for IT Services?

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden using our free interactive tool and use it to determine the right price for your IT services. Start calculating Now!

Author

Commented:
using  SQL Server to retrieve it from the google server
Mark WillsTopic Advisor, Page Editor
Distinguished Expert 2018

Commented:
OK, can you show us exactly how it is being retrieved ?

Cannot use a simple string, need to use either varchar(max) or nvarchar(max) and then you can cast that as an XML datatype or simply use it as an argument to plug into the procedure that cyberkiwi has shown.

But if it is truncating, sounds like "returning" the result set from your SQL is where it is happening so need to see how it is being returned.

Author

Commented:
Topic Advisor, Page Editor
Distinguished Expert 2018
Commented:
So, you are building up an http address ?  And now you want to retrieve that ?

You will run into trouble - they have made it a bit difficult to down load because of a copyright warning...

Anyway, checkout :


-- create a java script file - just a text file edited in notepad - save as c:\ee\js_download_script.js  (or whatever folder)

/*
var fso = new ActiveXObject('Scripting.FileSystemObject');
var args = WScript.Arguments;
var url = args(0);
var fileName = args(1);
var xmlhttp=new ActiveXObject("microsoft.xmlhttp");
xmlhttp.open("GET", url, false);
xmlhttp.send();
var data=xmlhttp.responsetext;
var file = fso.CreateTextFile(fileName, 2);
file.writeLine(data);
file.close();
*/

-- then your sql becomes even easier :

exec xp_cmdshell 'cscript c:\ee\js_download_script.js "http://maps.googleapis.com/maps/api/directions/xml?origin=Boston,MA&destination=charleston,sc&sensor=false" c:\ee\my_destination.xml'

--drop table #xml
create table #xml(my_varchar varchar(max))       
bulk insert #xml from 'c:\ee\my_destination.xml'

select convert(xml,my_varchar) from #xml    -- fails to load as XML because of copyright warnings



/*  here is the copyright warning that "breaks" the XML


  <copyrights>Map data ©2010 Europa Technologies, Google</copyrights>
  <overview_polyline>
   <points>ycpaGl|upLtbAzcD_~@haQj`Hj{c@wXvqGt}Gxn[`{Fz{Jxr@byY|pPhoz@lrb@lb[p|P`e`@xMpvIbiIpcWzhDvvC|UndStpHn}Tb{HnuD~K`iC~~HhxHhdFza@jqFtwG{^fcWp{ChrC`eH~tVf{JbrIuyA`pHfmB|hYfoDfjEyr@dyUpqHrtI|dM|_EhpCqpA`ad@j{IpqIah@|uGpsMd_FrxBc|@|gKz}Frm@hhH~sFcjAl{GiyBb{AhbAtyC|fE|eAx_Mx_Qdif@d`\heGxgR~|Ed}Fjbm@xcVnqNbsWljw@fweAlxC`eQ~}Wh_j@duEv}PnjAxcMylDpjTjiInpTh}AdwNog@|~YfzLjpg@h_P`rT`dHbyW||Q~mZhyRdgLro@b`Mh|FvkJthWdvVzq]r~RdaInmLt~K|iBws@toOb{AveMjxSjkIltB`~G~me@dtXriLdlDbmKzhKvwKdfBvnJ}hBp~VjwBpvU}|C|nIokEl_q@yfAbfEovMpnScuRf_R|yL|bFx\vvUeeBv{DgiE~_DaYlaJxgJvcNxa@xoItsE|t\nnA`cInrH~tIhdA|eBpkGxuKpsHf|Unw@`l\~_LdnQ`vLrdx@nfY|xg@tv[fiO~lCdfOtvOb{MriHpfQhdh@xjGdyHrcMvuZt|[hmRliUlbWdcThdJ|pPtjXb{Vt_GnzQnXnfJtgCzkTbso@z{ElmJvuGh}EpxSju`@~dN~sg@|zNxvUvnGj{Bbt^~w]`nj@dn[`sIb|KlkJv|Dj`\rqc@p~`@lbO|u^kif@hlM{mZljOqgUhjWoxNraG__Jj}IkbD</points>
   <levels>BAAAAAAABAAAAAAAAAAABAAAAAAABAAAABAAAAAAAAAAAAAAABAAAAAAAABAAAAAAAAAAABAAAAABAAAAAAAAAAABAAAAAAAAAAAAABAAAABAAAAAABAAAAABAAAAAABAAAAAB</levels>
  </overview_polyline>

*/

Open in new window

Expert of the Quarter 2010
Expert of the Year 2010

Commented:
@Mark

That is really cool, using an external js file.  I was imagining ole automation of IE, but your code works well.

@Google (!)

That's really smart of Google.  © is not valid in XML unprotected, but all browsers (the target consumer) will work around it correctly.

crundle,

http://code.google.com/apis/maps/documentation/directions/

Note:  the Directions API may only be used in conjunction with displaying results on a Google map; using Directions data without displaying a map for which directions data was requested is prohibited. Additionally, calculation of directions generates copyrights and warnings which must be displayed to the user in some fashion. For complete details on allowed usage, consult the Maps API Terms of Service License Restrictions.


There is a very easy way to remove that character. But read the above carefully.  If you are a Maps Premier customer, then feel free to use it.  Otherwise if this is for fishing data off Google to populate a SQL Server table, you should think again.
Mark WillsTopic Advisor, Page Editor
Distinguished Expert 2018

Commented:
Well, we could also use OLE automation BUT there is a catch with > 8000 - some of the methods simply wont work with big pages - but there is always a trick :)



DECLARE @HttpObject INT
DECLARE @ResponseText VARCHAR(max)  -- actually only does strings if source is <= 8000
DECLARE @Status INT
DECLARE @StatusText VARCHAR(200)

if object_id('tempdb..#xml','U') is not null drop table #xml
create table #xml(my_varchar varchar(max))      

EXEC sp_OACreate 'MSXML2.ServerXMLHTTP', @HttpObject OUTPUT
EXEC sp_OAMethod @HttpObject, 'open', NULL, 'GET', 'http://maps.googleapis.com/maps/api/directions/xml?origin=Boston,MA&destination=charleston,sc&sensor=false'
EXEC sp_OAMethod @HttpObject, 'send'
INSERT #xml
EXEC sp_OAMethod @HttpObject, 'responseText' --, @ResponseText OUTPUT
EXEC sp_OAMethod @HttpObject, 'Status', @Status OUTPUT
EXEC sp_OAMethod @HttpObject, 'StatusText', @StatusText OUTPUT
EXEC sp_OADestroy @HttpObject

Select @Status, @StatusText, * from #xml



-- still have that last row to manage because of the copyright. Might even be more hidden characters knowing google - best to replace entire line.

-- Best to obey copyright laws - we cannot suggest anything that might contravene copyright

Author

Commented:
perfect Mark

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial